CVML Final Exam Revision Guide¶
A compact "last-day before exam" guide. One page per chapter, plus templates and strategies.
Strategy for the Real Exam¶
- First pass — easy points. Sweep through T/F questions. Skip if unsure (0 > −1).
- Second pass — numerical. Show every line, units consistent. Box your final answer.
- Third pass — short answer. 1–3 sentences using the precise technical term.
- Final pass — review flagged items for arithmetic and sign errors.
Time budget (90 min)¶
- 10 min for the high-weight numerical (Q2c convolution, Q7b stereo).
- 5 min per other numerical.
- 1 min per T/F (≈ 25 min in total).
- Remaining time on short-answer.
Strategy by question type¶
- Theory question (1–2 sentences). Use the precise technical term, give the purpose, then a one-line derivation/explanation. Don't ramble.
- Mathematical question. Restate the formula, identify all symbols, plug in numbers, simplify, give units. Box the answer.
- Coding question. Sketch pseudocode + key library calls (e.g.
cv2.GaussianBlur,cv2.findHomography). Mention edge cases. - Image / plot interpretation. Match high-level patterns: high disparity ⇒ close; bright Fourier dot off-centre ⇒ specific frequency direction; loss diverging ⇒ learning rate too high; etc.
Short answer templates¶
Define + Why + Equation + Example. "[Term] is …; this matters because …; mathematically …; e.g. in [application]."
Compare X vs Y. "Both X and Y aim to …; they differ in [criterion]; X is better when …; Y when …; example: …".
Last-Minute Revision Checklist¶
- [ ] HSV: hue rotates colours; sat → grey; value → dark.
- [ ] Print = subtractive = CMYK; LED = additive = RGB.
- [ ] Aperture ↑ → DoF ↓ → image brighter.
- [ ] Barrel = wide-angle; pincushion = telephoto.
- [ ] Convolution mirrors the kernel before sliding.
- [ ] Gaussian smooths without ringing; box does ring; median kills salt-and-pepper.
- [ ] Sobel = central diff ⊗ Gaussian; Prewitt = ⊗ box.
- [ ] DoG ≈ LoG; both band-pass.
- [ ] Otsu maximises between-class variance; adaptive uses local stats.
- [ ] Concrete-wall trick: subtract heavy Gaussian-blurred copy.
- [ ] Z = b·f/d.
- [ ] Disparity = pixels; depth = metric.
- [ ] F is 3×3, rank 2, 7 DoF; E = K_Lᵀ F K_R = T_× · R; 5 DoF.
- [ ] Optical-flow equation: \(Ix\cdot u + Iy\cdot v + It = 0\).
- [ ] LK = local + structure tensor (Harris). Fails homogeneous.
- [ ] HS = global + smoothness.
- [ ] Backward warp = gather, no holes.
- [ ] Forward warp = scatter, holes & overlaps.
- [ ] Harris score \(R = \det (H) - k\cdot \operatorname{trace}(H)^{2}\), \(k \in [0.04, 0.06]\).
- [ ] SIFT 128-D, ratio test 0.6/0.8.
- [ ] Confusion matrix: Acc = TP+TN/Total, Sens = TP/(TP+FN), Spec = TN/(TN+FP).
- [ ] Epoch = one full pass over training data.
- [ ] Normalise after train/test split.
- [ ] More layers ≠ better.
- [ ] M = T·R·S reads right-to-left: scale, rotate, translate.
- [ ] Pivot rotation = T(P)·R(θ)·T(−P).
- [ ] Catmull-Rom = auto tangents \((P_{i+1} - P_{i-1})/2\), no overshoot.
- [ ] Hermite = position + manual tangent; can overshoot.
- [ ] TPS = "as smooth as possible" closed-form; can overlap.
- [ ] Morph in image space ⇒ NOT physically valid; rectify-then-interpolate is.
- [ ] Cross-dissolve = blend without warp.
- [ ] P = K·[R|T]; intrinsics K stay; extrinsics R,T change.
- [ ] RQ factorisation gives K and R from P[:,:3].
- [ ] Radial distortion is non-linear — never affine.
- [ ] NeRF input 5-D (xyz+θφ), output 4-D (RGB+σ).
- [ ] NeRFs use ray marching, NOT voxels, NOT meshes.
- [ ] Positional encoding kills MLP spectral bias.
- [ ] View direction enters at the penultimate layer (avoids shape-radiance ambiguity).
Chapter Summaries — One Page Each¶
Chapter 01 — Image Acquisition¶
- Image = 2-D function, sampled to a pixel matrix.
- RGB additive, CMYK subtractive, HSV artistic, Lab perceptual.
- Pinhole projection \(p' = f \cdot p / z\) (similar triangles).
- Aperture ↑ → DoF ↓ + brighter; aperture ↓ → DoF ↑ + darker.
- Barrel distortion in wide-angle lenses; lines bow outward.
- CCD → streaking; CMOS → rolling shutter.
- Bayer pattern over-represents green.
- Gaussian noise: \(I_{noisy} = I + N(\mu , \sigma ^{2})\).
- Trial-exam: Q1a-d.
Chapter 02 — Filtering, Edges, Thresholding (20 pts)¶
- Convolution mirrors then slides kernel; correlation does not.
- Box (uniform), sinc (frequency cutoff), Gaussian (smooth, no ringing), median (salt-and-pepper).
- Sobel & Prewitt = first derivative (gradient); Laplacian = second derivative (zero-crossings = edges).
- DoG ≈ LoG (band-pass; SIFT scale space).
- Otsu = max between-class variance; adaptive = per-pixel local threshold for uneven illumination.
- Concrete-wall gradient removal: subtract heavily Gaussian-blurred image (high-pass).
- Manual convolution: stack kernel, multiply, sum, mind the sign and the mirroring.
- Power-spectrum reading: stripes ↔ perpendicular bright spots; DC at centre = average; high freq at periphery.
- Trial-exam: Q2a (Fourier match), Q2b (theory ×4), Q2c (numerical convolution), Q2d (filter category + more).
Chapter 04 — Machine Learning¶
- Perceptron \(y = a(\Sigma w_{i}x_{i} + b)\).
- ReLU hidden, softmax classification output, sigmoid binary, linear regression.
- Cross-entropy classification; MSE regression.
- Train / val / test split; normalise after splitting.
- K-fold CV for small data.
- CNN = conv + max-pool + dense + softmax; first layers learn Gabor-like filters.
- Confusion matrix: Acc = (TP+TN)/Total; Sens = TP/(TP+FN); Spec = TN/(TN+FP); Prevalence = (TP+FN)/Total.
- Epoch = one full pass over training data.
- More layers ≠ better; risk of overfitting; mitigations = dropout, early stopping, augmentation, regularisation.
- Trial-exam: Q3a-i, ii, iii (confusion matrix), Q3b (epoch), Q3c (3 T/F).
Chapter 05 — Features¶
- Pinhole \(p' = f \cdot p / z\). (Trial Q4a: \((10,5,3), f=2 \to (20/3, 10/3)\).)
- Good feature = unique, repeatable, invariant.
- Edge has 1 big eigenvalue; corner has 2.
- Harris score \(R = \det (H) - k\cdot \operatorname{trace}(H)^{2}\), \(k \in [0.04, 0.06]\).
- NCC scale-invariant; ZMNCC also offset-invariant. Both fail under non-linear lighting (specular, shadows, colour cast).
- SIFT 128-D, ratio test 0.6/0.8; rotation/scale/illumination invariant.
- Diagonals of Harris matrix encode squared gradient sums (NOT shear/rotation).
- Trial-exam: Q4a (numerical), Q4b (ZMNCC fix), Q4c (5 T/F).
Chapter 06 — Optical Flow¶
- OF equation: \(Ix\cdot u + Iy\cdot v + It = 0\) (one equation, two unknowns ⇒ aperture problem).
- Lucas-Kanade = local; uses structure tensor (= Harris matrix); fails in homogeneous regions.
- Horn-Schunck = global; adds smoothness term \(\lambda \cdot (\|\nabla u\|^{2} + \|\nabla v\|^{2})\); fills homogeneous; blurs edges.
- Backward warping = gather; no holes; standard for OF.
- Forward warping = scatter; can have holes & overlaps.
- Bilinear interpolation for sub-pixel lookup.
- Pyramidal coarse-to-fine for big motion.
- FlowNet 2.0 fast but still bad on occlusions / fine texture.
- Specular surfaces violate brightness constancy.
- Trial-exam: Q5a (backward warp), Q5b (5 T/F).
Chapter 07 — Parametric Transformations¶
- DoF: Euclidean 3, similarity 4, affine 6, projective 8.
- \(M = T \cdot R \cdot S\) — read right-to-left (scale, rotate, translate).
- Pivot rotation: \(T(P) \cdot R(\theta ) \cdot T(-P)\).
- Homogeneous coords (x, y, 1) make translation expressible as a matrix multiply.
- Homography: 3×3, 8 DoF, fit via DLT from ≥ 4 correspondences.
- Bézier curve has degree-(n−1) basis polynomials; cubic uses 4 control points.
- Hermite = positions + tangents (overshoots possible).
- Catmull-Rom = auto tangents \((P_{i+1}-P_{i-1})/2\), never overshoots, interpolates all control points.
- TPS = closed-form smoothest warping; integrand of Hessian² = continuous Harris matrix; can overlap; straight lines bend.
- Trial-exam: Q6a (decomposition), Q6b (3-step rotation), Q6c (Catmull-Rom vs Hermite).
Chapter 08 — Epipolar Geometry & Depth¶
- \(Z = b \cdot f / d\) — depth from disparity.
- Disparity in pixels; depth in metric units.
- F: 3×3, rank 2, 7 DoF. \(x'^{T} F x = 0\).
- E: 5 DoF; \(E = K_{L}^{T} F K_{R} = T_\times \cdot R\). SVD recovers (R, T).
- Rectification puts epipolar lines on scan-lines ⇒ 1-D search for stereo matches.
- Block matching: SAD, SSD, NCC; Census + Hamming robust to lighting.
- Smoothness models: Potts; intensity-adaptive Potts; truncated linear.
- Graph cuts (α-expansion) ≈ optimal global stereo.
- Trial-exam: Q7a (depth from stereo), Q7b-i/ii/iii (numerical setup), Q7c (optical axis & epipolar line).
Chapter 09 — Morphing / View Synthesis¶
- Cross-dissolve = blend, no geometric alignment.
- Morphing = warp + cross-dissolve.
- Image-space morph is not physically valid; rectify-then-interpolate is.
- Trial-exam formula: \(\hat{x} = H_{1}^{-1} (H_{1} x + t \cdot (H_{2} x' - H_{1} x))\) — rectify, interpolate, un-rectify.
- Sand-Teller video matching uses parallax similarity + motion magnitude.
- Virtual video camera = space-time cube + tetrahedralisation + view morph.
- Trial-exam: Q8a (formula), Q8b (rectification benefit), Q8c (3 T/F).
Chapter 10 — Camera Calibration¶
- Intrinsics K (5 numbers): \(f_{x}, f_{y}, o_{x}, o_{y}, s\). Don't change with camera motion.
- Extrinsics [R | T]: 6 numbers; change every motion.
- \(P = K \cdot [R | T]\) — 11 DoF.
- RQ factorisation of
P[:, :3]gives K and R; \(T = K^{-1} \cdot P[:, 4]\). - \(E = K_{L}^{T} F K_{R} = T_\times \cdot R\); recover (R, T) via SVD.
- Triangulation (linear) recovers 3-D point from two views.
- Bundle adjustment minimises total re-projection error jointly over cameras + points.
- Radial distortion is non-linear; affine cannot correct it.
- Trial-exam: Q9a (intrinsics extraction), Q9b (parameter types), Q9c (3 T/F).
Chapter 11 — Neural Radiance Fields¶
- \((x, y, z, \theta , \phi ) \to (R, G, B, \sigma )\) — small MLP, 9 layers, 256 channels.
- Volume rendering: \(\alpha _{i} = 1 - \exp (-\sigma _{i} \cdot \delta _{i})\); alpha-composite front-to-back.
- Hierarchical sampling: coarse uniform + fine via importance.
- Positional encoding \(\gamma (p) = (\sin 2^{0}\pi p, \cos 2^{0}\pi p, \ldots )\) overcomes spectral bias.
- View direction enters at the penultimate layer to avoid shape-radiance ambiguity.
- Training requires multiple posed images of a static scene.
- No voxel grid, no explicit mesh.
- Slow: 3-day train, 1-min/frame inference (vanilla).
- NeRF++ for unbounded scenes; NeRF in the Wild for tourist photos.
- Trial-exam: Q10 (5 T/F).
High-Probability Exam Topics (based on trial exam + exercises)¶
- Numerical convolution with a 1-D kernel (Q2c).
- Confusion-matrix arithmetic (Q3a).
- Pinhole projection arithmetic (Q4a).
- Matrix decomposition \(M = T\cdot R\cdot S\) (Q6a).
- Stereo 3-D reconstruction (Q7b).
- T/F questions everywhere — memorise the rules.
- Theory short-answers: Gaussian / DoG / global vs local thresholding / view morphing / intrinsics vs extrinsics.
Last-Day Mantras (memorise these)¶
- "Pinhole: \(p' = f\cdot p/z\)."
- "Aperture ↑ → DoF ↓ → brighter."
- "Convolution mirrors. Box rings. Gaussian smooths. Median kills salt-and-pepper."
- "DoG ≈ LoG."
- "Otsu = automatic global; adaptive = per-pixel."
- "\(Z = b\cdot f/d\)."
- "F: 3×3, rank 2, 7 DoF. E removes K from F."
- "OF: \(Ix u + Iy v + It = 0\). LK fails homogeneous; HS smooths edges."
- "Backward warp = gather, no holes."
- "M = T·R·S right-to-left."
- "Catmull-Rom auto tangents, never overshoots."
- "P = K·[R|T]; RQ-decompose P[:,:3] for K, R."
- "Radial distortion is NEVER affine."
- "NeRF: 5-D in, 4-D out, ray-march, no voxels, no mesh."
- "Image-space morph is fake; rectify then interpolate."
Key-Term Quick Reference (English ↔ বাংলা)¶
| Topic | Term | বাংলা ব্যাখ্যা |
|---|---|---|
| 1 | focal length | লেন্স থেকে ইমেজ-প্লেনের দূরত্ব |
| 1 | aperture | লেন্সের আলো ঢোকার ছিদ্র |
| 1 | depth of field | কত দূর পর্যন্ত ছবি ঝকঝকে থাকে |
| 1 | barrel distortion | সরলরেখা বাইরের দিকে ফুলে যাওয়া (wide-angle) |
| 1 | hue / saturation / value | রঙের ধরন / তীব্রতা / উজ্জ্বলতা |
| 1 | noise | আসল মান আর মাপা মানের পার্থক্য |
| 2 | convolution | ছবির ওপর ছোট ম্যাট্রিক্স (kernel) বসিয়ে নতুন মান |
| 2 | smoothing | আশেপাশের গড় নিয়ে noise কমানো |
| 2 | edge detection | যেখানে intensity হঠাৎ বদলায় তা খোঁজা |
| 2 | threshold | যার উপরে 1, নিচে 0 |
| 2 | low-/high-pass filter | ধীর পরিবর্তন রাখে / দ্রুত পরিবর্তন রাখে |
| 4 | loss function | মডেল কতটা ভুল করছে তার মাপ |
| 4 | learning rate | gradient ধাপের আকার |
| 4 | confusion matrix | কোন class কোনটার সাথে গুলিয়েছে |
| 5 | structure tensor | gradient-এর কোভ্যারিয়েন্স ম্যাট্রিক্স |
| 5 | scale space | বিভিন্ন blur স্তরে ছবির প্রতিনিধিত্ব |
| 5 | keypoint | ট্র্যাক করার মতো বিশেষ বিন্দু (corner) |
| 6 | optical flow | প্রতি পিক্সেলের আপাত গতিভেক্টর |
| 6 | brightness constancy | একই বিন্দুর রঙ দুই ফ্রেমে এক রকম থাকা |
| 6 | forward/backward warping | scatter (গর্ত হয়) / gather (নিরাপদ) |
| 7 | homography | projective 3×3 রূপান্তর, 8 DOF |
| 7 | homogeneous coordinates | (x, y, w) — শেষে w দিয়ে ভাগ |
| 8 | disparity / depth | পিক্সেল-ভিন্নতা d / গভীরতা Z = b·f/d |
| 8 | rectification | epipolar line-গুলোকে অনুভূমিক করা |
| 8 | fundamental / essential matrix | uncalibrated F (7 DOF) / calibrated E (5 DOF) |
| 8 | epipole / epipolar line | অন্য ক্যামেরার ছবি-বিন্দু / খোঁজার ১-D লাইন |
| 9 | cross-dissolve | শুধু রঙ মেশানো — ghost হয় |
| 9 | morphing / view interpolation | warp + blend / মাঝের দৃশ্য বানানো |
| 10 | intrinsic / extrinsic | ক্যামেরার ভেতরের K / ভঙ্গি R, t |
| 10 | calibration / projection matrix | K / P = K[R |
| 10 | bundle adjustment | সব ক্যামেরা + 3D বিন্দু একসাথে অপ্টিমাইজ |
| 11 | radiance field | F(x, y, z, θ, φ) → (r, g, b, σ) |
| 11 | volume rendering / ray marching | ray বরাবর নমুনা জমিয়ে রঙ |
| 11 | positional encoding | sin/cos দিয়ে উঁচু frequency শেখানো |
| 11 | spectral bias | MLP-এর কম-ফ্রিকোয়েন্সি শেখার প্রবণতা |
Good luck. Ruhe bewahren — and Viel Erfolg!