数字信号处理实验五 谱分析 哈工程.docx
《数字信号处理实验五 谱分析 哈工程.docx》由会员分享,可在线阅读,更多相关《数字信号处理实验五 谱分析 哈工程.docx(30页珍藏版)》请在冰豆网上搜索。
![数字信号处理实验五 谱分析 哈工程.docx](https://file1.bdocx.com/fileroot1/2023-1/31/b7ba879d-769d-4a2b-9abd-c6c61cc9a937/b7ba879d-769d-4a2b-9abd-c6c61cc9a9371.gif)
数字信号处理实验五谱分析哈工程
实验五谱分析
一,试验目的:
1研究不同类型的窗函数,研究一些不同的方法来测试窗的性能;
2专注于有关窄带信号的几个不同的情形。
二,实验原理
信号是无限长的,而在进行信号处理时只能采用有限长信号,所以需要将窄带信号“截断”。
在信号处理中,“截断”被看成是用一个有限长的“窗口”看无限长的信倍号,或者从分析的角度是无限长的信号x(t)乘以有限长的窗函数w(t),由傅立叶变换性质可知:
x(t)w(t)==1/2πX(jw)W(jw)
如果x(t)是频带有限信号,而w(t)是频带无限函数,截断后的信号也必是频带无限信号,从而产生所谓的频谱泄露。
频谱泄露是不可避免的,但是尽量减小,因此设计了不同的窗函数满足不同的要求。
从能量的角度,频谱泄露也是能量泄露,因为加窗后,是原来的信号集中在宅频带内的能量分散到无限的频带范围。
三,实验内容
1.用MATLAB编程绘制各种窗函数的形状
(1)矩形窗
程序
N=20;
w=boxcar(N);
nn=0:
N-1;
plot(nn,w)
(2)汉宁窗
程序
N=20;
w=hanning(N);
nn=0:
N-1;
plot(nn,w)
(3)汉明窗
程序
N=20;
w=hamming(N);
nn=0:
N-1;
plot(nn,w)
(4)巴特利特窗
程序N=20;
w=bartlett(N);
nn=0:
N-1;
plot(nn,w)
(5)布莱克曼窗
程序N=20;
w=blackman(N);
nn=0:
N-1;
plot(nn,w)
(6)Triang窗
程序N=20;
w=triang(N);
nn=0:
N-1;
plot(nn,w)
(7)Kaiser窗
程序N=20;
w=kaiser(N,10);
nn=0:
N-1;
plot(nn,w)
(8)切比雪夫窗
程序N=20;
w=chebwin(N,30);
nn=0:
N-1;
plot(nn,w)
2,用MATLAB编程绘制各种窗函数的形状及其幅度响应。
(1)矩形窗
N=20;
w=boxcar(N);
[H,W]=dtft(w,512);
subplot(111),plot(W/2/pi,20*log(abs(H)));
grid,title('MAGNITUDERESPONSE')
xlabel('NORMALIZEDFREQUENCY'),ylabel('|H(w)|/dB')
(2)汉宁窗
N=20;
w=hanning(N);
[H,W]=dtft(w,512);
subplot(111),plot(W/2/pi,20*log(abs(H)));
grid,title('MAGNITUDERESPONSE')
xlabel('NORMALIZEDFREQUENCY'),ylabel('|H(w)|/dB')
(3)汉明窗
N=20;
w=hamming(N);
[H,W]=dtft(w,512);
subplot(111),plot(W/2/pi,20*log(abs(H)));
grid,title('MAGNITUDERESPONSE')
xlabel('NORMALIZEDFREQUENCY'),ylabel('|H(w)|/dB')
(4)巴特利特窗
N=20;
w=bartlett(N);
[H,W]=dtft(w,512);
subplot(111),plot(W/2/pi,20*log(abs(H)));
grid,title('MAGNITUDERESPONSE')
xlabel('NORMALIZEDFREQUENCY'),ylabel('|H(w)|/dB')
(5)布莱克曼窗
N=20;
w=blackman(N);
[H,W]=dtft(w,512);
subplot(111),plot(W/2/pi,20*log(abs(H)));
grid,title('MAGNITUDERESPONSE')
xlabel('NORMALIZEDFREQUENCY'),ylabel('|H(w)|/dB')
(6)Triang窗
N=20;
w=triang(N);
[H,W]=dtft(w,512);
subplot(111),plot(W/2/pi,20*log(abs(H)));
grid,title('MAGNITUDERESPONSE')
xlabel('NORMALIZEDFREQUENCY'),ylabel('|H(w)|/dB')
(7)Kaiser窗
N=20;
w=kaiser(N,10);
[H,W]=dtft(w,512);
subplot(111),plot(W/2/pi,20*log(abs(H)));
grid,title('MAGNITUDERESPONSE')
xlabel('NORMALIZEDFREQUENCY'),ylabel('|H(w)|/dB')
(8)切比雪夫窗
N=20;
w=chebwin(N,30);
[H,W]=dtft(w,512);
subplot(111),plot(W/2/pi,20*log(abs(H)));
grid,title('MAGNITUDERESPONSE')
xlabel('NORMALIZEDFREQUENCY'),ylabel('|H(w)|/dB')
3,绘制矩形窗的幅频响应,窗长度分别为:
N=10,N=20,N=50,N=100。
N=10;
当N=10时
N=10;
w=boxcar(N);
[H,W]=dtft(w,512);
subplot(111),plot(W/2/pi,20*log(abs(H)));
grid,title('MAGNITUDERESPONSE')
xlabel('NORMALIZEDFREQUENCY'),ylabel('|H(w)|/dB')
当N=20时
N=20;
w=boxcar(N);
[H,W]=dtft(w,512);
subplot(111),plot(W/2/pi,20*log(abs(H)));
grid,title('MAGNITUDERESPONSE')
xlabel('NORMALIZEDFREQUENCY'),ylabel('|H(w)|/dB')
当N=50时
N=50;
w=boxcar(N);
[H,W]=dtft(w,512);
subplot(111),plot(W/2/pi,20*log(abs(H)));
grid,title('MAGNITUDERESPONSE')
xlabel('NORMALIZEDFREQUENCY'),ylabel('|H(w)|/dB')
当N=100时
N=100;
w=boxcar(N);
[H,W]=dtft(w,512);
subplot(111),plot(W/2/pi,20*log(abs(H)));
grid,title('MAGNITUDERESPONSE')
xlabel('NORMALIZEDFREQUENCY'),ylabel('|H(w)|/dB')
4,已知周期信号x(t)=0.75+3.4cos2*pi*f*t+2.7cos4*pi*f*t+1.5sin3.5*pi*f*t+2.5sin7*pi*f*t,其中f=(25/16)Hz,若截断时间长度分别为信号周期的0.9倍和1.1倍,试绘制和比较采用下面窗函数提取的x(t)的频谱。
(1)矩形窗
fs=10;
Tp=2.56;
f=25/16;
N=0.9*Tp*fs;
n=[0:
N-1];
w=boxcar(N);
x=0.75+3.4*cos(2*pi*f*n/fs)+2.7*cos(4*pi*f*n/fs)+1.5*sin(3.5*pi*f*n/fs)+2.5*sin(7*pi*f*n/fs);
y=w.*x';
[H,W]=dtft(y,1024);
subplot(111),plot(W/2/pi,20*log(abs(H)));
grid,title('MAGNITUDERESPONSE')
xlabel('NORMALIZEDFREQUENCY'),ylabel('|H(w)|/dB')
N=1.1*Tp*fs时
(2)汉宁窗
fs=10;
Tp=2.56;
f=25/16;
N=0.9*Tp*fs;
n=[0:
N-1];
w=hanning(N);
x=0.75+3.4*cos(2*pi*f*n/fs)+2.7*cos(4*pi*f*n/fs)+1.5*sin(3.5*pi*f*n/fs)+2.5*sin(7*pi*f*n/fs);
y=w.*x';
[H,W]=dtft(y,1024);
subplot(111),plot(W/2/pi,20*log(abs(H)));
grid,title('MAGNITUDERESPONSE')
xlabel('NORMALIZEDFREQUENCY'),ylabel('|H(w)|/dB')
N=1.1*Tp*fs时
(3)汉明窗
fs=10;
Tp=2.56;
f=25/16;
N=0.9*Tp*fs;
n=[0:
N-1];
w=hamming(N);
x=0.75+3.4*cos(2*pi*f*n/fs)+2.7*cos(4*pi*f*n/fs)+1.5*sin(3.5*pi*f*n/fs)+2.5*sin(7*pi*f*n/fs);
y=w.*x';
[H,W]=dtft(y,1024);
subplot(111),plot(W/2/pi,20*log(abs(H)));
grid,title('MAGNITUDERESPONSE')
xlabel('NORMALIZEDFREQUENCY'),ylabel('|H(w)|/dB')
N=1.1*Tp*fs时
(4)巴特利特窗
fs=10;
Tp=2.56;
f=25/16;
N=0.9*Tp*fs;
n=[0:
N-1];
w=bartlett(N);
x=0.75+3.4*cos(2*pi*f*n/fs)+2.7*cos(4*pi*f*n/fs)+1.5*sin(3.5*pi*f*n/fs)+2.5*sin(7*pi*f*n/fs);
y=w.*x';
[H,W]=dtft(y,1024);
subplot(111),plot(W/2/pi,20*log(abs(H)));
grid,title('MAGNITUDERESPONSE')
xlabel('NORMALIZEDFREQUENCY'),ylabel('|H(w)|/dB')
N=1.1*Tp*fs时
(5)布莱克曼窗
fs=10;
Tp=2.56;
f=25/16;
N=0.9*Tp*fs;
n=[0:
N-1];
w=blackman(N);
x=0.75+3.4*cos(2*pi*f*n/fs)+2.7*cos(4*pi*f*n/fs)+1.5*sin(3.5*pi*f*n/fs)+2.5*sin(7*pi*f*n/fs);
y=w.*x';
[H,W]=dtft(y,1024);
subplot(111),plot(W/2/pi,20*log(abs(H)));
grid,title('MAGNITUDERESPONSE')
xlabel('NORMALIZEDFREQUENCY'),ylabel('|H(w)|/dB')
N=1.1*Tp*fs时
(6)Triang窗
fs=10;
Tp=2.56;
f=25/16;
N=0.9*Tp*fs;
n=[0:
N-1];
w=triang(N);
x=0.75+3.4*cos(2*pi*f*n/fs)+2.7*cos(4*pi*f*n/fs)+1.5*sin(3.5*pi*f*n/fs)+2.5*sin(7*pi*f*n/fs);
y=w.*x';
[H,W]=dtft(y,1024);
subplot(111),plot(W/2/pi,20*log(abs(H)));
grid,title('MAGNITUDERESPONSE')
xlabel('NORMALIZEDFREQUENCY'),ylabel('|H(w)|/dB')
N=1.1*Tp*fs时
(7)Kaiser窗
fs=10;
Tp=2.56;
f=25/16;
N=0.9*Tp*fs;
n=[0:
N-1];
w=kaiser(N,10);
x=0.75+3.4*cos(2*pi*f*n/fs)+2.7*cos(4*pi*f*n/fs)+1.5*sin(3.5*pi*f*n/fs)+2.5*sin(7*pi*f*n/fs);
y=w.*x';
[H,W]=dtft(y,1024);
subplot(111),plot(W/2/pi,20*log(abs(H)));
grid,title('MAGNITUDERESPONSE')
xlabel('NORMALIZEDFREQUENCY'),ylabel('|H(w)|/dB')
N=1.1*Tp*fs时
(8)切比雪夫窗
fs=10;
Tp=2.56;
f=25/16;
N=0.9*Tp*fs;
n=[0:
N-1];
w=chebwin(N,30);
x=0.75+3.4*cos(2*pi*f*n/fs)+2.7*cos(4*pi*f*n/fs)+1.5*sin(3.5*pi*f*n/fs)+2.5*sin(7*pi*f*n/fs);
y=w.*x';
[H,W]=dtft(y,1024);
subplot(111),plot(W/2/pi,20*log(abs(H)));
grid,title('MAGNITUDERESPONSE')
xlabel('NORMALIZEDFREQUENCY'),ylabel('|H(w)|/dB')
N=1.1*Tp*fs时