去雾技术

2024-07-28

去雾技术(精选7篇)

去雾技术 篇1

摘要:光在雾、霾等介质中传播时, 由于粒子的散射作用导致成像传感器采集的图像信息严重降质。视频图像去雾霾技术在消除不利天气影响、增强视见度的基础上, 考虑系统实时性。从图像增强和物理模型的研究角度对图像去雾算法的处理效率进行综述, 综合了近年来国内外去雾算法的原理与进展, 给出了典型的去雾算法在视觉上的对比和时效评估数据。最后, 展望了该技术的研究难点和发展趋势。

关键词:视频图像去雾,实时性,图像增强,物理模型

近年来, 雾霾天气在我国频繁出现, 对人们的健康和出行造成较大影响, 引发了全社会的普遍关注。雾和霾是两种不同的物质组成, 在大气中以微小粒子的形态悬浮在空中, 可用米氏散射理论进行描述。

目前, 视频图像去雾技术还处在研发阶段, 各方面可供参考的文献并不多。相较国内, 国外的研究工作起步较早, 进展相对快一些。美国国家航空航天局 (NASA) 的Langley研究中心深入研究基于领域的Retinex算法, 对雾、烟、水下和夜晚图像进行增强, 并将其算法移植到DSP图像增强系统中, 处理分辨率为256×256的灰度图像效率达到30帧/s, 能够基本满足小分辨率下的实时性要求。与此同时, 国内的中科院自动化所、清华大学、天津大学以及中南大学也视频图像去雾方面取得了进展。

1 图像去雾的方法

随着图像去雾算法理论研究的深入和实际应用中的需要, 近年来国内外学者越来越关注在小信息量输入 (单幅图像) 的条件下对数字图像外观的建模与重绘。基于大气退化物理模型的单幅图像去雾是通过合理的数学推演和假设, 还原清晰、高品质的图像。在这方面的早期工作是由Tan等人完成的。他们通过统计发现无雾图像相对于有雾图像必定具有较高的对比度, 从而利用最大化局部对比度处理, 基于MRF框架对结果进行规整化, 达到单幅图像的去雾。

Fattal等人在大气衰减的物理模型的基础上, 运用独立成分分析的方法, 通过假设入射光在大气中的传播 (transmission) 和场景对象的表面特性 (surface shading) 是不相关的, 并利用图像邻域信息的马尔科夫特性和局部最优化的思想计算得到清晰的图像。

香港中文大学的何恺明博士等人在2009年的CVPR上提出了基于暗通道优先提取的单幅图像去雾技术。通过DCP (Dark Channel Prior) 先验, 能够快速估计出大气传递参数, 进而求解清晰图像。何凯明等人在后期的研究中引入导向滤波的方法进行处理, 大大提升算法效率。在该研究的基础上, 衍生出很多进型DCP算法, 取得了不错的效果。

Kratz等人应用MAP的方法解决图像雾的问题, 假设有雾的图像是由场景反照率场景深度两个独立的层组成的, 并利用FMR (factorial Markov Random Field) 思想建模最终得到了较为准确的深度信息。

Zhang通过引入边界保持的非线性滤波的方法, 利用该方法能够使transmission m信息更加准确, 同时能够得到较准确的对象界信息, 而且不受图像局部反照率的影响。

在单幅图像去雾的实时性方面, 也存着一些进展。Codruta O.Ancuti等人提出基半求反 (Semi-Inverse) 的检测去雾算法。算法同样提出一种先验, 即在日光条件下通对多幅图像进行统计, 得到在有雾图像中, 雾区域的半反图像和原始图像基本无差异。因是有雾的区域或者天空的RGB分量各元值都比较大, 而无雾的地方符合暗通道原理即总有一个分量的值比较小。在以上先验假成立的条件下, 估算大气传递参数, 进而对像进行去雾处理。文中提及的数据表明, 该法已能基本支持视频图像实时去雾处理。

2 视频图像去雾时效评估

通常情况下, 图像去雾算法的评估没真实的图像可供参考, 属于无参考客观质量估范畴, 仅能依据对降质图像和复原 (或增强) 图像的分析比较来衡量算法的性能。目前, 针对图像去雾效果的无参考客观质量评估主要是由Hautiere等人所提出的可见边梯度法。

3 视频图像去雾效果

为了考查现阶段去雾算法是否能够满足视频图像去雾的实时性要求, 利用对数图像处理 (LIP) 模型从定量分析的角度对现阶段几种典型的图像去雾方法的时效进行实验分析。通过单幅图像的去雾处理的运算速度和清晰化指标, 来推算处理方法是否能够满足视频流去雾处理的实时性要求, 为视频图像去雾算法的选择提供理论依据。表1比较了几种典型的去雾算法的运算速度与清晰化指标。

由表1可得, 在处理图像大小为450×600的图片时, 理论上传统的基于物理模型去雾方法在运算速度上普遍比基于图像增强去雾方法的慢, 并且能满足视频流实时处理要求的算法仅有自适应直方图均衡化、自适应色阶和对比度和改进的实时去雾算法。

4 结论与展望

本文对视频图像去雾处理进行了综述性介绍, 给出了国内外几种典型去雾算法的时效分析, 为进一步探索视频图像去雾处理方法, 提高算法效率提供理论依据。

视频图像去雾技术在计算机视觉、模式识别中有着广泛应用, 属于图像处理和计算机视觉领域的研究热点之一, 具有重要的实际应用价值, 吸引着国内外很多研究人员的关注。目前, 国内外的相关研究在视频图像去雾算法的自动、鲁棒和实时性上远没有达到成熟阶段, 因此, 该领域的研究仍存在很大的发展空间。

去雾技术 篇2

户外景物的图像通常会因为大气中混浊的媒介(比如雾、霭、蒸气等)而降质,这是由于光线被大气吸收或光线散射造成的。这使得图像的对比度和颜色的保真度都会有所下降,产生雾化效果。因此,对含雾图像进行清晰化处理具有重要意义。

近年来,针对单幅图像去雾的研究取得了重大的突破。Tan[1] 通过最大化局部的差异度的方法来恢复图像的对比度,在处理特定图像上取得了较好的效果,但该方法的缺点是复原后的图像颜色会发生过饱和。Fattal[2]提出了部分符合物理规律的简单去雾模型,利用复杂的优化计算得到去雾结果,然而该方法处理浓雾图像失真较大。He等人[3]提出了暗原色先验的方法,并利用该方法取得了很好的去雾效果,从而成为目前比较有效的图像去雾方法。

基于暗原色先验的方法在图像去雾方面取得了重大的突破,但是在实际应用中存在计算量大的问题,其效率较低,从而限制了其应用与推广。本文针对这一问题,对基于暗原色先验的图像去雾算法进行改进,减少了图像去雾的计算量,提高了处理效率。

1雾图形成的物理模型

在计算机视觉和计算机图形领域,雾图形成模型广泛采用如下公式[1,2,4,5]:

I(x)=J(x)t(x)+A(1-t(x)) (1)

式中:x是表示像素点坐标,I指像素颜色强度,J表示景物光线强度,A是大气光成分,t用于描述光线通过媒介透射到相机过程中未被散射的部分,方程右边的第一项J(x)t(x)叫做直接衰减项[1],第二项A(1-t(x)) 则是大气光成分。直接衰减项描述的是景物光线在透射媒介中经衰减后的部分,而大气光成分则是由前方散射引起的,会导致景物颜色的偏移,去雾的目标就是从I中复原J,A,t

2暗原色先验的去雾方法

2.1暗原色先验去雾的理论基础

通过对户外无雾图像的观察可得出暗原色先验规律,即绝大多数的户外无雾图像的每个局部区域都存在某些至少一个颜色通道的强度值很低的像素。用公式描述,对于一幅图像J,定义如下:

Jdark(x)=minyΩ(x)(minc{r,g,b}Jc(y)) (2)

式中:Jc代表J的某一个颜色通道,而Ω(x)是以x为中心的一块方形区域。除了天空区域,Jdark的强度总是很低并且趋近于0。如果J是户外的无雾图像,Jdark则称为J的暗原色,并且把以上观察得出的经验性规律称为暗原色先验。

基于这个共识,当图像中有雾存在时,可以通过统计其暗原色推出每一点处的透射率t′,假定在一个局部区域的透射率恒定不变,首先对式(1)两端用Ac进行归一化,得到式(3):

minΩ(minc(ΙcAc))=minΩ(minc(JcAc))t+1-t (3)

根据暗原色先验的规律,无雾自然图像的暗原色项Jdark接近于0,且A总为正,即右侧第一项可以近似为0,因此可得透射率t′如下:

t=1-minΩ(minc(ΙcAc)) (4)

