adv dsp spring-2015 lecture#10 spectrum estimation
TRANSCRIPT
Adv DSPSpring-2015
Lecture#10Spectrum Estimation
Introduction Spectrum Estimation: To estimate the power
spectral density (PSD) of WSS random process. PSD is the DTFT of the autocorrelation
sequence. Estimating the power spectrum is equivalent to
estimating the autocorrelation.
Introduction The autocorrelation is generally estimated by using
If x[n] is known for all ‘n’, then power spectrum estimation is straight forward
Determine autocorrelation sequence above and then compute its Fourier transform.
Two problems with this: The amount of data is never unlimited , in many cases very
small Data is often corrupted by noise
Introduction Spectrum estimation is the problem that involves
estimating Px(ejw) from a finite number of noisy measurement of x[n].
Spectrum estimation is a problem that is important in a variety of different fields and applications.
Applications: Optimum Filter design, Signal Detection & Tracking, Harmonic Analysis & Prediction, Spectral Smoothing, Beamforming & Direction Finding,
Techniques for Spectrum Estimation Classical or Non-parametric Approach
Estimating the autocorrelation sequence from given set of data.
Power Spectrum is then obtained by Fourier transforming the estimated autocorrelation.
Non-Classical or Parametric Approach Based on using a model for the process to estimate
the power spectrum. AR, MA or ARMA Models
Techniques for Spectrum Estimation
Power Spectral Density
Non-Parametric Methods Based on the idea of estimating the autocorrelation
sequence of a random process from a set of measured data.
Take the Fourier transform to obtain an estimate of the power spectrum.
Periodogram (1898) Easy to compute. Limited in its ability to produce an accurate estimate of the power
spectrum, particularly for short data records. Modification to Periodogram to improve its statistical
properties Modified periodogram method, Bartlett’s method, Welch’s
method, Blackman-Tukey method.
The Periodogram The power spectrum of WSS random process is the
Fourier transform of the autocorrelation sequence:
Spectrum estimation Autocorrelation estimation problem
Autocorrelation sequence for an unlimited amount of data can be estimated using the time average:
The Periodogram If x[n] is only measured over a finite interval, say n=0,1,….,N-1 ,
then we can estimate the autocorrelation sequence using:
In order to ensure that the values of x[n] that fall outside the interval [0,N-1] are excluded, we can write:
0)(ˆ ||
)(ˆ)(ˆ ,0 *
krNk
krkrk
x
xx
The Periodogram Taking the Fourier transform of the autocorrelation
sequence gave us the Periodogram.
Next we will represent the Periodogram directly in terms of the process x[n].
Let xN[n] be the finite length signal of length ‘N’ that is equal to x[n] over the interval [0,N-1] and is zero otherwise:
The Periodogram Thus, xN[n] is the product of x[n] with rectangular window
wR[n],
In term of xN[n] , the estimated autocorrelation sequence may be written as follows:
Taking the Fourier transform and using convolution theorem, the Periodogram becomes:
The Periodogram XN(ejw) is the DTFT of the N-point data
sequence xN[n],
Thus, the Periodogram is proportional to the squared magnitude of DTFT of xN[n], and may be easily computed using a DFT (FFT) as follows,
Example 8.2.1: Periodogram of White Noise
If x[n] is the white noise with variance σx2
Thus the power spectrum should be constant. Consider a sample realization of white noise of unite
variance and N=32
2
2
)(
)()(
xjw
x
xx
eP
kkr
Example 8.2.1: Periodogram of a White Noise
Sample realization
Estimated autocorrelation sequence
Periodogram
White Noise in Matlab rand( ) : Uniformly distributed white noise
with unit variance. randn( ): Gaussian Distributed white noise
with unit variance.
Example: The Periodogram
Matlab Codeclear all;close all;A=1;N=100;fs=0.3;
n=1:N;rn=randn(1,N);phi=2*pi*rand(1,N);x=A.*exp(j*2*pi*fs*n+phi)+rn;Px=abs(fft(x,1024)).^2/length(n);w=2.*pi.*[0:1023]./1024;plot(w./(2*pi),Px)xlabel('\bf Normalized Frequency')ylabel('\bf Periodogram')Title('\bf [A=1,N=100]')
Matlab Function can also be used directly: periodogram ( )
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10
1
2
3
4
5
6
7
8x 10
5
Normalized Frequency
Per
iod
og
ram
[A=1,N=100]
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10
1
2
3
4
5
6
7x 10
6
Normalized Frequency
Per
iod
og
ram
[A=1,N=1000]
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10
1
2
3
4
5
6
7x 10
6
Normalized Frequency
Per
iod
og
ram
[A=1,N=10000]
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10
1
2
3
4
5
6
7
Normalized Frequency
Per
iod
og
ram
[A=0.001,N=100]
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10
1
2
3
4
5
6
7
8
9
10
Normalized Frequency
Per
iod
og
ram
[A=0.001,N=1000]
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10
0.1
0.2
0.3
0.4
0.5
0.6
0.7
Normalized Frequency
Per
iod
og
ram
[A=0.001,N=10000]
A=1
A=0.001
N=100 N=1000 N=10000
Modified Periodogram The Periodogram is proportional to the squared
magnitude of the Fourier transform of the windowed signal, i.e. xN[n]=x[n]wR[n]
Instead of applying a rectangular window , the above equation suggests the possibility of using other data windows.
Modified Periodogram Amount of smoothing in the Periodogram is
determined by the window that is applied to the data.
A rectangular window has a narrow main lobe compared to other windows, and therefore produces the least amount of spectral smoothing, it has relatively large side lobes that may lead to masking of weak narrowband components.
Rectangular Window DTFT amplitude‘M’ is the length
Example: Two sinusoid in White Noise Rectangular Window (Narrow main lobe High
Resolution, large side lobes) Hamming Window (Wide main lobe, Less
Resolution, Small side lobes)
Example: Two sinusoid in White Noise
Example: Two sinusoid in White Noise Rectangular window: Sinusoid at frequency w1 is
almost completely masked by the side lobes of the window at frequency w2.
Hamming window: The sinusoid at w1 is clearly visible. This is due to smaller side lobes of a Hamming window
Reduction in the side lobe amplitude comes at the expense of an increase in the width of main lobe, which in turn, effects the resolution.
Modified Periodogram The Periodogram of a process that is windowed
with a general window w[n] is called a “Modified Periodogram”.
“N” is the length of window“U” is the constant given by
Modified Periodogram
Matlab Function : periodogram ( ) has a window as an input parameterMatlab has functions to generate the above mentioned windows
Matlab Window Functions Rectangular: rectwin ( n) Hanning: hanning (n ) Hamming: hamming (n ) Blackman: blackman (n) Bartlett: bartlett(n )
0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 10
2
4
6
8
10
12
14x 10
4
Normalized Frequency
Per
iod
og
ram
[A=1,N=100]
Rectangular
Hamming
HanningBartlett
Blackman
0.2 0.22 0.24 0.26 0.28 0.3 0.32 0.34 0.36 0.38-0.5
0
0.5
1
1.5
2
2.5
3
x 104
Normalized Frequency
Per
iod
og
ram
[A=1,N=100]
Rectangular
Hamming
HanningBartlett
Blackman
Rectangular window has the best resolution