Learning Outcomes and Objectives
The notes, assignments and labs/demos on this page are developed, in part, for a course with the following learning outcomes and objectives.
It is the intent that students will:
- Be able to identify the basic architectural elements of DSP hardware;
- Understand common real-time DSP algorithms for filtering and multimedia processing applications;
- Be able to program DSP hardware to perform signal, image and video processing tasks using MATLAB/Simulink;
- Gain an appreciation for the trade-offs necessary in algorithm design for real-time DSP implementation;
- Be able to overcome technical obstacles through ingenuity and resourcefulness; and
- Acquire an appreciation of the importance of real-time DSP for a broad class of engineering applications.
Topics and Notes
- Introduction
- Computational Accuracy in DSP Implementations
- Architectures for Programmable DSPs
- Discrete-Time Linear Time-Invariant Systems and Analysis
- Amplitude Quantization
- Practical Frequency-Selective Digital Filter Design
- Complexity of Filtering and the Fast Fourier Transform
- Real-time Overlap-Add and Overlap-Save
- Audio DSP
- Introduction to Image Processing
- Introduction to Video Processing
Note: course notes are copyright Deepa Kundur.
Review Problems
- Computational Accuracy
- DSP Building Blocks
- Discrete-Time ARMA Filters
- Discrete-Time Linear Filters and Filter Design
- FFT and Convolution
- Audio Effects
Hardware Implementation Resources
- MATLAB Primer, Simulink Primer
- Introduction to DSP
- Filter Design and Implementation
- Real-time FFT Convolution
- Static and Switched Audio Equalizer
- Audio Effects
- Real-Time Edge Detection in Image and Video, [support files]
- Real-Time Video Compression and Encryption, [support files]
- Real-Time Video Focus Identification and Assessment, [support files]
- Real-Time Video Barcode Recognition, [support files]
- Real-Time Video Aggie Color Correction, [support files]
- Real-Time Video Night Vision Effect, [support files]
- Real-Time Digital Video Watermarking, [support files]
- Real-Time Edge Detection-Based Motion Tracking, [support files]
- Real-Time Tracking of Round Objects, [support files]
- Real-Time Optical Flow-Based Motion Tracking, [support files]
- Real-Time Object Tracking Through Background Estimation, [support files]
- Real-Time Video Coin Counting, [support files]
Credits: These labs and demos were tested and modified over the years with the help and support of
…the Mathworks team (Todd Atkins, Sandeep Hiremath), my TAs over the years (Shan Liu, Lin Lai, Chris Byers, Julien Jainsky, William Luh), course students who went the extra mile (especially Diwakar Panchamgam) and various undergraduate researchers (including David Rolando, Irfan Jafri, Jonathan Kellerman, Adam Hollock, Noraica Davila, Gilbert Rodriguez, Mark Ivey).
Related References
- A. Singh and S. Srinivasan, Digital Signal Processing: Implementation Using DSP Microprocessors with Examples from TMS320C54XX, Brooks/Cole, Belmont, California, 2004;
- T. B. Welch, C. H. G. Wright and M. G. Morrow, Real-Time Digital Signal Processing from MATLAB to C with the TMS320C6x DSK, Taylor & Francis Group, New York, 2006;
- J. G. Proakis and D. G. Manolakis, Digital Signal Processing: Principles, Algorithms, and Applications, 4th ed., Pearson, New Jersey, 2007.