由于在推导过程中假定透射率是局部不变的,而事实上并非如此,因此计算出的透射率t′并不平滑,会有很明显的块状效应,如图1,直接利用t′恢复出来的图像会有明显的失真,要除去这一痕迹需要做进一步平滑处理。He等人使用一种基于closed-form框架的soft matting方法[6]来精炼透射率t′,将透射率转化为以下最小化函数:

E(t)=tT-Lt+λ(t-t′)T-(t-t′) (5)

对于此二次型函数优化,可以将之转换为线性方程组的求解,计算得到优化透射率t,为了确保soft matting效果。He等人使用了较小λ=10-4进行处理。

在透射率平滑后,恢复无雾图像的公式如下:

J(x)=Ι(x)-At(x)+A (6)

式中:A是通过统计暗原色中最亮的前0.1%像素所对应的原图中最大像素值估计出的值。

2.2具体算法

He算法的主要流程图可归纳如图1所示。

在函数实现的过程中,为保证程序功能的相对独立,对流程图中的每一阶段,都对应为相应的函数。He算法实现去雾的主体程序代码如下:

在具体实现并使用以上算法时,其瓶颈在于优化透射率t′的计算,在计算过程中,构建Matting Laplacian矩阵所需的额外空间开销大,求解线性系统过程中速度慢,采用450×600的图像进行测试,其在测试机器上耗时20s左右,其中优化透射率的计算耗时最多。计算效率是限制He方法实用化的最大障碍。

3利用高斯滤波平滑透射率

高斯滤波是图像处理中典型的线性平滑滤波技术[7]。高斯滤波过程就是图像与正态分布卷积的过程[8]。由于高斯滤波是相邻位置的像素强度的加权值,并且权值的定义与像素之间空间距离成正比,故利用高斯滤波平滑透射率t′来得到最终的透射率t:

t=qSGσ(p-q)t (7)

其中:Gσ表示高斯函数——高斯核。

优化算法的主要流程图可归纳如图2所示。

优化算法实现去雾的主体程序代码如下:

平滑之后的透射率见图3,可以看到,平滑之后的透射率保留了场景的轮廓信息,并且是处处平滑的,纹理部分也被抹去了。

4测试与分析

本文在操作系统Windows 7,CPU为奔腾双核2.88GHz、内存2G的普通PC机上实验,试验程序由Visual C++ 2008和OpenCV 2.0编写。测试数据为He个人网站提供的实现He方法的实验图像。对比He方法和优化后的处理结果,如图4所示。

从图4中可以看出,优化后的去雾效果与He方法本身的效果在视觉上基本一致。

He方法计算量最大的部分是最小化函数求解。Matting Laplacian 矩阵L的大小为M×M。在He方法中,M为整个图像的像素总数(对于400×600的图像,M为240000),然后He方法将求解规模为M的线性方程组。虽然L在系统中以稀疏矩阵的形式存储,依然需要大量内存空间存储和计算时间,而采用高斯滤波则完全不涉及这一问题。本文测试了不同分辨率的图片在优化前后的处理速度,实验结果如表1所示。

从表1可以看出,优化后的去雾方法极大地提高了处理速度,计算时间为原方法的1/20左右,从而使基于暗原色先验的去雾方法更具有实用性。

5结语

随着图像传感器应用和计算机技术的发展,户外机器视觉系统得到了广泛的应用,而恶劣天气(雾、霭、蒸气等)是影响户外视觉系统正常工作的最主要原因。由于大气的散射作用,雾天使得图像的色彩和对比度大幅度下降,直接影响图像特征的提取,从而导致了以提取图像特征为基础的监控、跟踪、智能导航等视觉应用系统无法正常稳定工作。

本文在暗原色先验的基础上,使用高斯平滑滤波代替soft matting方法来平滑透射率,通过算法改进,在保证去雾效果的同时,极大地提高了去雾的处理速度,是原有速度的1/20左右。优化后的去雾方法可以为近代科学研究、军事技术、医学、工农业生产、气象及天文学等领域的应用图像的特征信息的识别与判定提供一定帮助。

然而优化技术依然以暗原色先验为基础,当暗原色先验规律不成立时,实验效果难以保证。因此,寻求更有效的去雾模型或者研究更成熟的去雾算法是一个亟待解决的问题。

参考文献

[1]Tan R T.Visibility in bad weather from a single image[C]//Proceed-ing of IEEE Conference on Computer Vision and Pattern Recognition(CVPR’08).Washington,USA:IEEE Computer Society,2008:1-8.

[2] Fattal R. Single image dehazing [J]// Proceeding of Siggraph’08.New York USA: ACM, 2008: 1-9.

[3]He K,Sun J,Tang X O.Single image haze removal using dark chan-nel prior[C]//Proceeding of IEEE Conference on Computer Visionand Pattern Recognition(CVPR’09).Washington,USA:IEEE Com-puter Society,2009:1956-1963.

[4] Narasimhan S G, Nayar S K. Chromatic framework for vision in bad weather[C]//Proceeding of IEEE Conference on Computer Vision and Pattern Recognition (CVPR’00). Washington, USA: IEEE Computer Society, 2000: 598-605.

[5] Narasimhan S G, Nayar S K. Vision and the atmosphere. International Journal of Computer Vision, 2002,48:233-254.

[6]Levin A,Lischinski D,Weiss Y.A closed form solution to natural im-age matting[C]//Proceeding of IEEE Conference on Computer Visionand Pattern Recognition(CVPR’06).Washington,USA:IEEE Com-puter Society,2006:61-68.

[7] Haddad R A, Akansu A N. Class of Fast Gaussian Binomial Filters for Speech and Image Processing[C]//IEEE Proceedings of the International on Acoustics, Speech and Signal Processing. Detroit, 1991: 723-727.

基于偏振特性的图像去雾算法 篇3

由于雾天条件下, 大气能见度大幅下降, 所获得的图像严重退化, 图像中蕴含的很多特征信息也被覆盖, 大大降低了所采集图像的应用价值。因此, 研究退化图像的复原技术具有重要现实意义。目前, 图像去雾大致分为两大类:基于图像处理的增强方法和基于大气散射物理模型的复原方法。其中复原方法一般能达到较为理想的去雾效果, 但通常也需要获得场景的深度等辅助信息。

对于外界因素对成像的影响, 国内外学者均做了大量研究。Schechner等人[1,2]利用偏振片获取同一场景下垂直和平行入射面的两幅图像, 用其估计偏振度和其它参数, 进而恢复图像。薛模根等人[8,9]基于定义的偏振图像暗通道, 自动提取图像中的天空区域, 优化大气光的强度和偏振度, 最终复原得到场景的辐射强度。但这两种方法均未考虑场景深度对偏振度的影响, 而是近似认为偏振度是全局不变量, 导致离视点较远区域的去雾效果明显下降。冯斌等人[5,6]提出了偏振滤波抑制大气背景光的性能计算模型, 通过在相机前加旋转偏振片来抑制大气背景光, 进而提高图像成像质量。He等人[3]提出了运用暗原色先验知识的单幅图像去雾算法, 但其复原后图像存在色彩失真且该算法速度比较慢, 达不到实际应用的要求。本文通过研究雾天条件下偏振图像的属性特征, 以及大气光的偏振特性与场景深度的关系, 结合暗原色先验去雾理论提出一种基于大气偏振特性的图像复原方法。

1 基于物理模型的算法原理

1.1 大气散射衰减模型

雾霾天气条件下, 由于大气中的微粒对光线的散射作用, 从景物点所反射的光的部分光通量被微粒吸收和反射, 使到达观察者的入射光随场景深度指数衰减。若用D表示观测点接收到的场景光强, Lobject表示景物的辐射强度, 结合大气散射模型[4]知:

导致雾霾天气图像质量退化的另一个原因是大气光成像。由于光路上的大气微粒对周围环境的入射光也具有反射作用, 因此会有部分光沿着景物到观察者的路线射向接收装置, 导致场景模糊和颜色偏移失真, 这部分光照可以看作由大气产生的光源, 称为大气光。大气光的辐射强度A可表示为:

式中:A∞表示无穷远处的大气光强度, t (z) =exp (-∫0zβ (z) dz) 表示介质传输率;其中β是散射系数, z指场景到观测点的距离。

1.2 光的偏振特性

假定在同一时刻, 任意散射粒子的散射源均来自于同一个方向, 则到达散射粒子的光线以及成像系统和散射粒子的连线构成一个入射平面。可以将大气光分解成垂直和平行于入射面的两个偏振分量AV和AH, 振成像系统接收到的光分解为IH和IV, 则大气光的偏振度及图像整体偏振度为:

