**ECE 439 Digital Image
Processing**

**Goals: **

- Give the students a general understanding of the fundamentals of digital image processing.
- Introduce the student to analytical tools which are currently used in digital image processing as applied to image information for human viewing.
- Develop the students ability to apply these tools in the laboratory in image restoration, enhancement and compression.

**Instructional
Objectives:**

*By Test 1, the students should:*

- Understand differences between computer vision and image processing.
- Know the basic components of an image processing system.
- Understand the basics of the human visual system as they relate to image processing; including spatial frequency resolution and brightness adaption.
- Understand how images are represented; including optical images, analog images, and digital images. Understand image types such as binary images, gray-scale images, color and multi-spectral images.
- Know the key concepts in image file formats.
- Understand the model for an image analysis process.
- Understand why preprocessing is performed and know about image geometry, convolution masks, image algebra and basic spatial filters.
- Understand image quantization in both the spatial and brightness domains.
- Understand how discrete transforms work; including concepts of basis images, orthogonality, orthonormality, separability and reversibility.
- Know about the 2-D Fourier, discrete cosine, Walsh-Hadamard and wavelet transforms; including implied symmetry, phase, circular convolution, vector inner and outer products and filtering.
- Know why log remapping is necessary for viewing spectral image data.
- Understand lowpass, highpass, bandpass, notch filters; including ideal and non-ideal filters such as the Butterworth.

*By Test 2, the students should:*

- Know the three categories of image processing applications: restoration, enhancement and compression.
- Know how to manipulate histograms for image enhancement; including histogram stretching, shrinking, equalization and specification. Understand the corresponding algorithms and equations.
- Understand gray-scale modification, how it relates to histogram manipulation and understand their mapping equations.
- Understand adaptive contrast enhancement filters and their equations.
- Understand the uses of pseudo-color. Know how to use it in both the spatial and frequency domains.
- Understand image sharpening concepts - how it is done in both the spatial and frequency domains.
- Know commonly used image sharpening algorithms; including highpass, high frequency emphasis and homomorphic filtering.
- Understand the concepts of unsharp masking and how to develop an application-specific sharpening algorithm.
- Understand image smoothing in both the spatial and spectral domains.
- Know the system model for image restoration, and appreciate the differences bewten restoration and enhancement.
- Know how to use filters, both spatial and frequency, to mitigate the effects of noise in images. Including gaussian, uniform, gamma, Rayleigh and salt & pepper noise.
- Understand order filters and their uses.
- Understand adaptive filter and concepts and uses.
- Know the basics of developing a degradation model and understand the concept of a point spread function (PSF).
- Understand the following frequency domain restoration filters and their mathematical models: inverse, Wiener, constrained least squares, geometric mean, power spectrum equalization, parametric Wiener, notch.
- Understand geometric transforms: including concepts of spatial transformation, gray-level interpolation, bilinear mapping, tiepoints and their meshes.
- Know the basics of image compression and decompression; including compression ratio, mapping, quantization and coding. Know the advantages and disadvantages of lossy and lossless compression.
- Know the differences between objective and subjective image fidelity criteria, including advantages and disadvantages of both.
- Understand error measures in image fidelity; including RMS, total and peak error.
- Understand the concept of entropy and its relation to image compression.
- Learn about the following compression and coding schemes: huffman, run length coding, LZW coding, arithmetic coding, block truncation coding, vector quantization, differential predictive coding, transform coding, zonal coding, JPEG and hybrid compression methods.

*By the final project in the laboratory: *

- Be able to use CVIPtools to solve image processing problems.
- Be able to write simple C functions using the CVIPtools libraries.
- Be able to develop application-specific algorithms for image processing.
- Have a practical and visual understanding of the Fourier transform properties of translation, rotation and convolution.
- Have a practical and visual understanding of filtering with the FFT, DCT and Walsh transforms. Including log remapping, use of various block sizes, implied symmetry, ideal versus butterworth filters, and Fourier phase.