Uploaded by Ahmed Sayed

Algorithms for Image Processing and Computer Visio

advertisement
See discussions, stats, and author profiles for this publication at: https://www.researchgate.net/publication/220695437
Algorithms for Image Processing and Computer Vision
Book · January 1997
Source: DBLP
CITATIONS
READS
1,431
38,367
1 author:
James R. Parker
The University of Calgary
158 PUBLICATIONS 2,706 CITATIONS
SEE PROFILE
Some of the authors of this publication are also working on these related projects:
Python - An Introduction to Programming View project
NEW Edition of The Guide to Computer Simulations and Games View project
All content following this page was uploaded by James R. Parker on 01 June 2014.
The user has requested enhancement of the downloaded file.
Algorithms for Image
Processing and
Computer Vision
Second Edition
J.R. Parker
WILEY
Wiley Publishing, Inc.
Contents
Preface
Chapter 1
xxi
Practical Aspects of a Vision System — Image Display,
Input/Output, and Library Calls
OpenCV
The Basic OpenCV Code
The Ipllmage Data Structure
Reading and Writing Images
Image Display
An Example
Image Capture
Interfacing with the AIPCV Library
Website Files
References
Edge-Detection Techniques
The Purpose of Edge Detection
Traditional Approaches and Theory
Models of Edges
Noise
Derivative Operators
Template-Based Edge Detection
Edge Models: The Marr-Hildreth Edge Detector
The Canny Edge Detector
The Shen-Castan (ISEF) Edge Detector
A Comparison of Two Optimal Edge Detectors
1
2
2
3
6
7
7
10
14
18
18
21
21
23
24
26
30
36
39
42
48
51
xiv
Contents
Color Edges
Source Code for the Marr-Hildreth Edge Detector
Source Code for the Canny Edge Detector
Source Code for the Shen-Castan Edge Detector
Website Files
References
Chapter 3
Chapter 4
53
58
62
70
80
82
Digital Morphology
Morphology Defined
Connectedness
Elements of Digital Morphology — Binary Operations
Binary Dilation
Implementing Binary Dilation
Binary Erosion
Implementation of Binary Erosion
Opening and Closing
MAX — A High-Level Programming Language for
Morphology
The "Hit-and-Miss" Transform
Identifying Region Boundaries
Conditional Dilation
Counting Regions
Grey-Level Morphology
Opening and Closing
Smoothing
Gradient
Segmentation of Textures
Size Distribution of Objects
Color Morphology
Website Files
References
107
113
116
116
119
121
123
126
128
129
130
131
132
135
Grey-Level Segmentation
Basics of Grey-Level Segmentation
Using Edge Pixels
Iterative Selection
The Method of Grey-Level Histograms
Using Entropy
Fuzzy Sets
Minimum Error Thresholding
Sample Results From Single Threshold Selection
137
137
139
140
141
142
146
148
149
85
85
86
87
88
92
94
100
101
Contents
The Use of Regional Thresholds
Chow and Kaneko
Modeling Illumination Using Edges
Implementation and Results
Comparisons
Relaxation Methods
Moving Averages
Cluster-Based Thresholds
Multiple Thresholds
Website Files
References
151
152
156
159
160
161
167
170
171
172
173
Chapter 5
Texture and Color
Texture and Segmentation
A Simple Analysis of Texture in Grey-Level Images
Grey-Level Co-Occurrence
Maximum Probability
Moments
Contrast
Homogeneity
Entropy
Results from the GLCM Descriptors
Speeding Up the Texture Operators
Edges and Texture
Energy and Texture
Surfaces and Texture
Vector Dispersion
Surface Curvature
Fractal Dimension
Color Segmentation
Color Textures
Website Files
References
177
177
179
182
185
185
185
185
186
186
186
188
191
193
193
195
198
201
205
205
206
Chapter 6
Thinning
What Is a Skeleton?
The Medial Axis Transform
Iterative Morphological Methods
The Use of Contours
Choi/Lam/Siu Algorithm
Treating the Object as a Polygon
Triangulation Methods
209
209
210
212
221
224
226
227
xv
xvi
Contents
Chapter 7
Chapter 8
Force-Based Thinning
Definitions
Use of a Force Field
Subpixel Skeletons
Source Code for Zhang-Suen/Stentiford/Holt Combined
Algorithm
Website Files
References
228
229
230
234
235
246
247
Image Restoration
Image Degradations — The Real World
The Frequency Domain
The Fourier Transform
The Fast Fourier Transform
The Inverse Fourier Transform
Two-Dimensional Fourier Transforms
Fourier Transforms in OpenCV
Creating Artificial Blur
The Inverse Filter
The Wiener Filter
Structured Noise
Motion Blur — A Special Case
The Homomorphic Filter — Illumination
Frequency Filters in General
Isolating Illumination Effects
Website Files
References
251
251
253
254
256
260
260
262
264
270
271
273
276
277
278
280
281
283
Classification
285
Objects, Patterns, and Statistics
Features and Regions
Training and Testing
Variation: In-Class and Out-Class
Minimum Distance Classifiers
Distance Metrics
Distances Between Features
Cross Validation
Support Vector Machines
Multiple Classifiers — Ensembles
Merging Multiple Methods
Merging Type 1 Responses
Evaluation
Converting Between Response Types
285
288
292
295
299
300
302
304
306
309
309
310
311
312
Contents
Chapter 9
Merging Type 2 Responses
Merging Type 3 Responses
Bagging and Boosting
Bagging
Boosting
Website Files
References
313
315
315
315
316
317
318
Symbol Recognition
321
321
322
326
327
329
333
337
339
340
345
348
349
353
357
363
364
368
372
The Problem
OCR on Simple Perfect Images
OCR on Scanned Images — Segmentation
Noise
Isolating Individual Glyphs
Matching Templates
Statistical Recognition
OCR on Fax Images — Printed Characters
Orientation — Skew Detection
The Use of Edges
Handprinted Characters
Properties of the Character Outline
Convex Deficiencies
Vector Templates
Neural Nets
A Simple Neural Net
A Backpropagation Net for Digit Recognition
The Use of Multiple Classifiers
Merging Multiple Methods
Results From the Multiple Classifier
Printed Music Recognition — A Study
Staff Lines
Segmentation
Music Symbol Recognition
Source Code for Neural Net Recognition System
Website Files
References
Chapter 10 Content-Based Search — Finding Images by Example
Searching Images
Maintaining Collections of Images
Features for Query by Example
Color Image Features
Mean Color
Color Quad Tree
372
375
375
376
378
381
383
390
392
395
395
396
399
399
400
400
xvii
xviii Contents
Hue and Intensity Histograms
Comparing Histograms
Requantization
Results from Simple Color Features
Other Color-Based Methods
Grey-Level Image Features
Grey Histograms
Grey Sigma — Moments
Edge Density — Boundaries Between Objects
Edge Direction
Boolean Edge Density
Spatial Considerations
Overall Regions
Rectangular Regions
Angular Regions
Circular Regions
Hybrid Regions
Test of Spatial Sampling
Additional Considerations
Texture
Objects, Contours, Boundaries
Data Sets
Website Files
References
Systems
Chapter 1T High-Performance Computing for Vision and Image
Processing
Paradigms for Multiple-Processor Computation
Shared Memory
Message Passing
Execution Timing
Using clocW
Using QueryPerformanceCounter
The Message-Passing Interface System
Installing MPI
Using MPI
Inter-Process Communication
Running MPI Programs
Real Image Computations
Using a Computer Network — Cluster Computing
401
402
403
404
407
408
409
409
409
410
410
411
411
412
412
414
414
414
417
418
418
418
419
420
424
425
426
426
427
427
428
430
432
432
433
434
436
437
440
Contents
A Shared Memory System — Using the PC Graphics
Processor
GLSL
OpenGL Fundamentals
Practical Textures in OpenGL
Shader Programming Basics
Vertex and Fragment Shaders
Required GLSL Initializations
Reading and Converting the Image
Passing Parameters to Shader Programs
Putting It All Together
Speedup Using the GPU
Developing and Testing Shader Code
Finding the Needed Software
Website Files
References
Index
View
444
444
445
448
451
452
453
454
456
457
459
459
460
461
461
465
publication
xix
Download