求一突波检测算法

2019-12-10 18:21发布

本帖最后由 Junsea 于 2018-1-4 11:40 编辑

信号波形如图,波形上有叠加一些随机的突波(红 {MOD}箭头位置),信号本身有幅值不大的毛刺,毛刺的幅值远小于突波。
基值是浮动的,假设图中基值x(x取值范围50~1000),x值随机且在检测过程中会随机变化,毛刺为 x±5,而突波为 x+20 以上
采用什么软件算法能够可靠的检出图中突波
求思路,谢谢!!

2018-01-04 补充:
1、图示数据来源是通过AD采集后通过串口送到电脑,然后通过serial chart显示的
2、真实突波信号并非如图那么陡峭,是类似于正弦波的正半波,突波通常持续时长为0.1ms至5ms间,突波的相对幅值范围为+15~+150
3、AD采样频率为20KHz

编辑原因:增加数据描述
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
55条回答
Junsea
1楼-- · 2019-12-15 06:48
iamseer 发表于 2018-1-4 03:35
峰值检测。http://www.billauer.co.il/peakdet.html 别被matlab吓着了,翻到底算法很简单,不调用任何库。 ...

matlab不会,所以matlab的代码看起来心塞了,不过还是谢谢你提供方向。
Junsea
2楼-- · 2019-12-15 11:43
1148729990 发表于 2018-1-4 09:27
看数据觉得求相邻两点的差值,波形会跟明显。

突波上升时间和持续时间都不固定的
Junsea
3楼-- · 2019-12-15 15:43
ztlaputa 发表于 2018-1-4 01:38
滑动平均可以试下,但是不是检测突波,是将突波平滑掉

这个比较简单,但不是我需要的,我需要检出突波!谢谢
jssd
4楼-- · 2019-12-15 20:41
 精彩回答 2  元偷偷看……
lsx007
5楼-- · 2019-12-16 00:42
jssd 发表于 2018-1-4 11:40
还有一个条件,就是整体的值可能随着环境变化而上下(缓慢)波动

做个动门限就可以了
TANK99
6楼-- · 2019-12-16 02:08
看底比较稳,同样的数据做两种滤波,一个傻一点,一个快一点(能滤掉无毛刺就行),两个再比较一个门限就差不多了。

一周热门 更多>