CVML Exam Preparation — Topic-Wise Processing Plan¶
Target exam: Computer Vision and Machine Learning (CVML) — TU Braunschweig, SoSe 2025
Trial exam analysed: CVML_TrialExamSS2025.pdf (TU Braunschweig, 25.07.2025, 110 points total)
Source folder: D:\MyFiles\STUDY\SS25\cvml\final
Output folder: D:\MyFiles\STUDY\SS25\cvml\final\CVML Exam Prep
1. Files Found¶
1.1 Lecture PDFs (one per topic)¶
| # | Lecture title | Main PDF |
|---|---|---|
| 1 | Image Acquisition | Lecture/1/01_ImageAcquisition_CVML_LIVE_unlocked.pdf |
| 2 | Filtering, Edges & Thresholding | Lecture/2/02-03_FilteringEdgesThresholdingPDF_CVML_LIVE.pdf (combined) plus separate 02_Filtering_CVML_unlocked.pdf and 03_EdgesAndThresholding_CVML_unlocked.pdf |
| 4 | Machine Learning Basics | Lecture/4/04_MachineLearning_CVML.pdf (main, 75 slides) + LIVE.pdf |
| 5 | Features | Lecture/5/05_Features_CVML_LIVE.pdf |
| 6 | Optical Flow | Lecture/6/06_OpticalFlow_CVML_LIVE.pdf |
| 7 | Parametric Transformations & Scattered Data Interpolation | Lecture/7/07_ParametricInterpolationOfScatteredData_CVML_LIVE.pdf |
| 8 | Epipolar Geometry & Depth | Lecture/8/08_EpipolarGeometry_CVML_LIVE.pdf |
| 9 | Video Matching, Morphing & View Synthesis | Lecture/9/09_VideoMatchingMorphingAndViewSynthesis_LIVE.pdf |
| 10 | Structure from Motion / Camera Calibration | Lecture/10/10_StructureFromMotion_CVML_LIVE.pdf |
| 11 | Neural Radiance Fields (NeRFs) | Lecture/11/11_NeuralRadianceFields_CVML_LIVE.pdf |
Note: there is no Lecture 3 folder — Filtering and Edges are merged into a single combined PDF (\(02-03_\ldots\)).
1.2 Lecture transcripts (NoteGPT_*.txt)¶
All eleven lectures have full transcripts; they were heavily used to expand sparse LIVE slides into full beginner-friendly explanations.
1.3 Exercise sheets¶
| Sheet | Topic | Code files | |
|---|---|---|---|
| 1 | Ex/1/sheet1.pdf |
IDE setup, Python intro, debugging | (no code shipped) |
| 2 | Ex/2/sheet2.pdf |
Python, image handling, color spaces | python_intro.py, img_processing.py, hummingbird PNGs |
| 3 | Ex/3/sheet3.pdf |
Noise, filtering, image stacking, Sobel, thresholding | 1.py – 5.py, image_filtering.py, utils.py |
| 4 | Ex/4/sheet4.pdf |
Harris, SIFT, PyTorch MNIST, object detection | 1.py – 2.py, 3-5.ipynb, feature_detection.py, pt_object_recognition.py, pt_object_detection.py |
| 6 | Ex/6/Sheet 6.pdf |
Epipolar geometry, stereo depth, learned depth | epipolar_geometry.py, stereo_depth.py, pt_depth.py, depth_utils.py |
(Sheet 5 is missing in the source folder — there is no exercise for ML/Features by itself.)
1.4 Trial exam¶
CVML_TrialExamSS2025.pdf — 10 tasks corresponding 1:1 to the lecture topics, 110 points total, plus a 10-point "Image Acquisition" warm-up:
| # | Topic | Points |
|---|---|---|
| 1 | Image Acquisition | 10 |
| 2 | Digital Image Processing Basics (Filtering+Edges+Thresholding) | 20 |
| 3 | Machine Learning Basics | 10 |
| 4 | Features | 10 |
| 5 | Optical Flow | 10 |
| 6 | Parametric Transformations & Scattered Data Interpolation | 10 |
| 7 | Epipolar Geometry & Depth | 10 |
| 8 | Video Matching, Morphing & View Synthesis | 10 |
| 9 | Camera Calibration | 10 |
| 10 | Neural Radiance Fields | 10 |
The exam has explicit numerical questions in topics 2 (convolution), 3 (confusion matrix), 4 (perspective projection), 6 (matrix decomposition) and 7 (3-D triangulation, disparity).
2. Topic-wise Processing Plan¶
For every chapter the per-chapter MD/PDF includes the 17 rubric sections (Overview → Cheat Sheet) and is informed by the lecture PDF, transcript, related code, exercises and any trial-exam questions on that topic.
Chapter 01 — Image Acquisition (10 pts on trial exam)¶
- PDF sections: digital image, color spaces (RGB, HSV, Lab, CMYK), light spectrum, spectral reflectance, sensors (CCD vs CMOS, Bayer mosaic), pinhole / perspective projection, depth of field & aperture, lens distortions (radial / chromatic / vignetting), noise types (Gaussian, salt-and-pepper), normalization.
- Code files:
Ex/2/sheet2/img_processing.py,python_intro.py(color-channel swap, BGR↔RGB, HSV hue offset). - Exercises: Sheet 2.
- Trial exam questions: Q1a HSV transformation matching, Q1b RGB/CMYK additive vs subtractive, Q1c depth of field vs aperture, Q1d barrel distortion sketch.
- Key concepts: pixel coordinate frames, dynamic range, RGBA/RGBD, CCD vs CMOS rolling-shutter, principal point, focal distance, circle of confusion, Bayer pattern, Gaussian noise model.
Chapter 02 — Digital Image Processing Basics (Filtering, Edges, Thresholding) (20 pts on trial exam — heaviest topic)¶
- PDF sections: True image function, Fourier transform & power spectrum, Nyquist sampling, hybrid images, box / sinc / Gaussian filters, separability, border handling, image pyramids; gradients, Prewitt / Sobel, Gabor, Laplacian, LoG, DoG; image histograms, Otsu thresholding, local/adaptive thresholding, background subtraction.
- Code files:
Ex/3/sheet3/1.py – 5.py,image_filtering.py,utils.py(box, sinc, Gauss, median, Sobel, threshold, mask, image stacking). - Exercises: Sheet 3.
- Trial exam questions: Q2a Fourier-spectra matching, Q2bi Gaussian purpose, Q2bii Difference-of-Gaussian use, Q2biii global vs local thresholding, Q2biv removing linear gradient on concrete wall, Q2c convolution with
[-1, 0, 1]on an 8×8 image, Q2d which filter category, name more. - Key concepts: convolution vs correlation, separable filters, Nyquist frequency, edge vs gradient, second derivative (zero crossings), histogram normalization, Otsu's between-class variance.
Chapter 04 — Machine Learning Basics (10 pts)¶
- PDF sections: AI vs ML vs DL, problem framing, perceptron, activation functions (linear, ReLU, sigmoid, softmax), loss functions, gradient descent, backpropagation, hyperparameters (epochs, batch, learning rate), train/val/test split, K-fold CV, terminology, network architectures (FFN, RNN, autoencoder, CNN, U-Net, GAN, ResNet), CNN convolution + max-pool, data augmentation, confusion matrix, accuracy / sensitivity / specificity / prevalence, fallacy of accurate tests.
- Code files:
Ex/4/sheet4/pt_object_recognition.py(MNIST flatten→linear→ReLU→linear→softmax),pt_object_detection.py(Faster R-CNN MobileNet). - Exercises: Sheet 4 task 3+4.
- Trial exam questions: Q3a-i accuracy, Q3a-ii specificity for class 2, Q3a-iii highest-sensitivity class, Q3b "What is an epoch?", Q3c three T/F (split before normalize, normalize after split, more layers always better).
- Key concepts: confusion matrix, sensitivity (recall) vs specificity, prevalence, normalize after train/test split, overfitting, dropout, validation split.
Chapter 05 — Features (10 pts)¶
- PDF sections: pinhole-camera projection refresher, finding correspondences (sparse vs dense), good-feature properties (invariance), feature description (single pixel → patch → feature vectors), L1/L2/Mahalanobis distances, cross-correlation, normalized cross-correlation, Zero-Mean Normalized Cross-Correlation (ZMNCC), template matching limits, Shi-Tomasi corner, Harris matrix and score \(R = \det (H) - k\cdot \operatorname{trace}(H)^{2}\), scale space, normalized Laplacian, Harris-Laplace, LoG / DoG, dominant gradient orientation, SIFT (16×16 region, 4×4 blocks, 8-bin histograms = 128-D descriptor, ratio test 0.8 / 0.6), SURF, FAST, GLOH, DAISY, AR markers.
- Code files:
Ex/4/sheet4/feature_detection.py(Harris from scratch with Sobel + box kernel + R score),pt_object_*.py. - Exercises: Sheet 4 task 1+2.
- Trial exam questions: Q4a project p=(10,5,3) onto image plane at f=2 (perspective projection), Q4b ZMNCC robustness — what to do for big lighting changes, Q4c five T/F (Harris diagonal=shear/rotation, multi-direction gradient, single template, SIFT illumination, gradient histogram global only).
- Key concepts: perspective formula \(x' = f\cdot x/z\), Harris matrix structure, SIFT descriptor 128-D, ratio test, rotation-/scale-/illumination invariance.
Chapter 06 — Optical Flow (10 pts)¶
- PDF sections: Apparent vs real motion, optical flow goal \(I1(x,y) = I2(x+u, y+v)\), brightness-constancy assumption, linearization with Taylor → \(Ix\cdot u + Iy\cdot v + It = 0\) (one equation, two unknowns), local solution (Lucas–Kanade with structure tensor = Harris matrix), backward vs forward warping, bilinear interpolation, image pyramids (coarse-to-fine), iterative warping, global solution Horn–Schunck (data + smoothness terms), gradient-constancy, anisotropic diffusion, occlusion handling, layered flow, large-displacement (SIFT-flow), FlowNet (Simple, Correlation), FlowNet 2.0.
- Code files: none directly in repo (no Sheet 5).
- Trial exam questions: Q5a what is backward warping + dis-occluded areas, Q5b five T/F (symmetry of flow equation, specular surfaces good, LK in homogeneous regions, Horn-Schunck global smoothness, FlowNet on occlusions/fine texture).
- Key concepts: brightness-constancy, structure-tensor = Harris matrix, image pyramid, smoothness term \(\nabla u^{2} + \nabla v^{2}\), backward = lookup, forward = scatter (holes & overlaps), aperture problem.
Chapter 07 — Parametric Transformations & Scattered Data Interpolation (10 pts)¶
- PDF sections: Taxonomy of projective transforms (Euclidean → similarity → affine → projective), DoF (3, 4, 6, 8), translation/scaling/rotation/shearing, matrix forms, three-step rotation around a point (translate-rotate-translate-back), homogeneous coordinates, post- vs pre-multiplication, projective space P², homography 3×3 (8 DoF), DLT to compute homography from ≥4 correspondences, design matrix, panorama stitching, forward vs backward warping for images, smooth interpolation primer (circle, line, De Casteljau), Bézier curves (quadratic, cubic), splines, Hermite splines (position + tangent, two control points, can overshoot), Catmull-Rom splines (auto-tangents \((P_{i+1}-P_{i-1})/2\), no overshoot, needs intelligent boundary handling), thin-plate splines (TPS, radial basis function \(\|x - p_{i}\|^{2}\cdot \ln \|x - p_{i}\|\), smoothness term = continuous Harris matrix, closed-form solution).
- Code files: pieces in
Ex/6/sheet6/epipolar_geometry.py(homography for rectification). - Trial exam questions: Q6a decompose \(M = T\cdot R\cdot S\) for the given matrix (uses \(\operatorname{atan2}(1,0) = \pi /2\)), Q6b three-step rotate-around-point, Q6c Catmull-Rom vs Hermite differences.
- Key concepts: homogeneous coords trick to enable translation by matrix, matrix multiplication is associative but NOT commutative, Catmull-Rom auto-derives tangents from neighbors, TPS = "as-smooth-as-possible" warping.
Chapter 08 — Epipolar Geometry & Depth (10 pts)¶
- PDF sections: ambiguity from one image, stereo and triangulation, rectification, scan-line search, epipolar geometry — baseline, epipolar plane, epipoles, epipolar lines, fundamental matrix F (3×3, 7 DoF, \(x'^{T} F x = 0\)), 8-point algorithm, rectification via H1/H2/F, disparity vs depth (\(Z = b\cdot f/d\)), block matching, sum-of-absolute-differences, Birchfield-Tomasi, *census transform** + Hamming distance, left-right (symmetry) check, dynamic programming on cost matrix, smoothness penalties (Potts model, intensity-adaptive Potts, total-variation), graph-cuts via α-expansion, occlusion handling, deep-stereo (non-end-to-end vs end-to-end vs unsupervised), monocular depth (towards-robust-monocular-depth via disparity-space loss).
- Code files:
Ex/6/sheet6/epipolar_geometry.py(RANSAC, fundamental matrix, epipolar lines, rectification homographies),stereo_depth.py(per-pixel scan-line search, normalized disparity, depth conversion),pt_depth.py(ZoeDepth/MiDaS). - Exercises: Sheet 6.
- Trial exam questions: Q7a how to compute depth from stereo, Q7b-i 3-D positions of two points (stereo with b=5cm, f=5cm, FOV 90°, 10×10 image, principal point (4.5,5)), Q7b-ii ΔX, ΔY, ΔZ, Q7b-iii disparity for p1 and p2, Q7c describe optical axis and epipolar line.
- Key concepts: \(Z = b\cdot f/d\), F maps a point to a line in the other image, rectification puts epipolar lines on scan-lines, disparity is in pixels (depth in metric).
Chapter 09 — Video Matching, Morphing & View Synthesis (10 pts)¶
- PDF sections: video matching (Sand & Teller — parallax similarity + motion magnitude as dissimilarity, locally weighted regression, adaptive frame matching), morphing — cross-dissolve, projective alignment, feature-based image metamorphosis (Beier–Neely, manual line correspondences), point/triangle morphing, virtual video camera (space–time cube, tetrahedralization, bullet-time effects), why image-space morphing is physically inconsistent, view morphing / view interpolation (rectify, interpolate, un-rectify), formula \(\hat{x} = H_{1}^{-1}(H_{1}x + t\cdot (H_{2}x' - H_{1}x))\).
- Code files: none directly (related rectification in Sheet 6).
- Trial exam questions: Q8a explain the morph formula \(\hat{x} = H_{1}^{-1}(H_{1}x + t\cdot (H_{2}x' - H_{1}x))\), Q8b how rectification helps stereo, Q8c three T/F (feature-matching for video, cross-dissolve geometric alignment, physically valid morphs require rectification).
- Key concepts: cross-dissolve = blend without warp, view morphing = rectified linear interpolation = physically valid morph, baseline assumption (camera approximately same path), Seitz & Dyer 1996.
Chapter 10 — Camera Calibration / Structure from Motion (10 pts)¶
- PDF sections: extrinsic vs intrinsic camera parameters, radial distortion model \((1 + k_{1}r^{2} + k_{2}r^{4})\), coordinate-system math primer (orthonormal bases, dot product = projection), forward imaging model (world → camera → image plane → pixels), perspective projection from camera frame, intrinsic matrix K (focal lengths f_x, f_y, principal point o_x, o_y), homogeneous trick to make projection linear, extrinsic matrix
[R | T], full projection matrixP = M_int · M_ext(3×4), camera calibration via checkerboard cube, solving Ap=0 with \(\|p\|=1\), QR factorization to extract K and R, uncalibrated stereo (5-step algorithm), essential matrix E vs fundamental matrix F (\(E = K_{L}^{T}\cdot F\cdot K_{R}\) and \(E = T_\times \cdot R\)), SVD to extract R and T from E, dense correspondence on epipolar lines, triangulation (least-squares pseudo-inverse), feature-graph + bundle adjustment, multi-view reconstruction, patch-based MVS, voxel coloring, photo-tourism, smartphone portrait mode. - Code files:
Ex/6/sheet6/epipolar_geometry.py(stereo rectification = practical preview). - Trial exam questions: Q9a extracting intrinsics from projection matrix, Q9b two types of camera parameters and how often they change, Q9c three T/F (extrinsic to pixels directly, radial distortion via affine, depth from disparity by triangulation).
- Key concepts: K is upper triangular, R is orthonormal → QR-decomposable, intrinsic ≠ change with motion, extrinsic = changes when camera moves, triangulation = where rays are closest.
Chapter 11 — Neural Radiance Fields (NeRFs) (10 pts)¶
- PDF sections: physics-based vs image-based rendering, rendering equation (emission + reflection integral), volume rendering primer (ray-casting through voxel grid, alpha compositing front-to-back), NeRF input/output: 5-D \((x, y, z, \theta , \phi )\) → \((R, G, B, \sigma )\), MLP with 9 layers / 256 channels, hierarchical sampling (coarse + fine via importance sampling), why both position and direction (view-dependent appearance, specularity), positional encoding \(\gamma (p) = (\sin 2^{0}\pi p, \cos 2^{0}\pi p, \ldots , \sin 2^{L-1}\pi p, \cos 2^{L-1}\pi p)\) to overcome spectral bias, shape-radiance ambiguity → architectural fix (direction enters at penultimate layer), training with simple ‖render − photo‖² loss, expected depth = accumulated density, drawbacks (3 days to train, 1-2 min/frame to render), NeRF++ (foreground/background), NeRF in the wild (transient + appearance NeRFs for tourist photos).
- Code files: none.
- Trial exam questions: Q10 five T/F (3-D coords + direction → color & density; voxel grids; multiple posed images; explicit mesh; ray marching). All five give the canonical answer.
- Key concepts: implicit scene representation, density σ + color c per query, ray marching with hierarchical sampling, positional encoding lifts low-frequency MLP bias, view-direction comes late (penultimate layer).
3. Suggested study order (priority by point weight × difficulty)¶
- Chapter 02 (Filtering / Edges) — 20 pts, requires manual convolution computation.
- Chapter 07 (Parametric / Scattered Data) — matrix decomposition is mechanical but error-prone.
- Chapter 08 (Epipolar / Depth) — heavy numerical block (3-D point reconstruction).
- Chapter 04 (ML) — formulas-based, easy points if you remember definitions.
- Chapter 09 (Morphing) — short questions but tricky formula explanation.
- Chapter 10 (Calibration) — many T/F + theory.
- Chapter 05 (Features) — perspective formula is easy, T/F traps.
- Chapter 06 (Optical Flow) — short answer on backward warping plus T/F.
- Chapter 01 (Image Acquisition) — colour spaces are mostly memorisation.
- Chapter 11 (NeRFs) — only T/F questions.
4. Output files (all under CVML Exam Prep/)¶
Per chapter (11 chapters, 22 files):
* Chapter_01_Image_Acquisition.md / .pdf
* Chapter_02_Filtering_Edges_Thresholding.md / .pdf
* Chapter_04_Machine_Learning.md / .pdf
* Chapter_05_Features.md / .pdf
* Chapter_06_Optical_Flow.md / .pdf
* Chapter_07_Parametric_Transformations.md / .pdf
* Chapter_08_Epipolar_Geometry_and_Depth.md / .pdf
* Chapter_09_Morphing_View_Synthesis.md / .pdf
* Chapter_10_Camera_Calibration.md / .pdf
* Chapter_11_Neural_Radiance_Fields.md / .pdf
Combined files (5 × 2 = 10 files):
* CVML_Exam_Master_Index.md / .pdf
* CVML_Final_Exam_Revision.md / .pdf
* CVML_Deep_Question_Bank.md / .pdf
* CVML_Coding_Visualization_Practice.md / .pdf
* CVML_Trial_Exam_Analysis.md / .pdf
(Note: there is no Chapter 03 because the lectures merge "Image Acquisition's Filtering" with "Edges & Thresholding" into a single block; Chapter 02 covers both.)