发布时间 : 星期五 文章用FFT实现快速卷积更新完毕开始阅读a9cceeefb4daa58da1114aaa
实验六 利用FFT实现快速卷积
一、实验目的
1.加深理解FFT在实现数字滤波(或快速卷积)中的重要作用,更好地利用FFT进行数字信号处理。
2.进一步掌握圆周卷积和线性卷积两者之间的关系。
二、实验原理
三、实验内容
通用程序:
function yn=FFT(xn,hn) N1=length(xn); N2=length(hn); N=N1+N2-1; XK=fft(xn,N); HK=fft(hn,N); YK=XK.*HK; yn=ifft(YK,N);
if all(imag(xn)==0)&&(all(imag(hn)==0)) yn=real(yn);
end (1)N = 8;
x=[2,1,1,2]; h=[1,-1,-1,1]; XK=fft(x,N); HK=fft(h,N); YK=XK.*HK; yn=ifft(YK,N);
if all(imag(x)==0)&(all(imag(h)==0)) yn=real(yn); end
y=conv(x,h);
subplot(2,1,1); stem(y); title('时域');
subplot(2,1,2); stem(yn,'.'); title('FFT');
(2)将xn,hn分别代入yn=FFT(xn,hn)中即可得出: