You are on page 1of 39

Short Time Fourier Transform (STFT)

CS474/674 Prof. Bebis



Fourier Analysis
Fourier analysis expands signals or functions in terms
of sinusoids (or complex exponentials).
It reveals all frequency components present in a signal.
where:
(inverse DFT)
(forward DFT)
Examples
) 5 2 cos( ) (
1
t t f = t
) 25 2 cos( ) (
2
t t f = t
) 50 2 cos( ) (
3
t t f = t
Examples (contd)
F
1
(u)
F
2
(u)
F
3
(u)
Fourier Analysis Examples (contd)
) 50 2 cos(
) 25 2 cos(
) 5 2 cos( ) (
4
t
t
t t f
+
+
=
t
t
t
F
4
(u)
Limitations of Fourier Analysis (contd)
1. Cannot not provide simultaneous time and frequency
localization.

2. Not useful for analyzing time-variant, non-stationary
signals.

3. Not appropriate for representing discontinuities or
sharp corners (i.e., requires a large number of Fourier
components to represent discontinuities).

Fourier Analysis Examples (contd)
) 50 2 cos(
) 25 2 cos(
) 5 2 cos( ) (
4
t
t
t t f
+
+
=
t
t
t
F
4
(u)
Provides excellent
localization in the
frequency domain
but poor localization
in the time domain.
Limitations of Fourier Analysis (contd)
1. Cannot not provide simultaneous time and frequency
localization.

2. Not useful for analyzing time-variant, non-stationary
signals.

3. Not appropriate for representing discontinuities or
sharp corners (i.e., requires a large number of Fourier
components to represent discontinuities).

Stationary vs non-stationary signals
Stationary signals:
time-invariant spectra




Non-stationary
signals: time-varying
spectra.
) (
4
t f
) (
5
t f
Stationary vs non-stationary signals




) (
4
t f
F
4
(u)
Stationary signal:
Three frequency
components,
present at all
times!
Stationary vs non-stationary signals (contd)
Perfect knowledge of what
frequencies exist, but no
Information about where
these frequencies are
located in time!
F
5
(u)
) (
5
t f
Non-stationary signal:
Limitations of Fourier Analysis (contd)
1. Cannot not provide simultaneous time and frequency
localization.

2. Not useful for analyzing time-variant, non-stationary
signals.

3. Not appropriate for representing discontinuities or
sharp corners (i.e., requires a large number of Fourier
components to represent discontinuities).

Representing discontinuities or sharp corners
Representing discontinuities or sharp corners
(contd)
FT
Representing discontinuities or sharp corners
(contd)
Reconstructed
Representing discontinuities or sharp corners
(contd)
Reconstructed
Representing discontinuities or sharp corners
(contd)
Reconstructed
Representing discontinuities or sharp corners
(contd)
Reconstructed
Representing discontinuities or sharp corners
(contd)
Reconstructed
Representing discontinuities or sharp corners
(contd)
Reconstructed
Representing discontinuities or sharp corners
(contd)
Reconstructed
Representing discontinuities or sharp corners
(contd)
Reconstructed
Original
Short Time Fourier Transform (STFT)
Need a local analysis scheme for a time-frequency
representation (TFR).
Windowed F.T. or Short Time F.T. (STFT)
Segmenting the signal into narrow time intervals (i.e.,
narrow enough to be considered stationary).
Take the Fourier transform of each segment.

Short Time Fourier Transform (STFT)
(contd)
Steps :
(1) Choose a window function of finite length
(2) Place the window on top of the signal at t=0
(3) Truncate the signal using this window
(4) Compute the FT of the truncated signal, save results.
(5) Incrementally slide the window to the right
(6) Go to step 3, until window reaches the end of the signal

Short Time Fourier Transform (STFT)
For each time location where the window is centered,
we obtain a different FT
Each FT provides the spectral information of a separate
time-slice of the signal, providing simultaneous time and
frequency information

Short Time Fourier Transform (STFT)
(contd)
| |
2
( , ) ( ) ( )
u j ut
f
t
STFT t u f t W t t e dt
t
' '
=
}
STFT of f(t):
computed for each
window centered at t=t

Time
parameter
Frequency
parameter
Signal to
be analyzed
Windowing
function
centered at t=t
Short Time Fourier Transform (STFT)
(contd)
STFT maps 1-D time domain signals to 2-D time-
frequency signals (i.e., in u and t )

| |
2
( , ) ( ) ( )
u j ut
f
t
STFT t u f t W t t e dt
t
' '
=
}
Example


f(t)
[0 300] ms 100 Hz sinusoid
[300 600] ms 50 Hz sinusoid
[600 800] ms 25 Hz sinusoid
[800 1000] ms 10 Hz sinusoid
Example


W(t)
f(t)
( , )
u
f
STFT t u
'
scaled: t/20
Choosing Window W(t)
What shape?
Rectangular, Gaussian, Elliptic?

How wide?
Window should be narrow enough to make sure that the
portion of the signal falling within the window is stationary.
Very narrow windows do not offer good localization in the
frequency domain.

STFT Window Size
W(t) infinitely long: STFT turns into FT,
providing excellent frequency localization, but no time
information.

W(t) infinitely short: gives the time signal
back, with a phase factor, providing excellent time localization but
no frequency information.

1 ) ( = t W
) ( ) ( t t W o =
| |
2
( , ) ( ) ( ) ( )
u j ut jut
f
t
STFT t u f t t t e dt f t e
t
o
'
' ' '
= =
}
| |
2
( , ) ( ) ( )
u j ut
f
t
STFT t u f t W t t e dt
t
' '
=
}
STFT Window Size (contd)

Wide window good frequency resolution, poor
time resolution.

Narrow window good time resolution, poor
frequency resolution.


Example
different size windows
(four frequencies, non-stationary)
Example (contd)
( , )
u
f
STFT t u
'
( , )
u
f
STFT t u
'
scaled: t/20
Example (contd)
( , )
u
f
STFT t u
'
( , )
u
f
STFT t u
'
scaled: t/20
Multiresolution Analysis
The issue of choosing the right window size in
STFT leads to the idea of analyzing a signal using
windows of different size!

This is called multi-scale or multi-resolution
analysis which is the core of wavelets.



Multiresolution Analysis (contd)
Many signals or images contain features at various
levels of detail (i.e., scales).
Small size objects should
be examined at a high
resolution.

Large size objects should
be examined at a low
resolution.

Heisenberg (or Uncertainty) Principle
t 4
1
> A A f t
Time resolution: How well
two spikes in time can be
separated from each other in
the transform domain.

Frequency resolution: How
well two spectral components
can be separated from each
other in the transform domain
! t and f cannot bemadearbitrarily small A A
Heisenberg (or Uncertainty) Principle
(contd)
One cannot know the exact time-frequency
representation of a signal.
We cannot precisely know at what time instance a
frequency component is located.
We can only know what interval of frequencies are
present in which time intervals.