Muutke küpsiste eelistusi

Digital Image Processing and Analysis: Computer Vision and Image Analysis 4th edition [Kõva köide]

(Southern Illinois University, Edwardsville, USA)
  • Formaat: Hardback, 420 pages, kõrgus x laius: 279x215 mm, kaal: 1560 g, 19 Tables, color; 89 Line drawings, color; 178 Halftones, color; 267 Illustrations, color
  • Ilmumisaeg: 18-Jan-2023
  • Kirjastus: CRC Press
  • ISBN-10: 103207129X
  • ISBN-13: 9781032071299
Teised raamatud teemal:
  • Formaat: Hardback, 420 pages, kõrgus x laius: 279x215 mm, kaal: 1560 g, 19 Tables, color; 89 Line drawings, color; 178 Halftones, color; 267 Illustrations, color
  • Ilmumisaeg: 18-Jan-2023
  • Kirjastus: CRC Press
  • ISBN-10: 103207129X
  • ISBN-13: 9781032071299
Teised raamatud teemal:

Computer Vision and Image Analysis, focuses on techniques and methods for image analysis and their use in the development of computer vison applications. The field is advancing at an ever increasing pace, with applications ranging from medical diagnostics to space exploration. The diversity of applications is one of the driving forces that make it such an exciting field to be involved in for the 21st century. This book presents a unique engineering approach to the practice of computer vision and image analysis, which starts by presenting a global model to help gain an understanding of the overall process, followed by a breakdown and explanation of each individual topic. Topics are presented as they become necessary for understanding the practical imaging model under study, which provides the reader with the motivation to learn about and use the tools and methods being explored.

The book includes chapters on image systems and software, image analysis, edge, line and shape detection, image segmentation, feature extraction and pattern classification. Numerous examples, including over 500 color images are used to illustrate the concepts discussed. Readers can explore their own application development with any programming languages, including C/C++, MATLAB®, Python, and R, and software is provided for both the Windows/C/C++ and MATLAB®environments.

The book can be used by the academic community in teaching and research, with over 700 PowerPoint Slides and a complete Solutions Manual to the over 150 included problems. It can also be used for self-study by those involved with developing computer vision applications, whether they are engineers, scientists or artists. The new edition has been extensively updated and includes numerous problems and programming exercises that will help the reader and student to develop their skills.



Computer vision and image analysis is a field that continues to advance at an ever increasing pace, with applications ranging from medical diagnostics to space exploration. The diversity of applications is one of the driving forces that make it such an exciting field to be involved in for the 21st century.

