资源描述
^.
DSP实验报告
实验三:快速傅里叶变换及其应用
【一】
观察高斯序列的时域和幅频特性,固定信号Xa(n)中参数p = 8,改变q的值,使p分别等于2、4、8,观察他们的时域和幅频特性,了解当q取不同的值是,对信号序列的时域和幅频特性的影响;固定q = 8,改变p,使p分别等于8、13、14,观察参数p变化对信号序列的时域和幅频特性的影响,注意p等于多少是,会发生明显的泄漏现象,混叠是否也随之出现?记录实验中观察到的现象,绘出相应的时域序列和幅频特性曲线。
1、P = 8,q = 2、4、8的高斯序列的时域及幅频特性为
程序代码:>> n = 0:15;
p1 = 8;
p2 = 13;
p3 = 14;
q1 = 2;
q2 = 4;
q3 = 8;
x1 = exp(-(n-p1).*(n-p1)/q1);
x2 = exp(-(n-p1).*(n-p1)/q2);
x3 = exp(-(n-p1).*(n-p1)/q3);
x1w = fft(x1);
x2w = fft(x2);
x3w = fft(x3);
subplot(3,2,1);
stem(x1);
subplot(3,2,2);
stem(abs(x1w));
subplot(3,2,3);
stem(x2);
subplot(3,2,4);
stem(abs(x2w));
subplot(3,2,5);
stem(x3);
subplot(3,2,6);
stem(abs(x3w));
结果分析:当P不变时,随着Q的增大,信号时域波形变化变缓,波形变“胖”,信号频域低频分量增加,泄漏减小。
2、q = 8,p = 8、13、14时的高斯序列时域及幅频特性
程序代码为:>> n = 0:15;
p1 = 8;
p2 = 13;
p3 = 14;
q1 = 2;
q2 = 4;
q3 = 8;
x1 = exp(-(n-p1).*(n-p1)/q3);
x2 = exp(-(n-p2).*(n-p2)/q3);
x3 = exp(-(n-p3).*(n-p3)/q3);
x1w = fft(x1);
x2w = fft(x2);
x3w = fft(x3);
subplot(3,2,1);
stem(x1);
subplot(3,2,2);
stem(abs(x1w));
subplot(3,2,3);
stem(x2);
subplot(3,2,4);
stem(abs(x2w));
subplot(3,2,5);
stem(x3);
subplot(3,2,6);
stem(abs(x3w));
结果分析:Q不变,P增大时,信号时域波形形状不变,在时间上产生了平移,当P = 13时产生明显泄漏。
【二】观察三角波和反三角波序列的时域和幅频特性,用N = 8点FFT分析信号序列Xc(n)和Xd(n)的幅频特性,观察两者的序列形状和频谱曲线有什么异同?绘出两序列及其幅频特性曲线。
程序代码:
>> for i=1:4 ;
x(i)=i-1;
end
for i=5:8
x(i)=9-i;
end
for j = 1:4;
y(j) = 5-j;
end
for j = 5:8
y(j) = j-3;
end
n=0:7;
subplot(2,2,1);
plot(n,x(1:8));
subplot(2,2,2);
G=fft(x,8);
plot(n(1:8),abs(G(1:8)));
subplot(2,2,3);
plot(n,y(1:8));
subplot(2,2,4);
H=fft(y,8);
plot(n(1:8),abs(H(1:8)));
在Xc(n)和Xd(n)末尾补零,用N = 32点FFT分析这两个信号的幅频特性,观察幅频特性发生了什么变化?两种情况下的FFT频谱还有相同之处吗?这些变化说明了什么?
程序代码:
>> for i=1:4 ;
x(i)=i-1;
end
for i=5:8
x(i)=9-i;
end
for i=9:32
x(i) = 0;
end
for j = 1:4;
y(j) = 5-j;
end
for j = 5:8
y(j) = j-3;
end
for j = 9:32
y(j) = 0;
end
n=0:31;
subplot(2,2,1);
plot(n,x(1:32));
subplot(2,2,2);
G=fft(x,32);
plot(n(1:32),abs(G(1:32)));
subplot(2,2,3);
plot(n,y(1:32));
subplot(2,2,4);
H=fft(y,32);
plot(n(1:32),abs(H(1:32)));
结果分析:
三角波的幅频特性没有明显的变化,但反三角波的幅频特性产生了较多的低频分量
【三】产生一512点的随机序列Xc(n),并用Xc(n)和Xc(n)作线性卷积,观察卷积后Xc(n)频谱的变化,要求将Xc(n)分成8段,分别采用重叠相加法和重叠保留法。
重叠相加法:
重叠保留法:
实验代码:
>> xe=rand(1,512);
n1=0:1:3;
xc1=n1;
n2=4:7;
xc2=8-n2;
xc=[xc1,xc2];
yn=zeros(1,519);
for j=0:7
xj=xe(64*j+1:64*(j+1));
xak=fft(xj,71);
xck=fft(xc,71);
yn1=ifft(xak.*xck);
temp=zeros(1,519);
temp(64*j+1:64*j+71)=yn1;
yn=yn+temp;
end;
n=0:518;
figure(1)
subplot(2,1,1);
plot(n,yn);
xlabel(n);
ylabel(y(n));
subplot(2,1,2);
plot(n,abs(fft(yn)));
xlabel(k);
ylabel(Y(k));
axis([0,600,0,300]);
xe=rand(1,512);
k=1:7;
xe1=k-k;
xe_1=[xe1,xe];
yn_1=zeros(1,519);
for j=0:7
xj_1=xe_1(64*j+1:64*j+71);
xak_1=fft(xj_1);
xck_1=fft(xc,71);
yn1_1=ifft(xak_1.*xck_1);
temp_1=zeros(1,519);
temp_1(64*j+1:64*j+64)=yn1_1(8:71);
yn_1=yn_1+temp_1;
end
n = 0:518;
figure(2);
subplot(2,1,1);
plot(n,yn_1);
xlabel(n);
ylabel(y(n));
subplot(2,1,2);
plot(n,abs(fft(yn_1)));
xlabel(k);
ylabel(Y(k));
axis([0,600,0,300]);
结果分析:两种方法得到的卷积后随机序列的频谱都相较于原序列频谱的低频高频得到了加强,而中频得到了减弱。
【四】用FFT分别计算Xa(n)(p = 8,q = 2)和Xb(n)(a = 0.1,f = 0.0625)的自相关函数。
实验结果:
程序代码:
>> n=0:1:15;
xan=exp(-(n-8).^2/2);
xbn = exp(-0.1*n).*sin(2*pi*0.625*n);
k=length(xan);
l=length(xbn);
xak=fft(xan,2*k);
xbk = fft(xbn,2*l);
rm1=real(ifft(conj(xak).*xak));
rm1=[rm1(k+2:2*k) rm1(1:k)];
m1=(-k+1):(k-1);
stem(rm1);
rm2=real(ifft(conj(xbk).*xbk));
rm2=[rm2(k+2:2*l) rm2(1:l)];
m2=(-l+1):(l-1);
subplot(2,1,1);
stem(m1,rm1);
subplot(2,1,2);
stem(m2,rm2);
展开阅读全文
相关搜索