滑动中值滤波算法详解

发布时间:2026/11/11 23:41:57

滑动中值滤波算法详解 1、什么是滑动中值滤波滑动中值滤波Moving Median Filter属于非线性滤波非常适合去除信号里的脉冲噪声、尖峰毛刺、跳变干扰广泛用于传感器数据、嵌入式 ADC 采样、图像去噪。核心思想设置一个固定大小的滑动窗口窗口沿着数据序列一步步向后滑动把窗口内所有数据排序取中位数作为当前点输出值。和均值滤波区别均值滤波窗口取平均值容易被异常大 / 小尖峰带偏会抹平边缘突变中值滤波取中位数对孤立尖峰噪声免疫保留信号阶跃边沿2、原理举例假设原始采样序列[12, 13, 15, 120, 14, 11, 13]窗口大小 window_size 3奇数最常用窗口 1[12,13,15] → 排序 [12,13,15] → 中位数 13窗口 2[13,15,120] → 排序 [13,15,120] → 中位数 15120 尖峰直接被过滤掉窗口 3[15,120,14] → 排序 [14,15,120] → 中位数 15窗口 4[120,14,11] → 排序 [11,14,120] → 中位数 14窗口 5[14,11,13] → 排序 [11,13,14] → 中位数 13输出结果[13,15,15,14,13]可以看到 120 这个突变噪声直接消除没有被平均稀释。⚠窗口一般选奇数3、5、7。偶数窗口需要取中间两数平均工程很少用。边界处理重点原始信号开头、结尾窗口不够数据截断模式最简单嵌入式用舍弃前后 (win‑size‑1)/2 个点输出变短复制填充复制第一个 / 最后一个值补齐窗口镜像填充镜像复制边界数据图像常用嵌入式单片机一般用截断模式。3、优缺点✅优点抑制脉冲尖峰、跳变噪声效果极强传感器跳变毛刺首选保留阶跃、突变边沿不会像均值滤波把跳变磨圆滑逻辑简单适合 STM32、ESP32 等嵌入式设备❌缺点对高斯白噪声抑制不如均值滤波窗口越大信号相位滞后延迟越大窗口 N会带来 (N‑1)/2 个采样点延迟需要排序窗口大的时候 CPU 开销上升会把信号本身短暂真实尖峰一并滤掉容易误删真实突变工程权衡窗口不要盲目开大一般传感器优先窗口 3/5。4、滑动实现两种思路方式 A每次窗口全部重新排序简单小窗口首选窗口 3/5每次滑动取出窗口内全部数据sort 排序取中值。代码最简单嵌入式小窗口完全够用。方式 B滑动窗口维护有序队列高效大窗口窗口向右滑动删掉离开窗口的旧元素插入新进来的元素维持有序列表直接取中间索引避免每次完整排序。适合窗口 7 以上减少排序计算量。5、Python 示例代码简单重排版6、C 语言极简嵌入式版本STM32 / 单片机可用窗口 5#include stdio.h#include stdlib.h#define WINDOW 5#define HALF_WIN (WINDOW/2)// 简单冒泡排序static void sort_buf(int *buf, int n){for(int i0;in;i){for(int j0;jn-1-i;j){if(buf[j]buf[j1]){int tbuf[j];buf[j]buf[j1];buf[j1]t;}}}}//输入原始数组输出滤波数组void moving_median_filter(int *in, int *out, int len){int window[WINDOW];int out_idx 0;// 边界截断跳过开头HALF_WIN个点for(int iHALF_WIN; i len-HALF_WIN; i){for(int k0;kWINDOW;k){window[k] in[i - HALF_WIN k];}sort_buf(window, WINDOW);out[out_idx] window[HALF_WIN];}}int main(void){int raw[]{12,13,15,120,14,11,13,14,16};int res[10]{0};moving_median_filter(raw,res,9);return 0;}单片机注意窗口越大排序耗时越高ADC 实时采样优先用窗口 3。7、工程实操要点窗口选择偶尔尖峰毛刺窗口 3噪声频繁跳变窗口 5尽量避免 7延迟大CPU 负担重与均值滤波组合先中值去尖峰再均值平滑白噪声传感器常用组合滤波。延迟问题滑动中值会带来时间滞后做闭环控制时滞后会影响控制稳定性控制场景谨慎开大窗口。注意区分中值滤波抑制脉冲噪声均值滤波抑制高斯噪声
延伸阅读

更多相关文章

2026/11/11 9:31:31

小学生学C++编程语法知识(C++类初始化详解(一))