Preface xiii
Acknowledgments xvii
Author xix
1 Digital Image Processing and Analysis
1(46)
1.1 Introduction
1(1)
1.2 Image Analysis and Computer Vision Overview
2(4)
1.3 Digital Imaging Systems
6(5)
1.4 Image Formation and Sensing
11(16)
1.4.1 Visible Light Imaging
13(5)
1.4.2 Imaging Outside the Visible Range of the EM Spectrum
18(4)
1.4.3 Acoustic Imaging
22(1)
1.4.4 Electron Imaging
23(1)
1.4.5 Laser Imaging
23(1)
1.4.6 Computer-Generated Images
23(4)
1.5 Image Representation
27(12)
1.5.1 Binary Images
27(1)
1.5.2 Gray-Scale Images
27(1)
1.5.3 Color Images
27(9)
1.5.4 Multispectral and Multiband Images
36(1)
1.5.5 Digital Image File Formats
36(3)
1.6 Key Points
39(3)
1.7 References and Further Reading
42(1)
1.8 Exercises
43(4)
2 Computer Vision Development Tools
47(44)
2.1 Introduction and Overview
47(1)
2.2 CVIPtools Windows GUI
47(11)
2.2.1 Image Viewer
49(1)
2.2.2 Analysis Window
50(2)
2.2.3 Utilities Window
52(1)
2.2.4 Help Window
52(1)
2.2.5 Development Tools
52(6)
2.3 CVIPlab for C/C++ Programming
58(13)
2.3.1 Toolkit, Toolbox Libraries and Memory Management in C/C++
63(1)
2.3.2 Image Data and File Structures
63(8)
2.4 The MATLAB CVIP Toolbox
71(15)
2.4.1 Help Files
71(2)
2.4.2 M-Files
73(1)
2.4.3 CVIPtools for MATLAB GUI
73(1)
2.4.4 CVIPlab for MATLAB
73(6)
2.4.5 Vectorization
79(1)
2.4.6 Using CVIPlab for MATLAB
80(2)
2.4.7 Adding a Function
82(1)
2.4.8 A Sample Batch Processing M-File
83(2)
2.4.9 VIPM File Format
85(1)
2.5 References and Further Reading
86(1)
2.6 Introductory Programming Exercises
87(2)
2.7 Computer Vision and Image Analysis Projects
89(2)
3 Image Analysis and Computer Vision
91(60)
3.1 Introduction
91(1)
3.1.1 Overview
91(1)
3.1.2 System Model
91(1)
3.2 Preprocessing
92(29)
3.2.1 Region of Interest Geometry
93(6)
3.2.2 Arithmetic and Logic Operations
99(5)
3.2.3 Enhancement with Spatial Filters
104(4)
3.2.4 Enhancement with Histogram Operations
108(2)
3.2.5 Image Quantization
110(11)
3.3 Binary Image Analysis
121(17)
3.3.1 Thresholding Bimodal Histograms
121(3)
3.3.2 Connectivity and Labeling
124(1)
3.3.3 Basic Binary Object Features
125(4)
3.3.4 Computer Vision: Binary Object Classification
129(9)
3.4 Key Points
138(4)
3.5 References and Further Reading
142(1)
3.6 Exercises
143(4)
3.6.1 Programming Exercises
145(2)
3.7 Supplementary Exercises
147(4)
3.7.1 Supplementary Programming Exercises
148(3)
4 Edge, Line and Shape Detection
151(62)
4.1 Introduction and Overview
151(1)
4.2 Edge Detection
151(37)
4.2.1 Gradient Operators
153(3)
4.2.2 Compass Masks
156(1)
4.2.3 Thresholds, Noise Mitigation and Edge Linking
157(3)
4.2.4 Advanced Edge Detectors
160(15)
4.2.5 Edges in Color Images
175(5)
4.2.6 Edge Detector Performance
180(8)
4.3 Line Detection
188(6)
4.3.1 Hough Transform
188(3)
4.3.2 Postprocessing
191(3)
4.4 Corner and Shape Detection
194(5)
4.4.1 Corner Detection
194(3)
4.4.2 Shape Detection with the Hough Transform
197(2)
4.5 Key Points
199(6)
4.6 References and Further Reading
205(1)
4.7 Exercises
206(4)
4.7.1 Programming Exercises
208(2)
4.8 Supplementary Exercises
210(3)
4.8.1 Supplementary Programming Exercises
211(2)
5 Segmentation
213(62)
5.1 Introduction and Overview
213(4)
5.1.1 Segmentation System Model and Preprocessing
213(3)
5.1.2 Image Segmentation Categories
216(1)
5.2 Region Growing and Shrinking
217(4)
5.3 Clustering Techniques
221(6)
5.4 Boundary Detection
227(3)
5.5 Deep Learning Segmentation Methods
230(3)
5.5.1 Convolution Neural Networks
231(2)
5.6 Combined Segmentation Approaches
233(1)
5.7 Morphological Filtering
233(25)
5.7.1 Erosion, Dilation, Opening, Closing
233(9)
5.7.2 Hit-or-Miss Transform, Thinning and Skeletonization
242(8)
5.7.3 Iterative Modification
250(8)
5.8 Segmentation Evaluation Methods
258(4)
5.8.1 Binary Object Shape Comparison Metrics
258(1)
5.8.2 Subjective Methods for Complex Images
259(2)
5.8.3 Objective Methods for Complex Images
261(1)
5.9 Key Points
262(5)
5.10 References and Further Reading
267(1)
5.11 Exercises
268(2)
5.11.1 Programming Exercises
270(1)
5.12 Supplementary Exercises
270(5)
5.12.1 Supplementary Programming Exercises
272(3)
6 Feature Extraction and Analysis
275(56)
6.1 Introduction and Overview
275(1)
6.1.1 Feature Extraction
276(1)
6.2 Shape Features
276(4)
6.3 Histogram Features
280(6)
6.4 Color Features
286(1)
6.5 Fourier Transform and Spectral Features
286(11)
6.6 Texture Features
297(6)
6.7 Region-Based Features: SIFT/SURF/GIST
303(1)
6.8 Feature Extraction with CVIPtools
304(2)
6.9 Feature Analysis
306(9)
6.9.1 Feature Vectors and Feature Spaces
306(1)
6.9.2 Distance and Similarity Measures
307(5)
6.9.3 Data Preprocessing
312(3)
6.10 Key Points
315(8)
6.11 References and Further Reading
323(2)
6.12 Exercises
325(4)
6.12.1 Programming Exercises
327(2)
6.13 Supplementary Exercises
329(2)
6.13.1 Supplementary Programming Exercises
330(1)
7 Pattern Classification
331(26)
7.1 Introduction
331(1)
7.2 Algorithm Development: Training and Testing Methods
331(2)
7.3 Nearest Neighbor (NN), K-NN, Nearest Centroid, Template Matching
333(1)
7.4 Bayesian, Support Vector Machines, Random Forest Classifiers
334(3)
7.5 Neural Networks and Deep Learning
337(3)
7.6 Cost/Risk Functions and Success Measures
340(3)
7.7 Pattern Classification Tools: Python, R, MATLAB and CVIPtools
343(3)
7.7.1 Python
344(1)
7.7.2 R: Bayesian Modeling and Visualization Tools
344(1)
7.7.3 MATLAB: Statistics and Machine Learning
344(1)
7.7.4 CVIPtools
344(2)
7.8 Key Points
346(3)
7.9 References and Further Reading
349(1)
7.10 Exercises
349(4)
7.10.1 Programming Exercises
352(1)
7.11 Supplementary Exercises
353(4)
7.11.1 Supplementary Programming Exercises
355(2)
8 Application Development Tools
357(56)
8.1 Introduction and Overview
357(1)
8.2 CVIP Algorithm Test and Analysis Tool
357(10)
8.2.1 Overview and Capabilities
357(1)
8.2.2 How to Use CVIP-ATAT
358(1)
8.2.2.1 Running CVIP-ATAT
358(1)
8.2.2.2 Creating a New Project
358(2)
8.2.2.3 Inserting Images
360(2)
8.2.2.4 Inputting an Algorithm
362(2)
8.2.2.5 Executing an Experiment
364(3)
8.3 CVIP-ATAT: Application Development Necrotic Liver Tissue
367(5)
8.3.1 Introduction and Overview
367(1)
8.3.2 The Algorithm
368(1)
8.3.3 Conclusion
368(4)
8.4 CVIP-ATAT: Application Development with Fundus Images
372(5)
8.4.1 Introduction and Overview
372(1)
8.4.2 The New Algorithm
372(5)
8.4.3 Conclusion
377(1)
8.5 CVIP-ATAT: Automatic Mask Creation of Gait Images
377(6)
8.5.1 Introduction
377(1)
8.5.2 Gait Analysis Images
378(1)
8.5.3 Preprocessing
378(1)
8.5.4 Algorithm Combinations
378(2)
8.5.5 Results Analysis
380(2)
8.5.6 Conclusion
382(1)
References
383(1)
8.6 CVIP Feature Extraction and Pattern Classification Tool
383(10)
8.6.1 Overview and Capabilities
383(1)
8.6.2 How to Use CVIP-FEPC
384(1)
8.6.2.1 Running CVIP-FEPC
384(1)
8.6.2.2 Creating a New Project
385(1)
8.6.2.3 Entering Classes in CVIP-FEPC
386(1)
8.6.2.4 Adding Images and Associated Classes
386(1)
8.6.2.5 Applying Feature Extraction and Pattern Classification
386(1)
8.6.2.6 Running a Single Test with Training and Test Sets
386(5)
8.6.2.7 The Result File
391(1)
8.6.2.8 Running a Leave-One-Out Test in Combinatoric Mode
391(2)
8.7 CVIP-FEPC: Application Development with Thermograms
393(5)
8.7.1 Introduction and Overview
393(1)
8.7.2 Setting Up Experiments
393(2)
8.7.3 Running the Experiments and Analyzing Results
395(3)
8.7.4 Conclusion
398(1)
8.8 CVIP-FEPC: Identification of Bone Cancer in Canine Thermograms
398(5)
8.8.1 Introduction
398(1)
8.8.2 Clinical Application Development
399(1)
8.8.2.1 Image Database
399(1)
8.8.2.2 Feature Extraction and Pattern Classification
399(1)
8.8.2.3 Experimental Setup
400(1)
8.8.3 Results and Discussion
401(1)
8.8.4 Conclusion
401(2)
References
403(1)
8.9 MATLAB CVIP Toolbox GUI: Detection of Syrinx in Canines with Chiari Malformation via Thermograms
403(10)
8.9.1 Introduction
403(1)
8.9.2 Material and Methods
404(1)
8.9.2.1 Image Data Acquisition
404(1)
8.9.2.2 ROI Extraction
404(1)
8.9.2.3 MATLAB
404(1)
8.9.2.4 CVIPtools
405(1)
8.9.3 MATLAB CVIP Toolbox
405(1)
8.9.3.1 Feature Extraction and Pattern Classification
405(1)
8.9.3.2 Features
405(1)
8.9.3.3 Data Normalization Methods
405(1)
8.9.3.4 Distance Metrics
405(1)
8.9.3.5 Classification Methods
405(1)
8.9.4 CVIPtools MATLAB Toolbox GUI
405(1)
8.9.4.1 Feature Extraction Using the MATLAB GUI
406(1)
8.9.4.2 Pattern Classification Using MATLAB GUI
407(1)
8.9.5 Results and Discussion
408(2)
8.9.6 Conclusion
410(1)
References
411(2)
Index 413
Dr. Scott E Umbaugh is a distinguished research professor of Electrical and Computer Engineering and Graduate Program director for the Department of Electrical and Computer Engineering at Southern Illinois University Edwardsville (SIUE). He is also the director of the Computer Vision and Image Processing (CVIP) Laboratory at SIUE. He has been teaching computer vision and image processing, as well as computer and electrical engineering design, for over 30 years. His professional interests include computer vision and image processing education, research and development of both human and computer vision applications, and engineering design education.

Prior to his academic career, Dr. Umbaugh worked as a computer design engineer and project manager in the avionics and telephony industries. He has been a computer imaging consultant since 1986 and has provided consulting services for the aerospace, medical and manufacturing industries with projects ranging from automatic identification of defects in microdisplay chips to analysis of thermographic images for clinical diagnosis of brain disease. He has performed research and development for projects funded by the National Institutes of Health, the National Science Foundation and the U. S. Department of Defense.

Dr. Umbaugh is author or co-author of numerous technical papers, two edited books, and multiple editions of his textbooks on computer vison and image processing. His books are used at academic and research organizations throughout the world. He has served on editorial boards and as a reviewer for a variety of IEEE journals and has evaluated research monographs and textbooks in the imaging field.

Dr. Umbaugh received his B.S.E. degree with honors from Southern Illinois University Edwardsville in 1982, M.S.E.E. in 1987 and Ph.D. in 1990 from the Missouri University of Science and Technology, where he was a Chancellor's Fellow. He is a senior member of the Institute of Electrical and Electronic Engineers (IEEE), a member of Sigma Xi and the International Society for Optical Engineering (SPIE). Dr. Umbaugh is also the primary developer of the CVIPtools software package and the associated CVIP MATLAB Toolbox.