学习《OpenCV 2 计算机视觉编程手册》第二章存取像素值案例--椒盐噪声
2017-05-13 22:14
417 查看
学习《OpenCV 2 计算机视觉编程手册》第二章存取像素值案例--椒盐噪声
[b]椒盐噪声属于加性噪声中的脉冲噪声,随机将二值图像中的像素设为黑或白,形象地称为[b]椒盐噪声[/b],可用中值滤波器来清除(本节不讲),[/b]
下面是给一个图像添加[b][b]椒盐噪声[/b]的代码:[/b]
#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;
}加上椒盐噪声后的效果图如下:
[b]椒盐噪声属于加性噪声中的脉冲噪声,随机将二值图像中的像素设为黑或白,形象地称为[b]椒盐噪声[/b],可用中值滤波器来清除(本节不讲),[/b]
下面是给一个图像添加[b][b]椒盐噪声[/b]的代码:[/b]
#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;
}加上椒盐噪声后的效果图如下:
相关文章推荐
- 学习《OpenCV 2 计算机视觉编程手册》第二章---使用指针遍历图像案例
- 学习《OpenCV 2 计算机视觉编程手册》第二章遍历图像和领域操作实例——对图像进行锐化
- 《Opencv 2计算机视觉编程手册 》学习笔记 1
- 我的OpenCV学习笔记(三):利用操作像素完成简单的图像处理:加入椒盐噪声、图像翻转、改变对比度、图像锐化
- OpenCV2计算机视觉应用编程手册(自学版)初级三
- OpenCV2计算机视觉应用编程手册(自学版)初级六
- OpenCV2计算机视觉应用编程手册(自学版)初级七
- 2_opencv2计算机视觉学习_操作像素
- OpenCV2计算机视觉应用编程手册(自学版)初级一
- OpenCV2计算机编程手册(一)操作像素
- opencv2 计算机视觉编程手册 estimateF.cpp
- 2_opencv2计算机视觉学习_操作像素
- OpenCV2计算机视觉应用编程手册(自学版)初级二
- OpenCV2计算机视觉应用编程手册(自学版)初级四
- OpenCV2编程手册笔记之 2.2存取像素值
- 《OpenCV2 计算机视觉编程手册》视频处理三
- OpenCV2计算机视觉应用编程手册(自学版)初级五
- OPENCV学习笔记2-1_像素访问案例(椒盐噪点)
- OpenCV2 图像处理与计算机视觉(一)—— 去除一幅二值化图像中的椒盐噪声
- [OpenCv2 计算机视觉编程手册] 第六章 图像滤波