卓尔高考网

OpenCV-中值滤波cv::medianBlur

篇首语:本文由小编为大家整理,主要介绍了OpenCV-中值滤波cv::medianBlur相关的知识,希望对你有一定的参考价值。

函数原型

void medianBlur( InputArray src, OutputArray dst, int ksize );

参数说明

  1. InputArray类型的src,输入图像,如Mat类型。
  2. OutputArray类型的dst,输出图像。
  3. int类型的ksize,内核的大小,比如3,5,只能为奇数。

测试代码

#include <iostream>#include using namespace std;using namespace cv;int main(){cv::Mat src = imread("girl.jpg");cv::Mat src1 = src.clone();for (int i = 0; i < src.rows;i=i+10){for (int j = 0; j < src.cols; j=j+10){src1.at(i, j)[0] = saturate_cast(0);src1.at(i, j)[1] = saturate_cast(0);src1.at(i, j)[2] = saturate_cast(0);}}cv::Mat result;cv::medianBlur(src, result, 3);imshow("original", src);imshow("noise", src1);imshow("result", result);waitKey(0);return 0;}

测试效果

图1 加入噪声

图2 滤波效果图

       中值滤波是比较简单的一种滤波操作,对滤波窗口内的数据进行排列取中值,可有效去除零散的噪点~

       如果文章帮助到你了,可以点个赞让我知道,我会很快乐~加油!

以上是关于OpenCV-中值滤波cv::medianBlur的主要内容,如果未能解决你的问题,请参考以下文章

您可能还会对下面的文章感兴趣: