The Essential Guide to
Image Processing
Second Edition
EDITOR
Al Bovik
Department of Electrical and Computer Engineering
The University of Texas at Austin
Austin, Texas
AMSTERDAM • BOSTON • HEIDELBERG • LONDON
NEWYORK • OXFORD • PARIS • SAN DIEGO
SAN FRANCISCO • SINGAPORE • SYDNEY • TOKYO
ELSEVIER Academic Press is an imprint of Elsevier
Contents
Preface ..................................... : ............................................... . xix
About the Author ............................................................ ; ............ . XXI
CHAPTER 1 lntroduction to Digital Image Processing 1
1.1 Types of Images ................................................... . 2
1.2 Scale of Images .................................................... . 4
1.3 Dimension of Images ............................................. . 6
1.4 Digitization of Images ............................................ . 6
1.5 Sampled Images ................................................... . 7
1.6 Quantized Images ................................................. . 9
1.7 Color Images ..................................................... .. 13
1.8 Size of Image Data ................................................ . 15
1.9 Objectives of this Guide .......................................... . 17
1.10 Organization of the Guide ....................................... . 19
Reference .......................................................... . 21
CHAPTER 2 The SIVA Image Processing Demos 23
2.1 Introduction ....................................................... . 23
2.2 LabVIEW for Image Processing .................................. . 24
2.2.1 The LabVIEW Development Environment ............ . 25
2.2.2 Image Processing and Machine Vision in LabVIEW .. . 27
2.3 Examples from the SIVA Image Processing Demos ............ . 31
2.4 Conclusions ....................................................... . 38
References ............................................ ·............. . 41
CHAPTER 3 Basic Gray Level Image Processing 43
3.1 Introduction ....................................................... . 43
3.2 Notation ........................................................... . 44
3.3 Image Histogram ................................................. . 44
3.4 Linear Point Operations on Images ............................. . 47
3.4.1 Additive Image Offset ................................... . 48
3.4.2 Multiplicative Image Scaling ............................ . 50
3.4.3 Image Negative .......................................... . 51
3.4.4 Full-Scale Histogram Stretch ........................... . 53
3.5 Nonlinear Point Operations on Images ......................... . 55
3.5.1 Logarithmic Point Operations .......................... . 55
3.5.2 Histogram Equalization ................................. . 56
3.5.3 Histogram Shaping ...................................... . 59 V
vi Contents
3.6 Arithmetic Operations Befween Images...... . . . . . . . . . . . . . . . . . . . . 60
3.6.1 Image Averaging for Noise Reduction................... 61
3.6.2 Image Differencing for Change Detection.............. 63
3.7 Geometrie Image Operations ........................ '............. 65
3.7.1 Nearest Neighbor Interpolation......................... 65
3.7.2 Bilinear Interpolation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66
3.7.3 Image Translation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ... . 66
3.7.4 Image Rotation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
3.7.5 Image Zoom . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67
CHAPTER 4 Basic Binary Image Processing 69
4.1 Introduction..... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
4.2 Image Thresholding . . .. .. . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . 71
4.3 Region Labeling . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77
4.3.1 Region LabelingAlgorithm .............................. 77
4.3.2 Region Counting Algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78
4.3.3 Minor Region Removal Algorithm...................... 78
4.4 Binary Image Morphology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
4.4.1 Logical Operations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79
4.4.2 Windows . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80
4.4.3 Morphological Filters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82
4.4.4 Morphological Boundary Detection . . . . . . . . . . . . . . . . . . . . 90
4.5 Binary Image Representation and Compression....... .. . . . . . . . . 92
.4.5.1 Run-Length Coding..... .. . . . . . . . . . . . . . . . . . . . . . .. .. . . . . . . 93
4.5.2 Chain Coding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94
CHAPTER 5 Basic Tools for Image Fourier Analysis 97
5.1 Introduction...... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
5.2 Discrete-Space Sinusoids ......... :. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97
5.3 Discrete-Space Fourier Transform................................ 100
5.3.1 Linearity of DSFT . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 101
5.3.2 Inversion ofDSFT ........................................ 101
5.3.3 Magnitude and Phase ofDSFT .......................... 101
5.3.4 SymmetryofDSFT ....................................... 102
5.3.5 Translation of DSFT...................................... 102
5.3.6 Convolution and the DSFT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
5.4 2D Discrete Fourier Transform (DFT) . . . . . . . . . . . . . . . . . . . . . . . . . . . 103
5.4.1 Linearity and Invertibility of DFT....................... 105
5.4.2 Symmetry of DFT . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 106
5.4.3 Periodicity of DFT........................................ 106
5.4.4 Image Periodicity Implied by DFT . . . . . . . . . . . . . . . . . . . . . . 106
5.4.5 Cyclic Convolution Property of the DFT . . . . . . . . . . . . . . . 107
5.4.6 Linear Convolution Using the DFT . . . . . . . . . . . . . . . . . . . . . 110
5.4.7 Computation ofthe DFT ................................ 112
5.4.8 Displaying the DFT....................................... 112
Contents vii
5.5 Understanding Image Frequencies and the DFT . . . . . . . . . . . . . . . . 115
5.5.1 Frequency Granularity ................................... 115
5.5.2 Frequency Grientation ................................... 118
5.6 Related Topics in this Guide....................................... 121
CHAPTER 6 Multiscale Image Decompositions and Wavelets 123
6.1 Overview ........................................................... 123
6.2 Pyramid Representations.......................................... 126
6.2.1 Decimation and Interpolation........................... 126
6.2.2 Gaussian Pyramid . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127
6.2.3 Laplacian Pyramid........................................ 128
6.3 Wavelet Representations........................................... 129
6.3.1 Filter Banks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129
6.3.2 Wavelet Decomposition.................................. 130
6.3.3 Discrete Wavelet Bases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133
6.3.4 Continuous Wavelet Bases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135
6.3.5 More on Wavelet Image Representations . . . . . . . . . . . . . . . 136
6.3.6 Relation to Human Visual System ....................... 137
6.3.7 Applications ............................................... 138
6.4 Other Multiscale Decompositions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
6.4.1 Undecimated Wavelet Transform........................ 138
6.4.2 Wavelet Packets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 138
6.4.3 Geometrie Wavelets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 139
6.5 Conclusion .......................................................... 140
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 140
CHAPTER 7 Image Noise Models 143
7.1 Summary ............................................ :. . . . . . . . . . . . . . 143
7.2 Preliminaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143
7.2.1 What is Noise? ............................................ 143
7.2.2 Notions ofProbability .................................... 144
7.3 Elements ofEstimation Theory ................................... 146
7.4 Types of Noise and Where They Might Occur................. . . 149
7.4.1 Gaussian Noise ............................................ 149
7.4.2 Heavy Tailed Noise ....................................... 150
7.4.3 Salt and Pepper Noise .................................... 154
7.4.4 Quantization and Uniform Noise ....................... 155
7.4.5 Photon Counting Noise .................................. 156
7.4.6 Photographie Grain Noise ............................... 159
7.5 CCD Imaging ...................................................... 160
7.6 Speckle.............................................................. 161
7.6.1 Specklein Coherent Light Imaging ..................... 161
7.6.2 Atmospheric Speckle .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165
viii Contents
7.7 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166
References .......................................................... 167
CHAPTER 8 Color and Multispectrallmage
Representation and Display 169
8.1 Introduction........................................................ 169
8.2 Preliminary Notes on Display of Images . . . . . . . . . . . . . . . . . . . . . . . . . 170
8.3 Notation and Prerequisite Knowledge ............................ 174
8.3.1 Practical Sampling ........................................ 174
8.3.2 One-Dimensional Discrete System Representation .... 175
8.3.3 Multidimensional System Representation .............. 177
8.4 Analog Images as Physical Functions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 179
8.5 Colorimetry . . . . . . . . . . .. .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . ... . . . . . . . . . . . . 180
8.5.1 Color Sampling........................................... 182
8.5.2 Discrete Representation of Color-Matehing............ 183
8.5.3 Properries of Color-Matehing Functions . . . . . . . . . . . . . . . 184
8.5.4 Notes on Sampling for Color Aliasing .................. 189
8.5.5 A Note on the Nonlinearity of the Eye.................. 191
8.5.6 Uniform Color Spaces .................................... 191
8.6 Sampling of Color Signalsand Sensors .......................... 193
8.7 Color I/0 Device Calibration ..................................... 196
8.7.1 Calibration Definitionsand Terminology .............. 196
8.7.2 CRT Calibration .......................................... 197
8.7.3 Scannersand Cameras .. .. .. .. .. .. .. .. . .. .. . . .. .. .. .. .. .. 198
8.7.4 Printers.................................................... 199
8.7.5 Calibration Example ..................................... 200
8.8 Summary and Future Outlook.................................... 202
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202
CHAPTER 9 Capturing Visual Image Properties with
Probabilistic Models 2os
9.1 The Gaussian Model... . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. .. 207
9.2 The Wavelet Marginal Model . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . 211
9.3 Wavelet Local Contextual Models ................................ 215
9.4 Discussion . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . .. . . 220
References .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220
CHAPTER 10 Basic Linear Filtering with Application to
Image Enhancement 225
10.1 Introduction ........................................................ 225
10.2 Impulse Response, Linear Convolution, and Frequency
Response............................................................ 227
10.3 Linear Image Enhancement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230
10.3.1 MovingAverage Filter .................................... 231
Contents ix
10.3.2 Ideal Lowpass Filter .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. 233
10.3.3 Gaussian Filter............................................ 236
10.4 Discussion . . . . . . . . . . . . . .. . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 239
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . 239
CHAPTER 11 Multiscala Denoising of Photographie Images 241
11.1 Introduction ........................................................ 241
11.2 Distinguishing Images from Noise in Multiscale
Representations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 242
11.3 Subband Denoising-A Global Approach . . . . . . . . . . . . . . . . . . . . . . . 244
11.3.1 Band Thresholding ....................................... 244
11.3.2 Band Weighting ........................................... 247
11.4 Subband Coefficient Denoising-A Pointwise Approach....... 249
11.4.1 Coefficient Thresholding................................. 250
11.4.2 Coefficient Weighting . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 252
11.5 Subband Neighborhood Denoising-Striking a Balance . . . . . . . 253
11.5.1 Neighborhood Thresholding ............................ 253
11.5.2 Neighborhood Weighting................................ 256
11.6 Statistkai Modeling for Optimal Denoising ..................... 257
11.6.1 The Bayesian View ........................................ 258
11.6.2 Empirical Bayesian Methods ............................. 258
11.7 Conclusions . .. . . . . . . . . . . .. . . . . . . . . . . . . . .. . . .. . . . . . . . . . . . . . . . . . .. .. . 259
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . .. . . . . . . . .. . . . . . . . . . . . . 260
CHAPTER 12 Nonlinear Filtering for Image Analysis
and Enhancement 263
12.1 Introduction ........................................................ 263
12.2 Weighted Median Smoothers and Filters................. . . . . . . . . 264
12.2.1 Running Median Smoothers ...............·.............. 264
12.2.2 Weighted Median Smoothers ............................ 267
12.2.3 Weighted Median Filters ................................. 275
12.3 Image Noise Cleaning .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . 277
12.4 Image Zooming . . . . . . . . . . . . . . . . . . . . . . . . . . . .. .. . . . . . .. . . . .. . . . . . . . . . 282
12.5 Image Sharpening.......... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 284
12.6 Conclusion . . .. . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . .. . . . 289
References . . . .. . . . . . . . . .. . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . .. .. . 290
CHAPTER 13 Morphological Filtering 293
13.1 Introduction ........................................................ 293
13.2 Morphological Image Operators.................................. 294
13.2.1 Morphological Filters for Binary Images ............... 294
13.2.2 Morphological Filters for Gray-level Images . . . . . . . . . . . 295
13.2.3 Universality of Morphological Operators............... 296
13.2.4 Median, Rank, and Stack Filters . . . . . . . . . . . . . . . . . . . . . . . . . 297
x Contents
13.2.5 Algebraic Generalizations of Morphological
Operators.................................................. 298
13.3 Morphological Filters for Image Enhancement......... . . . . . . . . . 299
13.3.1 Noise Suppresion and Image Smoothing ............... 300
13.3.2 Connected Filters for Smoothing and
Simplification............................................. 301
13.3.3 Contrast Enhancement ................................... 305
13.4 Morphological Operators for Template Matehing............... 307
13.4.1 Morphological Correlation .............................. 307
13.4.2 Binary Object Detection and Rank Filtering . . . . . . . . . . . 308
13.4.3 Hit-Miss Filter . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 309
13.5 Morphological Operators for Feature Detection . . . . . . . . . . . . . . . . 309
13.5.1 Edge Detection............................................ 309
13.5.2 Peak/Valley Blob Detection ............................. 314
13.6 Design Approaches for Morphological Filters . . . . . . . . . . . . . . . . . . . 317
13.7 Condusions ........................................................ 319
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 319
CHAPTER 14 Basic Methods for Image Restoration and
ldentification 323
14.1 Introduction...................... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 323
14.2 Blur Models ........................................................ 326
14.2.1 No Blur .................................................... 327
14.2.2 Linear Motion Blur ....................................... 327
14.2.3 Uniform Out-of-Focus Blur ............................. 329
14.2.4 Atmospheric Turbulence Blur ........................... 330
14.3 Image Restoration Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 330
14.3.1 Inverse Filter .......... : .................................... 332
14.3.2 Least-Squares Filters ...................................... 332
14.3.3 Iterative Filters............................................ 338
14.3.4 BoundaryValue Problem ................................ 342
14.4 Blur Identification Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 343
14.4.1 Spectral Blur Estimation ................................. 344
14.4.2 Maximum Likelihood Blur Estimation ................. 345
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 7
CHAPTER 15 Iterative Image Restoration 349
15.1 Introduction ........................................................ 349
15.2 Iterative Recovery Algorithms ..................................... 350
15.3 Spatially Invariant Degradation................ . . . . . . . . . . . . . . . . . . . 351
15.3.1 Degradation Model. ...................................... 351
15.3.2 BasicIterative Restoration Algorithm ................... 351
15.3.3 Convergence . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 352
Contents xi
15.3.4 Reblurring ................................................. 354
15.3.5 Experimental Results..................................... 355
15.4 Matrix-Vector Formulation ....................................... 361
15.4.1 Basic Iteration............................................. 362
15.4.2 Least-Squares Iteration................................... 362
15.4.3 Constrained Least-Squares Iteration.................... 363
15.4.4 Spatially Adaptive Iteration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 367
15.5 Use of Constraints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 368
15.5.1 Experimental Results ..................................... 370
15.6 Additional Considerations . . . . . . . . . . . . . . . . .. .. . . . .. . . . . . . . . . . . . . . . 371
15.6.1 Other Forms of the Iterative Algorithm................. 371
15.6.2 Hierarchical Bayesian Image Restoration ............... 372
15.6.3 Blind Deconvolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 374
15.6.4 Additional Applications.................................. 375
15.7 Discussion.......................................................... 381
References .......................................................... 381
CHAPTER 16 Lossless Image Garnpression 385
16.1 Introduction. . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385
16.2 Basics of Lossless Image Coding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 386
16.3 Lossless Symbol Coding . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 390
16.3.1 Basic Concepts from Information Theory .............. 391
16.3.2 Context-Based Entropy Coding ......................... 394
16.3.3 Huffinan Coding . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 395
16.3.4 Arithmetic Coding........................................ 399
16.3.5 Lempel-Ziv Coding ....................................... 404
16.3.6 Elias and Exponential-Golomb Codes .................. 406
16.4 Lossless Coding Standards ........................................ 410
16.4.1 The JBIG and JBIG2 Standards .......................... 410
16.4.2 The Lossless JPEG Standard ............................. 411
16.4.3 The JPEG2000 Standard ................................. 412
16.5 Other Developments in Lossless Coding ......................... 413
16.5.1 CALIC..................................................... 413
16.5.2 Perceptually Lossless Image Coding ..................... 415
References . . . . .. . . . . . .. . . . . . . . . .. . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 417
CHAPTER 17 JPEG and JPEG2000 421
17.1 Introduction ........................................................ 421
17.2 Lossy JPEG Codec Structure . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 423
17.2.1 Encoder Structure ........................................ 423
17 .2.2 Decoder Structure . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425
17.3 Discrete Cosine Transform . . . . . . . . .. . . . . . . . . . . .. . . . . . . . . . . . . . . . . .. 425
17.4 Quantization . . . . . . . . . . . . . . . . . . . . . .. . . . .. .. . . . . . . . . . . . . . . . . . . . . . . . . . 426
17.4.1 DCT Coefficient Quantization Procedure .............. 426
17.4.2 Quantization Table Design ............................... 429
xii Contents
17.5 Coefficient-to-Symbol Mapping and Coding.................... 432
17.5.1 DC Coefficient Symbols .................................. 432
17.5.2 Mapping AC Coefficient to Symbols . . . . . . . . . . . . . . . . . . . . 433
17.5.3 Entropy Coding ........................................... 434
17.6 Image Data Format and Components............................ 435
17.7 Alternative Mo des of Operation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 436
17.7.1 Progressive Mode . . . .. . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . 43 7
17.7.2 Hierarchical Mode ........................................ 439
17.8 JPEG Part 3 ......................................................... 441
17.8.1 Variable Quantization .................................... 441
17 .8.2 Tiling . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . 443
17.9 The JPEG2000 Standard........... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445
17.10 The JPEG2000 Part 1: Coding Architecture . . . . . . . . . . . . . . . . . . . . . . 446
17.10.1 Preprocessing: Tiling, Level Offset, and Color
Transforms ................................................ 447
17.10.2 Discrete Wavelet Transform (DWT) .................... 448
17.10.3 Quantization and Inverse Quantization ................ 449
17.10.4 Precincts and Code-blocks............................... 450
17.10.5 Entropy Coding......................... . . . . . . . . . . . . . . . . . . 450
17.10.6 Bitstream Organization .................................. 454
17.10.7 Additional Features ....................................... 455
17.11 Performance and Extensions ...................................... 457
17.11.1 Comparison ofPerformance ............................ 457
17.11.2 Part 2 Extensions ......................................... 457
17.12 Additional Information............................................ 458
17.12.1 Useful Information and Links
for the JPEG Standard.................................... 458
17.12.2 Useful Information and Links for the JPEG2000
Standard ............... ·.................................... 458
References . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . .. . . . . . . 459
CHAPTER 18 Wavelet Image Compression 463
18.1 What Are Wavelets: Why Are They Good for
Image Coding? . . . . .. . . .. . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . 463
18.2 The Compression Problem........................................ 469
18.3 The Transform Coding Paradigm................................. 471
18.3.1 Transform Structure ...................................... 474
18.3.2 Quantization .............................................. 474
18.3.3 Entropy Coding ........................................... 475
18.4 Subband Coding: The Early Days................................. 476
18.5 New and More Efficient Class ofWavelet Coders ................ 478
18.5.1 Zerotree-Based Framework and EZW Coding ......... 478
18.5.2 Advanced Wavelet Coders: High-Level
Characterization . . . . . . . . . . . . . . . . . . . .. . .. . . . . . . . . . . . . . . .. . . 485
18.6 Adaptive Wavelet Transforms: Wavelet Packets . . . . . . . . . . . . . . . . . . 486
Contents xiii
18.7 JPEG2000 and Related Developments.............. . . . . . . . . . . . . . . 490
18.8 Conclusion ......................................................... 491
References . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 492
CHAPTER 19 Gradient and Laplacian Edge Detection 495
19.1 Introduction ........................................................ 495
19.2 Gradient-Based Methods .......................................... 498
19.2.1 Continuous Gradient ..................................... 498
19.2.2 Discrete Gradient Operators ............................. 504
19.3 Laplacian-Based Methods ......................................... 509
19.3.1 Continuous Laplacian .................................... 509
19.3.2 Discrete Laplacian Operators ............................ 510
19.3.3 The Laplacian of Gaussian (Marr-Hildreth Operator) 512
19.3.4 Difference of Gaussian ................................... 515
19.4 Canny's Method .................................................... 516
19.5 Approaches for Color and Multispectral Images ................ 518
19.6 Summary . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . .. . . . .. .. .. 522
References ........... 'II'............................................. 522
CHAPTER 20 Diffusion Partial Differential Equations
for Edge Detection 525
20.1 Introduction and Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 525
20.1.1 Partial Differential Equations in Image and Video
Processing . .. . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . 525
20.1.2 Edges and Anisotropie Diffusion .. .. .. .. .. .. .. .. .. .. .. .. 525
20.2 Background on Diffusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 526
20.2.1 Scale Space and Isotropie Diffusion . . . . . . . . . . . . . . . . . . . . . 526
20.3 Anisotropie Diffusion Techniques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 528
20.3.1 The Diffusion Coefficient ................. :.............. 528
20.3.2 The Diffusion PDE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 533
20.3.3 Variational Formulation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 535
20.3.4 Multiresolution Diffusion ................................ 537
20.3.5 Multispectral Anisotropie Diffusion . . . . . . . . . . . . . . . . . . . . 538
20.3.6 Speckle ReducingAnisotropie Diffusion ................ 539
20.4 Application of Anisotropie Diffusion to Edge Detection . . . . . . . 542
20.4.1 Edge Detection by Thresholding ..... ; .. .. .. .. .. .. .. .. .. 542
20.4.2 Edge Detection from Image Features . . . . . . . . . . . . . . . . . . . 543
20.4.3 Quantitative Evaluation of Edge Detection by
Anisotropie Diffusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 543
20.5 Using Vector Diffusion and Parametrie Active Contours to
Locate Edges..... . . . . . . . . . . . . . .. . . . . . . . .. . . . . .. . . . . . .. . . . . . .. . . . . . . . 546
20.5.1 Parametrie Active Contours ............................. 546
20.5.2 Gradient Vector Flow..................................... 547
20.5.3 Motion Gradient Vector Flow . . . . . . . . . . . . . . . . . . . . . . . . . . . 548
xiv Contents
20.6 Conclusions . . . . . . .. . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 549
References . . . .. . . . .. .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . .. . 550
CHAPTER 21 Image Quality Assessment 553
21.1 Introduction ........................................................ 553
21.2 Human Vision Modeling Based Metrics.......................... 555
21.2.1 Building Blocks ........................................... 556
21.2.2 HVS-Based Models ....................................... 561
21.3 Structural Approaches............................................. 571
21.3.1 The Structural Similarity Index . . . . . . . . . . . . . . . . . . . . . . . . . 571
21.3.2 Image Quality Assessment Using SSIM ................. 573
21.3.3 Relation to HVS-Based Models .......................... 576
21.4 Information Theoretic Approaches.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 578
21.4.1 Information Theoretic Metries .......................... 578
21.4.2 Image Quality Assessment Using Information
Theoretic Metries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 583
21.4.3 Relation to HVS-Based Metries and Structural
Similarity..... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . 585
21.5 Performance of Image Quality Metries. . . . . . . . . . . . . . . . . . . . . . . . . . . 58 7
21.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 588
References . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 589
CHAPTER 22 Image Watermarking: Techniques and
Applications 597
22.1 Introduction ........................................................ 597
22.2 Applications of Watermarking Techniques...................... 598
22.3 Classification of Watermarking Algorithms . . . . . . . . . . . . . . . . . . . . . 601
22.4 Watermark Embedding, Detection, and Decoding . . . . . . . . . . . . . . 604
22.5 Copyright Protection Waterma:rking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 606
22.5.1 Requirements and Metries ............................... 606
22.5.2 Attacks Against Copyright Protection Watermarking
Systems . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. .. . 611
22.5.3 Benchmarking of Copyright Protection Image
Watermarking Algorithms .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . 613
22.5.4 Spread Spectrum Watermarking ........................ 615
22.5.5 Watermarking with Side Information................... 627
22.6 Image Content Integrity and Authentication Watermarking . . . 636
References . . . . . . . . . . . . . . .. . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . .. .. . 641
CHAPTER 23 Fingerprint Recognition 649
23.1 Introduction ........................................................ 649
23.2 Ernerging Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 649
23.3 Fingerprint as a Biometrie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 650
23.4 History of Fingerprints . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 651
Contents xv
23.5 System Architecture.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 652
23.6 Fingerprint Sensing .. . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . .. . 653
23.7 Fingerprint Features . . . . . . . .. . . . .. . . . . . .. .. . . . . . . . . . . . . . . . . . . . . . . . . 655
23.8 Feature Extraction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 657
23.9 Fingerprint Enhancement...................................... . . . 660
23.10 Fingerprint Classification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 664
23.11 Fingerprint Matehing . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 668
23.12 Summary and Future Prospects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 673
References .......................................................... 674
CHAPTER 24 Unconstrained Face Recognition from a
Single Image 677
24.1 Introduction ........................................................ 677
24.1.1 Biometrie Perspective .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. 677
24.1.2 Experimental Perspective .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. 678
24.1.3 Theoretical Perspective................................... 679
24.1.4 Unconstrained Face Recognition ........................ 684
24.2 Linear Lambertian Object: Face Recognition Under
Illumination Variation......... . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 684
24.2.1 Linear Lambertian Objects .............................. 684
24.2.2 Literature Review and Proposed Approach . . . . . . . . . . . . . 686
24.2.3 The Importance of the Attached Shadow............... 687
24.2.4 Recognition in the Presence of a Single
Light Source........... . . . . .. . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . 688
24.2.5 Recognition in the Presence of Multiple
Light Sources .............................................. 691
24.3 Illuminating Light Field: Face Recognition Under
Illumination and Pose Variations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 693
24.3.1 Literature Review ......................................... 693
24.3.2 Illumination- and Pose-Invariant Identity
Signature .. .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . 694
24.3.3 Implementations and Experiments . . . . . . . . . . . . . . . . . . . . . 697
24.4 Face Modeling and Verification Across Age Progression . . . . . . . . 699
24.4.1. Shape Transformation Model for Young
Individuals [60] ........................................... 702
24.4.2 Shape Transformation Model for Adults [61] . . . . . . . . . . 704
24.4.3 Texture Transformation Model............. . . . . . . . . . . . . . 706
24.5 Conclusions . . . . . . . .. . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 708
References .. . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . .. . . . . . . . . .. .. . . . . . .. . . .. 709
CHAPTER 25 How Iris Recognition Works ns
25.1 Introduction ........................................................ 715
25.2 Localizing the Iris and its Boundaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . 716
25.3 Iris Feature Encoding by 2D Gabor Wavelet Demodulation.... 720
xvi Contents
25.4 The Test of Statistical Independence: Combinatorics
of Phase Sequences . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 722
25.5 Recognizing lrises Regardless of Size, Position,
and Odentation . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . .. . . . . . . . . . . . . . . . . . 726
25.6 Uniqueness of Failing the Test of Statistical Independence . . . . . 728
25.7 Decision Environment for Iris Recognition...... . . . . . . . . . . . . . . . . 731
25.8 Speed Performance Summary..................................... 734
25.9 Appendix: 2D Focus Assessment at the Video Frame Rate...... 735
References .......................................................... 738
CHAPTER 26 Computed Tomography 741
26.1 Introduction ........................................................ 741
26.2 Background .. . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . 742
26.2.1 X-ray Computed Tomography........................... 742
26.2.2 Nuclear Imaging Using PET and SPECT ............... 744
26.2.3 Mathematical Preliminaries ............................. 747
26.2.4 Examples . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 747
26.3 2D Image Reconstruction . . . . . .. . . . . . . . . . . . . . . . . . . . .. . . .. . . . .. .. . . 748
26.3.1 FourierSpace and Filtered Backprojection Methods
for Parallel-Beam Projections ............................ 748
26.3.2 Fan-Beam Filtered Backprojection ...................... 751
26.3.3 Region oflnterest Reconstruction ....................... 753
26.4 Extending 2D Methods into 3D ................................... 755
26.4.1 Extracting 2D Data from 3D ............................. 755
26.4.2 Spiral CT . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 756
26.4.3 Rebinning Methods in 3D PET.......................... 758
26.5 3D Image Reconstruction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 759
26.5.1 Fully 3D Reconstruction with Missing Data............ 759
26.5.2 Cone-Beam Tomography ................................ 761
26.5.3 Helical Multi-Slice CT Imaging ......................... 764
26.6 Iterative Reconstruction Methods ................................ 767
26.6.1 Finite Dimensional Formulations and Algebraic
Reconstruction Technique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 767
26.6.2 Statistical Formulations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 769
26.6.3 Maximum Likelihood Methods . . . . . . . . . . . . . . . . . . . . . . . . . 770
26.6.4 Bayesian Reconstruction Methods . . . . . . . . . . . . . . . . . . . . . . 772
26.7 Summary . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . .. .. . . . . . . . . . . . . 773
References . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . .. . . . .. . . . .. . . . . . . . . . . . . 77 4
CHAPTER 27 Computer-Assisted Microscopy 777
27.1 Introduction ........................................................ 777
27.2 Computer-Assisted Microscopy Systems......................... 779
27.2.1 Hardware .................................................. 780
27.2.2 Image Capture . . . . . . . .. . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . .. . . . 785
27.2.3 Imaging Software......................................... 785
27.3 Software for Hardware Control . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 786
27.3.1 Automated Slide Scanning............................... 787
27.3.2 Autofoct1;sing.............................................. 787
27.3.3 Image Capture ............................................ 790
27.4 Image Processing and Analysis Software . . . . . . . . . . . . . . . . . . . . . . . . . 791
27.4.1 Correction of Instrumentation-Based Errors .......... 791
27.4.2 Background Shading Correction ........................ 791
27.4.3 Color Compensation ..................................... 794
27.4.4 Image Enhancement...................................... 795
27.4.5 Segmentation for Object Identification ................. 796
27.4.6 Object Measurement . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 798
27.4.7 The Userinterface .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. .. . .. . 799
27.5 A Computerized Microscopy System for Clinical
Cytogenetics . . . . . . . . . . . . . . . . . . . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 799
27.5.1 Hardware .................................................. 799
27.5.2 Software . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 800
27.6 Applications in Clinical Cytogenetics . . . . . . . . . . . . . . . . . . . . . . . . . . . . 802
27.6.1 Fetal Cell Screening in Matemal Blood ................. 802
27.6.2 Subtelomeric FISH for Detection of Cryptic
Translocations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 804
27.6.3 Detection of Gene Duplications ......................... 808
27.6.4 Four-Color FISH for Aneuploidy Screening............ 817
27.6.5 Thick Specimen Imaging ................................. 820
27.7 Commercially Available Systems................. . . . . . . . . . . . . . . . . . 825
27.8 Conclusions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 826
References . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . .. .. . . . . . . . . . . . . .. . . . . . . 828
28 Towards Video Processing 833
835