资 源 简 介
Digital Image Processing Using MATLAB 个人感觉这份pdf质量超好送给有需要的人吧 请大家支持支持正版Library of Congress Cataloging- in-Publication Data on FileLibrary of Congress Control Number: 2009902793GatesmarkGatesmark PublishingA Division of gatesmark llcPublishingwww.gatesmark.como 2009 by Gatesmark LLCAll rights reserved. No part of this book may be reproduced or transmitted in any form or by anymeans, without written permission from the publisherGatesmarkPublishingisaregisteredtrademarkofGatesmark.Llc.www.gatesmark.comGatesmarkisaregisteredtrademarkofGatesmark.Llc.www.gatesmark.comMATLAB is a registered trademark of The Math Works, Inc., 3 Apple Hill Drive, Natick, MA01760-2098The authors and publisher of this book have used their best efforts in preparing this book.Theseefforts include the development, research, and testing of the theories and programs to determinetheir effectiveness. The authors and publisher shall not be liable in any event for incidental orconsequential damages with or arising out of the furnishing performance, or use of theseprogramsPrinted in the united states of america10987654321工SBN7吕-口-日己0B54-口-0To RyanTo Janice, David, and JonathananTo Geri, Christopher, and nicholasContentsPreface xiAcknowledgementsx111about the authorsXuⅠ ntroduction1Prevell1.1 Background1.2 What Is Digital Image Processing? 21.3 Background on MATLAB and the Image Processing Toolbox 41.4 Areas of Image Processing Covered in the book 51.5 The book web site1.6 Notation 71.7 The MATLAB Desktop 71.7.1 Using the matlab Editor/Debugger 101.7.2 Getting Help 101.7.3 Saving and Retrieving Work Session Data 111.8 How References Are Organized in the Book 11Summay12Fundamentals 13Preview 132.1 Digital Image Representation 132.1.1 Coordinate Conventions 1 42. 1.2 Images as Matrices 152.2 Reading Images 152.3 Displaying Images 182.4 Writing Images 212.5 Classes 262.6 Image types 272.6.1 Gray-scale Images 272.6.2 Binary Images 272.6.3 A Note on Terminology 282.7 Converting between Classes 282.8 Array Indexing 332.8.1 Indexing Vectors 332.8.2 Indexing Matrices 352.8.3 Indexing with a single colon 372.8.4 Logical Indexing2.8.5 Linear Indexing 392.8.6 Selecting Array Dimensions 42v1■ Contents2.8.7 Sparse matrices 422.9 Some Important Standard arrays 432.10 Introduction to M-Function Programming 442.10.1M- files442.10.2 Operators 462.10.3 Flow Control 572.10.4 Function handles 632. 10.5 Code Optimization 652. 10.6 Interactive I/o 712. 10.7 An Introduction to Cell Arrays and structures 74Summary 79Intensity Transformations andSpatial Filtering 80Preview803.1 Background 803.2 Intensity Transformation Functions 813.2.1 Functions imad just and stretchlim 823.2.2 Logarithmic and Contrast-Stretching Transformations 843. 2.3 Specifying Arbitrary Intensity Transformations 863.2. 4 Some Utility M-functions for Intensity Transformations 873.3 Histogram Processing and Function Plotting 933.3.1 Generating and plotting image histograms 943.3. 2 Histogram Equalization 993.3.3 Histogram Matching(Specification) 1023.3.4 Function adapthisteq 1073.4 Spatial Filtering 1093.4.1 Linear Spatial Filtering 1093.4.2 Nonlinear Spatial Filtering 1173.5 Image Processing Toolbox Standard Spatial Filters 1203.5. 1 Linear spatial filters 1203.5.2 Nonlinear Spatial Filters 1243.6 Using Fuzzy Techniques for Intensity Transformations and SpatialFiltering 1283.6. 1 Background 1283.6.2 Introduction to Fuzzy Sets 1283.6.3 Using Fuzzy Sets 1333.6.4 A Set of Custom Fuzzy M-functions 1403.6.5 Using fuzzy Sets for Intensity Transformations 1553.6.6 Using Fuzzy Sets for Spatial Filtering 158Summary 163Filtering in the frequency domain 164Previe 164Contents vii4.1 The 2-D Discrete fourier transform 1644.2 Computing and Visualizing the 2-D DFT in MATLAB 1684.3 Filtering in the Frequency Domain 1724.3.1 Fundamentals 1734.3.2 Basic Steps in DFT Filtering 1784.3.3 An M-function for Filtering in the Frequency Domain 1794.4 Obtaining Frequency Domain Filters from Spatial Filters 1804.5 Generating Filters Directly in the Frequency Domain 1854.5.1 Creating Meshgrid Arrays for Use in Implementing Filtersin the Frequency Domain 1864.5.2 Lowpass(Smoothing)Frequency Domain Filters 1874.5.3 Wireframe and Surface Plotting 1904.6 Highpass(Sharpening) Frequency Domain Filters 1944.6.1 A Function for Highpass Filtering 1944.6.2 High-Frequency Emphasis Filtering 1974.7 Selective Filtering 1994.7. 1 Bandreject and Bandpass Filters 1994.7.2 Notchreject and notchpass Filters 202Summary 208Image restoration and reconstruction 209Preview 2095.1 A Model of the Image Degradation/Restoration Process 2105.2 Noise models 2115.2.1 Adding Noise to Images with Function imnoise 2115.2.2 Generating Spatial Random noise with a SpecifiedDistribution 2125.2.3 Periodic noise 2205.2.4 Estimating Noise Parameters 2245.3 Restoration in the Presence of Noise Only--Spatial Filtering 2295.3.1 Spatial Noise Filters 2295.3.2 Adaptive Spatial Filters 2335.4 Periodic Noise Reduction Using Frequency Domain Filtering 2365.5 Modeling the Degradation Function 2375.6 Direct Inverse Filtering 2405.7 Wiener Filtering 2405.8 Constrained Least Squares (Regularized) Filtering 2445.9 Iterative Nonlinear Restoration Using the Lucy-RichardsonAlgorithm 2465.10 Blind Deconvolution 2505.11 Image Reconstruction from Projections 2515.11.1 Background 2525. 11.2 Parallel-Beam projections and the radon transform 2545.11.3 The Fourier Slice Theorem and Filtered Backprojections 2575. 11.4 Filter Implementation 258Contents5. 11.5 Reconstruction Using Fan-Beam Filtered Backprojections 2595.11.6 Function radon 2605.11.7 Function radon 2635.11. 8 Working with Fan-Beam Data 268Summary 277Geometric Transformations and ImageRegistration 278Preview 2786.1 Transforming points 2786.2 Affine Transformations 2836.3 Projective Transformations 2876.4 Applying Geometric Transformations to Images 2886.5 Image Coordinate Systems in MATLAB 2916.5.1 Output Image location 2936.5. 2 Controlling the Output Grid 2976.6 Image Interpolation 2996.6. 1 Interpolation in Two Dimensions 3026.6.2 Comparing Interpolation Methods 3026.7 Image Registration 3056.7.1 Registration Process 3066.7.2 Manual Feature Selection and Matching Using cpselect 3066.7.3 Inferring Transformation Parameters Using cp2tform 3076.7.4 Visualizing aligned images 3076.7.5 Area-Based Registration 3116.7.5 Automatic Feature-Based Registration 316Summary 317Color Image processing 318Previe 31 87.1 Color Image Representation in MATLAB 3187.1. 1 RGB Images 3187. 1.2 Indexed Images 3217.1.3 Functions for Manipulating RGB and Indexed Images 3237.2 Converting Between Color Spaces 3287. 2.1 NTSC Color Space 3287.2.2 The Y Cb Cr Color Space 3297. 2. 3 The Hsv Color Space 3297. 2.4 The CMY and CMYK Color Spaces 3307.2.5 The HsI Color Space 3317.2.6 Device-Independent Color spaces 3407.3 The Basics of Color Image Processing 3497.4 Color transformations 3507.5 Spatial Filtering of Color Images 360■ Contents 1x7.5.1 Color Image Smoothing 3607.5.2 Color Image Sharpening 3657.6 Working Directly in RGB Vector Space 3667.6.1 Color Edge detection Using the gradient 3667.6.2 Image Segmentation in RGB Vector Space 372Summary 376Wavelets 377Preview 3778.1 Background 3778.2 The fast Wavelet Transform 3808.2.1 FWTS Using the Wavelet Toolbox 3818.2.2 FWTs without the wavelet Toolbox 3878.3 Working with Wavelet Decomposition Structures 3968.3.1 Editing Wavelet Decomposition Coefficients without theWavelet toolbox 3998.3.2 Displaying Wavelet Decomposition Coefficients 4048. 4 The inverse fast Wavelet Transform 4088.5 Wavelets in Image Processing 414Summary 419Image Compression 420Preview 4209.1 Background 4219.2 Coding Redundancy 4249.2.1 Huffman Codes 4279.2.2 Huffman Encoding 4339. 2.3 Huffman Decoding 4399.3 Spatial Redundancy 4469.4 Irrelevant Information 4539.5 JPEG Compression 4569.51JPEG456952JPEG20004649.6 Video Compression 4729.6.1 MATLAB Image Sequences and Movies 4739.6.2 Temporal Redundancy and motion Compensation 476Summary 48510Morphological image processing 486Preview 48610.1 Preliminaries 48710. 1. 1 Some basic Concepts from Set Theory 48710. 1.2 Binary Images Sets, and logical operators 48910.2 Dilation and erosion 490