我有一个带有不需要的振荡载波的信号,如蓝色曲线所示。我做了一个低通滤波器(五阶巴特沃斯)并应用了filtfilt
函数,低滤波输出是红色曲线。
[b,a] = butter(5,.7);
y = filtfilt(b,a,y);
从 x 值 500 到结束的红色曲线正是我想要的,但是初始振荡仍然存在。似乎过滤器函数试图匹配过滤器输入和输出的初始/结束值,因此振荡保留。有没有办法使初始值不匹配,这样我就可以获得平滑的输出而没有任何振荡?
更新:我认为我的问题不清楚。我想要黑色曲线(手绘)之类的东西:完全消除振荡,并且不匹配初始值。我怎样才能做到这一点?