1 / 29

Discrete Fourier Transform (DFT)

Discrete Fourier Transform (DFT). Jyh-Shing Roger Jang ( 張智星 ) MIR Lab ( 多媒體資訊檢索實驗室 ) CSIE, NTU ( 台灣大學 資訊工程系 ) jang@mirlab.org , http://mirlab.org/jang. Discrete Fourier Transform. Goal

Télécharger la présentation

Discrete Fourier Transform (DFT)

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Discrete Fourier Transform (DFT) Jyh-Shing Roger Jang (張智星) MIR Lab (多媒體資訊檢索實驗室) CSIE, NTU (台灣大學 資訊工程系) jang@mirlab.org, http://mirlab.org/jang

  2. Discrete Fourier Transform • Goal • Decompose a given stream of signals into sinusoidal components, where the amplitudes can be view as energy distribution over a range of frequencies • Applications • Speech recognition • Digital filtering • Many many more...

  3. Decomposition • Given xn=x(n/fs), n=0~N-1, we want to decompose x(t) into a linear combination of sinusoidal functions. • Frequencies of these sinusoidal basis functions (aka “bin frequencies”):

  4. Sinusoidal Basis Functions (1/2)

  5. Sinusoidal Basis Functions (2/2)

  6. Decomposition into Basis Functions No. of modifiable parameters = N

  7. Decomposition into Basis Functions • Overall expression: • No. of parameters is 1+2*(N/2-1)+1=N, which is equal to the no. of data points  Exact solution is likely to exist. Amplitude Freq= Phase

  8. Parameter Identification • How to identify coefficients of the basis functions: • Fast Fourier transform (FFT) • A fast algorithm with a complexity of O(n log n) • Solving simultaneous linear equations • Integration (which take advantage of the orthogonality of the basis functions)

  9. Frequencies of Basis Functions • Due to Euler identity, we can express the k-th term shown on the right.

  10. Frequencies of Basis Functions • Plug in the simplified k-th term: • Include the first and last terms:

  11. Representations of DFT: Two-side • Characteristics • General representation • If x is complex, then c is not conjugate symmetric • MATLAB command: c=fft(x)

  12. Representations of DFT: One-side • Characteristics • When x is real, c is conjugate symmetric and we only have to look at one-side of FFT result. • MATLAB command: magSpec=fftOneside(x) Real Real Complex conjugate

  13. Representations of DFT: One-side • Formulas

  14. Example: Conjugate Symmetric • Conjugate symmetric of DFT for real x • fftSym01.m

  15. Example: Two-side FFT • Two-side FFT of a pure sinusoid at one of the bin freqency • fft01.m

  16. Example: Two-side FFT • Two-side FFT of a pure sinusoid NOT at one of the bin freqency • fft02.m

  17. Example: One-side FFT • One-side FFT of a pure sinusoid NOT at one of the bin freqency • fft03.m

  18. Example: One-side FFT • One-side FFT of a frame of audio signals • fft04.m

  19. Example: FFT for Data Compression • Use partial coefficients to reconstruct the original signals • fftApproximate01.m • High-frequency components are not so important

  20. Example: FFT for Data Compression • Use low-freq components to reconstruct a frame • fftApproximate01.m

  21. Example: FFT for Periodic Signals • FFT on periodic signals • fftRepeat01.m • Useful for pitch tracking • Intepretation of harmonics from viewpoints of • Integration for obtaining the coefficients • Approximation by basis functions

  22. Example: Zero-padding for FFT • Zero-padding • Purpose • Easier for FFT • Interpolation • fftRepeat01.m

  23. Example: Down-sampling • Down sampling • High-frequency components are missing • fftResample01.m

  24. Harmonics • Why do we have harmonic structures in a power spectrum? • Since the original frame is quasi-periodic… • If we want to use the spectrum for pitch tracking, we need to enhance the harmonics.  How?

  25. How to Enhance Harmonics? • Goal • Enhance harmonics for pitch tracking • Approach • Take an integer number of fundamental periods Hard! • Use windowing • Use zero-padding for better resolution

  26. Example: Harmonics Enhancement (1) • fftHarmonics01.m

  27. Example: Harmonics Enhancement (2) • fftHarmonics02.m

  28. Example: Harmonics Enhancement (3) • fftHarmonics03.m

More Related