请教C语言 如何滤除采集回来跳变的数据,如何判断采集回来的数据是增大还是减小

我用数组存放采集回来的数据(每采集一次,更新一次数组,新的数据在前,越旧的数据在后),采集回来的数据有一定的变化趋势,个别会因为外部原因发生跳变(需要滤除掉的数据),然后怎样判断数据是在连续增加还是连续减少,过渡点怎样判断?
最新回答
污界一把手

2024-10-23 19:06:26

1)去除异常(随机噪声)值
按描述,估计采集的是缓变信号。如果是的话,可以采用均值法
滤波
:求前N-1次采集值的均值后,与最近一次采集值比较(求差值),如果差值超过一定范围,则丢弃;否则保留。
2)判断递增递减
比较理想的方法是利用最近采集的N点数据做样条函数y=x(t),可以是二次样条或三次样条,具体采用几次样条,同样要有被测信号特性决定。然后再对样条函数求导(dy/dt )即可判断出递增递减趋势。点数值N大于等4个比较合适
大众电灯泡!

2024-10-23 09:51:23

你这个跳变是随机噪声,还是有别的什么特点,描述清楚一些,好解决