当前位置:   article > 正文

图像处理——滤波器的比较_低通滤波(low pass)、高斯低通(gausian low pass)、中值滤波(median)

低通滤波(low pass)、高斯低通(gausian low pass)、中值滤波(median),对比三种不

滤波器

  • 方框滤波——boxFilter
  • 均值滤波——blur
  • 高斯滤波——GaussianBlur
  • 中值滤波——medianBlur

线性滤波器

线性滤波器经常用于剔除输入信号中不想要的频率或者从许多频率中选择一个想要的频率。常见的有:低通、高通、带通、带阻、全通、陷波
每个信号的输出值是一些输入像素的加权和

  • 方框滤波——boxFilter
  • 均值滤波——blur (归一化后的方框滤波)
  • 高斯滤波——GaussianBlur

非线性滤波器

  • 中值滤波——medianBlur
    在处理类似于椒盐噪声这种散粒噪声时,使用中值滤波有时可以达到更好的效果
    优势: 在均值滤波中,由于噪声成分被放入平均计算中,所以输出受到了噪声的影响。但是在中值滤波器中,由于噪声成分很难选上,所以几乎不会受影响。
    劣势: 中值滤波花费的时间是均值滤波的5倍以上。

代码演示

#include <opencv2/opencv.hpp>
#include <iostream>
using namespace cv;
using namespace std;

int main()
{
	Mat src = imread("G:/picture/cs.jpg");
	if (src.empty())
	{
		cout << "could not load image..." << endl;
	}
	Mat roi;
	//修改图像大小
	resize(src, roi, Size(300, 300));
	//遍历每个像素,用at()函数为随机选取的像素点赋一个随机值
	for (int i = 0; i < roi.rows; i++)
	{
		for (int j = 0; j < roi.cols; j++)
		{
			//当导入的时灰度图
			if (roi.channels() == 1)
			{
				if (rand() % roi.cols == j)
				{
					roi.at<uchar>(i, j) = rand() % 255;  //模上255是为了将随机值限定在(0,255)内
				}	
			}
			//当导入彩色图
			else if (roi.channels() == 3)
			{
				if (rand() % roi.cols == j)
				{
					Vec3b p;
					p[0] = rand() % 255; 
					p[1] = rand() % 255;
					p[2] = rand() % 255;
					roi.at<Vec3b>(i, j) = p;
				}
			}
		}
	}
	Mat median,gaussian,avgblur;
	blur(roi, avgblur, Size(3, 3));//均值
	GaussianBlur(roi, gaussian,Size(3,3),0,0);//高斯
	medianBlur(roi, median, 3);//中值
	imshow("roi",roi);
	imshow("blur", avgblur);
	imshow("Gaussian", gaussian);
	imshow("medianBlur", median);
	waitKey(100000);
	return 0;
}
	
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54

输出结果

  • 椒盐噪声图(roi)
    在这里插入图片描述
  • 均值
    在这里插入图片描述
  • 高斯滤波
    在这里插入图片描述
  • 中值滤波效果图
    在这里插入图片描述
    可以看到,线性滤波器(均值、高斯)处理之后图中仍可以看到“斑点”,而中值滤波则完美的达到“磨皮”效果,由此得出在处理椒盐噪声是应选择中值滤波。
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/2023面试高手/article/detail/72617
推荐阅读
相关标签
  

闽ICP备14008679号