由以上理论知, 场景光强D随距离呈指数衰减, 而大气光强A随距离呈指数递增。因此, 可以近似认为到达偏振成像系统的光波其偏振态主要是由大气光造成的, 从而有:

再根据以上公式, 综合得到场景辐射强度为:

因此, 只要我们求出A∞和pA, 就可以根据上式, 还原出景物的辐射强度。

2 偏振图像去雾算法

2.1 估计大气光

大气光的选取直接影响到图像传输率图的求取, 进而影响图像复原效果。直接选取图像中最亮的像素作为大气光的估计值, 则易受到场景中白色物体或高亮噪声的干扰, 存在较大偏差。本文结合暗原色先验知识提出具有更高鲁棒性的估测方法。

假定雾在空气中均匀分布, 则雾最厚的地方应该是图像上无穷远处的天空区域。根据暗通道先验原理, 首先选取暗通道中亮度最大的0.1%的像素, 这些像素大都是朦胧不透明的;然后将这些像素与输入图像中相同位置像素对应起来;最后, 为避免直接选取满足要求区域最亮像素点存在较大误差, 我们以最亮像素的3×3领域的九个值作为参考, 将选择的像素点的平均强度值作为大气光估计值。这里我们约定最大偏差不大于Dev, 即:

为尽量减少噪声点对大气光估测的影响, 根据实验经验选取Dev为0.05。

2.2 场景深度信息

雾天图像降质程度与场景深度呈非线性递增关系, 而通常情况下图像中景物的深度信息不完全一致, 由于全局的处理方法无法体现局部景物的深度变化, 故对于场景深度变化较大的图像难以获得令人满意效果。

根据暗原色先验原理知, 大多数无雾图像都至少存在一个强度值较低的颜色通道, 在被雾干扰后亮度值变大, 所以被浓雾覆盖的图像区域的暗原色具有较高的强度值。因此, 这些暗像素能够直接用来评估雾光的透射信息。结合雾成像模型和软抠图修复方法, 我们可以得到较为理想的深度图。其中暗通道的定义为:

进而我们可以求出传输率图t, 传输率图中亮度越高的地方表示场景辐射通过性越好, 即距离视点越近。为避免块效应, 利用软抠图法优化传输率得:

其中常参数ω (0<ω≤1) 的取值为0.95。

根据大气传输模型知, 在大气散射粒子分布均匀且各向同性的假设下传输率为:

由式 (9) 知, 大气传输率和场景光学厚度是紧密相关的。根据式 (8) 和式 (9) 我们可以得到图像的深度图。

2.3 大气偏振度

由以上知, 场景光强:

从上式可以看出, pA值的大小直接影响D的估计精度, 若pA选取不当, 将会导致场景部分细节信息的丢失, 考虑到A和D是图像的两个不同组成部分, 因此合适的pA应使两者相关性尽量小。两者相关性可以根据互信息进行度量, 互信息越大两者相关性越强, 这里用归一化互信息进行衡量。

传统的基于偏振特性的图像去雾算法以大气模型是平行平面模型为假设前提, 故沿着成像设备光轴方向的偏振度始终不变, pA不依赖于场景深度信息。事实上, 大气模型理解为球形模型[7]更为准确, 偏振度具体取值是和光的传播路径也即和光学厚度是相关的;并且近似认为偏振度是全局不变量的方法, 忽略了场景的反射以及周围环境引起的偏振变化, 存在误差, 且误差在后续的处理中会不断被放大。因此传统方法图像复原效果不佳。

根据Schechner等人基于偏振特性去雾原理知:

其中b是相机的每个像素的比特数目, 鉴于上面的分析, 在式 (12) 中用ε1βz代替βz, ε2bln2代替bln2, 得到含有未知量的表达式为:

P1表示大气散射系数和景深分别为β1和Z1时, 采用偏振光测量设备对大气背景光偏振度的测量值, 将一组{β1, Z1, b, P1}测量数据代入公式, 可得到含有未知参数的方程, 为保证鲁棒性, 利用多组这样的数据, 求解得未知参数ε1和ε2分别为0.251和0.647, 至此, 可得偏振度为:

假定Dmax为图像最大景深值, Di为图像各点像素景深值。从总景深中减去具体像素点景深值, 得到景深差, 景深差值在总景深中所占比例我们定义为有效景深比:

w>a即无穷远远处偏振度, 我们近似认为:

其中a为边界值, 这里取0.9。算法根据景深不同赋予偏振度不同权值, 最后根据场景辐射度公式可以复原图像。

3 算法描述

传统基于偏振度的图像去雾方法对不同景深作统一处理, 丢失了较远处场景细节信息。本文提出一种基于偏振特性的图像去雾算法, 该方法以景深为偏振度权值, 使用Matlab编码实现, 其具体算法流程如下:

1) 获取大气光信息, 根据暗原色找到最亮像素点, 把它对应到原图像中, 取该像素点的3×3领域的九个值的平均强度值, 并结合式 (6) 估计大气光强;

2) 利用暗原色获得传输率图t, 使用拉普拉斯矩阵对传输图进行修复, 最后利用式 (8) 、式 (9) 求取景物深度图;

3) 根据景物深度信息, 结合式 (14) 和式 (16) , 求取大气偏振度的具体值;

4) 使用A、t (x) 和I, 通过式 (5) 复原得到景物辐射强度图像。

其中部分代码如下:

4 实验结果与分析

为了验证算法的有效性, 利用偏振相机获取雾霾天气条件下多组偏振图像, 偏振度为0、45、90及135度。在配置为Pentium E, 2GB内存的PC上用Matlab 2010进行算法编码。实验所用两组图像为实际拍摄获得, 图1大小为180×150, 图2大小为340×280。多组实验证明了本文算法的有效性。

因景深在一个局部区域并不总是恒定不变的, 图1 (b) 采用He去雾方法导致离视点较远的房顶区域模糊不清, 后排建筑物光晕现象明显, 局部区域色彩失真。而使用本文方法处理后的图像, 图像直方图分布更加广泛均衡, 对图像进行了有效增强;远近景物均较清晰, 图像整体色彩也更接近实际更自然, 复原效果较好。

图2 (b) 中Schechner算法利用垂直和平行与入射面的两幅图像进行去雾, 大气偏振度为全局不变量, 从效果图可以看出远景区域楼宇模糊, 只能看出大致轮廓, 且远处接近天空区域颜色偏暗。而本文改进算法处理后远处建筑较Schechner容易分辨, 且场景目标的层次清晰分明。

和第一组图片相比, 第二组属于多景深的复杂场景环境, 且有白色建筑物等干扰因素, 实验表明场景景深突变多或存在接近天空颜色的区域等干扰因素时, 本文算法复原效果仍较理想, 而其它算法在此情况下远处景物不能清晰表现。

为进一步比较复原图像质量, 我们采用图像熵、标准方差、平均梯度对图像去雾效果进行定量描述, 各参数值越大说明图像越清晰。这里依据图2分别比较了He等人提出的暗原色去雾方法、Schechner等人提出的偏振去雾方法及本文提出的基于偏振特性的去雾方法, 结果如表1所示, 从表中可以看出, 通过去雾处理, 各图像清晰度指标均有所提高, 且本文恢复的图像要比Schechner和He方法恢复的图像更加理想。

5 结语

针对传统基于偏振特性的图像去雾算法未考虑深度信息对于大气偏振度的影响, 导致深度突变处出现光晕且离视点较远区域的去雾效果明显下降, 本文提出一种基于偏振特性的图像去雾算法。该方法根据景深的不同得到不同偏振度值, 对其进行优化。实验结果表明, 新的去雾算法在恢复图像细节的基础上能够有效抑制光晕的产生, 证实了本文方法的可行性和有效性。对于浓雾天气, 其去雾效果仍不理想, 提出更为鲁棒的图像去雾方法和提高图像去雾的实时性等是我们下一步的工作重点。

摘要:传统的基于偏振特性的图像去雾方法近似认为大气偏振度为全局不变量, 而未考虑场景深度信息对于偏振度的影响, 导致离视点较远的场景区域去雾效果严重下降。提出一种基于偏振特性的图像去雾方法。该方法结合暗原色先验原理估计大气光强及场景深度信息, 再利用景深信息对偏振度值进行求解, 最终复原得到场景的辐射强度信息。实验结果表明, 该算法能够有效恢复雾天图像细节信息, 获得满意的视觉效果。

关键词:偏振度,暗原色,景深,光学厚度

参考文献

[1]Schechner Y Y, Narasimhan S G, Nayar S K.Instant dehazing of images using polarization[C]//CVPR, 2001, 1:325-332.

