概述

在图像的采集、传送和转换过程中,会添加一些噪声,表现为图像模糊、失真和有噪声等。图像复原就是尽可能恢复退化图像的本来面目,沿用图像退化的逆过程进行处理。图像复原技术是根据图像退化的先验知识建立一个退化模型,以此模型为基础,采用各种逆退化处理方法进行恢复,得到质量改善的图像。图像复原技术主要包括图像的噪声模型、图像的滤波模型及常用的图形复原方法。

图形复原最基本的任务是在去除图像中的噪声同时,不丢失图像中的细节信息,假设成像系统是在位移不变系统,则获取图像g(x,y) = f(x,y)h(x,y) + n(x,y),f(x,y)表示理想的、没有退化的图像,g(x,y)是退化后观察得到的图像,n(x,y)为加性噪声。图像复原是在已知g(x,y)、h(x,y)和n(x,y)的一些先验知识的条件下,求解f(x,y)的过程。

图像复原是根据图像退化的原因建立相对应的数学模型,从退化图像中提取所需要的信息,沿着图像退化的逆过程来恢复图像的本来面目。实际图像复原是设计一个滤波器,从降质图像g(x,y)中计算得到真实图像的估计值,最大程度的接近真实图像f(x,y)。图像复原是一个求逆的问题。

图像的噪声按照噪声和信号之间的关系可分为加性噪声和乘性噪声,假设图像的像素值为F(x,y),噪声信号为N(x,y)。如果混合叠加信号为F(x,y)+N(x,y),则这种噪声为加性噪声;如果叠加后信号为F(x,y)×[1+N(x,y)]的形式,则这种噪声为乘性噪声。

噪声概述

高斯噪声

高斯噪声是一种源于电子电路噪声和由低照明度或高温带来的传感器噪声。高斯噪声也成为正态噪声。高斯噪声可以通过空域滤波的平滑或图像修复原技术来消除。
随机变量z表示灰度值,μ为噪声的期望,σ为噪声的标准差,σ^2为噪声的方差。

椒盐噪声

椒盐噪声又称为双极脉冲噪声,其概率密度函数为:

椒盐噪声是指在图像中出现的噪声只有两种灰度值,分别为a和b,改噪声的均值和方差分别为:m = aPa+bPb,σ^2 = (a-m)2*Pa+(b-m)2*Pb,通常情况下脉冲噪声总是数字化为允许的最大值和最小值,所以,负脉冲以黑色(胡椒点)出现在图像中,正脉冲以白点(盐点)出现在图像中,去除椒盐噪声的较好办法是中值滤波。

均匀分布噪声

均匀分布噪声的概率密度函数为:

均匀分布噪声的期望和方差分别为:m = (a+b)/2;σ^2 = (b-a)^2/12

指数分布噪声

指数分布噪声的概率密度函数为:

指数分布噪声的期望和方差为:m = 1/a;σ^2 = 1/a^2

伽马分布噪声

伽马分布噪声的概率密度函数为:

伽马分布噪声的期望和方差为:m = b/a;σ^2 = b/a^2

代码实现

J = imnoise(I,type,parameters)
type:高斯噪声:gaussian、0均值白噪声:localvar、泊松噪声:poisson、椒盐噪声:salt&peper、乘性噪声:speckle
parameters:对应噪声的参数

#通过均值和方差产生高斯噪声
>> I = uint8(100*ones(256,256));
>> J = imnoise(I,'gaussian',0,0.01);#高斯噪声方差为0.01
>> K = imnoise(I,'gaussian',0,0.03);
>> figure,
>> subplot(221),imshow(J)
>> subplot(222),imhist(J)
>> subplot(223),imshow(K)
>> subplot(224),imhist(K)

#通过位置信息产生高斯噪声
>> I = imread('E:\persional\matlab\images\ba.tif');
>> I = im2double(I);
>> V = zeros(size(I));#建立矩阵V
>> for i=1:size(V,1)V(i,:) = 0.02*i/size(V,1);end
>> J = imnoise(I,'localvar',V);
>> figure,
>> subplot(121),imshow(I);
>> subplot(122),imshow(J);

#通过亮度来产生高斯噪声
>> I = imread('E:\persional\matlab\images\lena.bmp');
>> I = im2double(I);
>> h = 0:0.1:1;
>> v = 0.01:-0.001:0;
>> J = imnoise(I,'localvar',h,v);
>> figure,
>> subplot(121),imshow(I);
>> subplot(122),imshow(J);


添加椒盐噪声:

>> I = imread('E:\persional\matlab\images\lena.bmp');
>> I = im2double(I);
>> J = imnoise(I,'salt & pepper',0.01);
>> K = imnoise(I,'salt & pepper',0.03);
>> figure,
>> subplot(131),imshow(I);
>> subplot(132),imshow(J);
>> subplot(133),imshow(K);


给图像添加椒盐噪声和盐噪声:

>> I = imread('E:\persional\matlab\images\lena.bmp');
>> I = im2double(I);
>> R = rand(size(I));
>> J = I;
>> J(R<=0.02)=0;#添加椒噪声
>> K = I;
>> K(R<=0.03)=1;#添加盐噪声
>> figure,
>> subplot(131),imshow(I);
>> subplot(132),imshow(J);
>> subplot(133),imshow(K);


给图像添加泊松噪声:

>> I = imread('E:\persional\matlab\images\lena.bmp');
>> J = imnoise(I,'poisson');
>> figure,
>> subplot(121),imshow(I);
>> subplot(122),imshow(J);

给图像添加乘性噪声:

