通过opencv给图像添加椒盐噪声

本文介绍了如何在OpenCV中通过矩阵操作给图像添加椒盐噪声。讲解了CvMat的数据结构以及cvPtr2D函数用于读取和修改像素点RGB值的方法。在彩色图像中,BGR值是连续存储的,程序实现时需注意这一点。
摘要由CSDN通过智能技术生成

在OpenCV中,图像是按照矩阵的形式存储的,IplImage继承至CvMat,CvMat继承至CvArr,但CvArr只是一个抽象的类,这里还是要去关注CvMat。

CvMat跟线性代数中的矩阵相比要更加抽象一下,抽象在矩阵中的元素可以使任意预定义的类型,预定义类型的结构如下,CV_<bit_depth>(S|U|F)C<number_of_channels>。。。。矩阵的结构在此省略。

给图像添加椒盐噪声,既在改变图像中一些随机像素点的RGB值,对矩阵中元素的读取采用cvPtr2D(const CvArr* arr,int idx0(列),int idx1(行),int type=NULL),第一个变量是我们读取的图像,第二第三变量是图像像素点的索引值(就是列和行的值),最后一个是可选的参数,它表示输出值的类型(暂时搞不清。。)。cvPtr2D()函数返回的是一个指向这个像素点的指针,取到了像素要对像素内的RGB值进行写入,对于RGB三通道的彩色图像,像素点中颜色值的存储是按照BGR的顺序连续存储的,所以一副三通道的RGB图像会是按照

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值