需要:高峰和线槽算法

J

JimTex

Guest
我正在寻找一个可靠algroithm寻找和表征在时间序列数据的高峰和线槽。我的时间序列相对较短(500-1000点)和主要的波峰和波谷不会重复。请参见所附的图片。感谢吉姆
 
如果样品是小于它的前面的示例,也比未来的样本较小,那么这个样品是一个低谷。可以形成一个类似的逻辑,找到峰。
 
你低通数据第一,否则你将得到太多虚假的低谷,这里是一个示例脚本我扔在一起:[= 2] [颜色=#999999]加入后8秒:[/彩色] [/SIZE]%创建一个信号,它看起来有点像您这样的吨= 1:1000;噪声= randn(1,长度(信号));信号= 10 *罪(0.02 * T)+ 4 *罪(0.05 * T)+噪声;%输出向量输出= 0(1,长度(信号));%低通的信号,以获得摆脱高频率的内容。注意:%filtfilt避免偏置信号。过滤%的精确值扭捏,直到他们期待权[BA] =黄油(4 .05); lowpass_signal =(filtfilt(B,A,信号));图(T,信号,T,lowpass_signal);标题(“比较的信号”);传说(“原始”,“过滤”);%的过滤信号的斜率变化率=差异(lowpass_signal);%海槽:%零斜率小于周围插入一个值% -1到输出向量,当场%的高峰:%零斜率,大于周围插入一个-1到输出向量,现货值%I = 1:(长度(信号)-6),如果(ABS(斜坡(一))
 

Welcome to EDABoard.com

Sponsor

Back
Top