网站首页 > 技术文章 正文
前面的文章我们介绍了算术平均值滤波算法,今天这篇文章给大家介绍下中位值滤波算法。
中位值滤波就是对采样周期内的N个样本进行排序,取中间位置的值作为样本值。其中,样本量N必须为奇数。
在博途环境下新建函数块FB5013_MidValueFilter,变量声明如下图所示:
其中:
- enbale:使能滤波功能,内部上升沿检测;
- error:指示是否有错误发生,比如样本量N不等于奇数;
- data:中位值(排序后);
- sourceQueue:滤波数据源,不定长数组;
- FB5011_BubbleSort_Instance:由于代码中使用函数块FB5011_BubbleSort进行排序,此处是其多重背景数据块的静态变量;
代码如下:
代码中使用之前介绍的冒泡排序的函数块FB5011_BubbleSort,其数据块采用多重背景数据块的形式,有利于模块化设计。你也可以在该部分直接写排序代码(后续我们还会介绍选择排序)。
由于FB5011_BubbleSort使用内部上升沿信号检测,为了防止二次调用时程序不执行,需要再调用它一次并对enable赋值FALSE,以恢复内部静态变量。
使用随机数生成函数RandomTest生成随机数并使用FB5013_MidValueFilter进行滤波,OB1代码如下:
生成的随机数DB和排序后的结果如下图所示:
关于中位值滤波函数就先介绍到这里,如果你有任何问题欢迎留言讨论。
我的书《西门子S7-1200/1500 PLC SCL语言编程》比较详细的介绍了SCL的编程,感兴趣的话可以点击下面的链接查看详细介绍:
猜你喜欢
- 2024-10-23 深入浅出讲解卡尔曼滤波(附Matlab程序)
- 2024-10-23 滤波器的补充知识 滤波器的用法
- 2024-10-23 中值滤波原理及其C++实现与CUDA优化
- 2024-10-23 「技术控」基础向:点云数据处理之滤波(二)
- 2024-10-23 RC有源低通滤波器的一阶二阶原理分析及其推导!
- 2024-10-23 非常详细的滤波器基础知识 滤波器的原理和使用方法
- 2024-10-23 巴特沃斯滤波器 巴特沃斯滤波器截止频率计算
- 2024-10-23 Savitzky-Golay滤波函数 saw滤波器
- 2024-10-23 一文读懂四种频率滤波器:低通、高通、带通、带阻的原理及C代码
- 2024-10-23 最“稳重”的滤波算法-中位值滤波算法的思想原理及C代码实现
你 发表评论:
欢迎- 最近发表
-
- 吴谨言专访大反转!痛批耍大牌后竟翻红,六公主七连发力显真诚
- 港股2月28日物业股涨幅榜:CHINAOVSPPT涨1.72%位居首位
- 港股2月28日物业股午盘:CHINAOVSPPT涨1.72%位居首位
- 港股3月2日物业股涨幅榜:CHINAOVSPPT涨1.03%位居首位
- 港股3月2日物业股午盘:CHINAOVSPPT涨1.03%
- 天赋与心痛的背后:邓鸣贺成长悲剧引发的深刻反思
- 冯小刚女儿徐朵追星范丞丞 同框合照曝光惹人羡,回应网友尽显亲民
- “资本大佬”王冉:51岁娶小17岁童瑶,并承诺余生为娇妻保驾护航
- 港股3月2日物业股午盘:CHINAOVSPPT涨1.03%位居首位
- 「IT之家开箱」vivo S15 图赏:双镜云窗,盛夏风光
- 标签列表
-
- oraclesql优化 (66)
- 类的加载机制 (75)
- feignclient (62)
- 一致性hash算法 (71)
- dockfile (66)
- 锁机制 (57)
- javaresponse (60)
- 查看hive版本 (59)
- phpworkerman (57)
- spark算子 (58)
- vue双向绑定的原理 (68)
- springbootget请求 (58)
- docker网络三种模式 (67)
- spring控制反转 (71)
- data:image/jpeg (69)
- base64 (69)
- java分页 (64)
- kibanadocker (60)
- qabstracttablemodel (62)
- java生成pdf文件 (69)
- deletelater (62)
- com.aspose.words (58)
- android.mk (62)
- qopengl (73)
- epoch_millis (61)
本文暂时没有评论,来添加一个吧(●'◡'●)