CS663 - Digital Image Processing

Instructor: Ajit Rajwade
Office: SIA-218, KReSIT Building
Email:
Lecture Venue: MSTeams
Lecture Timings: Slot 11, Tuesday and Friday 3:30 to 5 pm
Instructor Office Hours (in room SIA-218): 5 to 6 pm on Tuesday and Friday
Teaching Assistants: Akshay Gaikwad, Navya Muttineni, Deepti Mittal, Yash Khemchandani, Tushar, Sanyam Raj, Zahid, Sai Ram { akshayg@cse, mnavya@cse, mittaldeepti@cse, yashkhem, 170100075, sanyamraj@cse, zahidw@cse, 193050056} AT iitb DOT ac DOT in


Textbooks and Resources


Tutorials

The tutorials can be found here.

Lecture Schedule:

(Continuing from the previous set of lectures taken by Prof. Suyash Awate)
Previous offerings of this course:

Date

Content of the Lecture

Assignments/Readings/Notes

Lectures 1 and 2 Principal Components Analysis
  • 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).
  • Check moodle: Slides
  • Read section 3.8.1 of "Pattern Classification" by Duda and Hart (2nd edition)
  • Information about projects: select topic by 12th October (read the instructions!)
Lecture 3
  • 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
  • Slides: check moodle
  • Read section 3.8.1 of "Pattern Classification" by Duda and Hart (2nd edition)
  • Information about projects: select topic by 12th October (read the instructions!)
Lecture 4
  • 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
  • Slides
  • Read section 3.8.1 of "Pattern Classification" by Duda and Hart (2nd edition)
  • Information about projects: select topic by 12th October (read the instructions!)
Lectures 5 and 6
  • 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
  • Slides for PCA and SVD: check moodle.
  • Read section 3.8.1 of "Pattern Classification" by Duda and Hart (2nd edition)
Lecture 6 Discrete 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
  • 2D-DFT and IDFT, basic properties, importance of phase in Fourier transforms
12/10 (Sat)
  • 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
15/10 (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
18/10 (Fri)
  • 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
19/10 (Sat)
  • 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
22/10 (Tue) Image Compression
  • Discrete cosine transform - definition and basic properties
  • 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
  • Relationship between DCT and PCA - see code here.
25/10 (Fri)
  • DCT and first order stationary Markov processes
  • Quantization in JPEG and its relation to the quality factor (Q); principles for derivation of quantization matrix
  • Huffman encoding and run length encoding in JPEG
  • JPEG decoder step
  • Modes of JPEG encoding and decoding: progressive, sequential
  • JPEG for color image compression: YCbCr color model and its relation to PCA on RGB values
29/10 (Tue)
  • Video compression: MPEG standard, predictive coding
  • Motion compensated rediduals
  • Concept of I,B,P frames
1/11 (Fri) Color Image Processing and Color Models
  • 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
5/11 (Tue)
  • Discussion about hue and illumination models with specular, ambient and diffuse lights
  • Color image processing: bilateral filtering, histogram equalization, color image gradients
  • YCbCr color space
8/11 (Fri)
  • Hyperspectral images: visualization, utility
  • Color Image demosaicing