MATLAB图像去雾算法

一、课题意义

雾天时,弥漫在空中的雾气模糊了人们的视线,使得景物的能见度大幅降低,给人们的生产生活带来了严重的影响。雾天获得的图像受到严重退化,不仅模糊不清,对比度降低,而且彩色图像还会出现严重的颜色偏移与失真,比如沙尘暴天气获得的图像往往出现严重的泛红现象。这大大降低了图像的应用价值,将给户外图像采集和处理系统带来很大的困难,甚至无法正常工作,对生产和生活等各方面造成了极大的影响,例如高速公路图像监视系统,在恶劣的天气条件下得到的退化图像会对判断车辆信息和监控交通情况造成极大的困难;在军事侦查和监视中,退化图像对信息的识别和处理会造成偏差,而偏差的后果是非常严重的;遥感探测中退化图像同样会对后续的信息处理产生很大的干扰。因此,对这种自然现象引起的图像质量下降展开图像信号处理研究,具有普遍的意义。

(一)研究意义

另一方面,由于计算机技术的迅猛发展,计算机的运行速度越来越快,图像处理系统的价格日益下降。随着计算机视觉与图像处理技术的发展,户外视觉系统的研究与应用正在飞速增长,从而使图像处理得意广泛应用于工多的科学和工程领域,其中户外监视系统、地形分类系统、自动导航系统以及军用探测系统等视觉系统的应用越来越受到人们的关注,他们将改变人们的生产手段和生活方式。这些户外视觉系统需要以户外景物图像为输入,通过计算机视觉、图像处理等处理技术准确检测输入图像的特征。为了保证视觉系统的全天候正常工作,就必须使系统能适用于各类天气状况,这样才能提高系统的可靠性,而雾天天气条件是各种天气条件中对视觉影响最严重的一种,雾天户外景物图像的对比度和颜色都会被改变或退化,图像中蕴含的很多特征都被覆盖或模糊,导致这些视觉系统无法正常工作

参考 源码:MATLAB图像去雾.zip-其它文档类资源-CSDN下载

因此,研究如何对尘雾等额略天气条件下获得的图像退化进行有效地处理,对大气退化图像的复原和景物细节的信息增强有着非常重要的现实意义。本论文展开了雾天天气下的景物清晰化技术的讨论。雾天下图像的清晰化技术有可能对其他恶劣天气条件下图像的清晰化技术也起到了促进作用。从而促使全天候视觉系统排除天气状况的干扰和影响。此方面技术的研究对很大应用前景。图像处理科学与技术逐步向其他科学领域渗透并为其他学科所利用是必然的。

(二)研究现状

为了改善退化图像的质量,可以采用模拟和数字两种图像处理技术进行处理,模拟图像处理利用光学处理和电子处理,特点是速度快实时性好,但是精度较差,灵活性差,很难有判别能力和非线性处理能力。而数字图像处理采用计算机或实时硬件处理,处理精度高,可以进行复杂的非线性处理,有灵活的变通能力。

采用数字图像处理技术对退化图像进行处理的方法有很多种,一般分为两类:

第一类是从图像呈现的低亮度和低对比度的特征考虑,采用增强的方法处理,即图像增强。图像增强处理则不考虑退化原因,按照特定需要突出图像中的某些信息,同时削弱或去除某些不需要的信息。其主要目的是使处理后的图像对某种特定的应用来说,比未处理的图像更适用,也就是使处理结果更适合人类的视觉特性或机器的识别系统。从图像质量评价观点看,图像增强的目的是为了提高图像可辨识度,而图像质量的视觉评价是一种高度主观的过程。应该明确的是增强处理并不能增强原始图像的信息,其结果只能增强对某种信息的辨别能力,而这种处理有可能损失一些其他信息。

第二类是基于物理模型的天气退化图像复原方法,从物理成因的角度对大气散射作用进行建模分析,实现场景复原,即图像复原。图像复原处理是考查图像退化原因,通过建立物理模型,重建和恢复退化前的图像,各种退化图像的复原都可归结为一种过程,就是把退化过程模型化,并且采用相反的过程进行处理,以便恢复出原图像。

1图像增强思想的处理方法

参考源码:MATLAB图像去雾.zip-其它文档类资源-CSDN下载

图像增强方法又称非模型的方法。在基于增强的算法中,目前国内采用较多的是直方图均衡化算法(HE)和基于Retinex理论的多尺度彩色图像增强算法(MSR)。

