Fall 2018
Section A: Prof. Yao Wang, Thursday 3:20 PM – 5:50 PM, 370Jay_202
Section B: Prof. Thomas Marzetta, Monday 9:50 AM – 12:20 PM, RGSH-315
Course Description: Discrete and continuous-time linear systems. Z-transform. Fourier transforms. Sampling. Discrete Fourier transform (DFT). Fast Fourier transform (FFT). Digital filtering. Design of FIR and IIR filters. Windowing. Least squares in signal processing. Minimum-phase and all-pass systems. Matlab programming exercises
Prerequisites: Graduate status. You should have had UG level signals and systems in your BS program. Undergraduate students must have completed EE-UY 3054 Signals and systems.
Instructors:
Professor Yao Wang (Section A), MTC2 Room 9.122, (646)-997-3469, Email: yaowang at nyu dot edu, Homepage: http://eeweb.poly.edu/~yao , Office hour: Mon. 4-6PM and Thur. 10-11AM or appointment by email. Please email me if you plan to come during the office hour, if possible, so that I could make sure that I will be in the office.
Professor Thomas Marzetta (Section B), MTC2 Room 9.108, (646)-997-3028, Email: tom.marzetta at nyu dot edu, Homepage: http://engineering.nyu.edu/people/thomas-marzetta, Office hours: Monday 2:00 PM – 3:00 PM, Wednesday 2:00 PM – 4:00 PM, or appointment by email.
Teaching Assistants (Office hour will be held in the lunge area outside the NYU Wireless Conference Room on the back)
Nick Feng, yf889 at nyu dot edu, Office Hour: Friday 2-3PM
Feng Wang, fw778 at nyu dot edu, Office hour: Wed 11-12PM
Nitin Nair, nn1174 at nyu dot edu, Office hour: Tues 12-1 PM
Text Book: We will not require a particular textbook. Lecture notes and supplementary materials will be posted on nyuclasses. However, you are highly recommended to have one of the following books for additional reading and more comprehensive treatment of digital signal processing. Other books on DSP are generally fine as well.
- Discrete-Time Signal Processing, third edition, by Oppenheim and Schafer. Prentice Hall, 2010. ISBN-13: 978-0131988422. Link
- Companion Website containing MATLAB based problems, demos, and projects. Link
- Digital Signal Processing – A Computer Based Approach, 4th edition, by Sanjit K. Mitra, McGraw Hill, ISBN-13: 978-0073380490. Link
Homework, Exam, and grading Policy: Midterm Exam: 40%, Final Exam: 40%, MATLAB assignments: 10%, Written HW: 10%.
Written homework problems (some include simple MATLAB exercises) will be assigned every week and are due the following week at the lecture time. Late submissions are not accepted except in exceptional cases. Solutions to written HW will be posted on NYUClasses after the HW due date.
MATLAB assignments will be given separately and due dates will be noted (roughly every week as well). You must submit the completed MATLAB assignment directly through NYUClasses.
Students are encouraged to discuss with each other and seek help from the TA and the instructor for completing these assignments but must submit their solutions separately. What is submitted should reflect their own understanding of the material. However, if you worked with others to derive your solutions, you should write the name(s) of the students that you worked with on the top of your hand-in homeworks, so that you will not be penalized for cheating.
Please note that written assignments may be graded selectively (i.e. not all problems are graded in each assignment and detailed comments may not be provided due to the size of the class). But we will provide solution to all problems. Students should review the provided HW solutions carefully to verify their understanding of the HW problems.
Both exams will be closed-book. Students can bring a cheat sheet (single page, double sided OK).
Access to MATLAB
Students registered for this course can have MATLAB installed on their laptop computer at the Help-Desk in Rogers Hall 339. Students without prior experience with MATLAB should spend time during the first two weeks of class learning MATLAB. MATLAB tutorials are available at www.mathworks.com including the following links: tutorial in pdf , on-line-tutorial
Homework problems and datasets will be selected from Prof. Selesnick’s exercise packets:
Supplementary materials (including MATLAB demos) will be posted on NYU Classes, and some can also be accessed from here
Links to resources in previous offerings:
- Professor Selesnicks’s website for EL6113
Tentative Course Schedule
(Dates in parenthesis are the lecture date for Section A and Section B, respectively)
- Week 1 (Sept 6, Sept 10): Introduction and LTI systems
- Why digital signal processing
- Discrete time signals. Examples.
- Discrete time systems. System properties.
- Linear and time invariant systems: Impulse response. Convolution. BIBO stability test.
- MATLAB function: conv
- MATLAB assignment 1: plotting signals, convolution
- Reading: Oppenheim Sec. 2.0-2.4, Lecture note by Prof. Voltz (lect1_voltz.pdf)
- Week 2 (Sept 13, Sept 17): Z-transform
- Z-transform: region of convergence (ROC), right-sided and left-sidded signals.
- Inverse Z-transform: partial fraction expansion.
- MATLAB functions: roots, poly, residue.
- MATLAB assignment 2: filtering of EKG signals
- Reading : Oppenheim Sec. 3.0-3.4, Lecture note by Prof. Voltz (lect2_Voltz_Ztransform.pdf)
- Week 3 (Sept 20, Sept 24): Z-transform and convolution, inverse systems
- Convolution theorem. Convolution using Z-transform and inverse Z-transform.
- Transfer function of LTI systems.
- Difference equations: basic examples, from difference equations to transfer functions using Z-transform;
- MATLAB function: filter.
- Inverse LTI systems (debluring) (stable non-causal inverse systems).
- Complex poles.
- MATLAB demo: complex poles, inverse system.
- MATLAB assignment 3: inverse filtering of EKG signals
- Reading : Oppenheim Sec. 3.5, 5.2. Lecture note by Prof. Voltz (lect2_Voltz_Ztransform.pdf)
- Week 4 (Sept 27, Oct 1): Frequency Response
- DC gain.
- Frequency response: complex exponental function as the eigen function of the LTI system, meaning of frequency response, the periodicity of frequency response, response of LTI system to sinusoidal inputs. Evaluation of frequency response.
- Transfer function / frequency response / unit circle: relationship between time domain and frequency domain; relationship between poles-zeros and frequency response
- MATLAB functions: freqz, polyval
- MATLAB demo: frequency response
- MATLAB assignment 4: frequency response
- Reading: Oppenheim Sec. 2.6, 5.1, 5.3, 5.4. Lecture note by Prof. Voltz (lect3_FreqResponse.pdf)
- Week 5 (Oct 4, Oct 9 (Tues)): Discrete Time Fourier Transform (DTFT)
- Definition and relation with Z-transform
- Impulse response using inverse DTFT
- Ideal low-pass filter (LFP) <-> Sinc function
- N-point moving average filter: roots of unity, digital sinc function, roots of unity equally spaced on unit circle
- Properties of DTFT
- Symmetry for real valued signals
- Meaning of digital frequency, real frequency given sampling rate
- Example spectra of signals (e.g. voiced and unvoiced speech)
- Spectrogram
- MATLAB assignment 5: speech recording and computing spectra using fft and spectrogram
- Reading: Oppenheim Sec. 2.7-2.9. Lecture note by Prof. Voltz (Voltz_DTFT.pdf)
- Week 6 (Oct 11, Oct 15). Special systems
- Simple system design: low order systems, specified dc gain and nulls and frequency response at specified frequencies
- Differentiator
- Notch filters: motivation (removing 60 Hz hum, baseline drift correction), second-order recursive filter, tonal noise suppression, baseline drift correction, MATLAB demo: notch filter demo
- Phase delay of systems: delay of sinusoid signals through LTI systems, MATLAB demo: filter delay demo
- MATLAB assignment 6: baseline drift correction in EKG signals using dc notch filters, tonal noise suppression using 4th order filter
- Reading: Selesnick’s note and examples (posted at NYUClasses)
- Week 7 (Oct 18, Oct 22): DFT
- DFT: definition, DFT as a special case of orthogonal transform, properties, connection with DTFT
- FFT algorithm (brief review). MATLAB function: fft, ifft, fftshift
- Circular convolution and Convolution theorem: relation to linear convolution, using FFT to compute linear convolution
- MATLAB assignment 7: Using FFT to compute circular and linear convolution, using FFT to plot signal spectrum.
- Reading: Selesnick’s note (posted at NYUClasses). Optional: Oppenheim Secs. 8.5, 8.6, 8.8.
- Week 8 (Oct 25, 3:30-5:50): Midterm exam for two sections to be held in the same time/room as Section A.
- Week 9 (Nov 1, Nov 5): DTFT/spectrum evaluation using DFT
- Using FFT to evaluate DTFT, zero padding, understanding relation between frequency and DFT freq. index.
- Frequency leakage
- Frequency measurement using windows and DFT
- Short-time FT (STFT): influence of parameters (frame size, hop, DFT length), MATLAB function: Spectrogram
- MATLAB assignment 8: Filtering a noisy speech signal.
- Reading: Selesnick’s notes and Voltz’s note (posted at NYUClasses)
- Nov 5: Last day to withdraw from a class with “W” grade
- Week 10 (Nov 8, Nov 12): FIR Filter Design
- Linear phase FIR filters: why linear phase? The four types, properties
- MATLAB demo: phase distortion demo
- FIR filter design based on the minimax criterion (Parks-McClellan method). MATLAB functions: firpm, firpmord, firpm demo
- FIR filter design using windows: effect of truncation and windowing, standard windows (Hamming, Hann, Blackman, Kaiser). MATLAB functions: Hamming, Kaiser, kaiserord, fir1
-
- MATLAB assignment 9: Filtering a noisy speech signal using FIR filters designed using different methods
- Readings: Selesnick’s notes. Optional: Oppenheim Sec. 7.5-7.8, Sec. 10.1-10.3
- Week 11 (Nov 15, Nov 19) : Recursive (IIR) filter design
- Classic analog filters: Butterworth, Cheby1, Cheby2, elliptic; MATLAB functions: buttap, cheb1ap, cheb2ap, ellipap
- Conversion of analog to digital filters: Bilinear transformation (BLT), MATLAB function: bilinear;
- Filter transformations: LPF-> HPF, LPF->BPF, LPF->BSF, etc.
- MATLAB demo: recursive filters demo; MATLAB functions: butter, cheby1, cheby2, ellip
- MATLAB assignment 10: filtering of speech using IIR filters designed using different methods
- Reading: Selesnick’s note and demo. Optional: Oppenheim Sec. 7.1-7.4
- Week 12 (Nov 29, Nov 26)
- Effect of non-linear phase on speech and images.
- Zero-phase filtering: forward-backward filtering, MATLAB function: filtfilt
- Minimum phase systems: definition, minimum delay property, Factorization of H(z) into the product of minimum phase and all-pass
- Spectral factorization.
- MATLAB assignment 11: filtering of image using IIR and FIR filters (linear phase and minimum phase), and using forward-backward filtering
- Reading: Lecture notes and demo in NYU Classes. Optional: Oppenheim Sec. 5.5, 5.6.
- Week 13 (Dec. 6, Dec. 3)
- Review of sampling theorem: Frequency domain representation, Reconstruction of a bandlimied signal from its samples
- Discrete time processing of continuous time signals
- Downsample a digital signal: Decimation filter design
- Upsample a digital signal: Interpolation filter design
- MATLAB assignment 12: Sampling rate conversion using different filters
- Reading: Oppenheim Chap. 4.
- Week 14 (Dec 10, Dec 13) Least squares methods
- Convolution as a matrix product
- Overdetermined and underdetermined linear equations
- Using regularization (minimum energy, smoothness, etc.)
- Constrained least squares
- Least squares smoothing as an LTI filter
- Least squares deconvolution as an LTI filter
- Missing sample interpolation
- Other example applications
- MATLAB assignment 13: Least squares
- Reading: Selesnick_LeastSquares.pdf
- Week 15 (Dec. 20 3:30-5:50): Final exam for two sections to be held in the same time/room as Section A.
Last updated: 9/4/2018, Yao Wang and Thomas Marzetta