Digital image processing and analysis is a field that continues to experience rapid growth, with applications in many facets of our lives. Areas such as medicine, agriculture, manufacturing, transportation, communication systems, and space exploration are just a few of the application areas. This book takes an engineering approach to image processing and analysis, including more examples and images throughout the text than the previous edition. It provides more material for illustrating the concepts, along with new PowerPoint slides. The application development has been expanded and updated, and the related chapter provides step-by-step tutorial examples for this type of development. The new edition also includes supplementary exercises, as well as MATLAB-based exercises, to aid both the reader and student in development of their skills.
Table of Contents:
TABLE OF CONTENTS
Dedication
Preface
Author Biography
Acknowledgments
I. INTRODUCTION TO DIGITAL IMAGE PROCESSING AND ANALYSIS CHAPTER 1. Digital Image Processing and Analysis
1.1 Overview
1.2 Image Analysis and Computer Vision
1.3 Image Processing and Human Vision
1.4 Key Points
References and Further Reading
Exercises
CHAPTER 2. Digital Imaging Processing Systems
2.1 Digital Imaging Systems Overview
2.2 Image Formation and Sensing
1. Visible Light Imaging
2. Imaging Outside the Visible Range of the EM Spectrum
3. Acoustic Imaging
4. Electron Imaging
5. Laser Imaging
6. Computer Generated Images
2.3 The CVIPtools Software Environment
1. CVIPtools GUI Main Window
2. Image Viewer
3. Analysis Window
4. Enhancement Window
5. Restoration Window
6. Compression Window
7. Utilities Window
8. Help Window
9. Development Tools
2.4 Image Representation
1. Binary Images
2. Gray-Scale Images
3. Color Images
4. Multispectral Images
5. Digital Image File Formats
2.5 Key Points
References and Further Reading
Exercises
II. DIGITAL IMAGE ANALYSIS AND COMPUTER VISION
CHAPTER 3. Introduction to Digital Image Analysis
3.1 Introduction
1. Overview
2. System Model
3.2 Preprocessing
1. Region of Interest Geometry
2. Arithmetic and Logic Operations
3. Spatial Filters
4. Image Quantization
3.3 Binary Image Analysis
1. Basic Image Thresholding
2. Connectivity and Labeling
3. Basic Binary Object Features
4. Binary Object Classification
3.4 Key Points
References and Further Reading
Exercises
CHAPTER 4. Segmentation and Edge/Line Detection
4.1 Introduction and Overview
4.2 Edge/Line Detection
1. Gradient Operators
2. Compass Masks
3. Advanced Edge Detectors
4. Edges in Color Images
5. Edge Detector Performance
6. Hough Transform
7. Corner Detection
4.3 Segmentation
1. Region Growing and Shrinking
2. Clustering Techniques
3. Boundary Detection
4. Combined Segmentation Approaches
5. Morphological Filtering
4.4 Key Points
References and Further Reading
Exercises
CHAPTER 5. Discrete Transforms
5.1 Introduction and Overview
5.2 Fourier Transform
1. The One-dimensional Discrete Fourier Transform
2. The Two-dimensional Discrete Fourier Transform
3. Fourier Transform Properties
4. Displaying the Discrete Fourier Spectrum
5.3. Discrete Cosine Transform
5.4. Discrete Walsh-Hadamard Transform
5.5. Discrete Haar Transform
5.6 Principal Components Transform
5.7 Filtering
1. Lowpass Filters
2. Highpass Filters
3. Bandpass and Bandreject Filters
5.8 Discrete Wavelet Transform
5.9 Key Points
References and Further Reading
Exercises
CHAPTER 6. Feature Analysis and Pattern Classification
6.1 Introduction and Overview
6.2 Feature Extraction
1. Shape Features
2. Histogram Features
3. Color Features
4. Spectral Features
5. Texture Features
6. Region Based Features: SIFT/SURF/GIST
7. Feature Extraction with CVIPtools
6.3 Feature Analysis
1. Feature Vectors and Feature Spaces
2. Distance and Similarity Measures
3. Data Preprocessing
6.4 Pattern Classification
1. Algorithm Development: Training and Testing Methods
2. Classification Algorithms and Methods
3. Cost/Risk Functions and Success Measures
4. Pattern Classification with CVIPtools
6.5 Key Points
References and Further Reading
Exercises
III. DIGITAL IMAGE PROCESSING AND HUMAN VISION
CHAPTER 7. Digital Image Processing and Visual Perception
7.1 Introduction and Overview
7.2 Human Visual Perception
1. The Human Visual System
2. Spatial Frequency Resolution
3. Brightness Adaptation
4. Temporal Resolution
5. Perception and Illusion
7.3 Image Fidelity Criteria
1. Objective Fidelity Measures
2. Subjective Fidelity Measures
7.4 Key Points
References and Further Reading
Exercises
CHAPTER 8. Image Enhancement
- Introduction and Overview
8.2 Gray Scale Modification
1. Mapping Equations
2. Histogram Modification
3. Adaptive Contrast Enhancement
4. Color
8.3 Image Sharpening:
1. Highpass Filtering
2. High Frequency Emphasis
3. Directional Difference Filters
4. Homomorphic Filtering
5. Unsharp Masking
6. Edge Detector-Based Sharpening Algorithms
8.4 Image Smoothing:
1. Frequency Domain Lowpass Filtering
2. Convolution Mask Lowpass Filtering
3. Nonlinear Filtering
8.5 Key Points
References and Further Reading
Exercises
CHAPTER 9. Image Restoration and Reconstruction
9.1 Introduction and Overview
1. System Model
9.2 Noise Models
1. Noise Histograms
2. Periodic Noise
3. Estimation of Noise
9.3 Noise Removal Using Spatial Filters
1. Order Filters
2. Mean Filters
3. Adaptive Filters
9.4 The Degradation Function
1. The Spatial Domain – The Point Spread Function
2. The Frequency Domain – The Modulation/Optical Transfer Function
3 Estimation of the Degradation Function
9.5 Frequency Domain Restoration Filters
1. Inverse Filter
2. Wiener Filter
3. Constrained Least Squares Filter
4. Geometric Mean Filters
5. Adaptive Filtering
6. Bandpass, Bandreject and Notch Filters
7. Practical Considerations
9.6 Geometric Transforms
1. Spatial Transforms
2. Gray Level Interpolation
3. The Geometric Restoration Procedure
4. Geometric Restoration with CVIPtools
9.7 Image Reconstruction
1. Reconstruction Using Backprojections
2. The Radon Transform
3. The Fourier-Slice Theorem and Direct Fourier Reconstruction
9.7 Key Points
References and Further Reading
Exercises
CHAPTER 10. Image Compression
10.1 Introduction and Overview
1. Compression System Model
10.2 Lossless Compression Methods
1. Huffman Coding
2. Run-Length Coding
3. Lempel-Ziv-Welch Coding
4. Arithmetic Coding
10.3 Lossy Compression Methods
1. Gray-Level Run-Length Coding
2. Block Truncation Coding
3. Vector Quantization
4. Differential Predictive Coding
5. Model-based and Fractal Compression
6. Transform Coding
7. Hybrid and Wavelet Methods
10.4 Key Points
References and Further Reading
Exercises
IV. APPLICATION DEVELOPMENT WITH THE MATLAB CVIP TOOLBOX AND CVIPTOOLS
CHAPTER 11. MATLAB CVIP Toolbox and CVIPlab
11.1 The MATLAB CVIP Toolbox
1. CVIP Toolbox Function Categories
2. Help Files
3. M-files
11.2 CVIPlab for MATLAB
1. Vectorization
2. Using CVIPlab for MATLAB
3. Adding a Function
4. A Sample Batch Processing M-file
5. VIPM File Format
11.3 CVIPlab for C Programming
1. Toolkit, Toolbox Libraries and Memory Management
2. Compiling and Linking CVIPlab with Visual Studio
3. The Mechanics of Adding a Function with Visual Studio
4. Using CVIPlab in the Programming Exercises
5. Image Data and File Structures
11.4 CVIP Projects
1. Digital Image Analysis and Computer Vision Projects
2. Digital Image Processing and Human Vision Projects
References and Further Reading
CHAPTER 12. Application Development
12.1 Introduction and Overview
12.2 CVIP Algorithm Test and Analysis Tool
1. Overview and Capabilities
2. How to Use CVIP-ATAT
3. Application Development Example with Fundus Images
12.3 CVIP Feature Extraction and Pattern Classification Tool
1. Overview and Capabilities
2. How to Use CVIP-FEPC
3. Application Development Example with Veterinary Thermographic Images
12.4 Automatic Creation of Masks for Veterinary Thermographic Images with Matlab CVIP Toolbox
1. Introduction
2. Matlab CVIP Toolbox
3. Automatic Creation of Masks for Veterinary Thermographic Images
4. Results
5. Summary and Conclusions
6. Acknowledgments
7. References
12.5 Thermographic Image Analysis for Detection of Anterior Cruciate Ligament Rupture in Canines
1. Introduction and Overview
2. Materials and Methods
3. Results and Discussion
4. Conclusion
5. Acknowledgments
6. References
12.6 Thermographic Image Analysis for the Detection of Canine Bone Cancer
1. Introduction
2. Material and Methods
3. Results and Discussion
4. Summary and Conclusion
5. Acknowledgments
6. References
12.7 A New Algorithm for Blood Vessel Segmentation in Retinal Images Developed with CVIP-ATAT
1. Introduction
2. Materials
3. Methods
4. Results
5. Discussion
6. Summary and Conclusion
7. Acknowledgments
8. References
12.8 Automatic Mask Creation and Feature Analysis for Detection IVDD in Canines
1. Introduction
2. Background
3. Materials and Methods
4. Results
5. Conclusion
6. Acknowledgments
7. References
12.9 Skin Lesion Classification Using Relative Color Features
1. Introduction and Project Overview
2. Materials and Methods
3. Experiments and Data Analysis
4. Conclusions
5. Acknowledgments
6. References
12.10 Automatic Segmentation of Blood Vessels in Retinal Images
1. Introduction and Overview
2. Materials and Methods
3. Results
4. Postprocessing with Hough Transform and Edge Linking
5. Conclusion
6. Acknowledgments
7. References
12.11 Classification of Land from Satellite Images Using Quadratic Discriminant Analysis and Multilayer Perceptron
1. Introduction and Overview
2. Data Reduction and Feature Extraction
3. Object Classification
4. Results
5. Conclusion
6. Acknowledgments
7. References
12.12 Watershed-based Approach to Skin Lesion Border Segmentation
1. Introduction
2. Materials and Methods
3. Experiments, Results and Conclusions
4. Acknowledgments
5. References
12.13 Faint Line Defect Detection in Microdisplay (CCD) Elements
1. Introduction and Project Overview
2. Design Methodology
3. The Line Detection Algorithm
4. Results and Discussion
5. Summary and Conclusion
6. Acknowledgments
7. References
12.14 Melanoma and Seborrheic Keratosis Differentiation Using Texture Features
1. Introduction and Overview
2. Materials and Methods
3. Texture Analysis Experiments
4. Results and Discussion
5. Conclusion
6. Acknowledgments
7. References
12.15 Compression of Color Skin Tumor Images with Vector Quantization
1. Introduction and Project Overview
2. Materials and Methods
3. Compression Schemes
4. Results and Analysis
5. Conclusion and Future Work
6. Acknowledgments
7. References
12.16 Embedded Application: Image Sensor Power Requirements for Vole Detection Application with CVIPtools and OpenCV
1. Introduction
2. Common Vole Detection
3. Vole Detection Algorithm
4. The Camera Sensor
5. Conclusions
6. Acknowledgments
7. References
12.17 Gabor Filters for Pathology Classification in Veterinary Thermograms
1. Overview
2. Background
3. Results and Discussion
4. Future Work
5. Acknowledgments
6. References
12.18 Thermography Based Prescreening Software Tool for Veterinary Clinics
1. Introduction
2. Clinical Application Development
3. Results and Discussion
4. Summary and Conclusions
5. Acknowledgments
6. References
V. APPENDICES
A. Installing and Updating CVIPtools
B. Installing and Updating the Matlab CVIP Toolbox
C. CVIPtools Software Organization
1. Overview
2. The Four Layers
3. File and Directory Organization
D. CVIPtools C function List
1. Toolkit Libraries
2. Toolbox Libraries
E. Common Object Module (COM) Function List – cviptools.dll
F. Matlab CVIP Toolbox Functions