(1).直方图均衡化算法

图像增强中的一种常用的方法,该算法以概率论为基础,基于空间不变思想,运用灰度运算来实现直方图的变换,从而达到增强图像的目的,更适合于景物深度变化很小的图像。

全局直方图均衡化算法

全局增强方法中应用较广泛的方法。它对整个图像的直方图进行平整处理,使信息熵达到最大,实现整个图像的对比度增强。全局直方图均衡化算法实现简单,对单景深图像的复原效果较好,但是对于场景深度多变的图像,这种方法就很难反映图像中局部景物深度的变化,因此,对比度增强的效果难以令人满意。

局部直方图均衡化算法

分为子块不重叠直方图均衡化、子块重叠直方图均衡化与子块局部重叠直方图均衡化(POSHE)等方法。局部直方图均衡化算法nlibl采用局部增强方法可以在很大程度上减小场景深度的影响,可使图像的每一个区域的对比度都能得到很大的改善,但是同时这种方法也将灰度变化缓慢的区域,如天空等区域也进行了误增强,从而导致景物影像冈许多噪声的干扰而表现得不自然。

为了解决这些问题,祝培等人HH蝴提出了一种基于移动模板的雾天景物的清晰化算法。即首先将图像中出现的天空区域分离之后,再充分利用图像中不同深度的景物特征,通过局部自适应增强的处理手段来对雾天条件下的景物影像进行清晰化处理。这种基于移动模板的局部直方图均衡技术,运算量很大,不利于实时化,同时处理后的图像存在块效应。刘治群等人睁3以子块部分重叠的局部直方图均衡算法POSHE为基础,利用抛物线直方图均衡化方法,实现雾天图像增强,并且图像亮度可方便调整,解决了图像处理后整体偏暗,部分细节一i够清晰的问题。

(2).色彩恒常理论

芮义斌等人n∞tHl从图像增强角度入手,将雾对图像的退化影响等效成景物在不同天气下的照度变化,根据色彩恒常理论,采用Frankle-McCann’Retinex(FMR)算法对图像进行处理。色彩恒常性是人类的视觉认知功能之一,它使人们能够忽略环境光照的光谱成分变化而获得对物体颜色的稳定知觉。也就是,在照度发生变化的条件下,人们对物体表色的知觉趋于稳定的心理倾向,同一表面在不同的照度下会产生不同的反射谱,人眼的颜色机制能分辨这种由照度变化导致的表面反射谱变化,对该表面颜色的认知在一定的范围内保持恒定。这种色彩适应性质对人类适应环境的过程具有重要意义。

(3).基于小波的方法

Grewe等人n副叫蚓基于小波方法对多幅雾天图像进行融合来获得一张较好的图像,但这种方法只能相对地提高图像质量,并不能实现真正意义上的去雾。

(4).基于大气调制传递方程的方法

Yi tzhaky等人n刀借助于大气调制传递方程进行雾天衰减图像的处理,但是需要事先知道雾气浓度和场景深度,在实际应用中难以实现。

2基于图像恢复思想的处理方法

基于图像恢复思想的处理方法又称基于大气退化物理模型n町的方法。

(1).二值散射模型

在基于物理模型的方法中,常用的物理模型,是大气的双色散射模型。这种模型是将一个像素点的色彩看成是由大气光产生的色彩和晴天条件下被观察的场景点的色彩的线性组合。然后通过估计像素点的景深来得到大气光的色度方向,再从像素点的色彩中减去大气光产生的色度,得到晴天条件下物体像素点的真实色彩的一种图像复原方法。

像素点景深和天空区域的亮度均值是大气双色散射模型的两个重要参数,而像素点的景深又取决于所谓的消失点。但在以往的多数文献中对消失点的定位及天空区域的划分都依靠人眼的主观判断,导致处理的效果不够理想。

Narasimhan等人¨邮先从RGB色彩空间出发推导出二值的散射模型,然后利用两幅或更多的雾天图像通过计算场景的三维结构来对场景图像去雾。但是,由于他们假设大气散射系数并不随着光的波长而变化,这个假设在雾天情况下只是近似成立,因此,二值散射模型对于那些颜色与雾气相差不大的物体恢复效果并不理想,且其所做的实验也只是针对静态场景。

(2).多参数的退化模型