[2]Schechner Y Y, Narasimhan S G, Nayar S K.Polarization-based vision through haze[J].Appl.Opt, 2003, 42 (3) :511-525.

[3]He K M, Sun J, Tang X O.Single image haze removal using dark channel prior[C]//IEEE Conference on Computer Vision and Pattern Recognition, Miami, USA:IEEE Press, 2009:1956-1963.

[4]McCartney E.Optics of the Atmosphere:Scattering by Molecules and Particles[M].New York, USA:John Wiley, 1975.

[5]冯斌, 史泽林, 艾锐, 等.偏振滤波抑制大气背景光的性能计算模型[J].光学学报, 2011, 31 (4) :21-30.

[6]冯斌, 史泽林, 艾锐, 等.近水平观测条件下大气背景光偏振度的计算模型[J].红外与激光工程, 2012, 41 (3) :704-712.

[7]吴良海, 高隽, 范之国, 等.基于复球面映射的大气偏振模式表征与分析[J].仪器仪表学报, 2011, 32 (4) :870-876.

[8]王勇, 薛模根, 黄勤超.基于大气背景抑制的偏振去雾算法[J].计算机工程, 2009, 35 (4) :271-275.

基于暗通道先验的快速图像去雾 篇4

然而,雾天图像的复原并非简单的任务,如果不考虑雾化图像的退化机理,采用传统的基于图像处理的增强技术,如直方图均衡,大多难以取得满意的复原效果。式(1)描述了雾天成像的过程[1],其中,t(x)=e-βd(x)定义为透射率,量化出场景辐射光在大气介质中的穿透能力。d(x)表示场景深度。根据式(1),图像退化来源于场景辐射光直线传播过程中引入的衰减,以及环境光经过空气溶胶颗粒的散射。这两部分都依赖于场景深度。若能从雾图中有效估计出场景的深度图(或透射图),将会有效增强图像去雾的效果。

1 相关工作

近年来,关于场景深度的估计出现了不少方法,例如,Kopf[2]提出直接通过给定场景的近似3D几何模型计算景深,Schechner等[3,4]利用同一场景下的多幅不同极化方向的图像推导深度信息,Narasimhan[5,6]依据不同天气条件下的多幅同场景图像对景深进行估计。目前研究最多的是借助于一些已知的先验或假设从单幅雾像中估计景深或者透射率,其中,基于暗通道先验假设的单幅图像去雾方法引起很大的关注。He[7]根据来自大量的户外无雾图片的统计结果,发现了暗通道的先验规律,并在大气散射物理模型基础上借助暗通道先验对降质图像进行复原。He[7]算法的局限性主要体现在两个方面,其一,采用软抠像方法对透射图进行精细化处理,会引入大量的计算和存储开销,影响算法执行效率,不适合实时处理;其二,对于暗通道先验失效区域,特别是天空区域去雾后容易产生色偏现象,复原效果不理想。

为实现实时去雾,近几年涌现出一些面向单幅图像去雾的快速算法。He[8]利用原雾图作为引导图像,通过对暗通道先验粗估计得到的透射图进行引导滤波达到精细化目标,虽然能够较好地保持原图的边缘结构,大幅度提高去雾速度,但无法完全消除边缘附近的光晕现象。Hu[9]利用透射梯度优先规律对软抠图处理进行优化,应用多分辨率处理降低计算复杂度。但由于升采样时并未考虑到原始边缘纹理等因素,容易导致在深度突变处残留部分光晕,而且计算复杂度仍然较高;Meng[10]利用边界限制条件估计出粗透射图,并构造正则函数对粗透射图模糊处理,虽然具有较快的处理速度,但在处理白色物体时,常常引起色偏;Tarel[11]利用中值滤波对大气耗散函数进行近似估计,虽然算法计算复杂度可以达到O(N),N代表图像包含像素的数目,但中值滤波的平滑处理会丢失许多边缘细节,导致复原效果不佳。Gibson[12]在He[7]算法的基础之上,使用中值滤波修正暗通道先验,由于该方法无需对透射图进行边缘优化,大大降低了计算复杂度,但复原效果不理想,容易出现黑斑效应。

为解决暗通道先验失效的情况,文献[13]提出从图像中分离出天空部分,通过特别处理防止发生色偏。但由于目前并未有一个鲁棒的天空识别方法能够适用于所有图像,因此识别出的天空往往是不精确的,容易造成复原图像在天空边界处不连续,影响了图像的视觉效果。

为此,本文将针对原始暗通道先验去雾存在的不足作出针对性的改进。为提高去雾速度,设计新的透射图优化方法替代复杂的软抠图技术,通过引入多分辨率处理,并结合最小滤波和联合双边滤波,实现快速有效的单幅图像去雾处理。另外,为解决暗通道失效的问题,提出透射率下限的自适应调节机制,扩大暗通道先验的适用范围,从而克服天空区域的色偏现象,提高去雾效果。

2 暗通道先验去雾

依据雾天成像模型,如式(1)所示,图像去雾的目标是从雾图I(x)中恢复出J(x)。为了简化计算,假设透射率在局部块中保持不变,并且大气光在所有颜色通道上的分量相同。为计算透射率,对式(1)的两端在所有颜色通道上执行最小滤波,可以得到:

根据暗通道规律,户外清晰图像中任意局部邻域都以很高的概率在某个通道上存在暗像素点,满足:

将式(3)带入式(2),可以得到透射率计算的简化形式:

事实上,即使是能见度极好的天气,大气中存在的微小颗粒也会造成远处景色的雾化效果。为了保证图像复原的自然度,He[7]提出在计算透射率时引入常数ω(0<ω≤1),得到

这样,复原后的图像J(x)可以表示为:

式(6)中,设定透射率下限t0是为远景保留一定的雾气,不破坏去雾后自然的视觉效果。

3 基于多分辨率处理的透射图优化

从式(5)中可以看出,暗原色的计算等同于对图像执行最小化腐蚀,单个亮度小的像素会拉低其邻域范围内的其他像素的暗原色,造成透射率的过高估计,容易覆盖或模糊边缘,导致在复原图像的景深突变区域产生“晕斑”现象。为此,He算法[7]应用软抠像方法细化透射图,本质思想是,采用高精准的插值算法,根据帧内相关性,从已知信息中求出未知信息。虽然能够较好地从粗透射图中还原出与原图像一致的边缘细节,但算法本身计算复杂度过高,耗时过长,不利于实时处理。

针对此问题,本文提出一种新的透射图细化方法,其核心思想是:在多分辨率处理框架下,利用最小值滤波与联合双边滤波代替抠图处理,对基于暗通道先验粗略估计出的透射图进行细化。具体的透射图细化方法描述如下:

首先,为了降低计算复杂度,应用均值化方法对原始雾图I进行下采样处理,得到低分辨率图像Id,如式(7)。

式(7)中,c表示颜色通道,n=max{round[max(h,w)]/Rs),1},Rs为降采样参数,h和w代表原始雾图I的高度和宽度。由于透射率与图像的纹理细节无关,采用均值降采样,除了降低计算量,还可以在保留深度信息的同时,达到模糊图像纹理的目的。

然后,根据式(4)计算Id对应的透射率粗估计td,并应用式(8)进行最小值滤波,执行初步细化处理。其中,Ωm(x,y)为以像素(x,y)为中心的方形邻域,邻域尺寸与He[6]算法中使用的最小操作窗口相同。最小值滤波的目的是,修复被高估计的边缘透射率,从而使透射图的深度信息接近于原始图像。

由于暗原色是基于局部腐蚀处理的,导致估计得到的透射图出现很严重的块效应,使得物体边缘模糊,特别是景深突变区域引起很大的估计误差。虽然经过最小滤波后,透射图在一定程度上减少了边缘附近的错误估计,但边缘结构的精细化程度还不够,并且与原雾图在边缘结构上一致性差。考虑到联合双边滤波在边缘保持特性方面的优势,本算法将原雾图的下采样灰度图作为引导图像,对经式(8)处理得到的初始细化透射图,执行式(9)所示的联合双边滤波,将雾图的边缘结构引导迁移到透射图中,实现边缘细化的目的。

式中f和g分别对应空域高斯滤波器和值域高斯滤波器,Kb为归一化因子,Ωb(x,y)为以(x,y)为中心,边长为r1的方形邻域,Idg为经过下采样后的雾图对应的灰度图像。

最后,对tdmb进行双三次插值处理,得到tmb恢复到雾图的原始尺寸。由于插值操作本身存在误差,当分辨率较高时,将造成透射图的深度结构与原图像相比偏差较大,在去雾结果的深度突变区域会产生少量光晕。所以,针对高分辨率的透射图tmb,需要引入额外的边缘修复。具体而言,采用Sobel算子对tmb进行边缘检测,边缘检测门限为Te,确定明显边缘点后对其执行宽度为w的膨胀处理。对膨胀区域的透射率再次应用联合双边滤波进行细化。为了降低计算开销,对于分辨率高的tmb,应选择较大的滤波窗口r2。

