1、DSP实验六报告DSP第六次实验报告一、 实验内容:一、频域抽样定理的验证 给定信号 。 1利用DTFT计算信号的频谱,一个周期内角频率离散为M=1024点,画出频谱图,标明坐标轴。2分别对信号的频谱在区间上等间隔抽样16点和32点,得到和。离散傅里叶反变换后得到时域信号和。3画出信号和的图形,计算与和的均方误差。从时域角度上进行对比和分析,验证频域抽样定理。4利用内插公式,由和分别得到的估计值,计算均方误差,从频域角度验证频率抽样定理。二、音频信号处理1、语音信号的采集利用Windows 附件中的录音机,录制一段自己的话音,时间在1 s内。在Matlab软件平台下,利用函数wavread对语
2、音信号进行采样,记住采样频率和采样点数。通过wavread函数的使用,理解采样频率、采样点数等概念。2、语音信号的频谱分析画出语音信号的时域波形,然后对语音号进行快速傅里叶变换,原始模拟信号的频谱特性,画出频谱图,标注坐标轴。3、用滤波器对信号进行滤波在离散时间域,使信号通过冲激响应为的低通滤波器,得到系统的输出。4、比较滤波前后语音信号的波形及频谱画出滤波前后的时域波形及频谱,进行比较。5、回放语音信号在Matlab中,函数sound可以对声音进行回放,调用格式:sound(x,fs,bits),感受滤波前后的声音的变化。二、 编程原理、思路和公式实验一(1)表示出来时域信号,用公式编写子程
3、序DTFT,调用子函数求解.(2)利用w=(2*pik)/N,以及离散傅里叶反变换x(n)=IDFTX(k)=,编写子程序idft,调用恢复和。(3)由公式B=B+(abs(x1(k)-x(k)2;其中x1(k)分别为和。(4)利用内插公式,其中 恢复之后计算和的方差实验二(1) 利用z1,fs,bits=wavread(I:hhxx.wav);调用应经存在I盘的录音hhxx。(2) Y1=fft(y1);计算语音信号的频谱特性(3) 利用z2=conv(y1,h);计算语音信号和h的卷积,得到滤波后时域波形。(4) 在此调用fft计算滤波后的频谱特性三、程序脚本,并注释实验一(1)clc;c
4、lear alln=0:31;n1=0;n2=31;n11=0:13;x1=n11+1;%时域信号第一段n22=14:26;x2=27-n22;%时域信号第二段n33=27:31;x3=zeros(1,length(n33);%时域信号第三段x=x1,x2,x3;%表示的时域信号M=1024;w=-pi:2*pi/M:pi;X = dtft2(x,n1,n2,M);%调用子函数计算X=abs(X);figure(1)plot(w,X);xlabel(w);ylabel(X);实验一(2)(3)clc;clear alln=0:31;n1=0;n2=31;n11=0:13;x1=n11+1;n2
5、2=14:26;x2=27-n22;n33=27:31;x3=zeros(1,length(n33);x=x1,x2,x3;M=16;X,w = dtft2( x,n1,n2,M);k=w*M/(2*pi);%频域进行32点抽样magX=abs(X);x1,nx1=IDFT(X,k);%调用IDFT的到figure(2)subplot(211);stem(nx1,abs(x1);subplot(212);stem(n,x);x1=x1,zeros(1,16);N=length(x);B=0;for k=1:N B=B+(abs(x1(k)-x(k)2;%计算和x(n)的方差;End E=B/N
6、;同理计算频域16点的抽样,以及回复的和x(n)的方差实验一(4)clc;clear alln=0:31;n1=0;n2=31;n11=0:13;x1=n11+1;n22=14:26;x2=27-n22;n33=27:31;x3=zeros(1,length(n33);x=x1,x2,x3;M=1024;X,w = dtft2( x,n1,n2,M );X=abs(X);figure(1)subplot(211)plot(w,X);xlabel(w rad);ylabel(幅度);title(幅频特性);N=16;k=0:N-1;X1 =dft(x,N);L=1024;for b=0:L-1
7、wn=2*pi*b/L; sum=0; for k1=0:N-1 if sin(wn-(2*pi*k1/N)/2)=0sum=sum+(1/N)*X1(k1+1)*(sin(wn-(2*pi*k1/N)*N/2)/sin(wn-(2*pi*k1/N)/2)*exp(-1j*(N-1)/2*(wn-(2*pi*k1/N); else sum=sum+X1(k1+1); end end Xejw(b+1)=sum;%利用插值定理进行恢复的得到回复的 Xejwendk2=0:L-1;w2=2*pi*k2/L;subplot(212)plot(w2,abs(Xejw)title(16的频域还原)sum
8、1=0;B=0;for k=1:M B=B+(abs(X(k)-abs(Xejw(k)2;%计算恢复后的频域和dtft的频域方差endE=B/M;实验二的程度如下clc;clearz1,fs,bits=wavread(I:hhxx.wav);%调用函数画出时域信号figure(1)plot(z1);title(原始语音信号);y1=z1(1:length(z1);Y1=fft(y1);%直接调用以得到原始频域信号n=0:length(z1)-1; figure(2)plot(n,abs(Y1);title(原始信号的频谱特性);n1=0:31;h=0.5.*(1-cos(2*pi.*n1./3
9、1);%通过系统及时频域卷积z2=conv(y1,h);n2=0:length(z1)+30;figure(3)plot(n2,z2);title(滤波后时域波形);yyy=fft(z2);figure(4)plot(n2,absyyy);title(滤波后频域波形);sound(z1,44100,16);%原来语音sound(z2,44100,16);%滤波后语音四、仿真结果、图形实验一图一是DTFT计算得到的 图二是频域16点抽样恢复的时域序列和原序列的对比(上面是恢复序列) 图三是频域32点抽样恢复的时域序列和原序列的对比图五是频域恢复值和原来频域的对比(下面是16点频域恢复) 图六是频域恢复值和原来频域的对比(下面是32点频域恢复)实验二 图七 图八 图九 图十 五、结果分析和结论实验一计算的时域的反差16点 E= 25.2644二32点4.0178e-028,课件只有频域抽样的点数大于时域长度的时才可以无失真的恢复原来信号;并且频域16点插值抽样后恢复的频域与原来方差 288.1964二32点方差 1.8191e-026几乎为零,再一次验证了频域抽样定理。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1