【发布时间】:2014-02-18 21:36:12
【问题描述】:
根据卷积定理,时域中的卷积是fft域中的乘积。使用正确的零填充,它可以工作:
% convolution in time domain
a = [1 2 3];
b = [4 5 6];
c = conv(a,b);
a_padded=[a 0 0]; b_padded=[b 0 0];
c_bis=ifft(fft(a_padded).*fft(b_padded));
% we do find c_bis=c
但是,这个定理也可以反过来工作,时域中的乘积是 fft 域中的卷积。我不明白这部分:
d = a.*b;
D=conv(fft(a_padded),fft(b_padded));
d_bis=ifft(D);
这给出了 d_bis 的复向量。 如何使用频域中的卷积来逆时域中的逐点乘积?
【问题讨论】:
标签: matlab fft convolution dft ifft