图1为本文算法与He[7,8]算法的去雾效果对比,可以看出,He[8]在景深突变附近仍存在一片薄的雾气,而本文算法能够取得与He[7]近似的去雾效果。更重要的是,对于图1中分辨率为1 024×768的原雾图,本文算法去雾时间仅为He[7]的0.73%,为He[8]的74.4%。

4 基于天空识别的透射率下限调整

根据式(2),推导出,

对于户外清晰图像,若场景中包含天空区域或者白色近景物,暗通道先验就会失效。对于先验失效区域,,意味着,实际的透射率会高于先验假设下的估计值。如果天空部分按照暗通道先验估计得到的透射率进行去雾,容易引起颜色失真。考虑到原雾图中天空亮度较大,根据式(12),天空部分的透射率接近下限。换句话说,式(6)中透射率的下限值主要影响天空区域的复原。因此,通过调节透射率的下限值能够修复因先验失效引起的透射率的错误估计。对于有天空的图像,设置较高的透射率下限值,反之,不包含天空部分的图像,设置较低的透射率下限值。

为实现透射率下限的自适应调节,能否有效识别图像中的天空区域是关键所在。直观上,天空区域具有平坦特性,在较大范围内是连通的,并且亮度较高。这里,为了识别天空部分,算法将同时满足平坦性、连通性以及高亮度这三个特征的像素视为可疑天空像素。统计可疑天空部分所占图像的比例,如果超出一定阈值,则识别出图像中包含天空区域。

为识别出所有具有平坦性的像素,对灰度图Idg进行梯度检测,设定检测门限为Tg,梯度超出Tg的像素为1,否则为0。然后对所有边缘点以宽度l进行方形扩展,得到二值图B,对B取反就得到平坦检测的掩码图Mg。由于天空像素都具有较大的亮度,为了识别出Idg中所有的高亮像素,设置亮度阈值Ti=0.95A,A为环境光强,生成亮度检测的掩码图Mi,将所有灰度值大于Ti的像素为1,否则为0。另外,为检测具有连通性的天空像素,根据像素灰度值,将Idg中灰度值接近的像素划为相同类别,求解式(13)所示的最优化目标函数,类别数目N=8,vi是Idg中的像素,Ck为聚类中心,初始值在图像中等间隔选取。

在分类结果中,选中最亮类别对应区域,将其所有像素设为1,其余为0,得到连通性检测的掩码二值图Mc。

综合考虑天空的平坦性、连通性和高亮特性,可以确定可疑天空像素集合,如式(14)所示,并依此计算可疑天空在Idg中所占比例η。式(14)中,&表示逻辑与运算。

文献[14]经过实验统计,得出天空区域的灰度近似符合正态分布。所以,识别出可疑天空像素还不够,还需要判别可疑天空像素集合是否近似满足正态分布。为此,算法对集合S作正态分布的卡方校验,设置显著水平为α。如果集合S中包含的像素数目达到一定比例Tn,并且S近似符合正态分布,则认定图像中包含天空部分。反之,可疑集合S对应浓雾区,虽然也满足高亮、平坦和连通的特性,但具有较小的透射能力。因此,对于浓雾区,为了获得理想的去雾效果,应该降低透射率下限值。并且,雾越浓,平均亮度越大,透射能力越小。

根据上述分析,我们可以依据集合S的平均亮度来调整透射率下限。定义为集合S的平均亮度。如果图像中存在天空部分,则。这里,λ为调节因子。为了防止下限过高,影响非天空区域的去雾效果,设定透射率下限不超过0.35。如果判定图像中不包含天空部分,设置。越大,t0越小。为保证t0非负,还需限定t0=max(t0,0)。

图2比较固定透射率下限和自适应调整透射率下限两种情况下的复原效果图。从图2中,可以看到,(a)、(c)中天空部分颜色失真,视觉效果不理想,而(b)、(d)天空部分很自然,消除了色偏现象。(e)和(f)不包括天空部分,但由于调整了透射率下限,相比(e),(f)中远处的浓雾区恢复效果更好,可见度得到提高。

5 实验结果与分析

为了验证算法性能,采用matlab(R2010b)运行算法代码,计算机硬件配置为Intel(R)Core(Tm)i5-4210U CPU@1.70GHz with 8.00 GB RAM。实验选取四幅具有较高分辨率的常用雾图(如图3)进行算法比较与分析。本文所提算法中,参数的设置如表1所示。采用K-Means聚类算法求解式(12)所示分类问题,卡方校验中采用的显著水平α=0.05,所提算法的其他参数与文献[7]一致。

5.1 去雾主观效果

图4~图8列出本文算法与目前几个主流算法的去雾结果。这里选取的比较算法包括直方图均衡算法[15],Tarel[11]算法,He[7]算法,He[8]算法。其中,直方图均衡[15]采用传统的图像增强方法执行去雾,在复原过程中不考虑雾图成像的机理,直接通过对比度增强来改善雾图的视觉效果。He[7]算法最早提出暗通道先验,为了优化去雾效果,应用抠图方法细化透射图,保持边缘结构。He[8]算法在暗通道框架下,应用引导滤波执行透射图细化。Tarel[11]算法应用中值滤波加快去雾处理。

从算法的去雾结果,可以看出,直方图均衡算法[15]的去雾效果最不理想,颜色失真严重,存在过饱和现象;Tarel[11]算法复原后的图像也存在明显的颜色失真现象。He[7]对于大部分图像具有较好的去雾效果,但去雾后整体颜色偏暗,缺乏层次感;He[8]能够较好地处理一般深度突变图像,但在部分深度突变剧烈处仍残留少量雾气,导致视觉质量严重下降;本文所提算法能够较好地保留边缘细节,颜色保真度好,复原图像更加清晰、自然。

5.2 去雾客观评价

为了从客观上验证算法的性能,本文采用梯度、平均亮度、信息熵三个性能指标评价复原图像的质量,并比较算法的去雾效率。图像的平均梯度表示边缘两侧附近的灰度变化率,在一定程度上能够反映图像的清晰程度;信息熵量化了图像包含的信息量,其值越大,图像细节特征越丰富;图像的平均亮度越接近0.5,人的视觉效果越好。

表2比较了图4~图8所示算法去雾结果对应的性能指标。从表2中,可以看到,经过本文算法去雾处理后的图像,对应的平均亮度、梯度和信息熵这三个指标,大多大于Tarel[11]算法,He[7]算法以及He[8]算法,仅次于直方图均衡算法。直方图均衡本身是以拉伸对比度为目的,虽然复原后图像在梯度、信息熵和亮度上具有较大的值,但这并不代表去雾效果好。从图3所示的去雾结果,可以明显看出,执行直方图均衡后复原图像表现出严重的颜色失真和过饱和现象。

另外,表3给出各算法对四幅图像进行去雾处理耗费的时间。从比较结果上看,本文算法的处理时间最短,算法执行的速度明显快于Tarel[11]算法和He[7]算法。而且,图像分辨率越高,这种速度优势越明显。可见,采用本文所提的透射图优化算法不仅可以获得更好的图像复原质量,而且计算复杂度低,具有更高的工程应用价值。

6 结论

去雾技术 篇5

近年来, 雾霾持续笼罩着我国大部分地区, 同时也给户外图像的清晰度造成极大的影响。在军事侦察、视频监控、遥感监测中, 图像的清晰度都是至关重要的。因此, 为了实现户外视觉系统在雾霾天气下工作的可靠性和鲁棒性, 必须对雾霾图像进行清晰化处理。

目前图像去雾算法主要分为基于图像增强和基于图像复原的两种类型, 基于图像复原的去雾算法得到了更广泛的研究。何凯明等人在提出暗影通道先验的知识后, 有效的实现了图像的去雾问题。然而, 由于该算法中透射率细化过程中软抠图算法较为复杂, 难以在实际中得到有效地应用, 本文在保证改进后雾霾图像处理效果接近原算法的前提下, 主要对原算法中耗时最长的透射率优化过程进行了改进, 并且取得了较为理想的效果。之后在FPGA硬件平台上进行移植, 实现了雾天图像的有效复原, 从而为实现去雾系统提供了一种有效、可行的方案。

基于暗通道先验的改进去雾算法

物理模型及算法流程

公式 (1) 是目前常用的大气散射物理模型:

