UG CONSULTANTS
Digital Image Processing
Course Contents
UNIT 1
Digital Image Representation
- Coordinate Conventions
- Images as Matrices
- Reading Images
- Displaying Images
- Writing Images
- Classes
- Image Types
- Gray-scale Images
- Binary Images
- A Note on Terminology
- Converting between Classes
- Array Indexing
- Indexing Vectors
- Indexing Matrices
- Indexing with a Single Colon
- Logical Indexing
- Linear Indexing
- Selecting Array Dimensions
- Sparse Matrices
- Some Important Standard Arrays
- Introduction to M-Function Programming
- M-Files
- Operators
- Flow Control
- Function Handles
- Code Optimization
- Interactive I/O
- An Introduction to Cell Arrays and Structures
UNIT 2
Intensity Transformations and Spatial Filtering
- Intensity Transformation Functions
- Functions imadjustand stretchlim
- Logarithmic and Contrast-Stretching Transformations
- Specifying Arbitrary Intensity Transformations
- Some Utility M-functions for Intensity Transformations
- Histogram Processing and Function Plotting
- Generating and Plotting Image Histograms
- Histogram Equalization
- Histogram Matching (Specification)
- Function adapthisteq
- Spatial Filtering
- Linear Spatial Filtering
- Nonlinear Spatial Filtering
- Image Processing Toolbox Standard Spatial Filters
- Linear Spatial Filters
- Nonlinear Spatial Filters
- Using Fuzzy Techniques for Intensity Transformations and Spatial Filtering
- Background
- Introduction to Fuzzy Sets
- Using Fuzzy Sets
- A Set of Custom Fuzzy M-functions
- Using Fuzzy Sets for Intensity Transformations
- Using Fuzzy Sets for Spatial Filtering
UNIT 3
Filtering in the Frequency Domain
- The 2-D Discrete Fourier Transform
- Computing and Visualizing the 2-D DFT in MATLAB
- Filtering in the Frequency Domain
- Fundamentals 173
- Basic Steps in DFT Filtering
- An M-function for Filtering in the Frequency Domain
- Obtaining Frequency Domain Filters from Spatial Filters
- Generating Filters Directly in the Frequency Domain
- Creating Meshgrid Arrays for Use in Implementing Filters in the Frequency Domain
- Lowpass (Smoothing) Frequency Domain Filters
- Wireframe and Surface Plotting
- Highpass (Sharpening) Frequency Domain Filters
- A Function for Highpass Filtering
- High-Frequency Emphasis Filtering
- Selective Filtering
- Bandreject and Bandpass Filters
- Notchreject and Notchpass Filters
UNIT 4
Image Restoration and Reconstruction
- A Model of the Image Degradation/Restoration Process
- Noise Models
- Adding Noise to Images with Function imnoise()
- Generating Spatial Random Noise with a Specified Distribution
- Periodic Noise
- Estimating Noise Parameters
- Restoration in the Presence of Noise Only—Spatial Filtering
- Spatial Noise Filters
- Adaptive Spatial Filters
- Periodic Noise Reduction Using Frequency Domain Filtering
- Modeling the Degradation Function
- Direct Inverse Filtering
- Wiener Filtering
- Constrained Least Squares (Regularized) Filtering
- Iterative Nonlinear Restoration Using the Lucy-Richardson Algorithm
- Blind Deconvolution
- Image Reconstruction from Projections
- Background
- Parallel-Beam Projections and the Radon Transform
- The Fourier Slice Theorem and Filtered Backprojections
- Filter Implementation
- Reconstruction Using Fan-Beam Filtered Backprojections
- Function radon()
- Function iradon()
- Working with Fan-Beam Data
UNIT 5
Geometric Transformations and Image Registration
- Transforming Points
- Affine Transformations
- Projective Transformations
- Applying Geometric Transformations to Images
- Image Coordinate Systems in MATLAB
- Output Image Location
- Controlling the Output Grid
- Image Interpolation
- Interpolation in Two Dimensions
- Comparing Interpolation Methods
- Image Registration
- Registration Process
- Manual Feature Selection and Matching Using cpselect
- Inferring Transformation Parameters Using cp2tform
- Visualizing Aligned Images
- Area-Based Registration
- Automatic Feature-Based Registration
UNIT 6
Color Image Processing
- Color Image Representation in MATLAB
- RGB Images
- Indexed Images
- Functions for Manipulating RGB and Indexed Images
- Converting Between Color Spaces
- NTSC Color Space
- The YCbCr Color Space
- The HSV Color Space
- The CMY and CMYK Color Spaces
- The HSI Color Space
- Device-Independent Color Spaces
- The Basics of Color Image Processing
- Color Transformations
- Spatial Filtering of Color Images
- Color Image Smoothing
- Color Image Sharpening
- Working Directly in RGB Vector Space
- Color Edge Detection Using the Gradient
- Image Segmentation in RGB Vector Space
UNIT 7
Wavelets
- The Fast Wavelet Transform
- FWTs Using the Wavelet Toolbox
- FWTs without the Wavelet Toolbox
- Working with Wavelet Decomposition Structures
- Editing Wavelet Decomposition Coefficients without the Wavelet Toolbox
- Displaying Wavelet Decomposition Coefficients
- The Inverse Fast Wavelet Transform
- Wavelets in Image Processing
UNIT 8
Image Compression
- Coding Redundancy
- Huffman Codes
- Huffman Encoding
- Huffman Decoding
- Spatial Redundancy
- Irrelevant Information
- JPEG Compression
- JPEG
- JPEG 2000
- Video Compression
- MATLAB Image Sequences and Movies
- Temporal Redundancy and Motion Compensation
UNIT 9
Morphological Image Processing
- Some Basic Concepts from Set Theory
- Binary Images, Sets, and Logical Operators
- Dilation and Erosion
- Dilation
- Structuring Element Decomposition
- The strel Function
- Erosion
- Combining Dilation and Erosion
- Opening and Closing
- The Hit-or-Miss Transformation
- Using Lookup Tables
- Function bwmorph
- Labeling Connected Components
- Morphological Reconstruction
- Opening by Reconstruction
- Filling Holes
- Clearing Border Objects
- Gray-Scale Morphology
- Dilation and Erosion
- Opening and Closing
- Reconstruction
UNIT 10
Image Segmentation
- Point, Line, and Edge Detection
- Point Detection
- Line Detection
- Edge Detection Using Function edge
- Line Detection Using the Hough Transform
- Background
- Toolbox Hough Functions
- Thresholding
- Foundation
- Basic Global Thresholding
- Optimum Global Thresholding Using Otsu's Method
- Using Image Smoothing to Improve Global Thresholding
- Using Edges to Improve Global Thresholding
- Variable Thresholding Based on Local Statistics
- Image Thresholding Using Moving Averages
- Region-Based Segmentation
- Basic Formulation
- Region Growing
- Region Splitting and Merging
- Segmentation Using the Watershed Transform
- Watershed Segmentation Using the Distance Transform
- Watershed Segmentation Using Gradients
- Marker-Controlled Watershed Segmentation
UNIT 11
Representation and Description
- Functions for Extracting Regions and Their Boundaries
- Some Additional MATLAB and Toolbox Functions
- Some Basic Utility M-Functions
- Representation
- Chain Codes
- Polygonal Approximations Using Minimum-Perimeter Polygons
- Signatures
- Boundary Segments
- Skeletons
- Boundary Descriptors
- Some Simple Descriptors
- Shape Numbers
- Fourier Descriptors
- Statistical Moments
- Corners
- Regional Descriptors
- Function regionprops()
- Texture
- Moment Invariants
- Using Principal Components for Description
UNIT 12
Object Recognition
- Computing Distance Measures in MATLAB
- Recognition Based on Decision-Theoretic Methods
- Forming Pattern Vectors
- Pattern Matching Using Minimum-Distance Classifiers
- Matching by Correlation
- Optimum Statistical Classifiers
- Adaptive Learning Systems
- Structural Recognition
- Working with Strings in MATLAB
- String Matching