Narasimhan等人口们_2羽提出一种基于物理模型的去雾方法,该方法针对彩色场景图像进行处理,该方法首先对雾天场景的光学成像建模;然后借助于一张晴天和一张雾天场景的参考图像,计算出场景各点的深度比关系,最后利用深度关系复原雾天图像或雾天视频。但是采集同一场景在两种不同天气状况下的图像来估计景物深度信息,显然这在很多场合下是比较困难的。Oakley等人心钉叫2钔在多种假设的情况下,构造了一个多参数的退化模型,并通过统计模型估计退化模型参数,但该算法需要借助于专用的已经标定的雷达装置来获得深度信息,然后利用图像数据和深度信息来求解模型参数,最后把参数代入退化模型,才能求得估计图像。

二、相关知识

在雾天条件下获得的图像会存在严重的退化现象,如景物不清晰、对比度下降、颜色变得暗淡等特点,这种退化会大大降低图像的应用价值。即使是晴天条件下拍摄的照片,大气散射作用也会导致照片的清晰度受到影响。每一个实际场景中,照片清晰度受到影响的因为在于:光线到达相机之前都会从物体表面反射并且散射到空气中。这是因为空气中的某些因素(如浮质、灰尘、雾和烟等)会导致物体表面颜色变淡,并导致整幅图像的对比度降低。因此在生活中的许多领域(比如军事国防、目标识别、交通导航、遥感、卫星成像等)都要用到去雾算法。本次设计的主要功能是通过软件算法实现对图像的去雾。

(一)系统功能及简介:

用到的函数有:histeq hsv cat

histeq的作用是把“图像”的直方图均衡化。 简单的说,有些图像有太多的亮点或者有太多的暗点。histeq通过一个算法,把亮度重新分配,让人看得舒服自然。比如说原来的点都集中在暗处,1-25之间,histeq就可以把25亮度的点“拉”到255处,24“拉”到240处..最后图像的细节都回呈现在你面前。 例子

I = imread('pout.tif');

[J,T] = histeq(I);

figure,plot((0:255)/255,T);

hsv是图像处理中的一个颜色空间。我们的图像不仅仅只有我们通常看到的rgb空间还有 hsv hsi yc等空间。各个空间之间存在着转化关系 ,通过公式可以实现颜色空间的转化。比如分割一个图片,但是在rgb环境下效果不好,那么我就可以把这个图转到其他空间进行分割。

cat用来联结数组

用法:C = cat(dim, A, B) 按dim来联结A和B两个数组。

a=cat(3,A,B) 左括号后的3表示构造出的矩阵维数;在新的矩阵中第1、2维就是A和B这两个矩阵的行数和列数,第3维是A和B这两个矩阵的矩阵个数,即为2

(二)用到的知识:YcbCr RGB

YCbCr 则是在世界数字组织视频标准研制过程中作为ITU - R BT1601 建议的一部分, 其实是YUV经过缩放和偏移的翻版。其中Y与YUV 中的Y含义一致, Cb , Cr 同样都指色彩, 只是在表示方法上不同而已。在YUV 家族中, YCbCr 是在计算机系统中应用最多的成员, 其应用领域很广泛,JPEG、MPEG均采用此格式。一般人们所讲的YUV大多是指YCbCr。YCbCr 有许多取样格式, 如4∶4∶4 , 4∶2∶2 , 4∶1∶1 和4∶2∶0。

RGB色彩模式使用RGB模型为图像中每一个像素的RGB分量分配一个0~255范围内的强度值。RGB图像只使用三种颜色,就可以使它们按照不同的比例混合,在屏幕上重现16777216(256 * 256 * 256)种颜色。目前的显示器大都是采用了RGB颜色标准,在显示器上,是通过电子枪打在屏幕的红、绿、蓝三色发光极上来产生色彩的,目前的电脑一般都能显示32位颜色,约有一百万种以上的颜色。

三、系统设计与实现

(一)实现条件

硬件条件:计算机

软件条件:matlab

(二)设计流程图 

(三)编码与测试 

close all

clc

rgb=imread('e:\20.jpg');

% 对饱和度与亮度进行histeq处理

hsv=rgb2hsv(rgb);

h=hsv(:,:,1);

s=hsv(:,:,2);

v=hsv(:,:,3);

S=histeq(s);

V=histeq(v);

result_hsv=hsv2rgb(h,S,V);

% 对RGB每个通道进行histeq处理

r=rgb(:,:,1);

g=rgb(:,:,2);

b=rgb(:,:,3);

R=histeq(r);

G=histeq(g);

B=histeq(b);