这个等式定义在RGB颜色通道, I代表得到的有雾图像, J代表需要复原的图像, A表示整体大气光, t (x) 表示雾霾的介质传输率。去除雾霾的原理就是从I (x) 中恢复出J (x) 、t (x) 和A。通过暗影通道先验可以估测到A和t, 之后通过对粗估计的透射率的边缘部分进行单独滤波从而实现平滑过程, 最后根据得到的三个参数反推得到需要复原的图像。

暗通道先验

在绝大多数非天空场景区域里的户外无雾图像中, 每个像素点上至少存在一个颜色通道的亮度值是比较低的。形式上, 对于一幅图像J , 我们定义:

其中Jc表示图像J的一个颜色通道 (即RGB三颜色的一种) , Ω (x) 是以x为中心的一个局部图像模块。如果J是户外的无雾自然图像, 去除天空区域, Jdark的强度值是非常低并且趋近于0, Jdark称为J的暗影通道。

估算整体大气光A和透射率

挑选暗通道中最亮像素的0.1% 个像素, 然后将这些像素对应输入到原雾霾图像中并将最高亮度的像素选作整体大气光。此外, 利用暗原色值和雾天图像退化模型可以估计出成像时刻的雾浓度和透过率t。由式 (1) 两端进行最小化操后, 同除Ac可求得带雾图像的暗原色为:

其中, 等式 (4) 右侧最小值项即有雾图像局部区域的暗原色值, 故可得到粗透射率t。

透射率优化平滑

透射率的粗糙估测图存在一些小方块, 在视觉上难以达到满意效果。本算法在充分考虑硬件实现的可能性, 以及户外实时视频去雾系统对处理时间的要求较高后, 主要通过对透射率图进行边缘检测, 之后再对边缘部分进行均值滤波来实现透射率优化过程。

1) 用prewitt经典算子对透射率图进行边缘检测

该方法在图像空间利用两个方向模板与图像进行邻域卷积来完成的, 首先计算水平和竖直方向的梯度, 之后, 此处梯度取二者的较大值作为输出梯度, 即:

最后适当选取门限TH, 如果P (i, j) >TH, 则其为阶跃边缘点, 其运算结果就是其边缘图像。

2) 对边缘部分进行平滑滤波

由观察可知原算法中块效应主要集中在图像的边缘部分, 这里选用3*3 区域模板进行均值滤波从而平滑边缘。其数学公式表达为:

式 (7) 中, g (z, y) 为处理后图像在该点上的灰度值, (x, y) 为当前像素点, M为区域模板中包含像素的个数, M为9。

图像复原

利用公式 (2 - 8) 我们可以求解出复原图像:

公式中各个参数在前面的步骤中已经求得, 进而可以得到复原图像J (x) 。

系统结构和工作原理

系统结构

本系统以友晶公司生产的DE2 - 70 以及TRDB -D5M图像采集板卡作为开发平台, 其硬件结构图如图1所示。该视频采集处理显示系统主要包括图像采集卡配置模块、图像采集模块、图像格式转换模块、图像存储模块、图像处理模块、图像显示模块。本系统主要通过两块SDRAM来实现去雾算法的存储计算过程。系统工作原理为:首先通过时钟复位控制I2C总线配置CMOS图像采集卡, 经过一定延时后通过图像采集模块采集目标场景的图像, 之后将BAYER模式的图像数据转换为常用的RGB数据并写入到SDRAM0 中, 最后对有雾图像进行算法处理后通过VGA模块进行显示。

暗影通道求取模块设计及A的求取

暗影通道的求取过程要涉及每一个颜色通道, 这里首先对3 个颜色通道分别进行最小化处理, 最后再从3个颜色通道中选取最小的作为最终输出暗通道值。通过quartus2 提供的IP核altshift - taps (移位寄存器) 在FPGA上实现对图像像素的区域化取小运算。该IP核可以实现串行数据的并行输出, 并且可以指定宽度。在本算法中最小化模板选取3*3 区域, 需设置探头个数为3, 而探头之间的间隔宽度设置为图像每行的宽度640 即可实现最小化处理。如图2 所示, 即可实现同时读取相邻三行同一列的数据值:

在同时得到三个探头的数据后需要对其进行比较取最小值, 并且分别存储相邻三个时钟的最小值, 之后再进行一次取小运算, 即得到这个颜色通道的暗通道值, 最后选取三个颜色通道最小值即可得到所求到的暗通道值。在每次求取到暗通道值时进行比较大小后得到整幅图像的最大值。之后读取原图像中该像素的J值作为整体大气光A。

透射率的求取模块设计

考虑到t的大小在0 到1 之间, 并且浮点数运算会大幅度提高计算精度, 故计算过程中的主要加减乘除均采用浮点数进行运算。这里需用到浮点数乘法器、浮点数除法器以及一个浮点数减法器, 由于得到的t是32 为浮点数, SDRAM数据宽度只有16 位, 故需要对t乘以一个因子K成为整数进行存储, 为了避免t过小造成舍去误差, 这里将后面与0.1 的大小比较过程提前, 取二者的较大值作为输出值, 之后再乘以因子K, K选20。

透射率的边缘检测及平滑滤波模块设计

透射率边缘检测模块

Prewitt边缘检测的核心运算是对每个像素进行8 邻域的模板卷积。这里同样要用到移位寄存器将串行数据转换为并行数据, 然后再进行模板对应的乘加, 最后通过判断水平梯度和竖直梯度的大小得到最后的梯度, 将这一梯度与设置好的阈值进行大小比较。这里阈值通过外部按键进行输入设置, 根据不同的外部环境来调节阈值大小来获得较为理想的边缘检测结果。边缘检测的主要过程如图3所示。

图3 中MAC_3 是利用quartus II提供的IP核ALTMULT_ADD (乘加器) 来实现, 主要实现同一行上连续三个数和模板的乘加运算;PA_3 是利用quartus II提供的IP核PARALLEL_ADD (平行加法器) 来实现, 其主要实现同一时钟下3 个乘加器的结果求和得到最后的梯度, 故分别得到水平梯度pa0 和竖直梯度pa1。

透射率边缘滤波模块

在得到带有边缘的透射图之后利用两个移位寄存器, 一边对所有的图像数据进行均值化处理, 另一边输出原透射图的数据, 最终通过判断是否是边缘来选择输出。当其是图像边缘时, 输出均值处理后的透射图;当其不是边缘时, 输出原透射图数据即可。图4 为均值滤波硬件实现框图。

从图4中可以看出, 图中主要利用到了quartus II提供的移位寄存器、乘加器以及累加器IP核。其中最关键的部分是要保证判断部分同一时钟下数据的配合是否正确, 这一部分主要通过设置IP核的延时以及通过仿真观察来修改时序实现正确的匹配。这里的透射率是放大后的整数, 因此存在一定程度的误差。

复原模块设计

求出透射率t的分布图, 以及大气估计量A之后, 最后的复原过程利用公式进行复原, 其中需要用到的两个参数I和t分别存储在SDRAM0和SDRAM1里边, 计算过程中只需同时请求SDRAM0和SDRAM1读取数据即可实现同步计算。

结果分析

如上文介绍, 系统选用台湾友晶出品的DE2-70和TRDB-D5M图像采集模块搭建系统, 通过不断地调试, 目前已完成了去雾算法在视频采集系统中对采集到图像的去雾处理过程。图5给出了显示器上输出的最后的复原图像, 依次为原图、暗通道模块、透射率求取模块、复原后图像。

图5给出了部分硬件复原图, 从复原图像中可以看出, 该系统实现了雾天场景下采集到图像的有效复原, 并且恢复后的图像色彩鲜艳, 自然逼真, 清晰度高。

结语

去雾技术 篇6

关键词:去雾,暗通道先验,小波变换

随着计算机技术的快速发展,人们对雾天图片处理的需求越来越大,各种图像处理技术应运而生。对于图像去雾总的可以分为两类:一类是图像增强的方法,比较典型的有全局直方图均衡化[1],同态滤波[2],Retinex算法[3]等等。该类方法能有效地增强图像对比度,凸显细节,使图像有更好的可视化效果,但这并未从根本上去除雾气,而且会丢失图像一些原有的信息特征。另一类是图像复原的方法,通过建立大气散射的物理模型,并求出其逆过程来恢复清晰的无雾图像。这些方法具有较强的针对性,能够更加逼近真实图像。而其中运用最广泛的是由He等人提出的暗通道先验的方法[4],但是由于在使用软抠图方法[5]对于介质传播函数进行细化的时候,会进行大量的稀疏线性方程求解,需要耗费很长的时间。针对这一问题,本文提出了减少其计算量的改进方法。

1 大气散射模型

