博途PLC 中位值滤波算法(FC功能块)

      在图像处理算法中,中位值滤波的原理:如果一个信号是平缓变化的,那么某一点的输出值可以用这点的某个大小的邻域内的所有值的统计中值来代替(这个是图像处理里对中值的描述),我们现在研究的是时域信号sign(t),所以我们的邻域就是采样队列,邻域在信号处理领域叫“窗”,窗开的越大,输出的结果就越平滑,但是可能也会把有用的信号特征给抹掉,所以窗的大小要根据实际的信号和噪声特性来确定,这里的循环采样队列相当于固定的窗口滑动。

  时域信号中位值滤波算法:连续采样N次(N取奇数)把N次采样值按大小排列(比如采用冒泡法)取中间值为本次有效值。优点:能有效克服因偶然因素引起的波动(脉冲)干扰,对温度、液位的变化缓慢被测参数有比较好的滤波效果。

建议将采样个数N设置为奇数,因为奇数个队列才会存在唯一的中间值。

 算法框图

博途PLC 中位值滤波算法(FC功能块)_第1张图片

    我们看下博途的测试代码,中值滤波算法,这里用FC来举例,大家也可以设计为FB块都可以,系统里如果存在多回路需要处理,建议大家建UDT的数据类型(关于UDT类型,大家可以参看我之前的博文),提高编程的效率。

你可能感兴趣的:(信号滤波处理算法,算法,图像处理,人工智能)