result_rgb=cat(3,R,G,B);

% 对YCbCr的亮度进行histeq处理

ycbcr=rgb2ycbcr(rgb);

y=ycbcr(:,:,1);

cb=ycbcr(:,:,2);

cr=ycbcr(:,:,3);

Y=histeq(y);

result_ycbcr=ycbcr2rgb(cat(3,Y,cb,cr));

% 结果显示

Figure(1)

imshow(rgb),title('原始图像')

Figure(2)

imshow(result_hsv),title('HSV')

Figure(3)

imshow(result_rgb),title('RGB')

Figure(4)

imshow(result_ycbcr),title('YCbCr')

(四)运行结果及分析

五、结论与展望

(一)结论

图像处理就是对图像信息进行加工处理,以满足人类视觉心理或实际应用的需要。我们知道,在图像的产生、传输和记录过程中,不可避免地会带来某些失真和变质即图像的畸变,对于这些变了质的图像,进行一定的加工处理,使其恢复出原本真实的景物,这就是图像复原,即从所获得的信息中反演出有关真实图像。图像复原具有很重要的现实意义。在医学影像、刑事取证中图像的关键信息至关重要。目前,在公安领域的刑事案件侦察中,刑事影像资料越来越发挥着重要的作用。因此,寻求一种行之有效的方法便成为一个必要的课题。

(二)展望

由于本方法是基于单幅图像输入来进行去雾处理,因此无法像多幅图像条件下那样综合同一场景的不同降质条件来估算天空亮度,因此难免会存在偏差。对于简单场景(天空与景物有明显的分界)来说误差较小,但对于存在很多细节的图像(如茂盛的树木,天空也景物难以区分)以及场景中有很多白色景物时,会在边缘出现模糊。雾的颜色对去雾效果的影响是不可忽略的。在以后的设计中可以采用暗通道先验算法来尝试达到去雾的效果。而且软件方面来说,现在的photoshop软件、美图秀秀可以通过抠图和去雾来达到效果。在硬件方面也有去雾镜,还可以利用matlab来实现软抠图。在速度方面来说,此次程序只是针对单幅图像的去雾,对于多幅图像甚至是视频是不起作用的,而且程序的执行速度一般,所以具有一定的局限性。

参考源码:MATLAB图像去雾.zip-其它文档类资源-CSDN下载

六、参考文献

[1]段大高,王建勇编.图像处理与应用[M].北京市:北京邮电大学出版社.2013.

[2]代小红编.基于机器视觉的数字图像处理与识别研究[M].成都市:西南交通大学出版社.2012.

[3]李云红主编.数字图像处理[M].北京市:北京大学出版社.2012.

[4]郭宝龙,孙伟主编.数字图像处理系统工程导论[M].西安市:西安电子科技大学出版社.2012.

5 刘轩;刘佳宾;;基于对比度受限自适应直方图均衡的乳腺图像增强[J];计算机工程与应用;2008年10期

6 王萍;张春;罗颖昕;;一种雾天图像低对比度增强的快速算法[J];计算机应用;2006年01期

7 芮义斌;李鹏;孙锦涛;;一种图像去薄雾方法[J];计算机应用;2006年01期

8 郭璠;蔡自兴;谢斌;唐琎;;图像去雾技术研究综述与展望[J];计算机应用;2010年09期

9 马云飞;何文章;;基于小波变换的雾天图像增强方法[J];计算机应用与软件;2011年02期

10 张金泉;杨进华;卢珊;;基于同态滤波的图像去烟雾方法研究[J];科技信息;2009年07期

