rockzone 发表于 2007-10-23 19:49

滤波后正弦波如何提取任意时间段内的数据进行FFT运算?

clf;
N=8;
Wo=200;
=besself(N,Wo);
=freqs(b,a);
magH=abs(H);
dt=0.01;
t=0:dt:3;
x1=cos(2*pi*2*t);
H=;
=lsim(H,x1,t);
figure(1)
stem(t1,y1)

以上是一段简单的滤波程序。

滤波后的信号y1,我想提取这3秒内的任意一秒做FFT,请问我应该如何处理?

花如月 发表于 2007-10-23 20:38

使用冒号运算符既可,论坛有过讨论。下次问的时候先搜索一下

rockzone 发表于 2007-10-23 22:21

我希望能用窗函数来做这件事,如何实现?
比如矩形窗。

[ 本帖最后由 eight 于 2007-10-23 22:37 编辑 ]

eight 发表于 2007-10-23 22:37

原帖由 rockzone 于 2007-10-23 22:21 发表 http://www.chinavib.com/forum/images/common/back.gif
我希望能用窗函数来做这件事,如何实现?
比如矩形窗。

我记得不久前才提示过如何使用矩形窗,你搜索一下论坛吧

rockzone 发表于 2007-10-24 11:37

QQ

clf;
N=3;
Wo=200;
=besself(N,Wo);
=freqs(b,a);
magH=abs(H);
dt=0.001;
t=0:dt:2;
x1=cos(2*pi*2*t);
H=;
=lsim(H,x1,t);
figure(1)
plot(t1,y1);title('滤波后余弦波信号')

%运行到下面的语句总是提示时间矩阵不对。怎么修改呢?

ya=y1.*hamming(length(t1))';%海明窗
yb=y1.*hanning(length(t1))';%汉宁窗
yc=y1.*kaiser(length(t1))';%凯赛窗
yd=y1.*boxcar(length(t1))';%矩形窗
figure(2)
subplot(2,2,1),plot(t1,ya),title('海明窗')
subplot(2,2,2),plot(t1,yb),title('汉宁窗')
subplot(2,2,3),plot(t1,yc),title('凯赛窗')
subplot(2,2,4),plot(t1,yd),title('矩形窗')

花如月 发表于 2007-10-24 12:50

程序是你自己写得么?维数不匹配,只是多了一个运算符。自己修改吧,再遇到这样的问题,去置顶帖子里找答案吧

rockzone 发表于 2007-10-24 13:15

ok

多了一个点。

花如月 发表于 2007-10-24 13:17

回复 #7 rockzone 的帖子

因此我怀疑代码并非你自己所写
页: [1]
查看完整版本: 滤波后正弦波如何提取任意时间段内的数据进行FFT运算?