ECE 418
Introduction to Image and Video Processing

Section Type Times Days Location Instructor
NB1 LAB -    
NL1 LEC 1230 - 1350 T R   245 Everitt Lab  Minh Do
Web Page
Official Description Concepts and applications in image and video processing; introduction to multidimensional signal processing: sampling, Fourier transform, filtering, interpolation, and decimation; human visual perception; scanning and display of images and video; image enhancement, restoration and segmentation; digital image and video compression; image analysis. Laboratory exercises promote experience with topics and development of C and MATLAB programs. Course Information: Prerequisite: ECE 310; credit or concurrent registration in one of ECE 313, STAT 400, IE 300, MATH 461; MATH 415; experience with C programming language.
Course Prerequisites Credit in ECE 310
Credit or concurrent registration in STAT 410 or ECE 313 or STAT 400 or MATH 461 or IE 400
Credit or concurrent registration in MATH 415
Course Directors Pierre Moulin
Detailed Description and Outline

To introduce students to both the fundamentals and emerging techniques in image and video processing.


  • Introduction
  • Basic multidimensional signal processing
    • sampling
    • Fourier transform
    • filtering
    • interpolation and decimation
  • Human visual perception
  • Image scanning and display
  • Video scanning and display
  • Image enhancement
  • Image compression
  • Video compression
  • Image analysis

Lecture Notes (required)

Recommended text:
A. Jain, Fundamentals of Digital Image Processing, Prentice-Hall, 1989.

Course Goals

This course is an elective. It introduces the fundamentals of image and video processing to seniors and has two dual goals: (1) provide students with a broad set of skills in this rapidly growing area, and (2) prepare students for further in-depth study of this field.

Instructional Objectives

A. By the time of Exam No.1 (after 10 lectures), the students should be able to do the following:

1. Compute a two-dimensional (2-D) Fourier transform in both discrete and continuous spatial coordinates, and implement the 2-D discrete Fourier transform. (a,b,k,m)

2. Identify an appropriate sampling resolution, given the 2-D spectrum of a continuous image. (a,b,k,m)

3. Perform 2-D finite-impulse-response (FIR) filtering of images. (a,b,k,m)

4. Design 2-D decimation and interpolation schemes. (a,b,k,m)

5. Understand basic properties of the human visual system. (a,b,c,k,m)

6. Quantitatively evaluate image quality based on Frei and Baxter’s color vision model. (a,b,c,k,m)

7. Determine appropriate specifications for a charge-coupled-device (CCD) camera. (a,b,c,e,k,m)

8. Determine appropriate specifications for the amplitude and spatial resolutions of an image display system based on the characteristics of the images and the contrast sensitivity and spatio-temporal modulation transfer function of the human visual system. (a,b,c,e,h,i,k,m)

9. Design appropriate specifications for a color quantization system based on the color vision properties of the human visual system. (a,b,c,e,h,i,k,m)

10. Design appropriate gamma correction techniques. (a,b,c,e,k,m)

11. Perform halftoning and error diffusion operations. (a,b,c,e,k,m)

B. By the time of Exam No.2 (after 20 lectures), the students should be able to do all of the items listed under A, plus the following:

1. Know basic features of digital video standards for high-definition television (HDTV), standard-definition television (SDTV), videoconferencing (CIF) and videophones (QCIF). (a,b,c,e,f,h,i,j,k,m)

2. Select an appropriate format for various video applications. (a,b,c,e,h,i,j,k,m)

3. Design a point operation to improve contrast or modify the dynamic range of grayscale and color images. (a,b,c,e,h,i,j,k,m)

4. Perform histogram equalization and histogram specification on an image. (a,b,c,e,h,i,j,k,m)

5. Design an edge-enhancing linear filter. (a,b,c,e,h,i,j,k,m)

6. Design low-pass and median filters for reducing the noise level in an image without drastically affecting image contents, and select an appropriate filter depending on noise characteristics. (a,b,c,e,h,i,j,k,l,m)

7. Derive and implement the linear Wiener restoration filter, given a measurement model and image and noise statistics. (a,b,c,e,h,i,j,k,l,m)

8. Derive and implement an adaptive Wiener filter. (a,b,c,e,h,i,j,k,l,m)

9. Estimate the entropy of a sequence of statistically independent symbols. (a,b,c,e,h,i,j,k,l,m)

10. Apply the concept of entropy to estimate the bit rate of a lossless image coder. (a,b,c,e,h,i,j,k,l,m)

11. Perform run-length coding of a binary image and bit plane encoding of a grayscale image. (a,b,c,e,h,i,j,k,l,m)

12. Perform lossless predictive coding of a grayscale image. (a,b,c,e,h,i,j,k,l,m)

13. Derive the Karhunen-Loeve transform based on second-order image statistics. (a,b,c,e,h,i,j,k,l,m)

14. Perform lossy predictive coding and transform coding of images. (a,b,c,e,h,i,j,k,l,m)

15. Know basic features of the JPEG compression standard (baseline, lossless, progressive and hierarchical modes) and wavelet image compression. (a,b,c,e,h,i,j,k,l,m)

C. By the time of the Final Exam (after 28 lectures), the students should be able to do all of the items listed under A and B, plus the following:

1. Perform motion compensation of video sequences using mean-squared-error and mean-absolute-error block matching criteria, and full or fast search techniques. (a,b,c,e,h,i,j,k,l,m)

2. Perform motion-compensated predictive coding of video using forward, backward, and bidirectional predictive methods. (a,b,c,e,h,i,j,k,l,m)

3. Select an appropriate encoding method for each macroblock in a video sequence. (a,b,c,e,h,i,j,k,l,m)

4. Know basic features of MPEG-2, MPEG-4, and H.264 video compression standards. (a,b,c,e,h,i,j,k,l,m)

5. Implement an edge detection algorithm. (a,b,c,e,h,i,j,k,l,m)

6. Represent a region boundary using chain codes and Fourier descriptors, and evaluate the effects of geometric image transformations on Fourier descriptors. (a,b,c,e,h,i,j,k,l,m)

7. Select appropriate features for image segmentation. (a,b,c,e,h,i,j,k,l,m)

Last updated: 5/23/2013 by Pierre Moulin