[Opencv]中值滤波(medianBlur)

OPENCV中的均值滤波、方框滤波、高斯滤波,都是线性滤波方式,由于线性滤波的结果是所有像素值的线性组合,因此含有噪声的像素也会被考虑进去,噪声不会被消除,而是以更柔和的方式存在。如果需要去除这些噪声,使用非线性滤波效果可能会更好。中值滤波采用邻域内所有像素值的中间值来替代当前像素点的像素值。

1.原理介绍

中值滤波会取当前像素点及其周围临近像素点(一共有奇数个像素点)的像素值,将这些像素值排序,然后将位于中间位置的像素值作为当前像素点的像素值。

1.1.函数语法

在OpenCV中,实现中值滤波的函数是medianBlur,其语法格式如下:medianBlur(src,dst,ksize)

● dst是中值滤波后得到的处理图像

● src是需要处理的源图像。它能够有任意数量的通道,并能对各个通道独立处理。图像深度应该是CV_8U、CV_16U、CV_16S、CV_32F 或者 CV_64F中的一种。

● ksize 是滤波核的大小。滤波核大小是指在滤波处理过程中其邻域图像的高度和宽度。需要注意,核大小必须是比1大的奇数,比如3、5、7、9、11等。

1.2.举例

复制代码
原数据
97      95      94

93      78      90

66      91      101
中值滤波后的数据
97      95      94

93      93      90

66      91      101

如果将ksize设置为3,则其邻域为3×3。对3×3邻域内像素点的像素值进行排序,按升序排序后得到序列值为:[66,78,90,91,93,94,95,97,101]。在该序列中,处于中心位置(也叫中心点或中值点)的值是"93",因此用93替换像素值78作为当前点的新像素值。

1.3 其他

  • 中值滤波对噪声的消除效果比线性滤波好;
  • 随着滤波核的增大,图像也会变的模糊,并且处理的耗时也会越高;
相关推荐
技术狂人16819 小时前
2026 智能体深度解析:落地真相、红利赛道与实操全指南(调研 100 + 案例干货)
人工智能·职场和发展·agent·商机
Bruk.Liu20 小时前
(LangChain实战12):LangChain中的新型Chain之create_sql_query_chain
数据库·人工智能·sql·langchain
学电子她就能回来吗20 小时前
深度学习速成:模型的使用与修改,保存与读取
人工智能·深度学习
友思特 智能感知20 小时前
友思特案例 | 金属行业视觉检测案例四:挖掘机钢板表面光学字符识别(OCR)检测
人工智能·视觉检测·深度学习视觉检测
爱吃泡芙的小白白20 小时前
CNN激活函数新篇:Sigmoid与Softmax的进化与实战
人工智能·神经网络·cnn·softmax·sigmoid·函数激活层
星爷AG I20 小时前
9-27 视觉表象(AGI基础理论)
人工智能·agi
Coder_Boy_20 小时前
基于SpringAI的在线考试系统-企业级教育考试系统核心架构(完善版)
开发语言·人工智能·spring boot·python·架构·领域驱动
艾莉丝努力练剑20 小时前
【Linux:文件】基础IO:文件操作的系统调用和库函数各个接口汇总及代码演示
linux·运维·服务器·c++·人工智能·centos·io
Leinwin20 小时前
VibeVoice-ASR:突破60分钟长音频处理瓶颈,语音识别进入端到端时代
人工智能·音视频·语音识别
没有不重的名么20 小时前
Multiple Object Tracking as ID Prediction
深度学习·opencv·计算机视觉·目标跟踪