给图像添加椒盐噪声之后用均值滤波和中值滤波过滤图像!
来源:互联网 发布:java中单双引号 编辑:程序博客网 时间:2024/05/16 05:20
本文转载自 http://opencv66.net/thread-27-1-1.html
椒盐噪声是椒噪声和盐噪声的合称,它是由图像传感器,传输信道,解码处理等产生的黑白相间的亮暗点噪声,去除椒盐噪声的最常用算法是中值滤波,在去除想起噪声的效果上均值滤波不如中值滤波,本文所给的代码会证明这个结论。
首先说下怎么给图像加上椒噪声和盐噪声。我们可以利用C++的srand函数和rand函数来产生随机坐标,并把这些坐标置为椒噪声点或盐噪声点。这两个函数的用法就不多说了,大家可自行搜索下网上的资源,再结合代码大家很容易知道怎么用。值得一提的是rand函数的范围为0至RAND_MAX,是整数,RAND_MAX的值在stdlib.h中有定义,定义如下:
#define RAND_MAX 0x7fff
在本文的代码中,盐噪声的BGR值为(250,150,250),椒噪声的BGR值为(250,150,50)
再来说均值滤波和中值滤波。
均值滤波:它是用某点邻域窗口内的的所有像素的平均值来代替锚点处的值。它不能很好地保护图像细节,在图像去噪的同时也破坏了图像的细节部分,从而使图像变得模糊,不能很好地去除噪声点。
中值滤波:中值滤波法是一种非线性平滑技术,它将每一像素点的灰度值设置为该点某邻域窗口内的所有像素点灰度值的中值。
OpenCV提供了函数medianBlur和函数blur来实现均值滤波和中值滤波,这两个函数的使用方法简单,没必要作过多的说明,唯一需要说明白是这两个函数的第三个参数均需提供核算子的大小,关于“核算子”的概念,大家可参考帖子http://opencv66.net/thread-26-1-1.html
代码如下:
源码请大家移步帖子 http://opencv66.net/thread-27-1-1.html 查看
源码请大家移步帖子 http://opencv66.net/thread-27-1-1.html 查看
源码请大家移步帖子 http://opencv66.net/thread-27-1-1.html 查看
从截图中我们可以看出,对于椒盐噪声,中值滤波的效果优于均值滤波。
本文转载自 http://opencv66.net/thread-27-1-1.html
阅读全文
0 0
- 给图像添加椒盐噪声之后用均值滤波和中值滤波过滤图像!
- 基于matlab的图像处理——高斯噪声&均值滤波,椒盐噪声&中值滤波
- 对加入椒盐噪声的图像分别作均值、中值和维纳滤波
- 图像增强—空域滤波,椒盐噪声/高斯噪声 均值滤波器/中值滤波器
- 图像增强算法实现--图像的椒盐噪声、随机噪声、高斯噪声、均值滤波、中值滤波以及高斯滤波
- 椒盐噪声 中值滤波 高斯噪声 均值滤波
- Python实现椒盐噪声、中值滤波、均值滤波,OpenCV
- 图像噪声的抑制——均值滤波、中值滤波、对称均值滤波
- 图像噪声的抑制——均值滤波、中值滤波、对称均值滤波
- 图像噪声的抑制——均值滤波、中值滤波、对称均值滤波
- 中值滤波与椒盐噪声
- MATLAB 图像 均值滤波 中值滤波
- 均值滤波、中值滤波【MATLAB】【图像处理】
- 图像的均值滤波、中值滤波_JAVA
- Matlab进行图像中值滤波和均值滤波算法
- 图像滤波----高斯滤波/中值滤波/均值滤波
- 图像噪声和滤波
- 均值滤波、中值滤波、维纳滤波 对 高斯噪声、椒盐噪声、乘性噪声 的处理效果
- 解决Microsoft Virtual Academy 和channel9下载字幕不能播放的问题
- [2017纪中10-24]方阵 二维ST表
- Linux学习-共用体及typedef
- ubuntu nohup命令
- 编写一个学生类(Students),包括姓名(name)、性别(sex)、学号(num)、语文课(Chinese)、英语课(English)、数学课(Math)和平均值(avg),方法包括求三门课的平
- 给图像添加椒盐噪声之后用均值滤波和中值滤波过滤图像!
- [初学笔记] matlab中 提高代码效率 的 技巧
- e2e 模拟用户行为的测试
- jmeter带cookie访问
- 对于已排序p[]枚举p的所有子集
- RecyclerView添加下拉加载以及和ScrollView的滑动冲突的解决
- Codevs2404糖果——差分约束系统整理
- spring+mybatis+oracle ORA-00923: 未找到预期 FROM 关键字
- 图像识别和卷积神经网络架构原理