[数字图像处理]常见噪声的分类与Matlab实现
1.研究噪声特性的必要性
本文的内容主要介绍了常见噪声的分类与其特性。
将噪声建模,然后用模型去实现各式各样的噪声。
实际生活中的各种照片的老化,都能够归结为下面老化模型。
这个模型非常easy,也能够直接用下面公式来表达。
在频域内,用下面公式区表示。
依据以上式子,能够看出,老旧照片的复原。主要分为两个任务,一个是去噪;还有一个是去卷积,或者称为逆滤波,也就是将老化滤波器做反处理。
本文首先由噪声类型与其建模。随后的博文。会介绍几种基础的去噪方法和基础的逆滤波方法。
2.噪声的实现
2.1 评价用图像与其直方图
2.2 高斯噪声
一种较为泛用的噪声模型。
a = 0;
b = 0.08;
n_gaussian = a + b .* randn(M,N);
2.3 瑞利噪声
瑞利噪声相比高斯噪声而言,其形状向右歪斜。这对于拟合某些歪斜直方图噪声非常实用。
瑞利噪声的实现能够借由平均噪声来实现。
例如以下所看到的。
这里的表示均值为0。方差为1的均匀分布的噪声。Matlab里,使用函数rand(M,N)就能够产生一个均值为0,方差为1的均匀噪声。
a = -0.2;
b = 0.03;
n_rayleigh = a + (-b .* log(1 - rand(M,N))).^0.5;
2.4 伽马噪声
伽马噪声的分布,服从了伽马曲线的分布。伽马噪声的实现。须要使用b个服从指数分布的噪声叠加而来。
指数分布的噪声。能够使用均匀分布来实现。
使用若干个(这里用b表示)均匀分布叠加,就能够得到伽马噪声。
当然,当b=1的时候。就能够得到指数噪声了。
a = 25;
b = 3;
n_Erlang = zeros(M,N); for j=1:b
n_Erlang = n_Erlang + (-1/a)*log(1 - rand(M,N));
end
2.5 均匀噪声
如同前面所看到的,均匀噪声能够由函数rand(M,N)直接产生。
a = 0;
b = 0.3;
n_Uniform = a + (b-a)*rand(M,N);
2.6 椒盐噪声
椒盐噪声也成为双脉冲噪声。在早期的印刷电影胶片上,因为胶片化学性质的不稳定和播放时候的损伤,会使得胶片表面的感光材料和胶片的基底欠落,在播放时候,产生一些或白或黑的损伤。其实,这也能够归结为特殊的椒盐噪声。
椒盐噪声的实现。须要一些逻辑推断。
这里我们的思路是,产生均匀噪声,然后将超过阈值的点设置为黑点。或白点。
当然,假设须要拟合电影胶片的损伤的话,能够选用别的类型噪声去拟合。
a = 0.05;
b = 0.05;
x = rand(M,N); g_sp = zeros(M,N);
g_sp = f; g_sp(find(x<=a)) = 0;
g_sp(find(x > a & x<(a+b))) = 1;
3.总结
本文,实现的几类较为主要的噪声。并给出了事实上现的方法。代码在以下。下一篇博文。会进行几个经常使用去噪滤波器的比較。
原文发于博客:http://blog.csdn.net/thnh169/
=============更新日志===================
2016 - 5 - 21 修正英文单词的拼写错误。
[数字图像处理]常见噪声的分类与Matlab实现的更多相关文章
- 数字图像处理:图像的灰度变换(Matlab实现)
(1)线性变换:通过建立灰度映射来调整源图像的灰度. k>1增强图像的对比度:k=1调节图像亮度,通过改变d值达到调节亮度目的:0 i = imread('theatre.jpg');i = i ...
- 数字图像处理学习笔记之一 DIP绪论与MATLAB基础
写在前面的话 数字图像处理系列的学习笔记是作者结合上海大学计算机学院<数字图像处理>课程的学习所做的笔记,使用参考书籍为<冈萨雷斯数字图像处理(第二版)(MATLAB版)>,同 ...
- [00]数字图像处理-matlab速成
原本听的是mooc武汉大学的数字图像处理课程,但是无奈老师读ppt的能力太强,不太适应,后面的课程对于实验方面的要求甚低,无奈之下到处找课程,终于找到了一个适合自己的教程<王伟强-数字图像处理& ...
- 数字图像处理的Matlab实现(1)—绪论
第1章 绪论 1.1 什么是数字图像处理 一幅图像可以定义为一个二维函数\(f(x,y)\),这里的\(x\)和\(y\)是空间坐标,而在任意坐标\((x,y)\)处的幅度\(f\)被称为这一坐标位置 ...
- MATLAB数字图像处理(二)图像增强
1 图像增强 1.1 直方图均衡化 对于灰度图像,可以使用直方图均衡化的方法使得原图像的灰度直方图修正为均匀的直方图. 代码如下: I2=histeq(I1); ...
- MATLAB数字图像处理(一)基础操作和傅立叶变换
数字图像处理是一门集计算机科学.光学.数学.物理学等多学科的综合科学.随着计算机科学的发展,数字图像处理技术取得了巨大的进展,呈现出强大的生命力,已经在多种领域取得了大量的应用,推动了社会的发展.其中 ...
- 基于小波变换的数字图像处理(MATLAB源代码)
基于小波变换的数字图像处理(MATLAB源代码) clear all; close all; clc;M=256;%原图像长度N=64; %水印长度[filename1,pathname]=uiget ...
- 《数字图像处理原理与实践(MATLAB版)》一书之代码Part6
本文系<数字图像处理原理与实践(MATLAB版)>一书之代码系列的Part6,辑录该书第281至第374页之代码,供有须要读者下载研究使用.代码运行结果请參见原书配图,建议下载代码前阅读下 ...
- 《数字图像处理原理与实践(MATLAB版)》一书之代码Part2
本文系<数字图像处理原理与实践(MATLAB版)>一书之代码系列的Part2(P43~80),代码运行结果请參见原书配图,建议下载代码前阅读下文: 关于<数字图像处理原理与实践(MA ...
随机推荐
- JavaScript系列----作用域链和闭包
1.作用域链 1.1.什么是作用域 谈起作用域链,我们就不得不从作用域开始谈起.因为所谓的作用域链就是由多个作用域组成的.那么, 什么是作用域呢? 1.1.1作用域是一个函数在执行时期的执行环境. 每 ...
- Python中的输出
1.Python的输出语句 Python输出语句是print,但是python2.x与3.x又有点区别.python2.x输出 print "xxx"能成功执行,而3.x不行,所以 ...
- Java钉钉开发_03_通讯录管理之 人员管理 和 部门管理
一.本节要点 1.通讯录权限 ISV(应用服务商)默认无管理通讯录的权限,企业应用默认有所有通讯录权限. 2.数据传输格式—JSON 请参见: Java_数据交换_fastJSON_01_用法入门 二 ...
- python爬虫(一)_爬虫原理和数据抓取
本篇将开始介绍Python原理,更多内容请参考:Python学习指南 为什么要做爬虫 著名的革命家.思想家.政治家.战略家.社会改革的主要领导人物马云曾经在2015年提到由IT转到DT,何谓DT,DT ...
- Windows Forms DataGridView中合并单元格
Windows Forms DataGridView 没有提供合并单元格的功能,要实现合并单元格的功能就要在CellPainting事件中使用Graphics.DrawLine和 Graphics.D ...
- c++ const全局对象是如何处理的
我主要是记录一个发现,目前我不能解释,先作个记录. const 只是一个 语义约束,由编译器强制实施的.使被约束的对象不能被直接访问修改. 我用 『直接』这词,因为在代码段中 ,用一个const 指针 ...
- 解决webstorm启动索引文件卡死问题
问题 当目录下的文件数量较大时,用webstorm打开会出现卡顿,甚至卡死现象,例如:node_modules目录 解决方案 不让webstorm索引该目录下的文件步骤:1.node_modules目 ...
- Asp.Net MVC 捆绑(Bundle)
Asp.Net MVC 捆绑(Bundle) 大多数浏览器会对同一域名的请求限制请求数量,一般是在8个以内.每次最多可以同时请求8个,要是资源多于8个,那么剩下的就要排队等待请求了.所以为了提高首次加 ...
- 状态压缩- Brackets
标签: ACM 题目: We give the following inductive definition of a "regular brackets" sequence: t ...
- c语言的extern与static与递归
知识点: 外部函数:定义的函数能被本文件和其他文件访问 1> 默认情况下所有函数都是外部函数 2> 不允许有同名的外部函数 内部函数:定义的函数只能被本文件访问,其他文件不能访问 1> ...