FFT变换之前,非平稳数据怎么去趋势项,急啊!
大家好:最近在做一些数据处理工作,就是把时域的采样数据转化为频域数据,可是这些数据本身就是非平稳数据。
那么怎么去掉非平稳数据的趋势项呢?比如,设数据的周期为T,一个周期包含N个数据,共采样M个周期,总的数据量为N*M个,采样足够多,帖子里有人提到用最小二乘法或者高通滤波来求趋势项,可是怎么具体怎么做呢?希望有人能帮忙解答,最好给个例子。 在论坛里搜索了一下,用MATLAB程序可以实现趋势项的处理
http://forum.vibunion.com/viewthread.php?tid=47811&extra=page%3D3%26amp%3Bfilter%3Dtype%26amp%3Btypeid%3D192
问题是:我现在用的是FORTRAN,要自己编程实现趋势项处理,FORTRAN里好像没有相关的吧?所以想搞清楚去除趋势项的基本原理,希望大家赶快给予帮助! 不知道现在还在不在弄,先要分清楚趋势主要有什么趋势项,然后再针对性地去除,一般的话就是去掉直流偏置,然后做下高通滤波去掉低于采样率的低频成分,线性趋势的话可以用线性拟合的方式去除,然后有些非线性的,我自己是用EMD算法去的,效果还行,就是计算量大一点。 刚接触EMD感觉复杂{:{28}:} 回复 3 # 渠爷 的帖子
我的问题可能要用高通滤波去掉,这个工作已经做过,尝试了几种高通滤波方法,非线性问题这个倒是没有注意到,EMD算法还没有接触过,我试着看看。谢谢 建议你看看这个,里面有个omega算法,其实就是fft逆变换,一开始对时域信号进行滤波和去DC之后fft再对频域进行积分。blog.prosig.com 编辑滤波器,这个要按照你自己的要求了。 回复 6 # 渠爷 的帖子
好的,谢谢。
页:
[1]