Oboyer 发表于 2012-3-3 10:03

如何在频域中加矩形窗?求指导!

本帖最后由 Oboyer 于 2012-3-3 14:31 编辑

N=4096;
t=-N+1:N-1;
Fs=4096;fm1=8;fm2=4;fm3=6;
y=cos(2*pi*fm1/Fs*t)+cos(2*pi*fm2/Fs*t)+cos(2*pi*fm3/Fs*t);
y2 = y(1:2*N-1);
win=rectwin(N)';
winn = conv(win,win);
win2 = winn/sum(winn);%窗归1
y22= y2.*win2;
y222=y22(N:end)+;%构成长N的FFT输入数据
y2_fft = fft(y222);

以上是在时域加窗然后做FFT的过程,由于工程需要,现在我尝试先做FFT然后再在频域加窗,我自己改的程序如下:

N=4096;
t=-N+1:N-1;
Fs=4096;fm1=8;fm2=4;fm3=6;
y=cos(2*pi*fm1/Fs*t)+cos(2*pi*fm2/Fs*t)+cos(2*pi*fm3/Fs*t);
y2 = y(1:2*N-1);
y2_fft = fft(y2);
win=rectwin(N)';
winn = conv(win,win);
win2 = winn/sum(winn);%窗归1
y22= y2_fft.*win2;
y222=y22(N:end)+;%构成长N的FFT输入数据

但是我改的程序运行得到的结果不对,不大明白哪里错了,求各位大虾指教!!!
页: [1]
查看完整版本: 如何在频域中加矩形窗?求指导!