光在空气传播的过程中,由于遇到水滴,烟尘等物质会发生散射,吸收和辐射等现象。而在大雾天气,可见光受到介质的影响,主要是受到散射作用而逐渐发生衰减。物体在摄像机中成像的光源来自两个方面:一方面是来自物体表面反射的光源,这部分光在传播的时候会逐级衰减,可称其为入射衰减光。另一方面是来自天空中其它介质散射产生的光源,可称其为环境光。

在假设大气介质均匀的情况下,可以构建大气散射的物理模型。其表达式如 (1) 式所示:I (x) 表示接收器获取的光源,J (x) 表示景物反射的光源,A表示大气光, t (x) 表示介质的透射率,X表示景物深度。其目的就是通过已知的I (x) 来恢复无雾的J (x) 。上式中有J (x) , t (x) ,A三个位置数,显然不可能直接求解出J (x) ,由此引出了暗通道先验去雾的方法。

2 基于暗通道先验的图像去雾

文献中提出,在户外无雾非天空图像的大多数区域中,总能找到一些像素点在RGB通道上的像素值很低,几乎趋近于零,这些点通常称为暗像素点。那么对于给定的图像J (x) ,像素点处的暗原色可以表示为:

(X) 表示以点Xi为中心的小正方形区域,代表该图像的颜色通道,表示该点的像素值非常地,最小值几乎接近为零。所以,把称为图像J (x) 的暗通道。而且通常把这一经验性规律称为暗原色先验理论。

根据暗原色先验的原理可以知道:

因此 (1) 式除以AC,取2次最小值运算可得:

又因为AC在大气光照中一般是个较大值,所以可得:

那么联立 (5) 式、 (6) 式可以求出透射率为:

对于大气光的估计,大多数图像去雾算法都将AC取值为暗通道中像素最大值的1%。

以上的方法虽然能够估计介质的透射率,但是处理后图像的一些区域会出现块状效应,这是由于透射率的不连续性所造成的。为此He等人又提出软抠图的方法[5]来优化透射率,使透射率能够平滑地分布。但是软抠图方法的实质是进行大规模稀疏线性方程的求解,这会大幅度提高计算的空间复杂度和时间复杂度。因此本文提出结合小波变化的方法来减少软抠图的计算量。

3 改进方法

在去雾图像处理中,雾可以近似地看作是噪声,但雾本身又有它自己的特性。受到雾所影响的图像区域往往具有较高的亮度值,而且会比较平滑,与其他区域相比具有较高的能量和较小的方差。从频域的角度来看,正是因为有雾图像的色调匀称,细节方面和无雾图像相比要相对模糊,所以雾气主要是影响图像在频域上的低频部分,而对高频部分几乎没有影响。基于以上原理,本文提出使用小波变换的方法将图像低频部分与高频部分分离出来,只对低频部分采用暗通道先验去雾,可以大幅减少软抠图的计算量从而达到提高图像去雾处理速度的目的。

小波变换实现了的多级分辨率的功能,在图像处理方面运用广泛。一副图像经过二维小波变化,即在垂直和水平方向上通过高频和低频滤波器在不同的尺度方向上分别进行滤波,可以得到四个子带频率分量:低频分量、水平细节分量、垂直细节分量、对角线细节分量(文献)。而这三个分量中除低频分量之外其他三个都是高频分量。同时若是给出四个子带频率分量可以通过反小波变换来重构原始图像。尺寸为M×N的离散二维小波变换的分解公式如下所示:

其中 (8) 、 (9) 为分解公式,f (x, y) 为原函数,代表低频分量,代表的是水平、垂直和对角方向的细节分量。

基于以上原理可以通过以下步骤实现图像去雾:

(1)将原始有雾图像进行二维小波变换,得到低频分量,垂直,水平和对角线细节分量;

(2)通过暗通道先验理论估算出低频分量部分介质透射率,同时计算大气光强;

(3)使用软抠图对透射率进行优化,对低频部分进行去雾;

(4)将去雾后的低频分量与其他三个子带分量进行反小波换变换,从而恢复无雾的清晰图片。

4 实验分析及结论

为了验证本文算法的有效性,使用MATLAB2010对两幅有雾图像进行了去雾实验。通过观察图2可以发现,在视觉效果上,直方图均衡化后的去雾图片部分区域颜色有些失真而且丢失部分原图信息。而本文使用的方法效果明显优于直方图均衡化的方法,同时和暗通道去雾方法相比的效果差别不大。在时间复杂度方面,对透射率进行优化时采取软抠图的方法,这一方法的计算量大约占到这个整个计算量的90%左右。如图2 (a) 上的图像在在进行透射率优化的时候会生成维数为 (475×275) 2的矩阵。而经过二维小波变化之后只对低频分量进行透射率优化,此时的稀疏线性方程组的规模只相当于原来的1/256之一。表 (1) 将文献[5]和本文方法的图像去雾时间进行了对比,由此可以证明本文方法大幅减少了图像去雾的运算时间,同时节约大量的内存空间。

参考文献

[1]王萍, 张春, 罗颖昕.一种雾天图像对比度增强的快速算法[J].计算机应用, 2006, 26 (1) :152-154

[2]张金泉, 杨进华.基于同态滤波的图像去烟雾方法研究[J].机械与电+, 2009 (7) :71-41

[3]芮义斌, 李鹏, 孙锦涛.一种图像去薄雾方法[J].计算机应用, 2006, 26 (1) :154-156

[4]He K M, Sun J, Tang X O.Guided Image Hiltering[c].Euro-pean Confrence on Computer Vosion, Crete, Greece, 2010:1-14

去雾技术 篇7

现有的去雾方法,主要分为两类:基于图像处理的增强方法和基于物理模型的复原方法[2,3,4]。基于图像增强的方法不考虑降质原因,通过增加图像对比度达到一定的去雾效果,但对于图像细节方面不能很好地处理。基于图像复原方法通过建立雾天退化模型,对无雾图像进行估计,其关键点在于对其中参数的估计,该方法针对性较强,达到了较好的去雾效果。

1 算法分析

近年来,单幅图像去雾取得了重大突破,在基于物理模型复原的方法中本文分析了3种基于先验信息的典型算法。Tan方法[5]通过统计发现无雾图像相对于有雾图像具有较高的对比度,通过最大化恢复图像的色彩对比度来达到一定去雾效果,但采用该方法复原后的图像颜色过于饱和,并且有光晕伪影,容易导致失真。

Fattal方法[6]通过估计假设光的传播和场景目标表面遮光部分局部不相关,估计出场景的辐射度,利用复杂的优化计算得到去雾图像,但该方法无法处理浓雾天气下的图像以及灰度图像,得到的去雾图像失真度也更大一些。

He方法[7]通过对大量无雾图像进行先验,提出了一种基于暗通道优先的去雾算法,并通过最小值滤波估计计算传播函数,最终利用软抠图的方式对该函数进行优化,恢复出无雾图像。但该算法对于处理较为接近大气光的图像时,其去雾效果并不是很好,并且该算法由于利用软抠图的方式编程上不易实现,处理时间也相对较长一些。

上述3种基于先验的优先方法,各有利弊。目前,很多新的快速去雾方法都是基于对He方法的改进[8,9]。文献[8]主要针对暗原色先验去雾方法复杂度高、处理耗时的不足通过高斯滤波和腐蚀对透射图进行优化,降低了处理时间,并通过Gamma变换和对比度增强方法对去雾后图像进行增强处理,但对于局部图像的处理效果还不够理想。文献[9]在He方法的基础上,提出了对透射图梯度优先的假定,同时利用多分辨率处理有雾图像的优化方法,该方法大幅提升了Soft Matting算法的速度,并降低了暗原色先验算法对内存的要求,但运算时间依然相对较多。针对当下单幅图像去雾算法存在的不足,本文中提出了一种以大气散射模型为基础,局部选取双边滤波估计雾浓度,最终通过大气散射校正方法来恢复无雾图像。该方法恢复的无雾图像效果更好,同时降低了运算时间,更具有实用价值。

2 基于大气散射模型的成像方程

在计算机视觉领域,通常选取下述物理模型来描述雾天图像。该模型包括衰减模型和环境光模型两部分,该物理模型为

式中:x为有雾图像中像素点的空间坐标;H(x)为实际辐射强度即观察到的有雾图像;F(x)是待恢复的无雾图像;e-βd(x)为大气透射比;β表示大气散射系数;d(x)表示场景点到观测点的距离即景深;A表示全局大气光辐射强度。

如图1所示,大气散射模型由两部分组成。F(x)eβd(x)为衰减后的辐射强度即直接衰减(Direct transmission),表示随着景深的增大而辐射强度随指数形式衰减;A(1-e-βd(x))为大气耗散函数即环境光模型(Ambient light model),该值导致图像亮度和色彩的偏移,雾气浓度随景深的增加而随指数增加形式变化。在式(1)中,用G(x)代替A(1-e-βd(x)),即G(x)=A(1-e-βd(x)),则G(x)代表大气耗散函数。式(1)被改写为

