Date |
Content of the Lecture |
Assignments/Readings/Notes |
3/8 (Thu) |
Overview
- Course content
- Course policies
- Applications of image processing
|
|
5/8 (Sat) |
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
|
- Slides
- Read sections 2.4.3, 2.4.4, 2.6.5 of the book by Gonzalez and Woods
|
7/8 (Mon) |
- 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
|
- Slides
- Read sections 2.4.3, 2.4.4, 2.6.5 of the book by Gonzalez and Woods
|
10/8 (Thurs) |
Image Enhancement
- Concept of image intensity transformation and image enhancement
- Negatives, logarithmic, power-law (gamma) transformations, linear contrast stretching
- Histogram equalization: concept, derivation, examples
- Histogram specification: concept, examples
|
- Slides
- Read sections 3.2, 3.3 of the book by Gonzalez and Woods
|
14/8 (Mon) |
- Histogram specification: derivation, examples
- Local/Adaptive Histogram equalization
- 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
- Introduction to derivative filters in image processing
MATLAB examples
|
- Slides
- Read sections 3.2, 3.3, 3.4, 3.5 of the book by Gonzalez and Woods
|
17/8 (Thurs) |
- 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
|
|
21/8 (Mon) |
- Bilateral filters and their advantages, cross-bilateral filters
- Bokeh filters
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
|
|
28/8 (Mon) |
Edge and Corner Detection
- 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
Hough Transform
Hough transform for line (with normal line representation instead of slope-intercept), circle and ellipse detection
Pros and cons of Hough transform
|
|
31/8 (Thurs) |
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
|
|
4/9 (Mon) |
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
- 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
|
|
7/9 (Thurs) |
- 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
|
|
11/9 (Mon) |
- Revision of previous two lectures
|
|
14/9 (Thurs) |
- 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: Radon transform
|
|
25/9 (Mon) |
- Introduction to tomography: Radon transform
- Fourier slice theorem
- Beer's law in tomography
- Shannon's sampling theorem, concept of Nyquist rate, concept of aliasing
|
|
5/10 (Thurs) |
- Discussion session on Fourier transforms: basis images and their importance for inverse fourier transforms. Code
- Fourier shift theorem and applications in image alignment with translation. Code
- Importance of fftshift
- Effect of zero padding on Fourier transforms of an image
- Fourier rotation theorem. Code
- Discrete fourier transform of a complex exponenial with integer and non-integer frequencies. Code
Face Recognition
Face recognition: intro
Face recognition, face detection, face verification, challenges in face recognition, concept of training and test phase of a face recognition system
|
|
9/10 (Mon) |
Face recognition: intro
Face recognition, face detection, face verification, challenges in face recognition, concept of training and test phase of a face recognition system
PCA algorithm
A faster algorithm for PCA on a small (N) number of large-sized images (N < d case).
Derivation of PCA algorithm for k=1 case, sketch of proof for k=2 case
|
|
12/10 (Thurs) |
Derivation of PCA algorithm for k=1 case, sketch of proof for k=2 case
Clarification about Lagrange multipliers
Illumination invariance in face recognition: Removal of top three eigenfaces
Eigenvalue decay in eigenfaces derived from well-aligned face images
Choice of k in PCA
|
|
16/10 (Mon) |
- Discussion on Illumination invariance in face recognition: Removal of top three eigenfaces
- Person-specific eigenspaces
- PCA for compression
- Face recognition from other modalities
Singular Value Decomposition (SVD)
- 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
|
|
19/10 (Thurs) |
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
|
|
23/10 (Mon) |
- 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
|
|
26/10 (Thu) |
Image Compression
- Image Compression: lossless and lossy
- Discrete cosine transform - definition and basic properties
- 1D and 2D DCT - concept of Kronecker product of 1D DCT bases to yield a 2D DCT basis
- Comparison between DCT and DFT: DCT computation using fft (see code), DCT energy compaction
- DCT quantization matrix, quantization step in JPEG, derivation of quantization matrix
|
|
30/10 (Mon) |
- Huffman encoding and run length encoding in JPEG
- Structure of Huffman encoder and decoder
- Properties of Huffman encoding: optimality, prefix-free nature
|
|
2/11 (Thu) |
- JPEG for Color image compression, YCbCr color scheme
- Typical JPEG artifacts
- Video compression with MPEG: concept of residuals, motion compensation residuals and motion vectors; concept of I,P,B frames in MPEG
|
|
6/11 (Mon) |
Color Image Processing
- Color models: RGB, CMY(K), HSI, YCbCr, merits and demerits of hue
- Human visual system: rods and cones
- Discussion about hue and illumination models with specular, ambient and diffuse lights
|
|