SlideShare uma empresa Scribd logo
1 de 50
Baixar para ler offline
55
Fast Fourier Transform (FFT)
Elena Punskaya
www-sigproc.eng.cam.ac.uk/~op205
Some material adapted from courses by
Prof. Simon Godsill, Dr. Arnaud Doucet,
Dr. Malcolm Macleod and Prof. Peter Rayner
56
Computations for Evaluating the DFT
•  Discrete Fourier Transform and its Inverse can be
computed on a digital computer
•  What are computational requirements?
57
Operation Count
How do we evaluate computational complexity?
count the number of real multiplications and
additions
by ¨real¨ we mean either fixed-point or floating point
operations depending on the specific hardware
subtraction is considered equivalent to additions
divisions are counted separately
Other operations such as loading from memory, storing in
memory, loop counting, indexing, etc are not counted
(depends on implementation/architecture) – present
overhead
58
Operation Count – Modern DSP
Modern DSP:
a real multiplication and addition is a single machine
cycle y=ax+b called MAC (multiply/accumulate)
maximum number of multiplications and additions must
be counted, not their sum
traditional claim ¨multiplication is much more time-
consuming than addition¨ becomes obsolete
59
Discrete Fourier Transform as a Vector Operation
Again, we have a sequence of sampled values x and
transformed values X , given by
n
p
Let us denote:
Then:
x
60
x
X0 0x0 0 0 0
…
X1 1x0 1 2 N-1
…
…… …
…
…
…
…
…XN-1
0 N-1 2(N-1) (N-1)2
xN-1
=
This Equation can be rewritten in matrix form:
as follows:
Matrix Interpretation of the DFT
N x N matrix
complex
numbers
can be
computed
off-line
and
stored
61
DFT Evaluation – Operation Count
Multiplication of a complex N x N matrix by a complex
N-dimensional vector.
2
Total: 4(N-1) real ¨x¨s & 4(N-0.5)(N-1) real ¨+¨s
Complex ¨x¨: 4 real ¨x¨s and 2 real ¨+¨s;
complex ¨+¨ : 2 real ¨+¨s
2
First row and first column are 1 however
save 2N-1 ¨x¨s, (N-1) complex ¨x¨s & N(N-1) ¨+¨s
2
No attempt to save operations
N complex multiplications (¨x¨s)
N(N-1) complex additions (¨+¨s)
62
DFT Computational Complexity
Thus, for the input sequence of length N the number of
arithmetic operations in direct computation of DFT is
proportional to N .2
For N=1000, about a million operations are needed!
In 1960s such a number was considered prohibitive
in most applications.
63
Discovery of the Fast Fourier Transform (FFT)
When in 1965 Cooley and Tukey ¨first¨ announced
discovery of Fast Fourier Transform (FFT) in 1965 it
revolutionised Digital Signal Processing.
They were actually 150 years late – the principle of the
FFT was later discovered in obscure section of one of
Gauss’ (as in Gaussian) own notebooks in 1806.
Their paper is the most cited mathematical paper ever
written.
64
The FFT is a highly elegant and efficient algorithm,
which is still one of the most used algorithms in speech
processing, communications, frequency estimation, etc
– one of the most highly developed area of DSP.
There are many different types and variations.
They are just computational schemes for computing the
DFT – not new transforms!
Here we consider the most basic radix-2 algorithm
which requires N to be a power of 2.
The Fast Fourier Transform (FFT)
65
Lets take the basic DFT equation:
Now, split the summation into two parts: one for even n and one for odd n:
Take
outside
FFT Derivation 1
66
Thus, we have:
FFT Derivation 2
67
Now, take the same equation again where we split the summation
into two parts: one for even n and one for odd n:
And evaluate at frequencies p+N/2
FFT Derivation 3
68
FFT Derivation 4
simplified
69
=
=
FFT Derivation 5
70
FFT Derivation - Butterfly
Or, in more compact form:
(‘Butterfly’)
71
FFT Derivation - Redundancy
72
FFT Derivation - Computational Load
for particular p
73
Flow Diagram for a N=8 DFT
Input: Output:
74
Further decomposition
A0, A1, A2 , A3 - N/2-point DFT
B0, B1, B2 , B3 - N/2-point DFT
Ap =αp +WN/2
p βp Ap+N/2 =αp -WN/2
p βp
- using redundancy just discovered
Bp =α /
p +WN/2
p β /
p Bp+N/2 =α /
p -WN/2
p β /
p
- using redundancy just discovered
WN/2
p =e-j2πp/N/2=e-j2π2p/N=WN
2p
We obtained
Now
Finally
75
Flow Diagram for a N=8 DFT - Decomposition
α0
α1
β0
β1
α /
0
α /
1
β /
0
β /
1
76
Further decomposition
A0, A1, A2 , A3 - N/2-point DFT
B0, B1, B2 , B3 - N/2-point DFT
Ap =αp +WN/2
p βp Ap+N/2 =αp -WN/2
p βp
- using redundancy just discovered
Bp =α /
p +WN/2
p β /
p Bp+N/2 =α /
p -WN/2
p β /
p
- using redundancy just discovered
WN/2
p =e-j2πp/N/2=e-j2π2p/N=WN
2p
We obtained
Now
Finally
77
Flow Diagram for a N=8 DFT – Decomposition 2
α0
α1
β0
β1
α /
0
α /
1
β /
0
β /
1
78
Bit-reversal
79
FFT Derivation Summary
•  The FFT derivation relies on redundancy in the calculation
of the basic DFT
•  A recursive algorithm is derived that repeatedly rearranges
the problem into two simpler problems of half the size
•  Hence the basic algorithm operates on signals of length a
power of 2, i.e.
(for some integer M)
•  At the bottom of the tree
we have the classic FFT
`butterfly’ structure
80
Computational Load of full FFT algorithm
The type of FFT we have considered, where N = 2M, is
called a radix-2 FFT.
It has M = log2 N stages, each using N / 2 butterflies
Complex multiplication requires 4 real multiplications
and 2 real additions
Complex addition/subtraction requires 2 real additions
Thus, butterfly requires 10 real operations.
Hence the radix-2 N-point FFT requires 10( N / 2 )log2 N
real operations compared to about 8N2 real operations
for the DFT.
81
Computational Load of full FFT algorithm
Direct DFT
FFT
The radix-2 N-point FFT requires 10( N / 2 )log2 N real
operations compared to about 8N2 real operations for the
DFT.
This is a huge speed-up in typical applications, where N is
128 – 4096:
82
Input Output
Further advantage of the FFT algorithm
83
The Inverse FFT (IFFT)
The IDFT is different from the DFT:
•  it uses positive power of instead of negative ones
•  There is an additional division of each output value by N
Any FFT algorithm can be modified to perform the IDFT by
•  using positive powers instead of negatives
•  Multiplying each component of the output by 1 / N
Hence the algorithm is the same but computational load
increases due to N extra multiplications
84
The form of FFT we have described is called “decimation in time”; there
is a form called “decimation in frequency” (but it has no advantages).
The "radix 2" FFT must have length N a power of 2. Slightly more efficient
is the "radix 4" FFT, in which 2-input 2-output butterflies are replaced by 4-
input 4-output units. The transform length must then be a power of 4
(more restrictive).
A completely different type of algorithm, the Winograd Fourier Transform
Algorithm (WFTA), can be used for FFT lengths equal to the product of a
number of mutually prime factors (e.g. 9*7*5 = 315 or 5*16 = 80). The
WFTA uses fewer multipliers, but more adders, than a similar-length FFT.
Efficient algorithms exist for FFTing real (not complex) data at about 60%
the effort of the same-sized complex-data FFT.
The Discrete Cosine and Sine Transforms (DCT and DST) are
similar real-signal algorithms used in image coding.
Many types of FFT
85
There FFT is surely the most widely used signal processing
algorithm of all. It is the basic building block for a large
percentage of algorithms in current usage
Specific examples include:
• Spectrum analysis – used for analysing and detecting
signals
• Coding – audio and speech signals are often coded in the
frequency domain using FFT variants (MP3, …)
• Another recent application is in a modulation scheme called
OFDM, which is used for digital TV broadcasting (DVB) and
digital radio (audio) broadcasting (DAB).
• Background noise reduction for mobile telephony, speech
and audio signals is often implemented in the frequency
domain using FFTs
Applications of the FFT
86
Practical Spectral Analysis
•  Say, we have a symphony recording over 40 minutes
long – about 2500 seconds
•  Compact-disk recordings are sampled at 44.1 kHz and
are in stereo, but say we combine both channels into a
single one by summing them at each time point
•  Are we to compute the DFT of a sequence one hundred
million samples long?
a)  unrealistic – speed and storage
requirements are too high
b)  useless – we will get a very much noiselike
wide-band spectrum covering the range from 20
Hz to 20 kHz at high resolution including all
notes of all instruments with their harmonics
87
•  We actually want a sequence of short DFTs, each
showing the spectrum of a signal of relatively short
interval
•  If violin plays note E during this interval – spectrum
would exhibit energies at not the frequency of note E
(329 Hz) and characteristic harmonics of the violin
•  If the interval is short enough – we may be able to
track note-to-note changes
•  If the frequency resolution is high enough – we will be
able to identify musical instruments playing
Remember: our – ear – excellent spectrum analyser?
Short-Time Spectral Analysis
88
•  If we take a time interval of about 93 milliseconds
(signal of length 4096) the frequency resolution will
be 11 Hz (adequate)
•  The number of distinct intervals in the symphony is
40 x 60/0.093 - about 26,000
•  We may choose to be conservative and overlap the
intervals (say 50%)
•  In total, need to compute 52,000 FFTs of length 4096
the entire computation will be done in
considerably less time than the music
itself
Short-time spectral analysis also use windowing (more on
this later)
Short-Time Spectral Analysis – Computational Load
89
Case Study: Spectral analysis of a Musical Signal
Extract a short segment
Looks almost
periodic over short time
interval
Sample rate is
10.025 kHz
(T=1/10,025 s)
Load this into Matlab as a vector x
Take an FFT, N=512
X=fft(x(1:512));
90
Note Conjugate symmetry
as data are real:Symmetric
Symmetric Anti-Symmetric
Case Study: Spectral analysis of a Musical Signal, FFT
91
Case Study: Spectral analysis of a Musical Signal - Frequencies
92
The Effect of data length N
N=32
N=128
N=1024
FFT
Low
resolution
High
resolution
FFT
FFT
93
The DFT approximation to the DTFT
DTFT at frequency : DFT:
•  Ideally the DFT should be a `good’ approximation to the DTFT
•  Intuitively the approximation gets better as the number of data
points N increases
•  This is illustrated in the previous slide – resolution gets better as
N increases (more, narrower, peaks in spectrum).
•  How to evaluate this analytically?
View the truncation in the summation as a multiplication by a
rectangle window function
94
Analysis
95
Pre-multiplying by rectangular window
96
Spectrum of the windowed signal
97
Fourier Transform of the Rectangular Window
98
N=32 Central `Lobe’
Sidelobes
Rectangular Window Spectrum
99
N=4
N=8
N=16
N=32
Lobe width inversely
Proportional to N
Rectangular Window Spectrum – Lobe Width
100
Now, imagine what happens when the sum of two frequency components is DFT-ed:
The DTFT is given by a train of delta functions:
Hence the windowed spectrum is just the convolution of the window spectrum with
the delta functions:
101
Both components
separately
Both components
Together
ωΤ
DFT for the data
102
Brief summary
•  The rectangular window introduces broadening of any frequency
components (`smearing’) and sidelobes that may overlap with other
frequency components (`leakage’).
•  The effect improves as N increases
•  However, the rectangle window has poor properties and better choices
of wn can lead to better spectral properties (less leakage, in particular)
– i.e. instead of just truncating the summation, we can pre-multiply by a
suitable window function wn that has better frequency domain
properties.
•  More on window design in the filter design section of the course – see
later
103
Summary so far …
•  The Fourier Transform (FT) is a way of transforming
a continuous signal into the frequency domain
•  The Discrete Time Fourier Transform (DTFT) is a
Fourier Transform of a sampled signal
•  The Discrete Fourier Transform (DFT) is a discrete
numerical equivalent using sums instead of integrals
that can be computed on a digital computer
•  The FFT is a highly elegant and efficient algorithm,
which is still one of the most used algorithms in
speech processing, communications, frequency
estimation, etc – one of the most highly developed
area of DSP
104
Thank you!

Mais conteúdo relacionado

Mais procurados

Sampling and Reconstruction of Signal using Aliasing
Sampling and Reconstruction of Signal using AliasingSampling and Reconstruction of Signal using Aliasing
Sampling and Reconstruction of Signal using Aliasingj naga sai
 
DSP_2018_FOEHU - Lec 02 - Sampling of Continuous Time Signals
DSP_2018_FOEHU - Lec 02 - Sampling of Continuous Time SignalsDSP_2018_FOEHU - Lec 02 - Sampling of Continuous Time Signals
DSP_2018_FOEHU - Lec 02 - Sampling of Continuous Time SignalsAmr E. Mohamed
 
DIGITAL SIGNAL PROCESSING: Sampling and Reconstruction on MATLAB
DIGITAL SIGNAL PROCESSING: Sampling and Reconstruction on MATLABDIGITAL SIGNAL PROCESSING: Sampling and Reconstruction on MATLAB
DIGITAL SIGNAL PROCESSING: Sampling and Reconstruction on MATLABMartin Wachiye Wafula
 
Nyquist criterion for distortion less baseband binary channel
Nyquist criterion for distortion less baseband binary channelNyquist criterion for distortion less baseband binary channel
Nyquist criterion for distortion less baseband binary channelPriyangaKR1
 
Nyquist criterion for zero ISI
Nyquist criterion for zero ISINyquist criterion for zero ISI
Nyquist criterion for zero ISIGunasekara Reddy
 
Ff tand matlab-wanjun huang
Ff tand matlab-wanjun huangFf tand matlab-wanjun huang
Ff tand matlab-wanjun huangSagar Ahir
 
Digital signal processing through speech, hearing, and Python
Digital signal processing through speech, hearing, and PythonDigital signal processing through speech, hearing, and Python
Digital signal processing through speech, hearing, and PythonMel Chua
 
Signal & systems
Signal & systemsSignal & systems
Signal & systemsAJAL A J
 
Dsp 2018 foehu - lec 10 - multi-rate digital signal processing
Dsp 2018 foehu - lec 10 - multi-rate digital signal processingDsp 2018 foehu - lec 10 - multi-rate digital signal processing
Dsp 2018 foehu - lec 10 - multi-rate digital signal processingAmr E. Mohamed
 
Correlative level coding
Correlative level codingCorrelative level coding
Correlative level codingsrkrishna341
 
DSP_FOEHU - Lec 07 - Digital Filters
DSP_FOEHU - Lec 07 - Digital FiltersDSP_FOEHU - Lec 07 - Digital Filters
DSP_FOEHU - Lec 07 - Digital FiltersAmr E. Mohamed
 
Digital Signal Processing-Digital Filters
Digital Signal Processing-Digital FiltersDigital Signal Processing-Digital Filters
Digital Signal Processing-Digital FiltersNelson Anand
 

Mais procurados (20)

Sampling and Reconstruction of Signal using Aliasing
Sampling and Reconstruction of Signal using AliasingSampling and Reconstruction of Signal using Aliasing
Sampling and Reconstruction of Signal using Aliasing
 
Sampling theorem
Sampling theoremSampling theorem
Sampling theorem
 
DSP_2018_FOEHU - Lec 02 - Sampling of Continuous Time Signals
DSP_2018_FOEHU - Lec 02 - Sampling of Continuous Time SignalsDSP_2018_FOEHU - Lec 02 - Sampling of Continuous Time Signals
DSP_2018_FOEHU - Lec 02 - Sampling of Continuous Time Signals
 
DIGITAL SIGNAL PROCESSING: Sampling and Reconstruction on MATLAB
DIGITAL SIGNAL PROCESSING: Sampling and Reconstruction on MATLABDIGITAL SIGNAL PROCESSING: Sampling and Reconstruction on MATLAB
DIGITAL SIGNAL PROCESSING: Sampling and Reconstruction on MATLAB
 
Nyquist criterion for distortion less baseband binary channel
Nyquist criterion for distortion less baseband binary channelNyquist criterion for distortion less baseband binary channel
Nyquist criterion for distortion less baseband binary channel
 
Ft and FFT
Ft and FFTFt and FFT
Ft and FFT
 
Nyquist criterion for zero ISI
Nyquist criterion for zero ISINyquist criterion for zero ISI
Nyquist criterion for zero ISI
 
Ff tand matlab-wanjun huang
Ff tand matlab-wanjun huangFf tand matlab-wanjun huang
Ff tand matlab-wanjun huang
 
Digital signal processing through speech, hearing, and Python
Digital signal processing through speech, hearing, and PythonDigital signal processing through speech, hearing, and Python
Digital signal processing through speech, hearing, and Python
 
Lecture9
Lecture9Lecture9
Lecture9
 
Matched filter
Matched filterMatched filter
Matched filter
 
Signal & systems
Signal & systemsSignal & systems
Signal & systems
 
Lecture13
Lecture13Lecture13
Lecture13
 
signals
signalssignals
signals
 
Basic concepts
Basic conceptsBasic concepts
Basic concepts
 
Dsp 2018 foehu - lec 10 - multi-rate digital signal processing
Dsp 2018 foehu - lec 10 - multi-rate digital signal processingDsp 2018 foehu - lec 10 - multi-rate digital signal processing
Dsp 2018 foehu - lec 10 - multi-rate digital signal processing
 
Correlative level coding
Correlative level codingCorrelative level coding
Correlative level coding
 
DSP_FOEHU - Lec 07 - Digital Filters
DSP_FOEHU - Lec 07 - Digital FiltersDSP_FOEHU - Lec 07 - Digital Filters
DSP_FOEHU - Lec 07 - Digital Filters
 
Sampling Theorem
Sampling TheoremSampling Theorem
Sampling Theorem
 
Digital Signal Processing-Digital Filters
Digital Signal Processing-Digital FiltersDigital Signal Processing-Digital Filters
Digital Signal Processing-Digital Filters
 

Destaque

Research methodology Chapter 1
Research methodology Chapter 1Research methodology Chapter 1
Research methodology Chapter 1Pulchowk Campus
 
Research methodology part2
Research methodology part2Research methodology part2
Research methodology part2Sapna2410
 
Plant Location
Plant  LocationPlant  Location
Plant LocationBob Bin
 

Destaque (20)

RES701: Research Methodology L9-12_Devaprakasam
RES701: Research Methodology L9-12_DevaprakasamRES701: Research Methodology L9-12_Devaprakasam
RES701: Research Methodology L9-12_Devaprakasam
 
RES701 Research Methodology Lecture1
RES701 Research Methodology Lecture1RES701 Research Methodology Lecture1
RES701 Research Methodology Lecture1
 
Res701 research methodology lecture 7 8-devaprakasam
Res701 research methodology lecture 7 8-devaprakasamRes701 research methodology lecture 7 8-devaprakasam
Res701 research methodology lecture 7 8-devaprakasam
 
Rm 4
Rm 4Rm 4
Rm 4
 
Rm 5
Rm 5Rm 5
Rm 5
 
research methods
research methodsresearch methods
research methods
 
research methods 1
research methods 1research methods 1
research methods 1
 
Rm 7
Rm 7Rm 7
Rm 7
 
Research methodology Chapter 1
Research methodology Chapter 1Research methodology Chapter 1
Research methodology Chapter 1
 
RES701 Research Methodology Lectures 3-4_Devaprakasam
RES701 Research Methodology Lectures 3-4_DevaprakasamRES701 Research Methodology Lectures 3-4_Devaprakasam
RES701 Research Methodology Lectures 3-4_Devaprakasam
 
RES701cResearch methodology lecture 5 devaprakasam
RES701cResearch methodology lecture 5 devaprakasamRES701cResearch methodology lecture 5 devaprakasam
RES701cResearch methodology lecture 5 devaprakasam
 
RES701 Research Methodology Lecture6_Devaprakasam
RES701 Research Methodology Lecture6_DevaprakasamRES701 Research Methodology Lecture6_Devaprakasam
RES701 Research Methodology Lecture6_Devaprakasam
 
research methods 2
research methods 2research methods 2
research methods 2
 
RES701 Research Methodology Lecture 2
RES701 Research Methodology Lecture 2RES701 Research Methodology Lecture 2
RES701 Research Methodology Lecture 2
 
Chapter 7
Chapter 7Chapter 7
Chapter 7
 
Research methodology part2
Research methodology part2Research methodology part2
Research methodology part2
 
Plant Location
Plant  LocationPlant  Location
Plant Location
 
Introduction to Research Methodology
Introduction to Research MethodologyIntroduction to Research Methodology
Introduction to Research Methodology
 
Chapter 4
Chapter 4Chapter 4
Chapter 4
 
Research process
Research processResearch process
Research process
 

Semelhante a Res701 research methodology fft1

3 f3 3_fast_ fourier_transform
3 f3 3_fast_ fourier_transform3 f3 3_fast_ fourier_transform
3 f3 3_fast_ fourier_transformWiw Miu
 
FPGA Implementation of Large Area Efficient and Low Power Geortzel Algorithm ...
FPGA Implementation of Large Area Efficient and Low Power Geortzel Algorithm ...FPGA Implementation of Large Area Efficient and Low Power Geortzel Algorithm ...
FPGA Implementation of Large Area Efficient and Low Power Geortzel Algorithm ...IDES Editor
 
Dft and its applications
Dft and its applicationsDft and its applications
Dft and its applicationsAgam Goel
 
Iaetsd computational performances of ofdm using
Iaetsd computational performances of ofdm usingIaetsd computational performances of ofdm using
Iaetsd computational performances of ofdm usingIaetsd Iaetsd
 
EC8562 DSP Viva Questions
EC8562 DSP Viva Questions EC8562 DSP Viva Questions
EC8562 DSP Viva Questions ssuser2797e4
 
The method of comparing two audio files
The method of comparing two audio filesThe method of comparing two audio files
The method of comparing two audio filesMinh Anh Nguyen
 
The method of comparing two audio files
The method of comparing two audio filesThe method of comparing two audio files
The method of comparing two audio filesMinh Anh Nguyen
 
1 AUDIO SIGNAL PROCESSING
1 AUDIO SIGNAL PROCESSING1 AUDIO SIGNAL PROCESSING
1 AUDIO SIGNAL PROCESSINGmukesh bhardwaj
 
Design and Construction of Musical Lighting Water Fountain
Design and Construction of Musical Lighting Water FountainDesign and Construction of Musical Lighting Water Fountain
Design and Construction of Musical Lighting Water Fountainijtsrd
 
Synchronous Time / Frequency Domain Measurements Using a Digital Oscilloscope...
Synchronous Time / Frequency Domain Measurements Using a Digital Oscilloscope...Synchronous Time / Frequency Domain Measurements Using a Digital Oscilloscope...
Synchronous Time / Frequency Domain Measurements Using a Digital Oscilloscope...Rohde & Schwarz North America
 
DIT-Radix-2-FFT in SPED
DIT-Radix-2-FFT in SPEDDIT-Radix-2-FFT in SPED
DIT-Radix-2-FFT in SPEDAjay Kumar
 
Performance Comparison of FFT, DHT and DCT Based OFDM Systems with BPSK as A ...
Performance Comparison of FFT, DHT and DCT Based OFDM Systems with BPSK as A ...Performance Comparison of FFT, DHT and DCT Based OFDM Systems with BPSK as A ...
Performance Comparison of FFT, DHT and DCT Based OFDM Systems with BPSK as A ...paperpublications3
 
fft using labview
fft using labviewfft using labview
fft using labviewkiranrockz
 
Design of Scalable FFT architecture for Advanced Wireless Communication Stand...
Design of Scalable FFT architecture for Advanced Wireless Communication Stand...Design of Scalable FFT architecture for Advanced Wireless Communication Stand...
Design of Scalable FFT architecture for Advanced Wireless Communication Stand...IOSRJECE
 

Semelhante a Res701 research methodology fft1 (20)

3 f3 3_fast_ fourier_transform
3 f3 3_fast_ fourier_transform3 f3 3_fast_ fourier_transform
3 f3 3_fast_ fourier_transform
 
FPGA Implementation of Large Area Efficient and Low Power Geortzel Algorithm ...
FPGA Implementation of Large Area Efficient and Low Power Geortzel Algorithm ...FPGA Implementation of Large Area Efficient and Low Power Geortzel Algorithm ...
FPGA Implementation of Large Area Efficient and Low Power Geortzel Algorithm ...
 
FFT Analysis
FFT AnalysisFFT Analysis
FFT Analysis
 
Dif fft
Dif fftDif fft
Dif fft
 
Discrete Fourier Series | Discrete Fourier Transform | Discrete Time Fourier ...
Discrete Fourier Series | Discrete Fourier Transform | Discrete Time Fourier ...Discrete Fourier Series | Discrete Fourier Transform | Discrete Time Fourier ...
Discrete Fourier Series | Discrete Fourier Transform | Discrete Time Fourier ...
 
Dft and its applications
Dft and its applicationsDft and its applications
Dft and its applications
 
Iaetsd computational performances of ofdm using
Iaetsd computational performances of ofdm usingIaetsd computational performances of ofdm using
Iaetsd computational performances of ofdm using
 
Fft ppt
Fft pptFft ppt
Fft ppt
 
EC8562 DSP Viva Questions
EC8562 DSP Viva Questions EC8562 DSP Viva Questions
EC8562 DSP Viva Questions
 
dsp-1.pdf
dsp-1.pdfdsp-1.pdf
dsp-1.pdf
 
DSP .pptx
DSP .pptxDSP .pptx
DSP .pptx
 
The method of comparing two audio files
The method of comparing two audio filesThe method of comparing two audio files
The method of comparing two audio files
 
The method of comparing two audio files
The method of comparing two audio filesThe method of comparing two audio files
The method of comparing two audio files
 
1 AUDIO SIGNAL PROCESSING
1 AUDIO SIGNAL PROCESSING1 AUDIO SIGNAL PROCESSING
1 AUDIO SIGNAL PROCESSING
 
Design and Construction of Musical Lighting Water Fountain
Design and Construction of Musical Lighting Water FountainDesign and Construction of Musical Lighting Water Fountain
Design and Construction of Musical Lighting Water Fountain
 
Synchronous Time / Frequency Domain Measurements Using a Digital Oscilloscope...
Synchronous Time / Frequency Domain Measurements Using a Digital Oscilloscope...Synchronous Time / Frequency Domain Measurements Using a Digital Oscilloscope...
Synchronous Time / Frequency Domain Measurements Using a Digital Oscilloscope...
 
DIT-Radix-2-FFT in SPED
DIT-Radix-2-FFT in SPEDDIT-Radix-2-FFT in SPED
DIT-Radix-2-FFT in SPED
 
Performance Comparison of FFT, DHT and DCT Based OFDM Systems with BPSK as A ...
Performance Comparison of FFT, DHT and DCT Based OFDM Systems with BPSK as A ...Performance Comparison of FFT, DHT and DCT Based OFDM Systems with BPSK as A ...
Performance Comparison of FFT, DHT and DCT Based OFDM Systems with BPSK as A ...
 
fft using labview
fft using labviewfft using labview
fft using labview
 
Design of Scalable FFT architecture for Advanced Wireless Communication Stand...
Design of Scalable FFT architecture for Advanced Wireless Communication Stand...Design of Scalable FFT architecture for Advanced Wireless Communication Stand...
Design of Scalable FFT architecture for Advanced Wireless Communication Stand...
 

Mais de VIT University (Chennai Campus)

Mais de VIT University (Chennai Campus) (20)

MEE1005-MAT-FALL19-20-L3
MEE1005-MAT-FALL19-20-L3MEE1005-MAT-FALL19-20-L3
MEE1005-MAT-FALL19-20-L3
 
MEE1005-MAT-FALL19-20-L2
MEE1005-MAT-FALL19-20-L2MEE1005-MAT-FALL19-20-L2
MEE1005-MAT-FALL19-20-L2
 
MEE1005-MAT-FALL19-20-L1
MEE1005-MAT-FALL19-20-L1MEE1005-MAT-FALL19-20-L1
MEE1005-MAT-FALL19-20-L1
 
MEE1002 ENGINEERING MECHANICS-SUM-II-L11
MEE1002 ENGINEERING MECHANICS-SUM-II-L11MEE1002 ENGINEERING MECHANICS-SUM-II-L11
MEE1002 ENGINEERING MECHANICS-SUM-II-L11
 
MEE1002ENGINEERING MECHANICS-SUM-II-L13
MEE1002ENGINEERING MECHANICS-SUM-II-L13MEE1002ENGINEERING MECHANICS-SUM-II-L13
MEE1002ENGINEERING MECHANICS-SUM-II-L13
 
MEE1002 ENGINEERING MECHANICS-SUM-II- L12
MEE1002 ENGINEERING MECHANICS-SUM-II- L12MEE1002 ENGINEERING MECHANICS-SUM-II- L12
MEE1002 ENGINEERING MECHANICS-SUM-II- L12
 
MEE1002 ENGIEERING MECHANICS-SUM-II- L11
MEE1002 ENGIEERING MECHANICS-SUM-II- L11MEE1002 ENGIEERING MECHANICS-SUM-II- L11
MEE1002 ENGIEERING MECHANICS-SUM-II- L11
 
MEE1002 ENGINEERING MECHANICS-SUM-II- L10
MEE1002 ENGINEERING MECHANICS-SUM-II- L10MEE1002 ENGINEERING MECHANICS-SUM-II- L10
MEE1002 ENGINEERING MECHANICS-SUM-II- L10
 
MEE1002 ENGINEERING MECHANICS-SUM-II- L9
MEE1002 ENGINEERING MECHANICS-SUM-II- L9MEE1002 ENGINEERING MECHANICS-SUM-II- L9
MEE1002 ENGINEERING MECHANICS-SUM-II- L9
 
MEE1002 ENGINEERING MECHANICS-SUM-II- L8
MEE1002 ENGINEERING MECHANICS-SUM-II- L8MEE1002 ENGINEERING MECHANICS-SUM-II- L8
MEE1002 ENGINEERING MECHANICS-SUM-II- L8
 
MEE1002 ENGINEERING MECHANICS-SUM-II- L7
MEE1002 ENGINEERING MECHANICS-SUM-II- L7MEE1002 ENGINEERING MECHANICS-SUM-II- L7
MEE1002 ENGINEERING MECHANICS-SUM-II- L7
 
MEE1002-ENGINEERING MECHANICS-SUM-II-L1
MEE1002-ENGINEERING MECHANICS-SUM-II-L1MEE1002-ENGINEERING MECHANICS-SUM-II-L1
MEE1002-ENGINEERING MECHANICS-SUM-II-L1
 
MEE1002-ENGINEERING MECHANICS-SUM-II-L6
MEE1002-ENGINEERING MECHANICS-SUM-II-L6MEE1002-ENGINEERING MECHANICS-SUM-II-L6
MEE1002-ENGINEERING MECHANICS-SUM-II-L6
 
MEE1002-ENGINEERING MECHANICS-SUM-II-L5
MEE1002-ENGINEERING MECHANICS-SUM-II-L5MEE1002-ENGINEERING MECHANICS-SUM-II-L5
MEE1002-ENGINEERING MECHANICS-SUM-II-L5
 
MEE1002-ENGINEERING MECHANICS-SUM-II-L4
MEE1002-ENGINEERING MECHANICS-SUM-II-L4MEE1002-ENGINEERING MECHANICS-SUM-II-L4
MEE1002-ENGINEERING MECHANICS-SUM-II-L4
 
MEE1002-ENGINEERING MECHANICS-SUM-II-L3
MEE1002-ENGINEERING MECHANICS-SUM-II-L3MEE1002-ENGINEERING MECHANICS-SUM-II-L3
MEE1002-ENGINEERING MECHANICS-SUM-II-L3
 
MEE1002-ENGINEERING MECHANICS-SUM-II-L2
MEE1002-ENGINEERING MECHANICS-SUM-II-L2MEE1002-ENGINEERING MECHANICS-SUM-II-L2
MEE1002-ENGINEERING MECHANICS-SUM-II-L2
 
DAIMLER-HUM1721ETHICS AND VALUES-L4
DAIMLER-HUM1721ETHICS AND VALUES-L4DAIMLER-HUM1721ETHICS AND VALUES-L4
DAIMLER-HUM1721ETHICS AND VALUES-L4
 
DAIMLER-HUM1721 ETHICS AND VALUES-L3
DAIMLER-HUM1721 ETHICS AND VALUES-L3DAIMLER-HUM1721 ETHICS AND VALUES-L3
DAIMLER-HUM1721 ETHICS AND VALUES-L3
 
DAIMLER-HUM1721-ETHICS AND VALUES-L2
DAIMLER-HUM1721-ETHICS AND VALUES-L2DAIMLER-HUM1721-ETHICS AND VALUES-L2
DAIMLER-HUM1721-ETHICS AND VALUES-L2
 

Último

Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfsanyamsingh5019
 
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991RKavithamani
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)eniolaolutunde
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentInMediaRes1
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptxVS Mahajan Coaching Centre
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxmanuelaromero2013
 
Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesFatimaKhan178732
 
MENTAL STATUS EXAMINATION format.docx
MENTAL     STATUS EXAMINATION format.docxMENTAL     STATUS EXAMINATION format.docx
MENTAL STATUS EXAMINATION format.docxPoojaSen20
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docxPoojaSen20
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfchloefrazer622
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxheathfieldcps1
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAssociation for Project Management
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxRoyAbrique
 
PSYCHIATRIC History collection FORMAT.pptx
PSYCHIATRIC   History collection FORMAT.pptxPSYCHIATRIC   History collection FORMAT.pptx
PSYCHIATRIC History collection FORMAT.pptxPoojaSen20
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxOH TEIK BIN
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon AUnboundStockton
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...Marc Dusseiller Dusjagr
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingTechSoup
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionSafetyChain Software
 

Último (20)

Sanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdfSanyam Choudhary Chemistry practical.pdf
Sanyam Choudhary Chemistry practical.pdf
 
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
Industrial Policy - 1948, 1956, 1973, 1977, 1980, 1991
 
Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)Software Engineering Methodologies (overview)
Software Engineering Methodologies (overview)
 
Alper Gobel In Media Res Media Component
Alper Gobel In Media Res Media ComponentAlper Gobel In Media Res Media Component
Alper Gobel In Media Res Media Component
 
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions  for the students and aspirants of Chemistry12th.pptxOrganic Name Reactions  for the students and aspirants of Chemistry12th.pptx
Organic Name Reactions for the students and aspirants of Chemistry12th.pptx
 
How to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptxHow to Make a Pirate ship Primary Education.pptx
How to Make a Pirate ship Primary Education.pptx
 
Separation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and ActinidesSeparation of Lanthanides/ Lanthanides and Actinides
Separation of Lanthanides/ Lanthanides and Actinides
 
MENTAL STATUS EXAMINATION format.docx
MENTAL     STATUS EXAMINATION format.docxMENTAL     STATUS EXAMINATION format.docx
MENTAL STATUS EXAMINATION format.docx
 
mini mental status format.docx
mini    mental       status     format.docxmini    mental       status     format.docx
mini mental status format.docx
 
Arihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdfArihant handbook biology for class 11 .pdf
Arihant handbook biology for class 11 .pdf
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
APM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across SectorsAPM Welcome, APM North West Network Conference, Synergies Across Sectors
APM Welcome, APM North West Network Conference, Synergies Across Sectors
 
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptxContemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
Contemporary philippine arts from the regions_PPT_Module_12 [Autosaved] (1).pptx
 
PSYCHIATRIC History collection FORMAT.pptx
PSYCHIATRIC   History collection FORMAT.pptxPSYCHIATRIC   History collection FORMAT.pptx
PSYCHIATRIC History collection FORMAT.pptx
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Solving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptxSolving Puzzles Benefits Everyone (English).pptx
Solving Puzzles Benefits Everyone (English).pptx
 
Crayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon ACrayon Activity Handout For the Crayon A
Crayon Activity Handout For the Crayon A
 
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
“Oh GOSH! Reflecting on Hackteria's Collaborative Practices in a Global Do-It...
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
Mastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory InspectionMastering the Unannounced Regulatory Inspection
Mastering the Unannounced Regulatory Inspection
 

Res701 research methodology fft1

  • 1. 55 Fast Fourier Transform (FFT) Elena Punskaya www-sigproc.eng.cam.ac.uk/~op205 Some material adapted from courses by Prof. Simon Godsill, Dr. Arnaud Doucet, Dr. Malcolm Macleod and Prof. Peter Rayner
  • 2. 56 Computations for Evaluating the DFT •  Discrete Fourier Transform and its Inverse can be computed on a digital computer •  What are computational requirements?
  • 3. 57 Operation Count How do we evaluate computational complexity? count the number of real multiplications and additions by ¨real¨ we mean either fixed-point or floating point operations depending on the specific hardware subtraction is considered equivalent to additions divisions are counted separately Other operations such as loading from memory, storing in memory, loop counting, indexing, etc are not counted (depends on implementation/architecture) – present overhead
  • 4. 58 Operation Count – Modern DSP Modern DSP: a real multiplication and addition is a single machine cycle y=ax+b called MAC (multiply/accumulate) maximum number of multiplications and additions must be counted, not their sum traditional claim ¨multiplication is much more time- consuming than addition¨ becomes obsolete
  • 5. 59 Discrete Fourier Transform as a Vector Operation Again, we have a sequence of sampled values x and transformed values X , given by n p Let us denote: Then: x
  • 6. 60 x X0 0x0 0 0 0 … X1 1x0 1 2 N-1 … …… … … … … … …XN-1 0 N-1 2(N-1) (N-1)2 xN-1 = This Equation can be rewritten in matrix form: as follows: Matrix Interpretation of the DFT N x N matrix complex numbers can be computed off-line and stored
  • 7. 61 DFT Evaluation – Operation Count Multiplication of a complex N x N matrix by a complex N-dimensional vector. 2 Total: 4(N-1) real ¨x¨s & 4(N-0.5)(N-1) real ¨+¨s Complex ¨x¨: 4 real ¨x¨s and 2 real ¨+¨s; complex ¨+¨ : 2 real ¨+¨s 2 First row and first column are 1 however save 2N-1 ¨x¨s, (N-1) complex ¨x¨s & N(N-1) ¨+¨s 2 No attempt to save operations N complex multiplications (¨x¨s) N(N-1) complex additions (¨+¨s)
  • 8. 62 DFT Computational Complexity Thus, for the input sequence of length N the number of arithmetic operations in direct computation of DFT is proportional to N .2 For N=1000, about a million operations are needed! In 1960s such a number was considered prohibitive in most applications.
  • 9. 63 Discovery of the Fast Fourier Transform (FFT) When in 1965 Cooley and Tukey ¨first¨ announced discovery of Fast Fourier Transform (FFT) in 1965 it revolutionised Digital Signal Processing. They were actually 150 years late – the principle of the FFT was later discovered in obscure section of one of Gauss’ (as in Gaussian) own notebooks in 1806. Their paper is the most cited mathematical paper ever written.
  • 10. 64 The FFT is a highly elegant and efficient algorithm, which is still one of the most used algorithms in speech processing, communications, frequency estimation, etc – one of the most highly developed area of DSP. There are many different types and variations. They are just computational schemes for computing the DFT – not new transforms! Here we consider the most basic radix-2 algorithm which requires N to be a power of 2. The Fast Fourier Transform (FFT)
  • 11. 65 Lets take the basic DFT equation: Now, split the summation into two parts: one for even n and one for odd n: Take outside FFT Derivation 1
  • 12. 66 Thus, we have: FFT Derivation 2
  • 13. 67 Now, take the same equation again where we split the summation into two parts: one for even n and one for odd n: And evaluate at frequencies p+N/2 FFT Derivation 3
  • 16. 70 FFT Derivation - Butterfly Or, in more compact form: (‘Butterfly’)
  • 17. 71 FFT Derivation - Redundancy
  • 18. 72 FFT Derivation - Computational Load for particular p
  • 19. 73 Flow Diagram for a N=8 DFT Input: Output:
  • 20. 74 Further decomposition A0, A1, A2 , A3 - N/2-point DFT B0, B1, B2 , B3 - N/2-point DFT Ap =αp +WN/2 p βp Ap+N/2 =αp -WN/2 p βp - using redundancy just discovered Bp =α / p +WN/2 p β / p Bp+N/2 =α / p -WN/2 p β / p - using redundancy just discovered WN/2 p =e-j2πp/N/2=e-j2π2p/N=WN 2p We obtained Now Finally
  • 21. 75 Flow Diagram for a N=8 DFT - Decomposition α0 α1 β0 β1 α / 0 α / 1 β / 0 β / 1
  • 22. 76 Further decomposition A0, A1, A2 , A3 - N/2-point DFT B0, B1, B2 , B3 - N/2-point DFT Ap =αp +WN/2 p βp Ap+N/2 =αp -WN/2 p βp - using redundancy just discovered Bp =α / p +WN/2 p β / p Bp+N/2 =α / p -WN/2 p β / p - using redundancy just discovered WN/2 p =e-j2πp/N/2=e-j2π2p/N=WN 2p We obtained Now Finally
  • 23. 77 Flow Diagram for a N=8 DFT – Decomposition 2 α0 α1 β0 β1 α / 0 α / 1 β / 0 β / 1
  • 25. 79 FFT Derivation Summary •  The FFT derivation relies on redundancy in the calculation of the basic DFT •  A recursive algorithm is derived that repeatedly rearranges the problem into two simpler problems of half the size •  Hence the basic algorithm operates on signals of length a power of 2, i.e. (for some integer M) •  At the bottom of the tree we have the classic FFT `butterfly’ structure
  • 26. 80 Computational Load of full FFT algorithm The type of FFT we have considered, where N = 2M, is called a radix-2 FFT. It has M = log2 N stages, each using N / 2 butterflies Complex multiplication requires 4 real multiplications and 2 real additions Complex addition/subtraction requires 2 real additions Thus, butterfly requires 10 real operations. Hence the radix-2 N-point FFT requires 10( N / 2 )log2 N real operations compared to about 8N2 real operations for the DFT.
  • 27. 81 Computational Load of full FFT algorithm Direct DFT FFT The radix-2 N-point FFT requires 10( N / 2 )log2 N real operations compared to about 8N2 real operations for the DFT. This is a huge speed-up in typical applications, where N is 128 – 4096:
  • 28. 82 Input Output Further advantage of the FFT algorithm
  • 29. 83 The Inverse FFT (IFFT) The IDFT is different from the DFT: •  it uses positive power of instead of negative ones •  There is an additional division of each output value by N Any FFT algorithm can be modified to perform the IDFT by •  using positive powers instead of negatives •  Multiplying each component of the output by 1 / N Hence the algorithm is the same but computational load increases due to N extra multiplications
  • 30. 84 The form of FFT we have described is called “decimation in time”; there is a form called “decimation in frequency” (but it has no advantages). The "radix 2" FFT must have length N a power of 2. Slightly more efficient is the "radix 4" FFT, in which 2-input 2-output butterflies are replaced by 4- input 4-output units. The transform length must then be a power of 4 (more restrictive). A completely different type of algorithm, the Winograd Fourier Transform Algorithm (WFTA), can be used for FFT lengths equal to the product of a number of mutually prime factors (e.g. 9*7*5 = 315 or 5*16 = 80). The WFTA uses fewer multipliers, but more adders, than a similar-length FFT. Efficient algorithms exist for FFTing real (not complex) data at about 60% the effort of the same-sized complex-data FFT. The Discrete Cosine and Sine Transforms (DCT and DST) are similar real-signal algorithms used in image coding. Many types of FFT
  • 31. 85 There FFT is surely the most widely used signal processing algorithm of all. It is the basic building block for a large percentage of algorithms in current usage Specific examples include: • Spectrum analysis – used for analysing and detecting signals • Coding – audio and speech signals are often coded in the frequency domain using FFT variants (MP3, …) • Another recent application is in a modulation scheme called OFDM, which is used for digital TV broadcasting (DVB) and digital radio (audio) broadcasting (DAB). • Background noise reduction for mobile telephony, speech and audio signals is often implemented in the frequency domain using FFTs Applications of the FFT
  • 32. 86 Practical Spectral Analysis •  Say, we have a symphony recording over 40 minutes long – about 2500 seconds •  Compact-disk recordings are sampled at 44.1 kHz and are in stereo, but say we combine both channels into a single one by summing them at each time point •  Are we to compute the DFT of a sequence one hundred million samples long? a)  unrealistic – speed and storage requirements are too high b)  useless – we will get a very much noiselike wide-band spectrum covering the range from 20 Hz to 20 kHz at high resolution including all notes of all instruments with their harmonics
  • 33. 87 •  We actually want a sequence of short DFTs, each showing the spectrum of a signal of relatively short interval •  If violin plays note E during this interval – spectrum would exhibit energies at not the frequency of note E (329 Hz) and characteristic harmonics of the violin •  If the interval is short enough – we may be able to track note-to-note changes •  If the frequency resolution is high enough – we will be able to identify musical instruments playing Remember: our – ear – excellent spectrum analyser? Short-Time Spectral Analysis
  • 34. 88 •  If we take a time interval of about 93 milliseconds (signal of length 4096) the frequency resolution will be 11 Hz (adequate) •  The number of distinct intervals in the symphony is 40 x 60/0.093 - about 26,000 •  We may choose to be conservative and overlap the intervals (say 50%) •  In total, need to compute 52,000 FFTs of length 4096 the entire computation will be done in considerably less time than the music itself Short-time spectral analysis also use windowing (more on this later) Short-Time Spectral Analysis – Computational Load
  • 35. 89 Case Study: Spectral analysis of a Musical Signal Extract a short segment Looks almost periodic over short time interval Sample rate is 10.025 kHz (T=1/10,025 s) Load this into Matlab as a vector x Take an FFT, N=512 X=fft(x(1:512));
  • 36. 90 Note Conjugate symmetry as data are real:Symmetric Symmetric Anti-Symmetric Case Study: Spectral analysis of a Musical Signal, FFT
  • 37. 91 Case Study: Spectral analysis of a Musical Signal - Frequencies
  • 38. 92 The Effect of data length N N=32 N=128 N=1024 FFT Low resolution High resolution FFT FFT
  • 39. 93 The DFT approximation to the DTFT DTFT at frequency : DFT: •  Ideally the DFT should be a `good’ approximation to the DTFT •  Intuitively the approximation gets better as the number of data points N increases •  This is illustrated in the previous slide – resolution gets better as N increases (more, narrower, peaks in spectrum). •  How to evaluate this analytically? View the truncation in the summation as a multiplication by a rectangle window function
  • 42. 96 Spectrum of the windowed signal
  • 43. 97 Fourier Transform of the Rectangular Window
  • 45. 99 N=4 N=8 N=16 N=32 Lobe width inversely Proportional to N Rectangular Window Spectrum – Lobe Width
  • 46. 100 Now, imagine what happens when the sum of two frequency components is DFT-ed: The DTFT is given by a train of delta functions: Hence the windowed spectrum is just the convolution of the window spectrum with the delta functions:
  • 48. 102 Brief summary •  The rectangular window introduces broadening of any frequency components (`smearing’) and sidelobes that may overlap with other frequency components (`leakage’). •  The effect improves as N increases •  However, the rectangle window has poor properties and better choices of wn can lead to better spectral properties (less leakage, in particular) – i.e. instead of just truncating the summation, we can pre-multiply by a suitable window function wn that has better frequency domain properties. •  More on window design in the filter design section of the course – see later
  • 49. 103 Summary so far … •  The Fourier Transform (FT) is a way of transforming a continuous signal into the frequency domain •  The Discrete Time Fourier Transform (DTFT) is a Fourier Transform of a sampled signal •  The Discrete Fourier Transform (DFT) is a discrete numerical equivalent using sums instead of integrals that can be computed on a digital computer •  The FFT is a highly elegant and efficient algorithm, which is still one of the most used algorithms in speech processing, communications, frequency estimation, etc – one of the most highly developed area of DSP