本文中提出的改进去雾方法中,则需要从H(x)中估计出大气耗散函数G(x)和全局大气光A,以恢复无雾图像F(x)。

3 本文方法

在多谱遥感图像的大气散射校正方法中[10,11,12],该方法做出前提假设,即图像中雾气浓度均匀分布,然后对每个波段减去一个常数值来寻找所对应场景中的最暗点。该假设对于天空区域对地遥感的情况下是成立的;对于一般场景图像,由于雾气浓度不会均匀分布,在恢复无雾图像时受到限制,若将有雾图像划分为小区域,假设该区域雾气浓度均匀分布,则可在该区域运用大气散射校正方法恢复无雾图像,该假设在He方法[7]中得到了同样的验证,相同地,在采集的图像中场景辐射度和雾气浓度相叠加。本文中假设局部区域图像中的雾浓度分布均匀,该去雾方法主要分3步:1)选取基于大气散射模的成像方程求出恢复无雾图像的相关方程式,从而简化大气散射模型,如式(2);2)通过暗原色先验统计方法求取全局大气光辐射强度A;3)引入大气耗散函数G(x),通过双边滤波局部估计雾浓度间接求取G(x);4)通过式(2)最终恢复无雾图像。

3.1 暗原色先验统计

在He的方法中[7],通过对大量无雾图像进行统计分析,发现在大部分非天空的图像区域中,至少存在一个颜色通道非常低的亮度值。对一幅图像I,定义如下

式中:c为三通道RGB中的某一通道;Ic是I的一个颜色通道;Ω(x)是以x为中心的局部区域。统计发现如果I是一个户外无雾图像,那么除了天空区域以外的Idark(x)亮度值很低并且趋于零,即Idark(x)→0。称Idark(x)为I的暗通道[7,8,9],这种统计知识称为暗原色先验统计。

估计全局大气光A步骤为:

1)求取带雾图像的暗通道,;

2)从暗通道图中按照亮度的大小取前0.1%的像素;

3)在原始有雾图像H(x)中找出对应具有最高亮度的点的值,并将该点作为全局大气光A的颜色值。

3.2 估计雾气浓度

在本文去雾方法中,主要是求出雾气浓度分布。假设图像中雾气浓度为P(x),雾化图像I的最小颜色分量为M(x),根据有雾图像的物理特性,雾气浓度应满足以下约束条件:1)对于每个像素,P(x)应为正值,即P(x)≥0;2)不大于有雾图像I的最小颜色分量,即P(x)≤M(x),则其约束条件如式(4)所示

式中:;c为三通道RGB中的某一通道;Ic(x)为图像I在x点处c通道像素值;P(x)=1-e-βd(x)为雾浓度与景深的关系表达式,表示随景深的增加雾浓度成指数形式增加;β为大气散射系数;d(x)表示在场景点x处的深度。

在本文的改进方法中,为了保护图像边界,把雾浓度估计作为一种滤波问题,式(3)不能精确地对雾浓度进行估计,在景深发生跳变处容易造成光晕伪影,为避免该现象的出现,则需要对M(x)进行平滑处理。双边滤波[13,14]能够更好地处理图像细节,并且能更好地满足实时性要求,本文通过对M(x)进行局部双边滤波来估计雾浓度。

1)首先求出最小颜色分量M(x)并用其替换有雾图像H(x),然后对M(x)进行局部双边滤波平滑处理,并用A(x)代表其处理结果,该处理能够更好地保护了图像细节及图像边缘,公式如下

2)根据大气散射校正方法对图像进行处理,选取双边滤波对|A(x)-M(x)|计算局部对比度,用σ(x)来表示;并考虑到对于有较好对比度的区域可能没有雾,这部分区域不需要做去雾处理,因此用A(x)减去M(x)的局部对比度值,用B(x)来表示,计算公式如下

式中:σ(x)值越小,场景对比度越小,表示成像偏离采集设备越远,大气耗散函数值越大,其值越大则相反。

3)最后根据有雾图像约束条件0≤P(x)≤M(x)

式中:ρ为可调节参数(0<ρ<1),根据ρ的大小自动调节雾浓度大小,可防止去雾后图像偏暗或者偏亮从而增加图像的真实感。ρ值越大,去除雾气的能力越强;ρ值越小,去除雾气的能力越弱。

3.3 恢复无雾图像

通过上述方法估计出全局大气光A和环境光G(x),利用变换的大气散射模型的成像方程恢复出无雾图像F(x),如式(8)、式(9)所示

采用该方法得到了更为精确的无雾图像,有效地消除了光晕伪影,达到了较好的去雾效果。

4 实验结果及性能分析

为了验证该方法的有效性,本文实验在操作系统为Windows7、CPU为酷睿2双核2.8 GHz处理器、系统内存为2 Gbyte的PC上使用MATLAB 2010对本文所提出方法进行仿真测试,并与He方法和Tan方法进行对比测试,通过主观对比图像和客观数值体现本文方法的优越性。

在本文方法中,根据ρ(0<ρ<1.00)值大小对去雾效果进行自动调节,如图2所示,ρ值不同时去雾效果不同。相比于参考图像,ρ值较小时,去雾程度较低;ρ值较大时,图像逼真度降低。例如,当ρ=1.00时,去除了雾气图像中的所有雾气,反而导致图像失真度较高,保留一定量的雾气可使图像更加逼真。经过大量图片仿真测试,本文中对比实验中设置ρ=0.80。

4.1 实验主观评价

为了验证本文方法的有效性,实验中选取了He方法和Tan方法作为对比,并给出了3种户外有雾图像的复原结果。图3、图4、图5所示分别为本文方法与He方法和Tan方法对单幅雾天图像处理的复原图像。从以下3幅图像可以清楚地得出对比结论,相比He的方法,本文方法处理的图像更加清楚,在远景处和景深突变的边缘处理能达到很好的处理效果,尤其在图4中天空部分比He的方法更为优越一些;相比与Tan处理的图像,本文方法处理的图像逼真度更高一些,尤其在图4中Tan方法处理的图像失真度较高,而本文方法处理结果更为真实。

4.2 实验客观评价

4.2.1 运算时间比较

本文方法的优越性不仅体现在恢复的无雾图像较为清晰,同时降低了运算复杂度,从而减少了处理时间,表1为He方法和Tan方法及本文方法处理时间的比较。由表1可知,本文方法处理的时间优于对比的两种方法,因此本文方法具有较好的实时处理效果

4.2.2 客观质量评价

本文方法不仅选取了处理时间作为对比,并从熵、均值和标准差3个数字图像客观评价来体现该方法的优越性;在恢复的无雾图中,熵值表示图像的信息含量,该值越大则表明获取的图像信息更加丰富,则图像较为清晰;均值下降则表明取得了一定的去雾效果;标准差越大则表明图像更加清晰。

如表2、表3所示,其分别为Train.png和Build.png的客观因素评价结果,由表2可知,所选取的测试图像熵值与有雾图像相比均有所增加,表明通过该方法恢复的无雾图像保留了更多图像细节;对比均值可得出,其均值明显下降,表明该方法取得较好的去雾效果;两幅测试图像的标准差均有所增大,表明恢复的无雾图像相比于He和Tan方法获取的无雾图像清晰度相对较高。

5. 结语

图像去雾问题的研究在图像处理与目标识别领域具有重要意义和很高的应用价值。本文提出了一种新的针对单幅图像去雾改进方法。首先根据暗原先验来估计大气光值,并采用双边滤波对存在雾气的图像进行雾浓度估计,最终通过变换后的大气散射模型成像方程来恢复无雾图像。本文通过对大量有雾图像进行去雾恢复,实验结果验证了该方法有效性,并通过实际测得的数据表明该方法取得了较好的去雾效果及较短的处理时间,适用于解决实时图像去雾问题。

摘要:在雾天环境下,获取的图像受到大气粒子散射的影响而导致对比度和能见度降低。针对该问题,提出了一种基于物理模型的单幅图像的快速去雾方法。该方法以大气散射模型为基础,引入暗原色先验规律求取全局大气光,利用双边滤波局部估计雾浓度,间接求取大气耗散函数,最终通过变换的大气散射模型恢复无雾图像。大量实验结果表明,该方法能够恢复出自然清晰的无雾图像,并能够较好地处理景深突变的边缘及远景处。此外,该算法在处理图像的运算时间上具有明显的优势,可满足图像实时处理要求。

上一篇:高校制度改革下一篇:教育转型