| Preface |
|
xiii | |
| About the Author |
|
xvii | |
|
Introduction to Digital Signal Processing |
|
|
1 | (12) |
|
Basic Concepts of Digital Signal Processing |
|
|
1 | (2) |
|
Basic Digital Signal Processing Examples in Block Diagrams |
|
|
3 | (3) |
|
|
|
3 | (1) |
|
Signal Frequency (Spectrum) Analysis |
|
|
4 | (2) |
|
Overview of Typical Digital Signal Processing in Real-World Applications |
|
|
6 | (5) |
|
Digital Crossover Audio System |
|
|
6 | (1) |
|
Interference Cancellation in Electrocardiography |
|
|
7 | (1) |
|
Speech Coding and Compression |
|
|
7 | (2) |
|
Compact-Disc Recording System |
|
|
9 | (1) |
|
Digital Photo Image Enhancement |
|
|
10 | (1) |
|
Digital Signal Processing Applications |
|
|
11 | (1) |
|
|
|
12 | (1) |
|
Signal Sampling and Quantization |
|
|
13 | (44) |
|
Sampling of Continuous Signal |
|
|
13 | (7) |
|
|
|
20 | (15) |
|
Practical Considerations for Signal Sampling: Anti-Aliasing Filtering |
|
|
25 | (4) |
|
Practical Considerations for Signal Reconstruction: Anti-Image Filter and Equalizer |
|
|
29 | (6) |
|
Analog-to-Digital Conversion, Digital-to-Analog Conversion, and Quantization |
|
|
35 | (14) |
|
|
|
49 | (1) |
|
|
|
50 | (1) |
|
|
|
51 | (6) |
|
Digital Signals and Systems |
|
|
57 | (30) |
|
|
|
57 | (7) |
|
|
|
58 | (4) |
|
Generation of Digital Signals |
|
|
62 | (2) |
|
Linear Time-Invariant, Causal Systems |
|
|
64 | (4) |
|
|
|
64 | (1) |
|
|
|
65 | (2) |
|
|
|
67 | (1) |
|
Difference Equations and Impulse Responses |
|
|
68 | (4) |
|
Format of Difference Equation |
|
|
68 | (1) |
|
System Representation Using Its Impulse Response |
|
|
69 | (3) |
|
Bounded-in-and-Bounded-out Stability |
|
|
72 | (2) |
|
|
|
74 | (8) |
|
|
|
82 | (1) |
|
|
|
83 | (4) |
|
Discrete Fourier Transform and Signal Spectrum |
|
|
87 | (48) |
|
Discrete Fourier Transform |
|
|
87 | (11) |
|
Fourier Series Coefficients of Periodic Digital Signals |
|
|
88 | (4) |
|
Discrete Fourier Transform Formulas |
|
|
92 | (6) |
|
Amplitude Spectrum and Power Spectrum |
|
|
98 | (12) |
|
Spectral Estimation Using Window Functions |
|
|
110 | (7) |
|
Application to Speech Spectral Estimation |
|
|
117 | (3) |
|
|
|
120 | (11) |
|
Method of Decimation-in-Frequency |
|
|
121 | (6) |
|
Method of Decimation-in-Time |
|
|
127 | (4) |
|
|
|
131 | (1) |
|
|
|
131 | (4) |
|
|
|
135 | (24) |
|
|
|
135 | (4) |
|
Properties of the z-Transform |
|
|
139 | (3) |
|
|
|
142 | (9) |
|
Partial Fraction Expansion Using MATLAB |
|
|
148 | (3) |
|
Solution of Difference Equations Using the z-Transform |
|
|
151 | (4) |
|
|
|
155 | (1) |
|
|
|
156 | (3) |
|
Digital Signal Processing Systems, Basic Filtering Types, and Digital Filter Realizations |
|
|
159 | (56) |
|
The Difference Equation and Digital Filtering |
|
|
159 | (6) |
|
Difference Equation and Transfer Function |
|
|
165 | (6) |
|
Impulse Response, Step Response, and System Response |
|
|
169 | (2) |
|
The z-Plane Pole-Zero Plot and Stability |
|
|
171 | (8) |
|
Digital Filter Frequency Response |
|
|
179 | (9) |
|
|
|
188 | (7) |
|
Realization of Digital Filters |
|
|
195 | (7) |
|
Direct-Form I Realization |
|
|
195 | (1) |
|
Direct-Form II Realization |
|
|
196 | (1) |
|
Cascade (Series) Realization |
|
|
197 | (1) |
|
|
|
198 | (4) |
|
Application: Speech Enhancement and Filtering |
|
|
202 | (6) |
|
|
|
202 | (3) |
|
Bandpass Filtering of Speech |
|
|
205 | (3) |
|
|
|
208 | (1) |
|
|
|
209 | (6) |
|
Finite Impulse Response Filter Design |
|
|
215 | (88) |
|
Finite Impulse Response Filter Format |
|
|
215 | (2) |
|
|
|
217 | (12) |
|
|
|
229 | (24) |
|
Applications: Noise Reduction and Two-Band Digital Crossover |
|
|
253 | (7) |
|
|
|
253 | (2) |
|
|
|
255 | (1) |
|
Two-Band Digital Crossover |
|
|
256 | (4) |
|
Frequency Sampling Design Method |
|
|
260 | (8) |
|
|
|
268 | (12) |
|
Realization Structures of Finite Impulse Response Filters |
|
|
280 | (3) |
|
|
|
280 | (2) |
|
|
|
282 | (1) |
|
Coefficient Accuracy Effects on Finite Impulse Response Filters |
|
|
283 | (4) |
|
Summary of Finite Impulse Response (FIR) Design Procedures and Selection of FIR Filter Design Methods in Practice |
|
|
287 | (3) |
|
|
|
290 | (1) |
|
|
|
291 | (3) |
|
|
|
294 | (9) |
|
Infinite Impulse Response Filter Design |
|
|
303 | (110) |
|
Infinite Impulse Response Filter Format |
|
|
303 | (2) |
|
Bilinear Transformation Design Method |
|
|
305 | (17) |
|
Analog Filters Using Lowpass Prototype Transformation |
|
|
306 | (4) |
|
Bilinear Transformation and Frequency Warping |
|
|
310 | (7) |
|
Bilinear Transformation Design Procedure |
|
|
317 | (5) |
|
Digital Butterworth and Chebyshev Filter Designs |
|
|
322 | (21) |
|
Lowpass Prototype Function and Its Order |
|
|
322 | (4) |
|
Lowpass and Highpass Filter Design Examples |
|
|
326 | (10) |
|
Bandpass and Bandstop Filter Design Examples |
|
|
336 | (7) |
|
Higher-Order Infinite Impulse Response Filter Design Using the Cascade Method |
|
|
343 | (3) |
|
Application: Digital Audio Equalizer |
|
|
346 | (4) |
|
Impulse Invariant Design Method |
|
|
350 | (8) |
|
Polo-Zero Placement Method for Simple Infinite Impulse Response Filters |
|
|
358 | (7) |
|
Second-Order Bandpass Filter Design |
|
|
359 | (1) |
|
Second-Order Bandstop (Notch) Filter Design |
|
|
360 | (2) |
|
First-Order Lowpass Filter Design |
|
|
362 | (2) |
|
First-Order Highpass Filter Design |
|
|
364 | (1) |
|
Realization Structures of Infinite Impulse Response Filters |
|
|
365 | (5) |
|
Realization of Infinite Impulse Response Filters in Direct-Form I and Direct-Form II |
|
|
366 | (2) |
|
Realization of Higher-Order Infinite Impulse Response Filters via the Cascade Form |
|
|
368 | (2) |
|
Application: 60-Hz Hum Eliminator and Heart Rate Detection Using Electrocardiography |
|
|
370 | (7) |
|
Coefficient Accuracy Effects on Infinite Impulse Response Filters |
|
|
377 | (4) |
|
Application: Generation and Detection of Dual-Tone Multifrequency Tones Using Goertzel Algorithm |
|
|
381 | (15) |
|
|
|
382 | (2) |
|
Dual-Tone Multifrequency Tone Generator |
|
|
384 | (2) |
|
|
|
386 | (5) |
|
Dual-Tone Multifrequency Tone Detection Using the Modified Goertzel Algorithm |
|
|
391 | (5) |
|
Summary of Infinite Impulse Response (IIR) Design Procedures and Selection of the IIR Filter Design Methods in Practice |
|
|
396 | (5) |
|
|
|
401 | (1) |
|
|
|
402 | (11) |
|
Hardware and Software for Digital Signal Processors |
|
|
413 | (50) |
|
Digital Signal Processor Architecture |
|
|
413 | (3) |
|
Digital Signal Processor Hardware Units |
|
|
416 | (3) |
|
Multiplier and Accumulator |
|
|
416 | (1) |
|
|
|
417 | (1) |
|
|
|
418 | (1) |
|
Digital Signal Processors and Manufactures |
|
|
419 | (1) |
|
Fixed-Point and Floating-Point Formats |
|
|
420 | (21) |
|
|
|
420 | (9) |
|
|
|
429 | (5) |
|
IEEE Floating-Point Formats |
|
|
434 | (3) |
|
Fixed-Point Digital Signal Processors |
|
|
437 | (2) |
|
Floating-Point Processors |
|
|
439 | (2) |
|
Finite Impulse Response and Infinite Impulse Response Filter Implementation in Fixed-Point Systems |
|
|
441 | (6) |
|
Digital Signal Processing Programming Examples |
|
|
447 | (13) |
|
Overview of TMS320C67x DSK |
|
|
447 | (4) |
|
Concept of Real-Time Processing |
|
|
451 | (1) |
|
|
|
452 | (3) |
|
|
|
455 | (5) |
|
|
|
460 | (1) |
|
|
|
461 | (2) |
|
Adaptive Filters and Applications |
|
|
463 | (34) |
|
Introduction to Least Mean Square Adaptive Finite Impulse Response Filters |
|
|
463 | (4) |
|
Basic Wiener Filter Theory and Least Mean Square Algorithm |
|
|
467 | (6) |
|
Applications: Noise Cancellation, System Modeling, and Line Enhancement |
|
|
473 | (13) |
|
|
|
473 | (6) |
|
|
|
479 | (5) |
|
Line Enhancement Using Linear Prediction |
|
|
484 | (2) |
|
Other Application Examples |
|
|
486 | (5) |
|
Canceling Periodic Interferences Using Linear Prediction |
|
|
487 | (1) |
|
Electrocardiography Interference Cancellation |
|
|
488 | (1) |
|
Echo Cancellation in Long-Distance Telephone Circuits |
|
|
489 | (2) |
|
|
|
491 | (1) |
|
|
|
491 | (6) |
|
Waveform Quantization and Compression |
|
|
497 | (60) |
|
Linear Midtread Quantization |
|
|
497 | (4) |
|
|
|
501 | (9) |
|
|
|
501 | (5) |
|
|
|
506 | (4) |
|
Examples of Differential Pulse Code Modulation (DPCM), Delta Modulation, and Adaptive DPCM G.721 |
|
|
510 | (12) |
|
Examples of Differential Pulse Code Modulation and Delta Modulation |
|
|
510 | (5) |
|
Adaptive Differential Pulse Code Modulation G.721 |
|
|
515 | (7) |
|
Discrete Cosine Transform, Modified Discrete Cosine Transform, and Transform Coding in MPEG Audio |
|
|
522 | (11) |
|
Discrete Cosine Transform |
|
|
522 | (3) |
|
Modified Discrete Cosine Transform |
|
|
525 | (5) |
|
Transform Coding in MPEG Audio |
|
|
530 | (3) |
|
|
|
533 | (1) |
|
|
|
534 | (16) |
|
|
|
550 | (7) |
|
Multirate Digital Signal Processing, Oversampling of Analog-to-Digital Conversion, and Undersampling of Bandpass Signals |
|
|
557 | (60) |
|
Multirate Digital Signal Processing Basics |
|
|
557 | (26) |
|
Sampling Rate Reduction by an Integer Factor |
|
|
558 | (6) |
|
Sampling Rate Increase by an Integer Factor |
|
|
564 | (6) |
|
Changing Sampling Rate by a Non-Integer Factor L/M |
|
|
570 | (5) |
|
Application: CD Audio Player |
|
|
575 | (3) |
|
|
|
578 | (5) |
|
Polyphase Filter Structure and Implementation |
|
|
583 | (6) |
|
Oversampling of Analog-to-Digital Conversion |
|
|
589 | (10) |
|
Oversampling and Analog-to-Digital Conversion Resolution |
|
|
590 | (3) |
|
Sigma-Delta Modulation Analog-to-Digital Conversion |
|
|
593 | (6) |
|
Application Example: CD Player |
|
|
599 | (2) |
|
Undersampling of Bandpass Signals |
|
|
601 | (8) |
|
|
|
609 | (1) |
|
|
|
610 | (7) |
|
|
|
617 | (82) |
|
Image Processing Notation and Data Formats |
|
|
617 | (8) |
|
|
|
618 | (1) |
|
|
|
619 | (1) |
|
|
|
620 | (1) |
|
|
|
621 | (1) |
|
Red, Green, Blue Components and Grayscale Conversion |
|
|
622 | (2) |
|
MATLAB Functions for Format Conversion |
|
|
624 | (1) |
|
Image Histogram and Equalization |
|
|
625 | (12) |
|
Grayscale Histogram and Equalization |
|
|
625 | (7) |
|
24-Bit Color Image Equalization |
|
|
632 | (1) |
|
8-Bit Indexed Color Image Equalization |
|
|
633 | (3) |
|
MATLAB Functions for Equalization |
|
|
636 | (1) |
|
Image Level Adjustment and Contrast |
|
|
637 | (5) |
|
|
|
638 | (3) |
|
Adjusting the Level for Display |
|
|
641 | (1) |
|
Matlab Functions for Image Level Adjustment |
|
|
642 | (1) |
|
Image Filtering Enhancement |
|
|
642 | (15) |
|
|
|
643 | (3) |
|
|
|
646 | (5) |
|
|
|
651 | (4) |
|
MATLAB Functions for Image Filtering |
|
|
655 | (2) |
|
Image Pseudo-Color Generation and Detection |
|
|
657 | (4) |
|
|
|
661 | (3) |
|
Image Compression by Discrete Cosine Transform |
|
|
664 | (13) |
|
Two-Dimensional Discrete Cosine Transform |
|
|
666 | (3) |
|
Two-Dimensional JPEG Grayscale Image Compression Example |
|
|
669 | (2) |
|
JPEG Color Image Compression |
|
|
671 | (6) |
|
Creating a Video Sequence by Mixing Two Images |
|
|
677 | (1) |
|
|
|
677 | (10) |
|
|
|
678 | (7) |
|
|
|
685 | (2) |
|
Motion Estimation in Video |
|
|
687 | (3) |
|
|
|
690 | (2) |
|
|
|
692 | (7) |
|
Appendix A Introduction to the MATLAB Environment |
|
|
699 | (10) |
|
Basic Commands and Syntax |
|
|
699 | (4) |
|
MATLAB Array and Indexing |
|
|
703 | (1) |
|
Plot Utilities: Subplot, Plot, Stem, and Stair |
|
|
704 | (1) |
|
|
|
704 | (1) |
|
|
|
705 | (4) |
|
Appendix B Review of Analog Signal Processing Basics |
|
|
709 | (32) |
|
Fourier Series and Fourier Transform |
|
|
709 | (17) |
|
|
|
709 | (1) |
|
|
|
710 | (1) |
|
|
|
711 | (3) |
|
|
|
714 | (7) |
|
|
|
721 | (5) |
|
|
|
726 | (5) |
|
Laplace Transform and Its Table |
|
|
726 | (1) |
|
Solving Differential Equations Using Laplace Transform |
|
|
727 | (3) |
|
|
|
730 | (1) |
|
Poles, Zeros, Stability, Convolution, and Sinusoidal Steady-State Response |
|
|
731 | (5) |
|
Poles, Zeros, and Stability |
|
|
731 | (2) |
|
|
|
733 | (2) |
|
Sinusoidal Steady-State Response |
|
|
735 | (1) |
|
|
|
736 | (5) |
|
Appendix C Normalized Butterworth and Chebyshev Fucntions |
|
|
741 | (8) |
|
Normalized Butterworth Function |
|
|
741 | (3) |
|
Normalized Chebyshev Function |
|
|
744 | (5) |
|
Appendix D Sinusoidal Steady-State Response of Digital Filters |
|
|
749 | (4) |
|
Sinusoidal Steady-State Response |
|
|
749 | (2) |
|
Properties of the Sinusoidal Steady-State Response |
|
|
751 | (2) |
|
Appendix E Finite Impulse Response Filter Design Equations by the Frequency Sampling Design Method |
|
|
753 | (4) |
|
Appendix F Some Useful Mathematical Formulas |
|
|
757 | (4) |
| Bibliography |
|
761 | (4) |
| Answers to Selected Problems |
|
765 | (26) |
| Index |
|
791 | |