Date |
Content of the Lecture |
Assignments/Readings/Notes |
27th July (Tue) |
Overview
- Course content
- Course policies
- Applications of image processing
|
|
30th July (Fri) |
Image Alignment
- Image basics: pixel, domain, size, resolution
- Digital and physical correspondence, concept of image alignment
- Motion models: rotation, translation, affine, scaling, shearing, matrix representation, low rank transforms, composition of transformations
- Control-point based image alignment
- MSSD/MSE based image alignment, concept of field of view
- Image warping: forward and reverse, bilinear interpolation
|
- Read sections 2.4.3, 2.4.4, 2.6.5 of the book by Gonzalez and Woods
|
3rd August (Tue) |
- Image alignment when intensity profiles are not the same: transformed MSSD, Normalized cross-correlation, joint entropy
- Concept of image histograms, joint image histograms, entropy and joint entropy, use of joint entropy for image alignment
- Applications of image alignment: template matching, panorama generation
- Clarifications regarding concept of field of view in image alignment
|
- Read sections 2.4.3, 2.4.4, 2.6.5 of the book by Gonzalez and Woods
|
6th August (Fri) |
Image Intensity Transformations and Image Enhancement
- Concept of image intensity transformation and image enhancement
- Negatives, logarithmic, power-law (gamma) transformations, linear contrast stretching
- Histogram equalization: concept, derivation, examples
|
- Read sections 3.2, 3.3 of the book by Gonzalez and Woods
|
10th August (Tue) |
- Histogram specification: concept, derivation, examples
- Local Histogram equalization/specification
MATLAB examples and demos
- Vectorization in MATLAB, vector and matrix operations
- Image processing: basic operations in MATLAB (imread, imwrite, imagesc, imshow)
- Basic numerical operations in MATLAB
|
- Read sections 3.2, 3.3 of the book by Gonzalez and Woods
|
13th August (Fri) |
- Local spatial filters
- Convolution and correlation operations: examples, properties, derivation of correlation (template matching) and convolution (Linear time/space-invariant systems)
- Mean and median filtering; examples of linear and non-linear filters
|
- Read sections 3.4, 3.5 of the book by Gonzalez and Woods
|
17th August (Tue) |
- Derivative operators in 1D and 2D, and their properties
- Laplacian-based sharpening filter, unsharp masking
- Laplacian of Gaussians, Sobel filter
- Separable convolution filters and their advantages
- Bilateral filters and their advantages, cross-bilateral filters
- Bokeh filters
|
- Read sections 3.6, 10.2.1 of the book by Gonzalez and Woods
|
20th August (Fri) |
Edge and Corner Detection
- Derivative operators in 1D and 2D, and their properties
- Laplacian of Gaussians, Sobel filter, Prewitt filter
- Marr-Hildreth edge detector
- Canny edge detector with non-maximal suppression and hysterisis thresholding
- Corner detection: importance of corners in image matching
- Harris corner detection criterion
- Structure tensor and its eigen-analysis; behaviour in constant intensity regions, regions with edge, regions with a corner
|
- Read sections 10.2, 10.3 of the book by Gonzalez and Woods
|
24th August (Tue) |
Image Segmentation
- Image segmentation: concept
- Segmentation as a clustering problem
- KMeans algorithm and its limitations
- Concept of gradient ascent; mode finding given a PDF
- Concept of nonparametric probability density estimation using kernels (kernel density estimation)
- Mean shift algorithm
|
|
27th August (Fri) |
- Mean shift algorithm
- Mean shift properties - convergence (brief discussion only)
- Mean shift applied to image smoothing and image segmentation
- Hough transform for line (with normal line representation instead of slope-intercept), circle and ellipse detection
- Pros and cons of Hough transform
|
|
31st August (Tue) |
Fourier Analysis
- Fourier series: formula and basic properties
- Fourier transform: examples, intuition, properties: linearity, shift theorem and its variant, convolution theorem and its variant, Parseval's theorem
- Fourier transforms in 2D
- Brief mention of applications of a Fourier Transform
|
|
3rd September (Fri) |
- The heat equation and its application in image blurring
- Applications of Fourier transforms in solving the heat equation; equivalence of heat equation and Gaussian convolution
- Anisotropic diffusion and the Perona Malik PDE
- Directed diffusion
|
|
7th September (Tue) |
|
|
21st September (Tue) |
- Discrete fourier transform (DFT): Fourier transform of a sampled version of a continuous signal, frequency-domain sampling of such a Fourier transform to get the DFT
- Orthonormality of DFT matrix; reason for equal number of time domain and frequency domain samples
- Implicit periodicity in DFT and IDFT, other basic properties of the DFT
- Discrete (circular) convolution - wrap-around issues and zero-padding, implementation using DFT and IDFT
|
|
24th September (Fri) |
- Fast Fourier transform (FFT) algorithm
- 2D-DFT and IDFT, basic properties, importance of phase in Fourier transforms
- Interpretation of DFT of images; power law in natural images
- Visualization of 2D DFT
- Fourier rotation theorem
- Frequency domain filtering: ideal low pass filter (LPF) and ringing artifacts, Butterworth and Gaussian LPF; ideal, Butterworth and Gaussian high pass filters (HPF);
- Gaussian kernel - in spatial and Fourier domain
|
|
28th September (Tue) |
- Frequency domain filtering: ideal low pass filter (LPF) and ringing artifacts, Butterworth and Gaussian LPF; ideal, Butterworth and Gaussian high pass filters (HPF); Notch filters
- Gaussian kernel - in spatial and Fourier domain
- Applications of Fourier transform: Hybrid images
- Introduction to tomography: Fourier slice theorem (projection slice theorem)
- Fourier transforms in action: optics (phase retrieval), Magnetic resonance imaging (MRI) -- brief mention only
|
- Chapter 4 of Gonzalez; sections 5.11.1, 5.11.3, 5.11.4, 5.11.5 of Gonzalez
|
1st October (Fri) |
- Revision of Fourier Transforms
|
|
5th October (Tue) |
Principal Components Analysis (PCA)
- Face recognition: intro
- Principal components analysis for face recognition (eigenfaces): intro, concept of covariance matrix, description of algorithm and its computational complexity;
- A faster algorithm for PCA on a small (N) number of large-sized images (N < d case).
|
- Read section 3.8.1 of "Pattern Classification" by Duda and Hart (2nd edition)
|
8th October (Fri) |
- Derivation of PCA algorithm for k=1 case, sketch of proof for k=2 case
- Eigenvalue decay in eigenfaces derived from well-aligned face images
- Choice of k in PCA
- Person or pose specific eigenfaces
- Illumination invariance in face recognition: Removal of top three eigenfaces
- PCA for compression of sets of similar images
- A word about face recognition under lighting variations; 3D face recognition; cross-modality face recognition
- Clarification of mathematical derivations: orthonormality of eigenvectors of symmetric matrix, why covariance matrix is SPD, Lagrange multipliers, concept of vector derivatives (especially of expressions such as e^tSe and e^te w.r.t. vector e)
|
- Read section 3.8.1 of "Pattern Classification" by Duda and Hart (2nd edition)
|
12th October (Tue) |
- Clarification of mathematical derivations: orthonormality of eigenvectors of symmetric matrix, why covariance matrix is SPD, Lagrange multipliers, concept of vector derivatives (especially of expressions such as e^tSe and e^te w.r.t. vector e)
- Singular Value Decomposition
- Singular value decomposition (SVD): varied expressions
- Application of SVD for image compression
- Eckart Young theorem for low rank approximation using SVD
- SVD: geometric interpretation; applications in linear algebra
- PCA/eigenfaces algorithm using SVD, brief mention of other applications of SVD
|
- Read section 3.8.1 of "Pattern Classification" by Duda and Hart (2nd edition)
|
22nd October (Fri) and 26th October (Tue) |
Image Restoration
- Introduction to image restoration - differences between enhancement and restoration
- Introduction to blur models - spatially varying and spatially invariant blur, defocus blur
- Blur models: defocus blur, motion blur, derivation of motion blur frequency response for in-plane constant velocity translational motion, interpretation of fourier transform of a motion blurred image
- Inverse filter: definition, limitations
- Code blur camera (see code demo), flutter shutter camera - spread spectrum filtering
- Concept of Wiener filter and formula, interpretation of the formula
- Derivation of Wiener filter
- Regularized restoration using gradient penalty terms
- PCA for image denoising: algorithm description and sample outputs
- Derivation of Wiener filter for PCA denoising
|
|