>> I = imread('E:\persional\matlab\images\lena.bmp');
>> J = imnoise(I,'speckle');%添加乘性噪声,方差默认
>> K = imnoise(I,'speckle',0.2);%方差为0.2
>> figure,
>> subplot(131),imshow(I);
>> subplot(132),imshow(J);
>> subplot(133),imshow(K);


均匀分布的噪声:

>> m=256;n=256;
>> b=160;
>> a=40;
>> I = (b-a)*rand(m,n);
>> subplot(121),imshow(I);
>> subplot(122),imhist(I);

指数分布的噪声:

>> m=256;n=256;
>> a = 0.04;
>> k = -1/a;
>> I = k*log(I);
>> figure,
>> subplot(121),imshow(uint8(I));
>> subplot(122),imhist(uint8(I));

图像噪声模型(matlab)相关推荐

  1. 图像降噪算法——图像噪声模型

    图像降噪算法--图像噪声模型 图像降噪算法--图像噪声模型 1. 图像噪声建模 2. C++代码实现 3. 结论 图像降噪算法--图像噪声模型 1. 图像噪声建模 首先,我们要区分图像传感器噪声和图像 ...

  2. 01.Signal and Image Noise Models 信号与图像噪声模型

    01.Signal and Image Noise Models 信号与图像噪声模型 标签(空格分隔): 未分类 资料:numeriacal tour-denoising simple1:Signal ...

  3. 中值滤波去除图像噪声的matlab程序

    中值滤波:基于排序理论的一种能有效抑制噪声的非线性信号处理技术. 方法:取含有基数(偶数会有半像素的差)个模板数据的滑动模板,对模板中的数据从小到大排序,取排在中间位置上的数据作为最终的处理结果. m ...

  4. (100天2小时第二十九天)几种常见的图像噪声及去噪处理算法

    一.背景 在图像获取.传输.存储过程中常常会受到各种噪声的干扰,从而影响图像的质量.并且图像预处理算法的好坏又直接关系到后续图像处理的效果,如图像分割.目标识别.边缘处理等,所以为了获得高质量数字图像 ...

  5. 【图像处理】MATLAB:图像噪声

    噪声模型   模拟噪声的行为和影响的能力是图像复原的核心.   采用函数imnoise来使用噪声污染一幅图像. g = imnoise ( f , type , parameters ) 噪声应用 高 ...

  6. 图像噪声(MATLAB)

    1.概念 ·所谓的图像噪声,是图像在摄取时或是传输时所受到的随机干扰信号. ·常见的有高斯噪声和椒盐噪声. (1)高斯噪声 高斯噪声是一种源于电子电路噪声和由低照明度或高温带来的传感器噪声.高斯噪声也 ...

  7. Matlab中消除图像噪声之中值滤波器:medfilt2

    Matlab中消除图像噪声之中值滤波器:medfilt2 medfilt2, matlab, 消除噪声, 中值滤波器, 椒盐噪声 在图像处理中,在进行如边缘检测这样的进一步处理之前,通常需要首先进行一 ...

  8. 《阵列信号处理及MATLAB实现》信源和噪声模型、阵列天线统计模型

    PS:文章内容为本人读书笔记,如想阅读更详细内容请购买正版书籍 2.5  信源和噪声模型 2.5.1 窄带信号 如果信号带宽远小于其中心频率,则该信号为窄带信号,即: 其中,为信号带宽,为中心频率.通 ...

  9. 图像修复模型——TV模型

    1. 参考文献 2. TV图像修复模型 2.1 TV模型 % demo_TV.m % Author: HSW % Date: 2015/3/25 % HARBIN INSTITUTE OF TECHN ...

最新文章

  1. html5自定义属性作用,html5自定义属性:如何获取自定义属性值(附代码)
  2. LeetCode--448
  3. mysql查看数据库命令
  4. 吴恩达《机器学习》课程总结(16)推荐系统
  5. kail Linux 安装Parallels Tools
  6. windows11图文安装流程
  7. python mysql异地备份_python脚本备份mysql数据库
  8. leetcode练习——数组篇(1)(std::ios::sync_with_stdio(false);std::cin.tie(nullptr);)
  9. win10软件拒绝访问删不掉_Win10右键菜单添加“获取文件管理员权限”选项
  10. Java常见设计模式总结
  11. matlab 参数辨识,Matlab系统辨识尝试之详细过程1
  12. 百度 bos php,GitHub - SwimmingTiger/BOSFS: PHP流包装器:百度开放云对象存储文件系统(BCE BOS File System)...
  13. Android打码函数,Android 马赛克(Mosaics)效果
  14. t.cn短链接是怎么生成的?
  15. java中为什么要用json_Java中json的使用和解析
  16. Unity模拟毛笔字效果
  17. 2019 ICPC南昌网络赛 E题 Magic Master 【双向队列】
  18. BootStrap4中使用图标
  19. 服务器版本的ansys证书错误,关于ANSYS Workbench 出现证书错误的解决办法
  20. 美团机器学习实践 密码_机器学习遇到密码学的地方

热门文章

  1. 用pandas进行数据分析:结合JData ”用户购买时间预测“数据分析实例(三)
  2. stable diffusion尝试
  3. Git/GitHub简介与安装教程
  4. 想要爬虫获取百度指数,浏览器的cookie怎么获得?
  5. FORESEE中国大陆首发512Mb SPI NAND Flash
  6. 【mysql 5.7】 mysql5.7安装包以及安装教程及其过程详解 包含自定义安装路径
  7. JSBridge的原理与实现
  8. JSBRIDGE 使用
  9. 2018年全国多校算法寒假训练营练习比赛(第二场)F - 德玛西亚万岁
  10. 单位根检验 matlab,ADF检验MATLAB程序