CS663 - Digital Image Processing

Instructor: Ajit Rajwade
Office: SIA-218, KReSIT Building
Email:
Lecture Venue: LH 302
Lecture Timings: Slot 11, Tueday and Friday 3:30 to 5:00 pm
Instructor Office Hours (in room SIA-218): Immediately after class
Teaching Assistants: Preeti Gopal, Jerin Geo James, Vihari Piratla, Kalpesh Dusane, Vinit Unni, Anisha Chaudhan, Akash Sheoran, Rishabh Dabral { preetig, jeringeo,vihari,kalpeshd,vinit,anisha,akashiitb, rdabral } @ cse DOT iitb DOT ac DOT in


Textbooks and Resources



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

18/09 (Tue) 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).
  • 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!)
25/09 (Tue)
  • Derivation of PCA algorithm for k=1 case, sketch of proof for k=2 case
  • Person or pose specific eigenfaces
  • Choice of k in PCA
  • Illumination invariance in face recognition: Removal of top three eigenfaces
  • 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!)
28/09 (Fri)
  • 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)
  • PCA for compression of sets of similar images
  • A word about face recognition under lighting variations; 3D face recognition
5/10 (Fri) 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, geometric interpretation, a few mathematical properties
  • SVD applications

Discrete Fourier Transform (DFT)
  • 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
  • Implicity periodicity in DFT and IDFT, other basic properties of the DFT
9/10 (Tue)
  • Discrete (circular) convolution - wrap-around issues and zero-padding, implementation using DFT and IDFT
  • 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
12/10 (Fri)
  • 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); Notch filters
  • Gaussian kernel - in spatial and Fourier domain
  • Applications of Fourier transform: Hybrid images
  • Introduction to tomography: Fourier slice theorem (projection slice theorem)
16/10 (Tue)
  • Introduction to tomography: Fourier slice theorem (projection slice theorem)
  • Fourier transforms in action: optics (phase retrieval), Magnetic resonance imaging (MRI)

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
20/10 (Sat)
  • Inverse filter: definition, limitations
  • Concept of Wiener filter and formula, interpretation of the formula
  • Derivation of Wiener filter
  • Regularized restoration using gradient penalty terms
23/10 (Tue)
  • PCA for image denoising: algorithm description and sample outputs
  • Derivation of Wiener filter for PCA denoising

Image Compression
  • Introduction to lossless and lossy compression
  • Introduction to JPEG standard - basic steps of JPEG, concept of quality factor
26/10 (Fri)
  • 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
30/10 (Tue)
  • 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
2/11 (Fri)
  • Video compression: MPEG standard, predictive coding
  • Motion compensated rediduals
  • Concept of I,B,P frames
3/11 (Sat) 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
9/11 (Fri)
  • Color image histogram equalization and bilateral filtering
  • Concept of edges in a color image
  • Hyperspectral abd multispectral images: visualization, PCA for hyperspectral/multispectral image compression
  • Concept of color filter array (CFA)
  • Demosaicing algorithm by Malvar,He and Cutler
  • A note on when demosaicing is performed in the camera pipeline