学习《OpenCV 2 计算机视觉编程手册》第二章存取像素值案例--椒盐噪声

                                学习《OpenCV 2 计算机视觉编程手册》第二章存取像素值案例--椒盐噪声

椒盐噪声属于加性噪声中的脉冲噪声,随机将二值图像中的像素设为黑或白,形象地称为椒盐噪声,可用中值滤波器来清除(本节不讲),

下面是给一个图像添加椒盐噪声的代码:

#include<opencv2\core\core.hpp>


#include<opencv2\imgproc\imgproc.hpp>
#include<opencv2\highgui\highgui.hpp>
#include<iostream>

using namespace cv;
using namespace std;


//椒盐噪声
void Salt(Mat &img ,int n)
{
	for (int k = 0; k < n; k++)
	{
		int i=rand()%img.cols;
		int j=rand()%img.rows;
		if(img.channels()==1)//灰度图
		{
			img.at<uchar>(j,i)=255;
		}
		else if(img.channels()==3)//彩色图
		{
			img.at<Vec3b>(j,i)[0]=255;//B通道
			img.at<Vec3b>(j,i)[1]=255;//G通道
			img.at<Vec3b>(j,i)[2]=255;//R通道
		}
	}
}

int main()
{
	Mat img=imread("img/1.jpg",1);
	Salt(img,100);	
	namedWindow("单通道加椒盐噪声");
	imshow("单通道加椒盐噪声",img);
	
	waitKey();
	return 0;
}
加上椒盐噪声后的效果图如下:



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值