S Allen Broughton, Kurt Bryan
Discrete Fourier Analysis and Wavelets
Applications to Signal and Image Processing
S Allen Broughton, Kurt Bryan
Discrete Fourier Analysis and Wavelets
Applications to Signal and Image Processing
- Gebundenes Buch
- Merkliste
- Auf die Merkliste
- Bewerten Bewerten
- Teilen
- Produkt teilen
- Produkterinnerung
- Produkterinnerung
Delivers an appropriate mix of theory and applications to help readers understand the process and problems of image and signal analysis Maintaining a comprehensive and accessible treatment of the concepts, methods, and applications of signal and image data transformation, this Second Edition of Discrete Fourier Analysis and Wavelets: Applications to Signal and Image Processing features updated and revised coverage throughout with an emphasis on key and recent developments in the field of signal and image processing. Topical coverage includes: vector spaces, signals, and images; the discrete…mehr
Andere Kunden interessierten sich auch für
- Russell L HermanAn Introduction to Fourier Analysis139,99 €
- Introduction to Fourier Analysis and Generalised Functions33,99 €
- Sabrine ArfaouiWavelet Analysis178,99 €
- David K RuchWavelet Theory154,99 €
- Prem K KytheSinusoids273,99 €
- David Foster WallaceEverything and More42,99 €
- Benoîte de SaportaMartingales and Financial Mathematics in Discrete Time189,99 €
-
-
-
Delivers an appropriate mix of theory and applications to help readers understand the process and problems of image and signal analysis Maintaining a comprehensive and accessible treatment of the concepts, methods, and applications of signal and image data transformation, this Second Edition of Discrete Fourier Analysis and Wavelets: Applications to Signal and Image Processing features updated and revised coverage throughout with an emphasis on key and recent developments in the field of signal and image processing. Topical coverage includes: vector spaces, signals, and images; the discrete Fourier transform; the discrete cosine transform; convolution and filtering; windowing and localization; spectrograms; frames; filter banks; lifting schemes; and wavelets. Discrete Fourier Analysis and Wavelets introduces a new chapter on frames--a new technology in which signals, images, and other data are redundantly measured. This redundancy allows for more sophisticated signal analysis. The new coverage also expands upon the discussion on spectrograms using a frames approach. In addition, the book includes a new chapter on lifting schemes for wavelets and provides a variation on the original low-pass/high-pass filter bank approach to the design and implementation of wavelets. These new chapters also include appropriate exercises and MATLAB (R) projects for further experimentation and practice. * Features updated and revised content throughout, continues to emphasize discrete and digital methods, and utilizes MATLAB(R) to illustrate these concepts * Contains two new chapters on frames and lifting schemes, which take into account crucial new advances in the field of signal and image processing * Expands the discussion on spectrograms using a frames approach, which is an ideal method for reconstructing signals after information has been lost or corrupted (packet erasure) * Maintains a comprehensive treatment of linear signal processing for audio and image signals with a well-balanced and accessible selection of topics that appeal to a diverse audience within mathematics and engineering * Focuses on the underlying mathematics, especially the concepts of finite-dimensional vector spaces and matrix methods, and provides a rigorous model for signals and images based on vector spaces and linear algebra methods * Supplemented with a companion website containing solution sets and software exploration support for MATLAB and SciPy (Scientific Python) Thoroughly class-tested over the past fifteen years, Discrete Fourier Analysis and Wavelets: Applications to Signal and Image Processing is an appropriately self-contained book ideal for a one-semester course on the subject.
Hinweis: Dieser Artikel kann nur an eine deutsche Lieferadresse ausgeliefert werden.
Hinweis: Dieser Artikel kann nur an eine deutsche Lieferadresse ausgeliefert werden.
Produktdetails
- Produktdetails
- Verlag: Wiley
- 2nd edition
- Seitenzahl: 464
- Erscheinungstermin: 3. April 2018
- Englisch
- Abmessung: 231mm x 155mm x 30mm
- Gewicht: 794g
- ISBN-13: 9781119258223
- ISBN-10: 1119258227
- Artikelnr.: 51388079
- Herstellerkennzeichnung
- Libri GmbH
- Europaallee 1
- 36244 Bad Hersfeld
- 06621 890
- Verlag: Wiley
- 2nd edition
- Seitenzahl: 464
- Erscheinungstermin: 3. April 2018
- Englisch
- Abmessung: 231mm x 155mm x 30mm
- Gewicht: 794g
- ISBN-13: 9781119258223
- ISBN-10: 1119258227
- Artikelnr.: 51388079
- Herstellerkennzeichnung
- Libri GmbH
- Europaallee 1
- 36244 Bad Hersfeld
- 06621 890
S. Allen Broughton, PhD, is Professor Emeritus of Mathematics at Rose-Hulman Institute of Technology. Dr. Broughton is a member of the American Mathematical Society (AMS) and the Society for the Industrial Applications of Mathematics (SIAM), and his research interests include the mathematics of image and signal processing, and wavelets. Kurt Bryan, PhD, is Professor of Mathematics at Rose-Hulman Institute of Technology. Dr. Bryan is a member of MAA and SIAM and has authored over twenty peer-reviewed journal articles.
Preface xvii Acknowledgments xxi 1 Vector Spaces, Signals, and Images 1 1.1 Overview 1 1.2 Some Common Image Processing Problems 1 1.2.1 Applications 2 1.2.1.1 Compression 2 1.2.1.2 Restoration 2 1.2.1.3 Edge Detection 3 1.2.1.4 Registration 3 1.2.2 Transform-Based Methods 3 1.3 Signals and Images 3 1.3.1 Signals 4 1.3.2 Sampling, Quantization Error, and Noise 5 1.3.3 Grayscale Images 6 1.3.4 Sampling Images 8 1.3.5 Color 9 1.3.6 Quantization and Noise for Images 9 1.4 Vector Space Models for Signals and Images 10 1.4.1 Examples-Discrete Spaces 11 1.4.2 Examples-Function Spaces 14 1.5 Basic Waveforms-The Analog Case 16 1.5.1 The One-Dimensional Waveforms 16 1.5.2 2D Basic Waveforms 19 1.6 Sampling and Aliasing 20 1.6.1 Introduction 20 1.6.2 Aliasing for Complex Exponential Waveforms 22 1.6.3 Aliasing for Sines and Cosines 23 1.6.4 The Nyquist Sampling Rate 24 1.6.5 Aliasing in Images 24 1.7 Basic Waveforms-The Discrete Case 25 1.7.1 Discrete Basic Waveforms for Finite Signals 25 1.7.2 Discrete Basic Waveforms for Images 27 1.8 Inner Product Spaces and Orthogonality 28 1.8.1 Inner Products and Norms 28 1.8.1.1 Inner Products 28 1.8.1.2 Norms 29 1.8.2 Examples 30 1.8.3 Orthogonality 33 1.8.4 The Cauchy-Schwarz Inequality 34 1.8.5 Bases and Orthogonal Decomposition 35 1.8.5.1 Bases 35 1.8.5.2 Orthogonal and Orthonormal Bases 37 1.8.5.3 Parseval's Identity 39 1.9 Signal and Image Digitization 39 1.9.1 Quantization and Dequantization 40 1.9.1.1 The General Quantization Scheme 41 1.9.1.2 Dequantization 42 1.9.1.3 Measuring Error 42 1.9.2 Quantifying Signal and Image Distortion More Generally 43 1.10 Infinite-Dimensional Inner Product Spaces 45 1.10.1 Example: An Infinite-Dimensional Space 45 1.10.2 Orthogonal Bases in Inner Product Spaces 46 1.10.3 The Cauchy-Schwarz Inequality and Orthogonal Expansions 48 1.10.4 The Basic Waveforms and Fourier Series 49 1.10.4.1 Complex Exponential Fourier Series 49 1.10.4.2 Sines and Cosines 52 1.10.4.3 Fourier Series on Rectangles 53 1.10.5 Hilbert Spaces and L2(a, b ) 53 1.10.5.1 Expanding the Space of Functions 53 1.10.5.2 Complications 54 1.10.5.3 A Converse to Parseval 55 1.11 Matlab Project 55 Exercises 60 2 The Discrete Fourier Transform 71 2.1 Overview 71 2.2 The Time Domain and Frequency Domain 71 2.3 A Motivational Example 73 2.3.1 A Simple Signal 73 2.3.2 Decomposition into BasicWaveforms 74 2.3.3 Energy at Each Frequency 74 2.3.4 Graphing the Results 75 2.3.5 Removing Noise 77 2.4 The One-Dimensional DFT 78 2.4.1 Definition of the DFT 78 2.4.2 Sample Signal and DFT Pairs 80 2.4.2.1 An Aliasing Example 80 2.4.2.2 Square Pulses 81 2.4.2.3 Noise 82 2.4.3 Suggestions on Plotting DFTs 84 2.4.4 An Audio Example 84 2.5 Properties of the DFT 85 2.5.1 Matrix Formulation and Linearity 85 2.5.1.1 The DFT as a Matrix 85 2.5.1.2 The Inverse DFT as a Matrix 87 2.5.2 Symmetries for Real Signals 88 2.6 The Fast Fourier transform 90 2.6.1 DFT Operation Count 90 2.6.2 The FFT 91 2.6.3 The Operation Count 92 2.7 The Two-Dimensional DFT 93 2.7.1 Interpretation and Examples of the 2-D DFT 96 2.8 Matlab Project 97 2.8.1 Audio Explorations 97 2.8.2 Images 99 Exercises 101 3 The Discrete Cosine Transform 105 3.1 Motivation for the DCT-Compression 105 3.2 Other Compression Issues 106 3.3 Initial Examples-Thresholding 107 3.3.1 Compression Example 1: A Smooth Function 108 3.3.2 Compression Example 2: A Discontinuity 109 3.3.3 Compression Example 3 110 3.3.4 Observations 112 3.4 The Discrete Cosine Transform 112 3.4.1 DFT Compression Drawbacks 112 3.4.2 The Discrete Cosine Transform 113 3.4.2.1 Symmetric Reflection 113 3.4.2.2 DFT of the Extension 113 3.4.2.3 DCT/IDCT Derivation 114 3.4.2.4 Definition of the DCT and IDCT 115 3.4.3 Matrix Formulation of the DCT 116 3.5 Properties of the DCT 116 3.5.1 BasicWaveforms for the DCT 116 3.5.2 The Frequency Domain for the DCT 117 3.5.3 DCT and Compression Examples 117 3.6 The Two-Dimensional DCT 120 3.7 Block Transforms 121 3.8 JPEG Compression 123 3.8.1 Overall Outline 123 3.8.2 DCT and Quantization Details 124 3.8.3 The JPEG Dog 128 3.8.4 Sequential versus Progressive Encoding 128 3.9 Matlab Project 131 Exercises 134 4 Convolution and Filtering 139 4.1 Overview 139 4.2 One-Dimensional Convolution 139 4.2.1 Example: Low-Pass Filtering and Noise Removal 139 4.2.2 Convolution 142 4.2.2.1 Convolution Definition 142 4.2.2.2 Convolution Properties 143 4.3 Convolution Theorem and Filtering 146 4.3.1 The Convolution Theorem 146 4.3.2 Filtering and Frequency Response 147 4.3.2.1 Filtering Effect on BasicWaveforms 147 4.3.3 Filter Design 150 4.4 2D Convolution-Filtering Images 152 4.4.1 Two-Dimensional Filtering and Frequency Response 152 4.4.2 Applications of 2D Convolution and Filtering 153 4.4.2.1 Noise Removal and Blurring 153 4.4.2.2 Edge Detection 154 4.5 Infinite and Bi-Infinite Signal Models 156 4.5.1 L2(
) and L2(
) 158 4.5.1.1 The Inner Product Space L2(
) 158 4.5.1.2 The Inner Product Space L2(
) 159 4.5.2 Fourier Analysis in L2(
) and L2(
) 160 4.5.2.1 The Discrete Time Fourier Transform in L2(
) 160 4.5.2.2 Aliasing and the Nyquist Frequency in L2(
) 161 4.5.2.3 The Fourier Transform on L2(
)) 163 4.5.3 Convolution and Filtering in L2(
) and L2(
) 163 4.5.3.1 The Convolution Theorem 164 4.5.4 The z-Transform 166 4.5.4.1 Two Points of View 166 4.5.4.2 Algebra of z-Transforms; Convolution 167 4.5.5 Convolution in
N versus L2(
) 168 4.5.5.1 Some Notation 168 4.5.5.2 Circular Convolution and z-Transforms 169 4.5.5.3 Convolution in
N from Convolution in L2(
) 170 4.5.6 Some Filter Terminology 171 4.5.7 The Space L2(
×
) 172 4.6 Matlab Project 172 4.6.1 Basic Convolution and Filtering 172 4.6.2 Audio Signals and Noise Removal 174 4.6.3 Filtering Images 175 Exercises 176 5 Windowing and Localization 185 5.1 Overview: Nonlocality of the DFT 185 5.2 Localization via Windowing 187 5.2.1 Windowing 187 5.2.2 Analysis of Windowing 188 5.2.2.1 Step 1: Relation of X and Y 189 5.2.2.2 Step 2: Effect of Index Shift 190 5.2.2.3 Step 3: N-Point versus M-Point DFT 191 5.2.3 Spectrograms 192 5.2.4 Other Types of Windows 196 5.3 Matlab Project 198 5.3.1 Windows 198 5.3.2 Spectrograms 199 Exercises 200 6 Frames 205 6.1 Introduction 205 6.2 Packet Loss 205 6.3 Frames-Using more Dot Products 208 6.4 Analysis and Synthesis with Frames 211 6.4.1 Analysis and Synthesis 211 6.4.2 Dual Frame and Perfect Reconstruction 213 6.4.3 Partial Reconstruction 214 6.4.4 Other Dual Frames 215 6.4.5 Numerical Concerns 216 6.4.5.1 Condition Number of a Matrix 217 6.5 Initial Examples of Frames 218 6.5.1 Circular Frames in
2 218 6.5.2 Extended DFT Frames and Harmonic Frames 219 6.5.3 Canonical Tight Frame 221 6.5.4 Frames for Images 222 6.6 More on the Frame Operator 222 6.7 Group-Based Frames 225 6.7.1 Unitary Matrix Groups and Frames 225 6.7.2 Initial Examples of Group Frames 228 6.7.2.1 Platonic Frames 228 6.7.2.2 Symmetric Group Frames 230 6.7.2.3 Harmonic Frames 232 6.7.3 Gabor Frames 232 6.7.3.1 Flipped Gabor Frame 237 6.8 Frame Applications 237 6.8.1 Packet Loss 239 6.8.2 Redundancy and other duals 240 6.8.3 Spectrogram 241 6.9 Matlab Project 242 6.9.1 Frames and Frame Operator 243 6.9.2 Analysis and Synthesis 245 6.9.3 Condition Number 246 6.9.4 Packet Loss 246 6.9.5 Gabor Frames 246 Exercises 247 7 Filter Banks 251 7.1 Overview 251 7.2 The Haar Filter Bank 252 7.2.1 The One-Stage Two-Channel Filter Bank 252 7.2.2 Inverting the One-stage Transform 256 7.2.3 Summary of Filter Bank Operation 257 7.3 The General One-stage Two-channel Filter Bank 260 7.3.1 Formulation for Arbitrary FIR Filters 260 7.3.2 Perfect Reconstruction 261 7.3.3 Orthogonal Filter Banks 263 7.4 Multistage Filter Banks 264 7.5 Filter Banks for Finite Length Signals 267 7.5.1 Extension Strategy 267 7.5.2 Analysis of Periodic Extension 269 7.5.2.1 Adapting the Analysis Transform to Finite Length 270 7.5.2.2 Adapting the Synthesis Transform to Finite Length 272 7.5.2.3 Other Extensions 274 7.5.3 Matrix Formulation of the Periodic Case 274 7.5.4 Multistage Transforms 275 7.5.4.1 Iterating the One-stage Transform 275 7.5.4.2 Matrix Formulation of Multistage Transform 277 7.5.4.3 Reconstruction from Approximation Coefficients 278 7.5.5 Matlab Implementation of Discrete Wavelet Transforms 281 7.6 The 2D Discrete Wavelet Transform and JPEG 2000 281 7.6.1 Two-dimensional Transforms 281 7.6.2 Multistage Transforms for Two-dimensional Images 282 7.6.3 Approximations and Details for Images 286 7.6.4 JPEG 2000 288 7.7 Filter Design 289 7.7.1 Filter Banks in the z-domain 290 7.7.1.1 Downsampling and Upsampling in the z-domain 290 7.7.1.2 Filtering in the Frequency Domain 290 7.7.2 Perfect Reconstruction in the z-frequency Domain 290 7.7.3 Filter Design I: Synthesis from Analysis 292 7.7.4 Filter Design II: Product Filters 295 7.7.5 Filter Design III: More Product Filters 297 7.7.6 Orthogonal Filter Banks 299 7.7.6.1 Design Equations for an Orthogonal Bank 299 7.7.6.2 The Product Filter in the Orthogonal Case 300 7.7.6.3 Restrictions on P(z); Spectral Factorization 301 7.7.6.4 Daubechies Filters 301 7.8 Matlab Project 303 7.8.1 Basics 303 7.8.2 Audio Signals 304 7.8.3 Images 305 7.9 Alternate Matlab Project 306 7.9.1 Basics 306 7.9.2 Audio Signals 307 7.9.3 Images 307 Exercises 309 8 Lifting for Filter Banks and Wavelets 319 8.1 Overview 319 8.2 Lifting for the Haar Filter Bank 319 8.2.1 The Polyphase Analysis 320 8.2.2 Inverting the Polyphase Haar Transform 321 8.2.3 Lifting Decomposition for the Haar Transform 322 8.2.4 Inverting the Lifted Haar Transform 324 8.3 The Lifting Theorem 324 8.3.1 A Few Facts About Laurent Polynomials 325 8.3.1.1 The Width of a Laurent Polynomial 325 8.3.1.2 The Division Algorithm 325 8.3.2 The Lifting Theorem 326 8.4 Polyphase Analysis for Filter Banks 330 8.4.1 The Polyphase Decomposition and Convolution 331 8.4.2 The Polyphase Analysis Matrix 333 8.4.3 Inverting the Transform 334 8.4.4 Orthogonal Filters 338 8.5 Lifting 339 8.5.1 Relation Between the Polyphase Matrices 339 8.5.2 Factoring the Le Gall 5/3 Polyphase Matrix 341 8.5.3 Factoring the Haar Polyphase Matrix 343 8.5.4 Efficiency 345 8.5.5 Lifting to Design Transforms 346 8.6 Matlab Project 351 8.6.1 Laurent Polynomials 351 8.6.2 Lifting for CDF(2,2) 354 8.6.3 Lifting the D4 Filter Bank 356 Exercises 356 9 Wavelets 361 9.1 Overview 361 9.1.1 Chapter Outline 361 9.1.2 Continuous from Discrete 361 9.2 The Haar Basis 363 9.2.1 Haar Functions as a Basis for L2(0, 1) 364 9.2.1.1 Haar Function Definition and Graphs 364 9.2.1.2 Orthogonality 367 9.2.1.3 Completeness in L2(0, 1) 368 9.2.2 Haar Functions as an Orthonormal Basis for L2(
) 372 9.2.3 Projections and Approximations 374 9.3 Haar Wavelets Versus the Haar Filter Bank 376 9.3.1 Single-stage Case 377 9.3.1.1 Functions from Sequences 377 9.3.1.2 Filter Bank Analysis/Synthesis 377 9.3.1.3 Haar Expansion and Filter Bank Parallels 378 9.3.2 Multistage Haar Filter Bank and Multiresolution 380 9.3.2.1 Some Subspaces and Bases 381 9.3.2.2 Multiresolution and Orthogonal Decomposition 381 9.3.2.3 Direct Sums 382 9.3.2.4 Connection to Multistage Haar Filter Banks 384 9.4 Orthogonal Wavelets 386 9.4.1 Essential Ingredients 386 9.4.2 Constructing a Multiresolution Analysis: The Dilation Equation 387 9.4.3 Connection to Orthogonal Filters 389 9.4.4 Computing the Scaling Function 390 9.4.5 Scaling Function Existence and Properties 394 9.4.5.1 Fixed Point Iteration and the Cascade Algorithm 394 9.4.5.2 Existence of the Scaling Function 395 9.4.5.3 The Support of the Scaling Function 397 9.4.5.4 Back to Multiresolution 399 9.4.6 Wavelets 399 9.4.7 Wavelets and the Multiresolution Analysis 404 9.4.7.1 Final Remarks on Orthogonal Wavelets 406 9.5 Biorthogonal Wavelets 407 9.5.1 Biorthogonal Scaling Functions 408 9.5.2 Biorthogonal Wavelets 409 9.5.3 Decomposition of L2(
) 409 9.6 Matlab Project 411 9.6.1 Orthogonal Wavelets 411 9.6.2 Biorthogonal Wavelets 414 Exercises 414 Bibliography 421 Appendix: Solutions to Exercises 423 Index 439
) and L2(
) 158 4.5.1.1 The Inner Product Space L2(
) 158 4.5.1.2 The Inner Product Space L2(
) 159 4.5.2 Fourier Analysis in L2(
) and L2(
) 160 4.5.2.1 The Discrete Time Fourier Transform in L2(
) 160 4.5.2.2 Aliasing and the Nyquist Frequency in L2(
) 161 4.5.2.3 The Fourier Transform on L2(
)) 163 4.5.3 Convolution and Filtering in L2(
) and L2(
) 163 4.5.3.1 The Convolution Theorem 164 4.5.4 The z-Transform 166 4.5.4.1 Two Points of View 166 4.5.4.2 Algebra of z-Transforms; Convolution 167 4.5.5 Convolution in
N versus L2(
) 168 4.5.5.1 Some Notation 168 4.5.5.2 Circular Convolution and z-Transforms 169 4.5.5.3 Convolution in
N from Convolution in L2(
) 170 4.5.6 Some Filter Terminology 171 4.5.7 The Space L2(
×
) 172 4.6 Matlab Project 172 4.6.1 Basic Convolution and Filtering 172 4.6.2 Audio Signals and Noise Removal 174 4.6.3 Filtering Images 175 Exercises 176 5 Windowing and Localization 185 5.1 Overview: Nonlocality of the DFT 185 5.2 Localization via Windowing 187 5.2.1 Windowing 187 5.2.2 Analysis of Windowing 188 5.2.2.1 Step 1: Relation of X and Y 189 5.2.2.2 Step 2: Effect of Index Shift 190 5.2.2.3 Step 3: N-Point versus M-Point DFT 191 5.2.3 Spectrograms 192 5.2.4 Other Types of Windows 196 5.3 Matlab Project 198 5.3.1 Windows 198 5.3.2 Spectrograms 199 Exercises 200 6 Frames 205 6.1 Introduction 205 6.2 Packet Loss 205 6.3 Frames-Using more Dot Products 208 6.4 Analysis and Synthesis with Frames 211 6.4.1 Analysis and Synthesis 211 6.4.2 Dual Frame and Perfect Reconstruction 213 6.4.3 Partial Reconstruction 214 6.4.4 Other Dual Frames 215 6.4.5 Numerical Concerns 216 6.4.5.1 Condition Number of a Matrix 217 6.5 Initial Examples of Frames 218 6.5.1 Circular Frames in
2 218 6.5.2 Extended DFT Frames and Harmonic Frames 219 6.5.3 Canonical Tight Frame 221 6.5.4 Frames for Images 222 6.6 More on the Frame Operator 222 6.7 Group-Based Frames 225 6.7.1 Unitary Matrix Groups and Frames 225 6.7.2 Initial Examples of Group Frames 228 6.7.2.1 Platonic Frames 228 6.7.2.2 Symmetric Group Frames 230 6.7.2.3 Harmonic Frames 232 6.7.3 Gabor Frames 232 6.7.3.1 Flipped Gabor Frame 237 6.8 Frame Applications 237 6.8.1 Packet Loss 239 6.8.2 Redundancy and other duals 240 6.8.3 Spectrogram 241 6.9 Matlab Project 242 6.9.1 Frames and Frame Operator 243 6.9.2 Analysis and Synthesis 245 6.9.3 Condition Number 246 6.9.4 Packet Loss 246 6.9.5 Gabor Frames 246 Exercises 247 7 Filter Banks 251 7.1 Overview 251 7.2 The Haar Filter Bank 252 7.2.1 The One-Stage Two-Channel Filter Bank 252 7.2.2 Inverting the One-stage Transform 256 7.2.3 Summary of Filter Bank Operation 257 7.3 The General One-stage Two-channel Filter Bank 260 7.3.1 Formulation for Arbitrary FIR Filters 260 7.3.2 Perfect Reconstruction 261 7.3.3 Orthogonal Filter Banks 263 7.4 Multistage Filter Banks 264 7.5 Filter Banks for Finite Length Signals 267 7.5.1 Extension Strategy 267 7.5.2 Analysis of Periodic Extension 269 7.5.2.1 Adapting the Analysis Transform to Finite Length 270 7.5.2.2 Adapting the Synthesis Transform to Finite Length 272 7.5.2.3 Other Extensions 274 7.5.3 Matrix Formulation of the Periodic Case 274 7.5.4 Multistage Transforms 275 7.5.4.1 Iterating the One-stage Transform 275 7.5.4.2 Matrix Formulation of Multistage Transform 277 7.5.4.3 Reconstruction from Approximation Coefficients 278 7.5.5 Matlab Implementation of Discrete Wavelet Transforms 281 7.6 The 2D Discrete Wavelet Transform and JPEG 2000 281 7.6.1 Two-dimensional Transforms 281 7.6.2 Multistage Transforms for Two-dimensional Images 282 7.6.3 Approximations and Details for Images 286 7.6.4 JPEG 2000 288 7.7 Filter Design 289 7.7.1 Filter Banks in the z-domain 290 7.7.1.1 Downsampling and Upsampling in the z-domain 290 7.7.1.2 Filtering in the Frequency Domain 290 7.7.2 Perfect Reconstruction in the z-frequency Domain 290 7.7.3 Filter Design I: Synthesis from Analysis 292 7.7.4 Filter Design II: Product Filters 295 7.7.5 Filter Design III: More Product Filters 297 7.7.6 Orthogonal Filter Banks 299 7.7.6.1 Design Equations for an Orthogonal Bank 299 7.7.6.2 The Product Filter in the Orthogonal Case 300 7.7.6.3 Restrictions on P(z); Spectral Factorization 301 7.7.6.4 Daubechies Filters 301 7.8 Matlab Project 303 7.8.1 Basics 303 7.8.2 Audio Signals 304 7.8.3 Images 305 7.9 Alternate Matlab Project 306 7.9.1 Basics 306 7.9.2 Audio Signals 307 7.9.3 Images 307 Exercises 309 8 Lifting for Filter Banks and Wavelets 319 8.1 Overview 319 8.2 Lifting for the Haar Filter Bank 319 8.2.1 The Polyphase Analysis 320 8.2.2 Inverting the Polyphase Haar Transform 321 8.2.3 Lifting Decomposition for the Haar Transform 322 8.2.4 Inverting the Lifted Haar Transform 324 8.3 The Lifting Theorem 324 8.3.1 A Few Facts About Laurent Polynomials 325 8.3.1.1 The Width of a Laurent Polynomial 325 8.3.1.2 The Division Algorithm 325 8.3.2 The Lifting Theorem 326 8.4 Polyphase Analysis for Filter Banks 330 8.4.1 The Polyphase Decomposition and Convolution 331 8.4.2 The Polyphase Analysis Matrix 333 8.4.3 Inverting the Transform 334 8.4.4 Orthogonal Filters 338 8.5 Lifting 339 8.5.1 Relation Between the Polyphase Matrices 339 8.5.2 Factoring the Le Gall 5/3 Polyphase Matrix 341 8.5.3 Factoring the Haar Polyphase Matrix 343 8.5.4 Efficiency 345 8.5.5 Lifting to Design Transforms 346 8.6 Matlab Project 351 8.6.1 Laurent Polynomials 351 8.6.2 Lifting for CDF(2,2) 354 8.6.3 Lifting the D4 Filter Bank 356 Exercises 356 9 Wavelets 361 9.1 Overview 361 9.1.1 Chapter Outline 361 9.1.2 Continuous from Discrete 361 9.2 The Haar Basis 363 9.2.1 Haar Functions as a Basis for L2(0, 1) 364 9.2.1.1 Haar Function Definition and Graphs 364 9.2.1.2 Orthogonality 367 9.2.1.3 Completeness in L2(0, 1) 368 9.2.2 Haar Functions as an Orthonormal Basis for L2(
) 372 9.2.3 Projections and Approximations 374 9.3 Haar Wavelets Versus the Haar Filter Bank 376 9.3.1 Single-stage Case 377 9.3.1.1 Functions from Sequences 377 9.3.1.2 Filter Bank Analysis/Synthesis 377 9.3.1.3 Haar Expansion and Filter Bank Parallels 378 9.3.2 Multistage Haar Filter Bank and Multiresolution 380 9.3.2.1 Some Subspaces and Bases 381 9.3.2.2 Multiresolution and Orthogonal Decomposition 381 9.3.2.3 Direct Sums 382 9.3.2.4 Connection to Multistage Haar Filter Banks 384 9.4 Orthogonal Wavelets 386 9.4.1 Essential Ingredients 386 9.4.2 Constructing a Multiresolution Analysis: The Dilation Equation 387 9.4.3 Connection to Orthogonal Filters 389 9.4.4 Computing the Scaling Function 390 9.4.5 Scaling Function Existence and Properties 394 9.4.5.1 Fixed Point Iteration and the Cascade Algorithm 394 9.4.5.2 Existence of the Scaling Function 395 9.4.5.3 The Support of the Scaling Function 397 9.4.5.4 Back to Multiresolution 399 9.4.6 Wavelets 399 9.4.7 Wavelets and the Multiresolution Analysis 404 9.4.7.1 Final Remarks on Orthogonal Wavelets 406 9.5 Biorthogonal Wavelets 407 9.5.1 Biorthogonal Scaling Functions 408 9.5.2 Biorthogonal Wavelets 409 9.5.3 Decomposition of L2(
) 409 9.6 Matlab Project 411 9.6.1 Orthogonal Wavelets 411 9.6.2 Biorthogonal Wavelets 414 Exercises 414 Bibliography 421 Appendix: Solutions to Exercises 423 Index 439
Preface xvii Acknowledgments xxi 1 Vector Spaces, Signals, and Images 1 1.1 Overview 1 1.2 Some Common Image Processing Problems 1 1.2.1 Applications 2 1.2.1.1 Compression 2 1.2.1.2 Restoration 2 1.2.1.3 Edge Detection 3 1.2.1.4 Registration 3 1.2.2 Transform-Based Methods 3 1.3 Signals and Images 3 1.3.1 Signals 4 1.3.2 Sampling, Quantization Error, and Noise 5 1.3.3 Grayscale Images 6 1.3.4 Sampling Images 8 1.3.5 Color 9 1.3.6 Quantization and Noise for Images 9 1.4 Vector Space Models for Signals and Images 10 1.4.1 Examples-Discrete Spaces 11 1.4.2 Examples-Function Spaces 14 1.5 Basic Waveforms-The Analog Case 16 1.5.1 The One-Dimensional Waveforms 16 1.5.2 2D Basic Waveforms 19 1.6 Sampling and Aliasing 20 1.6.1 Introduction 20 1.6.2 Aliasing for Complex Exponential Waveforms 22 1.6.3 Aliasing for Sines and Cosines 23 1.6.4 The Nyquist Sampling Rate 24 1.6.5 Aliasing in Images 24 1.7 Basic Waveforms-The Discrete Case 25 1.7.1 Discrete Basic Waveforms for Finite Signals 25 1.7.2 Discrete Basic Waveforms for Images 27 1.8 Inner Product Spaces and Orthogonality 28 1.8.1 Inner Products and Norms 28 1.8.1.1 Inner Products 28 1.8.1.2 Norms 29 1.8.2 Examples 30 1.8.3 Orthogonality 33 1.8.4 The Cauchy-Schwarz Inequality 34 1.8.5 Bases and Orthogonal Decomposition 35 1.8.5.1 Bases 35 1.8.5.2 Orthogonal and Orthonormal Bases 37 1.8.5.3 Parseval's Identity 39 1.9 Signal and Image Digitization 39 1.9.1 Quantization and Dequantization 40 1.9.1.1 The General Quantization Scheme 41 1.9.1.2 Dequantization 42 1.9.1.3 Measuring Error 42 1.9.2 Quantifying Signal and Image Distortion More Generally 43 1.10 Infinite-Dimensional Inner Product Spaces 45 1.10.1 Example: An Infinite-Dimensional Space 45 1.10.2 Orthogonal Bases in Inner Product Spaces 46 1.10.3 The Cauchy-Schwarz Inequality and Orthogonal Expansions 48 1.10.4 The Basic Waveforms and Fourier Series 49 1.10.4.1 Complex Exponential Fourier Series 49 1.10.4.2 Sines and Cosines 52 1.10.4.3 Fourier Series on Rectangles 53 1.10.5 Hilbert Spaces and L2(a, b ) 53 1.10.5.1 Expanding the Space of Functions 53 1.10.5.2 Complications 54 1.10.5.3 A Converse to Parseval 55 1.11 Matlab Project 55 Exercises 60 2 The Discrete Fourier Transform 71 2.1 Overview 71 2.2 The Time Domain and Frequency Domain 71 2.3 A Motivational Example 73 2.3.1 A Simple Signal 73 2.3.2 Decomposition into BasicWaveforms 74 2.3.3 Energy at Each Frequency 74 2.3.4 Graphing the Results 75 2.3.5 Removing Noise 77 2.4 The One-Dimensional DFT 78 2.4.1 Definition of the DFT 78 2.4.2 Sample Signal and DFT Pairs 80 2.4.2.1 An Aliasing Example 80 2.4.2.2 Square Pulses 81 2.4.2.3 Noise 82 2.4.3 Suggestions on Plotting DFTs 84 2.4.4 An Audio Example 84 2.5 Properties of the DFT 85 2.5.1 Matrix Formulation and Linearity 85 2.5.1.1 The DFT as a Matrix 85 2.5.1.2 The Inverse DFT as a Matrix 87 2.5.2 Symmetries for Real Signals 88 2.6 The Fast Fourier transform 90 2.6.1 DFT Operation Count 90 2.6.2 The FFT 91 2.6.3 The Operation Count 92 2.7 The Two-Dimensional DFT 93 2.7.1 Interpretation and Examples of the 2-D DFT 96 2.8 Matlab Project 97 2.8.1 Audio Explorations 97 2.8.2 Images 99 Exercises 101 3 The Discrete Cosine Transform 105 3.1 Motivation for the DCT-Compression 105 3.2 Other Compression Issues 106 3.3 Initial Examples-Thresholding 107 3.3.1 Compression Example 1: A Smooth Function 108 3.3.2 Compression Example 2: A Discontinuity 109 3.3.3 Compression Example 3 110 3.3.4 Observations 112 3.4 The Discrete Cosine Transform 112 3.4.1 DFT Compression Drawbacks 112 3.4.2 The Discrete Cosine Transform 113 3.4.2.1 Symmetric Reflection 113 3.4.2.2 DFT of the Extension 113 3.4.2.3 DCT/IDCT Derivation 114 3.4.2.4 Definition of the DCT and IDCT 115 3.4.3 Matrix Formulation of the DCT 116 3.5 Properties of the DCT 116 3.5.1 BasicWaveforms for the DCT 116 3.5.2 The Frequency Domain for the DCT 117 3.5.3 DCT and Compression Examples 117 3.6 The Two-Dimensional DCT 120 3.7 Block Transforms 121 3.8 JPEG Compression 123 3.8.1 Overall Outline 123 3.8.2 DCT and Quantization Details 124 3.8.3 The JPEG Dog 128 3.8.4 Sequential versus Progressive Encoding 128 3.9 Matlab Project 131 Exercises 134 4 Convolution and Filtering 139 4.1 Overview 139 4.2 One-Dimensional Convolution 139 4.2.1 Example: Low-Pass Filtering and Noise Removal 139 4.2.2 Convolution 142 4.2.2.1 Convolution Definition 142 4.2.2.2 Convolution Properties 143 4.3 Convolution Theorem and Filtering 146 4.3.1 The Convolution Theorem 146 4.3.2 Filtering and Frequency Response 147 4.3.2.1 Filtering Effect on BasicWaveforms 147 4.3.3 Filter Design 150 4.4 2D Convolution-Filtering Images 152 4.4.1 Two-Dimensional Filtering and Frequency Response 152 4.4.2 Applications of 2D Convolution and Filtering 153 4.4.2.1 Noise Removal and Blurring 153 4.4.2.2 Edge Detection 154 4.5 Infinite and Bi-Infinite Signal Models 156 4.5.1 L2(
) and L2(
) 158 4.5.1.1 The Inner Product Space L2(
) 158 4.5.1.2 The Inner Product Space L2(
) 159 4.5.2 Fourier Analysis in L2(
) and L2(
) 160 4.5.2.1 The Discrete Time Fourier Transform in L2(
) 160 4.5.2.2 Aliasing and the Nyquist Frequency in L2(
) 161 4.5.2.3 The Fourier Transform on L2(
)) 163 4.5.3 Convolution and Filtering in L2(
) and L2(
) 163 4.5.3.1 The Convolution Theorem 164 4.5.4 The z-Transform 166 4.5.4.1 Two Points of View 166 4.5.4.2 Algebra of z-Transforms; Convolution 167 4.5.5 Convolution in
N versus L2(
) 168 4.5.5.1 Some Notation 168 4.5.5.2 Circular Convolution and z-Transforms 169 4.5.5.3 Convolution in
N from Convolution in L2(
) 170 4.5.6 Some Filter Terminology 171 4.5.7 The Space L2(
×
) 172 4.6 Matlab Project 172 4.6.1 Basic Convolution and Filtering 172 4.6.2 Audio Signals and Noise Removal 174 4.6.3 Filtering Images 175 Exercises 176 5 Windowing and Localization 185 5.1 Overview: Nonlocality of the DFT 185 5.2 Localization via Windowing 187 5.2.1 Windowing 187 5.2.2 Analysis of Windowing 188 5.2.2.1 Step 1: Relation of X and Y 189 5.2.2.2 Step 2: Effect of Index Shift 190 5.2.2.3 Step 3: N-Point versus M-Point DFT 191 5.2.3 Spectrograms 192 5.2.4 Other Types of Windows 196 5.3 Matlab Project 198 5.3.1 Windows 198 5.3.2 Spectrograms 199 Exercises 200 6 Frames 205 6.1 Introduction 205 6.2 Packet Loss 205 6.3 Frames-Using more Dot Products 208 6.4 Analysis and Synthesis with Frames 211 6.4.1 Analysis and Synthesis 211 6.4.2 Dual Frame and Perfect Reconstruction 213 6.4.3 Partial Reconstruction 214 6.4.4 Other Dual Frames 215 6.4.5 Numerical Concerns 216 6.4.5.1 Condition Number of a Matrix 217 6.5 Initial Examples of Frames 218 6.5.1 Circular Frames in
2 218 6.5.2 Extended DFT Frames and Harmonic Frames 219 6.5.3 Canonical Tight Frame 221 6.5.4 Frames for Images 222 6.6 More on the Frame Operator 222 6.7 Group-Based Frames 225 6.7.1 Unitary Matrix Groups and Frames 225 6.7.2 Initial Examples of Group Frames 228 6.7.2.1 Platonic Frames 228 6.7.2.2 Symmetric Group Frames 230 6.7.2.3 Harmonic Frames 232 6.7.3 Gabor Frames 232 6.7.3.1 Flipped Gabor Frame 237 6.8 Frame Applications 237 6.8.1 Packet Loss 239 6.8.2 Redundancy and other duals 240 6.8.3 Spectrogram 241 6.9 Matlab Project 242 6.9.1 Frames and Frame Operator 243 6.9.2 Analysis and Synthesis 245 6.9.3 Condition Number 246 6.9.4 Packet Loss 246 6.9.5 Gabor Frames 246 Exercises 247 7 Filter Banks 251 7.1 Overview 251 7.2 The Haar Filter Bank 252 7.2.1 The One-Stage Two-Channel Filter Bank 252 7.2.2 Inverting the One-stage Transform 256 7.2.3 Summary of Filter Bank Operation 257 7.3 The General One-stage Two-channel Filter Bank 260 7.3.1 Formulation for Arbitrary FIR Filters 260 7.3.2 Perfect Reconstruction 261 7.3.3 Orthogonal Filter Banks 263 7.4 Multistage Filter Banks 264 7.5 Filter Banks for Finite Length Signals 267 7.5.1 Extension Strategy 267 7.5.2 Analysis of Periodic Extension 269 7.5.2.1 Adapting the Analysis Transform to Finite Length 270 7.5.2.2 Adapting the Synthesis Transform to Finite Length 272 7.5.2.3 Other Extensions 274 7.5.3 Matrix Formulation of the Periodic Case 274 7.5.4 Multistage Transforms 275 7.5.4.1 Iterating the One-stage Transform 275 7.5.4.2 Matrix Formulation of Multistage Transform 277 7.5.4.3 Reconstruction from Approximation Coefficients 278 7.5.5 Matlab Implementation of Discrete Wavelet Transforms 281 7.6 The 2D Discrete Wavelet Transform and JPEG 2000 281 7.6.1 Two-dimensional Transforms 281 7.6.2 Multistage Transforms for Two-dimensional Images 282 7.6.3 Approximations and Details for Images 286 7.6.4 JPEG 2000 288 7.7 Filter Design 289 7.7.1 Filter Banks in the z-domain 290 7.7.1.1 Downsampling and Upsampling in the z-domain 290 7.7.1.2 Filtering in the Frequency Domain 290 7.7.2 Perfect Reconstruction in the z-frequency Domain 290 7.7.3 Filter Design I: Synthesis from Analysis 292 7.7.4 Filter Design II: Product Filters 295 7.7.5 Filter Design III: More Product Filters 297 7.7.6 Orthogonal Filter Banks 299 7.7.6.1 Design Equations for an Orthogonal Bank 299 7.7.6.2 The Product Filter in the Orthogonal Case 300 7.7.6.3 Restrictions on P(z); Spectral Factorization 301 7.7.6.4 Daubechies Filters 301 7.8 Matlab Project 303 7.8.1 Basics 303 7.8.2 Audio Signals 304 7.8.3 Images 305 7.9 Alternate Matlab Project 306 7.9.1 Basics 306 7.9.2 Audio Signals 307 7.9.3 Images 307 Exercises 309 8 Lifting for Filter Banks and Wavelets 319 8.1 Overview 319 8.2 Lifting for the Haar Filter Bank 319 8.2.1 The Polyphase Analysis 320 8.2.2 Inverting the Polyphase Haar Transform 321 8.2.3 Lifting Decomposition for the Haar Transform 322 8.2.4 Inverting the Lifted Haar Transform 324 8.3 The Lifting Theorem 324 8.3.1 A Few Facts About Laurent Polynomials 325 8.3.1.1 The Width of a Laurent Polynomial 325 8.3.1.2 The Division Algorithm 325 8.3.2 The Lifting Theorem 326 8.4 Polyphase Analysis for Filter Banks 330 8.4.1 The Polyphase Decomposition and Convolution 331 8.4.2 The Polyphase Analysis Matrix 333 8.4.3 Inverting the Transform 334 8.4.4 Orthogonal Filters 338 8.5 Lifting 339 8.5.1 Relation Between the Polyphase Matrices 339 8.5.2 Factoring the Le Gall 5/3 Polyphase Matrix 341 8.5.3 Factoring the Haar Polyphase Matrix 343 8.5.4 Efficiency 345 8.5.5 Lifting to Design Transforms 346 8.6 Matlab Project 351 8.6.1 Laurent Polynomials 351 8.6.2 Lifting for CDF(2,2) 354 8.6.3 Lifting the D4 Filter Bank 356 Exercises 356 9 Wavelets 361 9.1 Overview 361 9.1.1 Chapter Outline 361 9.1.2 Continuous from Discrete 361 9.2 The Haar Basis 363 9.2.1 Haar Functions as a Basis for L2(0, 1) 364 9.2.1.1 Haar Function Definition and Graphs 364 9.2.1.2 Orthogonality 367 9.2.1.3 Completeness in L2(0, 1) 368 9.2.2 Haar Functions as an Orthonormal Basis for L2(
) 372 9.2.3 Projections and Approximations 374 9.3 Haar Wavelets Versus the Haar Filter Bank 376 9.3.1 Single-stage Case 377 9.3.1.1 Functions from Sequences 377 9.3.1.2 Filter Bank Analysis/Synthesis 377 9.3.1.3 Haar Expansion and Filter Bank Parallels 378 9.3.2 Multistage Haar Filter Bank and Multiresolution 380 9.3.2.1 Some Subspaces and Bases 381 9.3.2.2 Multiresolution and Orthogonal Decomposition 381 9.3.2.3 Direct Sums 382 9.3.2.4 Connection to Multistage Haar Filter Banks 384 9.4 Orthogonal Wavelets 386 9.4.1 Essential Ingredients 386 9.4.2 Constructing a Multiresolution Analysis: The Dilation Equation 387 9.4.3 Connection to Orthogonal Filters 389 9.4.4 Computing the Scaling Function 390 9.4.5 Scaling Function Existence and Properties 394 9.4.5.1 Fixed Point Iteration and the Cascade Algorithm 394 9.4.5.2 Existence of the Scaling Function 395 9.4.5.3 The Support of the Scaling Function 397 9.4.5.4 Back to Multiresolution 399 9.4.6 Wavelets 399 9.4.7 Wavelets and the Multiresolution Analysis 404 9.4.7.1 Final Remarks on Orthogonal Wavelets 406 9.5 Biorthogonal Wavelets 407 9.5.1 Biorthogonal Scaling Functions 408 9.5.2 Biorthogonal Wavelets 409 9.5.3 Decomposition of L2(
) 409 9.6 Matlab Project 411 9.6.1 Orthogonal Wavelets 411 9.6.2 Biorthogonal Wavelets 414 Exercises 414 Bibliography 421 Appendix: Solutions to Exercises 423 Index 439
) and L2(
) 158 4.5.1.1 The Inner Product Space L2(
) 158 4.5.1.2 The Inner Product Space L2(
) 159 4.5.2 Fourier Analysis in L2(
) and L2(
) 160 4.5.2.1 The Discrete Time Fourier Transform in L2(
) 160 4.5.2.2 Aliasing and the Nyquist Frequency in L2(
) 161 4.5.2.3 The Fourier Transform on L2(
)) 163 4.5.3 Convolution and Filtering in L2(
) and L2(
) 163 4.5.3.1 The Convolution Theorem 164 4.5.4 The z-Transform 166 4.5.4.1 Two Points of View 166 4.5.4.2 Algebra of z-Transforms; Convolution 167 4.5.5 Convolution in
N versus L2(
) 168 4.5.5.1 Some Notation 168 4.5.5.2 Circular Convolution and z-Transforms 169 4.5.5.3 Convolution in
N from Convolution in L2(
) 170 4.5.6 Some Filter Terminology 171 4.5.7 The Space L2(
×
) 172 4.6 Matlab Project 172 4.6.1 Basic Convolution and Filtering 172 4.6.2 Audio Signals and Noise Removal 174 4.6.3 Filtering Images 175 Exercises 176 5 Windowing and Localization 185 5.1 Overview: Nonlocality of the DFT 185 5.2 Localization via Windowing 187 5.2.1 Windowing 187 5.2.2 Analysis of Windowing 188 5.2.2.1 Step 1: Relation of X and Y 189 5.2.2.2 Step 2: Effect of Index Shift 190 5.2.2.3 Step 3: N-Point versus M-Point DFT 191 5.2.3 Spectrograms 192 5.2.4 Other Types of Windows 196 5.3 Matlab Project 198 5.3.1 Windows 198 5.3.2 Spectrograms 199 Exercises 200 6 Frames 205 6.1 Introduction 205 6.2 Packet Loss 205 6.3 Frames-Using more Dot Products 208 6.4 Analysis and Synthesis with Frames 211 6.4.1 Analysis and Synthesis 211 6.4.2 Dual Frame and Perfect Reconstruction 213 6.4.3 Partial Reconstruction 214 6.4.4 Other Dual Frames 215 6.4.5 Numerical Concerns 216 6.4.5.1 Condition Number of a Matrix 217 6.5 Initial Examples of Frames 218 6.5.1 Circular Frames in
2 218 6.5.2 Extended DFT Frames and Harmonic Frames 219 6.5.3 Canonical Tight Frame 221 6.5.4 Frames for Images 222 6.6 More on the Frame Operator 222 6.7 Group-Based Frames 225 6.7.1 Unitary Matrix Groups and Frames 225 6.7.2 Initial Examples of Group Frames 228 6.7.2.1 Platonic Frames 228 6.7.2.2 Symmetric Group Frames 230 6.7.2.3 Harmonic Frames 232 6.7.3 Gabor Frames 232 6.7.3.1 Flipped Gabor Frame 237 6.8 Frame Applications 237 6.8.1 Packet Loss 239 6.8.2 Redundancy and other duals 240 6.8.3 Spectrogram 241 6.9 Matlab Project 242 6.9.1 Frames and Frame Operator 243 6.9.2 Analysis and Synthesis 245 6.9.3 Condition Number 246 6.9.4 Packet Loss 246 6.9.5 Gabor Frames 246 Exercises 247 7 Filter Banks 251 7.1 Overview 251 7.2 The Haar Filter Bank 252 7.2.1 The One-Stage Two-Channel Filter Bank 252 7.2.2 Inverting the One-stage Transform 256 7.2.3 Summary of Filter Bank Operation 257 7.3 The General One-stage Two-channel Filter Bank 260 7.3.1 Formulation for Arbitrary FIR Filters 260 7.3.2 Perfect Reconstruction 261 7.3.3 Orthogonal Filter Banks 263 7.4 Multistage Filter Banks 264 7.5 Filter Banks for Finite Length Signals 267 7.5.1 Extension Strategy 267 7.5.2 Analysis of Periodic Extension 269 7.5.2.1 Adapting the Analysis Transform to Finite Length 270 7.5.2.2 Adapting the Synthesis Transform to Finite Length 272 7.5.2.3 Other Extensions 274 7.5.3 Matrix Formulation of the Periodic Case 274 7.5.4 Multistage Transforms 275 7.5.4.1 Iterating the One-stage Transform 275 7.5.4.2 Matrix Formulation of Multistage Transform 277 7.5.4.3 Reconstruction from Approximation Coefficients 278 7.5.5 Matlab Implementation of Discrete Wavelet Transforms 281 7.6 The 2D Discrete Wavelet Transform and JPEG 2000 281 7.6.1 Two-dimensional Transforms 281 7.6.2 Multistage Transforms for Two-dimensional Images 282 7.6.3 Approximations and Details for Images 286 7.6.4 JPEG 2000 288 7.7 Filter Design 289 7.7.1 Filter Banks in the z-domain 290 7.7.1.1 Downsampling and Upsampling in the z-domain 290 7.7.1.2 Filtering in the Frequency Domain 290 7.7.2 Perfect Reconstruction in the z-frequency Domain 290 7.7.3 Filter Design I: Synthesis from Analysis 292 7.7.4 Filter Design II: Product Filters 295 7.7.5 Filter Design III: More Product Filters 297 7.7.6 Orthogonal Filter Banks 299 7.7.6.1 Design Equations for an Orthogonal Bank 299 7.7.6.2 The Product Filter in the Orthogonal Case 300 7.7.6.3 Restrictions on P(z); Spectral Factorization 301 7.7.6.4 Daubechies Filters 301 7.8 Matlab Project 303 7.8.1 Basics 303 7.8.2 Audio Signals 304 7.8.3 Images 305 7.9 Alternate Matlab Project 306 7.9.1 Basics 306 7.9.2 Audio Signals 307 7.9.3 Images 307 Exercises 309 8 Lifting for Filter Banks and Wavelets 319 8.1 Overview 319 8.2 Lifting for the Haar Filter Bank 319 8.2.1 The Polyphase Analysis 320 8.2.2 Inverting the Polyphase Haar Transform 321 8.2.3 Lifting Decomposition for the Haar Transform 322 8.2.4 Inverting the Lifted Haar Transform 324 8.3 The Lifting Theorem 324 8.3.1 A Few Facts About Laurent Polynomials 325 8.3.1.1 The Width of a Laurent Polynomial 325 8.3.1.2 The Division Algorithm 325 8.3.2 The Lifting Theorem 326 8.4 Polyphase Analysis for Filter Banks 330 8.4.1 The Polyphase Decomposition and Convolution 331 8.4.2 The Polyphase Analysis Matrix 333 8.4.3 Inverting the Transform 334 8.4.4 Orthogonal Filters 338 8.5 Lifting 339 8.5.1 Relation Between the Polyphase Matrices 339 8.5.2 Factoring the Le Gall 5/3 Polyphase Matrix 341 8.5.3 Factoring the Haar Polyphase Matrix 343 8.5.4 Efficiency 345 8.5.5 Lifting to Design Transforms 346 8.6 Matlab Project 351 8.6.1 Laurent Polynomials 351 8.6.2 Lifting for CDF(2,2) 354 8.6.3 Lifting the D4 Filter Bank 356 Exercises 356 9 Wavelets 361 9.1 Overview 361 9.1.1 Chapter Outline 361 9.1.2 Continuous from Discrete 361 9.2 The Haar Basis 363 9.2.1 Haar Functions as a Basis for L2(0, 1) 364 9.2.1.1 Haar Function Definition and Graphs 364 9.2.1.2 Orthogonality 367 9.2.1.3 Completeness in L2(0, 1) 368 9.2.2 Haar Functions as an Orthonormal Basis for L2(
) 372 9.2.3 Projections and Approximations 374 9.3 Haar Wavelets Versus the Haar Filter Bank 376 9.3.1 Single-stage Case 377 9.3.1.1 Functions from Sequences 377 9.3.1.2 Filter Bank Analysis/Synthesis 377 9.3.1.3 Haar Expansion and Filter Bank Parallels 378 9.3.2 Multistage Haar Filter Bank and Multiresolution 380 9.3.2.1 Some Subspaces and Bases 381 9.3.2.2 Multiresolution and Orthogonal Decomposition 381 9.3.2.3 Direct Sums 382 9.3.2.4 Connection to Multistage Haar Filter Banks 384 9.4 Orthogonal Wavelets 386 9.4.1 Essential Ingredients 386 9.4.2 Constructing a Multiresolution Analysis: The Dilation Equation 387 9.4.3 Connection to Orthogonal Filters 389 9.4.4 Computing the Scaling Function 390 9.4.5 Scaling Function Existence and Properties 394 9.4.5.1 Fixed Point Iteration and the Cascade Algorithm 394 9.4.5.2 Existence of the Scaling Function 395 9.4.5.3 The Support of the Scaling Function 397 9.4.5.4 Back to Multiresolution 399 9.4.6 Wavelets 399 9.4.7 Wavelets and the Multiresolution Analysis 404 9.4.7.1 Final Remarks on Orthogonal Wavelets 406 9.5 Biorthogonal Wavelets 407 9.5.1 Biorthogonal Scaling Functions 408 9.5.2 Biorthogonal Wavelets 409 9.5.3 Decomposition of L2(
) 409 9.6 Matlab Project 411 9.6.1 Orthogonal Wavelets 411 9.6.2 Biorthogonal Wavelets 414 Exercises 414 Bibliography 421 Appendix: Solutions to Exercises 423 Index 439