MATLAB图像去雾算法相关推荐

  1. matlab 图像去雾算法,各种图像去雾算法

    2005.bmp 5.bmp 5_retinex.bmp Fast Visibility Restoration from a Single Color or Gray Level Image.pdf ...

  2. 基于暗通道优先的单幅图像去雾算法(Matlab)

    基于暗通道优先的单幅图像去雾算法(Matlab) 每一幅图像的RGB三个颜色通道中,总有一个通道的灰度值很低,几乎趋向于0.基于这个几乎可以视作是定理的先验知识,作者提出暗通道先验的去雾算法. ​ 首 ...

  3. 【老生谈算法】matlab实现图像去雾算法——图像去雾

    基于matlab的图像去雾算法详细讲解与实现-附matlab实现源代码 ## 1.原文下载: 本算法原文如下,有需要的朋友可以点击进行下载 序号 原文(点击下载) 本项目原文 [老生谈算法]基于mat ...

  4. 基于MATLAB改进暗通道先验的图像去雾算法

    基于MATLAB改进暗通道先验的图像去雾算法 摘要:暗通道先验去雾算法求得的的透射率比较精细,去雾效果优于大多数去雾算法.然而在暗通道求取过程中,最小值滤波的处理会使得暗色向外扩张,导致透射率扩张变大 ...

  5. matlab求图像暗通道图像,基于暗通道先验条件图像去雾算法

    基于暗通道先验条件图像去雾算法 香港大学何凯明博士于2009发表了一篇论文<Single Image Haze Removal Using Dark Channel Prior>.在文章中 ...

  6. 暗通道优先的图像去雾算法(上)

    FROM:http://blog.csdn.net/baimafujinji/article/details/27206237 11.1  暗通道优先的图像去雾算法 图像增强与图像修复二者之间有一定交 ...

  7. MATLAB图像去雾处理系统

    MATLAB图像去雾处理系统 设计目的 由于大气的散射作用,照相机接收到景物反射过来的光线经过了衰减.雾天的大气退化图像具有对比度低.景物不清晰的特点,给交通系统及户外视觉系统的应用带来严重的影响.. ...

  8. 【论文阅读】改进的基于均值滤波的单幅图像去雾算法研究

    改进的基于均值滤波的单幅图像去雾算法研究 吴延海,张婧,陈康 西安科技大学 学报, 2016 本文是在<基于单幅图像的快速去雾>基础上进行改进.主要改进有以下几点: 对<基于单幅图像 ...

  9. MATLAB图像去雾技术研究

    MATLAB图像去雾技术研究 基本任务及要求: 雾天拍摄的风景图片清晰度下降,而去雾技术可还原其本来面目,增加明艳度.而去雾技术的更重要应用在于卫星图片的清晰度增强. 设计要求: 介绍图像去雾的相关知 ...

  10. Matlab 图像去雾

    一.课题背景 雾,在很大程度上会降低能见度,因此在此情况下拍摄的图像对比度也会受到严重的影响.尤其是在智能化的今天,对于交通领域的影响表现的尤为明显.因此,找到应对这种自然现象造成的图像对比度减弱问题 ...

最新文章

  1. 【译】在ASP.Net和IIS中删除不必要的HTTP响应头
  2. 只用ng test命令测试单个单元测试用例的另一种方法
  3. python测试代码性能_使用python timeit 模块检测代码性能
  4. php 赋予最高权限,为PHP执行赋予root权限(一)
  5. Kubernetes 稳定性保障手册(极简版)
  6. 【176天】黑马程序员27天视频学习笔记【Day11-上】
  7. SCUT - 48 - 飞行员的配对方案 - 费用流
  8. “数”有专攻、智“汇”武汉,周末技术沙龙Call你来!
  9. mysql跳脱字符 单引号_MYSQL特殊字符(单引号,行尾斜杠)的处理
  10. paip.提升用户体验---c++ QLabel标签以及QLineEdit文本框控件透明 设置
  11. servlet工作原理之tomcat篇
  12. 多图详解WBS任务分解法
  13. 富士施乐Fuji Xerox DocuPrint M225 dw 驱动
  14. establish connection
  15. 安装create-react-app教程及简单配置
  16. echarts-liquidfill 水滴图/水位图/水球 下载地址
  17. mysql概念模型中的3种基本联系_在概念模型中,通常用实体联系图表示数据的结构,其 3 个要的元素是( )、( )和( )。_学小易找答案...
  18. CSS(列表+表格+链接+自定义鼠标光标)样式
  19. 火炬之光(TorchLight)使用的Ogre粒子系统插件ParticleUniverse研究
  20. [PC] 2015 僵尸 ZOMBI

热门文章

  1. 50多款51单片机程序源码原理图编程源代码
  2. java我的世界光影推荐_最棒的7款我的世界光影水反效果包
  3. Vue开发实例(02)之将Vue项目代码导入到IDEA并运行
  4. PHP 基于 SW-X 框架,搭建WebSocket服务器(一)
  5. python--爬虫代码汇总
  6. 电脑打印软件哪个好用?
  7. 《深入理解JAVA虚拟机》周志明 第三版 - 第三章 垃圾收集器与内存分配策略
  8. 深入浅出通信原理笔记(1)
  9. python数学符号读法大全_高等数学中所有符号的读法
  10. SVN客户端使用详细