C类初始化详解(一):很多同学第一次学习类(class)时,会觉得:“我创建一个对象,不就是给变量赋值吗?为什么还要学习构造函数、初始化列表?”其实,类…

2026/11/7 9:09:55

珍珠棉设备和普通发泡机的区别,关键在这里

为什么你的珍珠棉总是回弹性差、易碎裂? 你是不是也遇到过这种情况:采购的珍珠棉(EPE)片材看起来厚实,但一压就塌、回弹慢,甚至运输途中就碎成渣?很多厂家以为是原料问题,其实根源往…

2026/11/11 23:38:57

宁德安监局电工证怎么考?外省证能转吗?考前押题全解析

宁德安监局电工证怎么考?外省证能转吗?考前押题全解析 之前考的证在外省能不能转过来?这个问题在我们这行里太常见了。我身边有好几个朋友从河南、江苏、河北过来办证,都是因为手里拿着外地的电工证,想在当地上岗或者换工作,结果发现外省的证用不了。其…

2026/11/11 23:38:57

电工作业安全站位通过率揭秘:实操考试心里没底怕挂科怎么办

电工作业安全站位通过率揭秘:实操考试心里没底怕挂科怎么办 实操考试心里没底怕挂科,这是很多准备考取电工作业安全站位证书的学员最真实的感受。尤其是像你这样的应届毕业生,对考试流程、现场操作、考核标准都不熟悉,更是容易紧张。但别担心,今天就来揭…

2026/11/11 23:38:57

如何学高级电工证证丢了怎么补办

高级电工证怎么考?通过率揭秘,应届生别再被中介骗 你是不是也遇到过这种情况:手里拿着电工证,却不知道该怎么提升到高级电工证?或者正准备考,又怕被那些打着“包过”旗号的中介骗钱?别急,今天我就从一个干了十年应急管理部门的老实人角度,带你一步步…

2026/11/11 23:38:57

电工电焊工作业上岗必备,学历不高也能考?

电工电焊工作业上岗必备,学历不高也能考? 你是不是也担心自己学历不高,连电工电焊工作业的报名资格都够不上?别急,这正是很多想从事相关工作的朋友最关心的问题。事实上,只要符合基本条件,学历并不是最大的门槛。今天我们就来聊聊电工电焊工作业的…

2026/11/11 23:33:54

职业禁忌电工作业怎么考?保姆级教程帮你搞定特种作业证

职业禁忌电工作业怎么考?保姆级教程帮你搞定特种作业证 找工作找不到,就是因为没有特种作业证?这事儿真不是危言耸听。很多电工兄弟一肚子本事,但就是因为没证,被用人单位拒之门外。别急,今天就给你一套保姆级教程,讲清楚职业禁忌电工作业怎么考,考什…

2026/11/11 12:42:59

电工证丢失还能补吗?千万别踩坑,丢了证等于失业

电工证丢失还能补吗?千万别踩坑,丢了证等于失业 你正在找工作,但手里的电工证突然丢了,这下怎么办?别急,先别慌, 电工证丢失还能补吗 ?答案是肯定的,但 千万别踩坑 ,补办流程如果不了解,可能会耽误你上岗、甚至影响到你的收入。…

2026/11/11 0:02:26

考低压电工证通过率考试真题与备考技巧

低压电工证通过率高不高?学历不高也能考,值不值得考? 你是不是总听说电工证能帮你找高薪工作,但又担心自己学历不够,考不上?其实,低压电工证考试门槛并没有你想象中那么高,关键是方法对不对。这篇文章就告诉你, 考低压电工证通过率到底有多高 ,…

2026/11/11 0:02:26

低压电工证学时千万别踩坑,濮阳毕业生怎么避坑报名

低压电工证学时千万别踩坑,濮阳毕业生怎么避坑报名 你是不是也和我一样,刚毕业就听说低压电工证学时必须达标才能上岗?可一打听,发现报名机构五花八门,价格参差不齐, 不知道去哪报名怕被中介坑…

2026/11/11 20:27:01

面向复杂光照与角度的宠物面部识别鲁棒性增强策略

在智慧养宠时代,基于视觉的宠物身份识别技术正逐步从实验室走向家庭应用。然而,与配合度高的人类不同,宠物是典型的“非合作生物识别对象”——它们不会主动配合摄像头调整姿态,更无法控制光照环境。实际应用中,我们常…

2026/11/10 10:29:37

SSM电子书店源码全解析:结构、原理、部署与排错实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