半逆解法检测及改进图层法去除雾气算法研究
2014-07-08李向荣张海
李向荣,张海
青岛科技大学机电工程学院,山东青岛 266061
半逆解法检测及改进图层法去除雾气算法研究
李向荣,张海
青岛科技大学机电工程学院,山东青岛 266061
针对雾天环境下相机所拍摄图像能见度较差造成人眼或设备难以分辨图像细节的问题,提出一种新颖的单幅图像雾气检测和去除方法。在不经过图像优化及修复处理前提下,用半逆解法产生半逆解图像,通过阈值将转换至HSI彩色空间的原图像和半逆解图像进行色度值对比,快速检测出图像雾气区域。依据光学模型估计出空气光常数等参数,用改进图层法作出多幅光传播图像,再将部分图层叠加成一幅图像。采用对比度拉伸变换法增加融合图像对比度,得到最终去雾图像。
雾气检测;半逆解法;改进图层法;对比度拉伸变换法;去雾
1 引言
雾天环境下,由相机拍摄的图像往往能见度较差,影响这些视觉系统在交通检测、天气观测、视频监控和安全、法律实施等方面的表现。因此在视觉系统和图像处理领域,如何提高由于天气原因而褪化的图像可见度和图像特征得到了越来越多人的关注和研究[1-6]。
当今图像去雾算法种类繁多,主要可分为两类。一类是基于多幅图像的去雾方法。其基本思想是根据大气散射规律建立相应图像退化模型。此方法的好处是能够充分利用先验信息,但需要知道图像场景深度或大气条件信息。Narasimhan和Nayar通过对比分析同一场景不同天气状况下的多幅图像的性质估计出传播介质的性质。不足之处是在许多实际应用中很难获取同一场景的多幅天气图像[7]。另一类图像复原方法是基于单幅图像。He发现在户外无雾图像的局部区域里,总有一些像素的某一颜色通道值较低,并利用这些像素目标只吸收光而不反射的特性提出暗原色先验法(Dark Channel Prior,DCP),据此求出雾天图像的粗糙传播图,再利用软抠图(Soft M atting)方法进行精细化求解。该方法对一般户外图像取得了很好的去雾效果,但缺点在于使用软抠图方法会占用大量的内存和计算时间[8-12]。
为达到良好的去雾效果并同时保持较快的运算速度,本文提出一种单幅图像雾气检测和去除新方法。首先基于He提出的暗原色先验法用半逆解法检测雾气区域,依据Koschm ieder光传播模型和经验知识估算出空气光常数等参数从而得到多幅光传播图像[13]。再通过改进Narasimhan和Nayar提出的图层法将部分图层融合成一幅去雾图像。最后通过对比度拉伸变换法增大融合图像对比度,得到最终去雾图像。
2 半逆解法图像雾气检测
通过对大量被雾气影响的户外图像分析后,He发现,在没有雾气、明亮天空和大片水面存在的图像区域里总存在一些黑色像素点,它们邻域像素的红、绿和蓝(RGB)三颜色通道中至少有一个通道值较低,这些通道值低的像素点被称为暗原色,并由此提出了暗原色先验算法来进行去雾;而在晴朗天空和大片的水面区域,由于像素的颜色通道值都普遍较高,暗原色几乎不存在,在图像的这些区域此方法会失效[14]。
基于以上分析理论,对原图像中每个像素的RGB通道值进行操作。假设一幅RGB图像:
其中Ir(x),Ig(x)和Ib(x)分别代表原图像像素x的R,G,B通道值。作出其半逆解图像:
其中:
如上述分析,在图像无雾区域,除晴朗天空和大片水面区域外,暗原色邻域像素的RGB三通道值中至少有一个通道值较小,通过式(3)变换,这些较小值都被替换成较大的逆变换值;而在有雾气存在的区域,像素的所有颜色通道值都较高,因此逆变换操作以后这些像素的RGB通道值不变。通过将半逆解图像与原图像像素的RGB通道值进行比较,就能检测出图像中的雾气区域。
为此,需先把原图像I(x)和半逆解图像Isi(x)从RGB彩色空间转化到HSI彩色空间。用H表示原图像I(x)的色度,Hsi表示半逆解图像Isi(x)的色度。通过以下公式:
可得图像在HSI彩色空间下的色度值。为检测出图像雾气区域,通过研究计算:
其中,T是人为设定的阈值。经过分析研究,令T=10°。将所有小于阈值T的图像像素用颜色标记为雾气区域。如图1所示。
图1 雾化图像及雾气检测图
图1(a)是原始雾化图像,图1(b)是采用半逆解法得到的雾气检测图。通过对比看出,采用半逆解法能够检测出较精确的图像雾气区域,为使用改进的图层法图像去雾打下基础。
3 去雾理论模型及算法
3.1 去雾模型及参数估计
为去除图像中的雾气,采用基于Koschm ieder提出的光学模型。根据此模型,一幅雾化图像Ih可用空气光直接衰减D和空气光影响因子A线性组合表示:
其中I是无雾图像,A′是空气光常数向量,t(x)描述光沿着视角传播的透射率。这是一个病态方程,需要从输入雾化图像Ih中求出未知的I,A′和t(x)。
理论上,如果知道光传播透射率t(x)和空气光常数向量A′,去雾后的图像I就能通过以下公式计算得出:
由于空气光影响因子A对图像的影响随着场景深度的增加而增大,因此除了那些场景间断点以外,在场景点周围邻域内的空气光影响因子A只发生微小的变化。通过半逆解法检测并标识出图像中的雾气区域,将雾气区域中像素的最高亮度值定为空气光常数向量A′。这种方法比从一整幅图像中检测出亮度值最大的像素区域的方法具有更强的鲁棒性[15]。当知道了空气光常数向量A′,再通过计算场景深度t(x)范围内所有的可能取值A=A′*(1-t(x)),就能估计出直接衰减D。
3.2 改进图层法去雾
本文算法借鉴Narasimhan和Nayar所提出的方法。其原理是基于图像深度间断点的邻域在不同天气状况下不发生改变的性质,因此需采用同一场景的多幅图像进行检测。但现实情况下往往很难做到这一点。于是对此算法作了改进,只使用一幅图像进行图层法去雾。
先作出几幅新图像Ii,i∈[1,k]。将雾化图像I移除空气光常数向量A′,得:
其中Ci是迭代增长的空气光影响系数,它是在[0,1]内的标量值,并由图层数量决定。
经过对雾化图像I进行雾气检测后,只有那些色度值差的绝对值低于阈值T的像素被标记为图层Li。在不清楚图像场景几何描述的情况下,根据这k个图层图像的离散化性质估计出Ci的值,它们对应于图像场景的最主要深度图层(例如当图像中存在两个位于不同场景深度的物体时,传播图像将被两个主要深度值影响)。然后,将这些图层叠加成一幅去雾图像。为使不同图层之间的过渡平滑,被提取的图层数量至少不能少于5个。依照原先的图层算法,提取出来的图层被直接叠加在一起。令Ci:[0.10,0.26,0.30,0.34,0.36,0.37,0.38,0.39]。为获得无雾图像I0,将所有图层按空气光影响程度由大到小进行降序排列。理想情况下,只要把上一个图层的像素依次复制到下一个图层上就可以了。但这样做会使图像中产生间断点,合成一幅有粗糙图层边缘的去雾图像。如图2(a)所示,图像中树丛与树林底部相交界的区域存在不规则的图层边缘。为消除这些间断点,新算法将每一层图层Li的一部分提供给下一个图层:
其中标量参数xi是图层像素影响权重。在本文中,通过对每层图层Li的亮度值设定阈值来选择其一部分。
具体公式为:
其中ei是空气光常数向量影响权重。改进算法后的融合图像如图2(b)所示。图3是不同数量图层叠加后的部分图像。
图2 原图层和改进图层法对比
经过上述叠加步骤,所得到的图像往往亮度偏暗。为获得更好的视觉效果,对融合图像使用图像空间域处理对比度拉伸变换法,得到最终的去雾图像。其公式为:
其中,r表示输入图像的亮度,s是输出图像中的相应亮度值,E是控制该函数的斜率。
4 实验结果与分析
为验证本文算法的效果,进行一系列的对比实验。在2009年CVPR会议中,由He等人提出的暗原色先验算法被认为是当前最有效的去雾算法之一,将此算法和传统的直方图均衡化算法与本文算法进行对比实验。图4是原图和这三种去雾算法处理后的图像。通过比较看出,经过直方图均衡化算法处理后的图像亮度过高,在图像场景较深远处的图像细节模糊,其优势是处理速度快;经暗原色先验算法处理后图像亮度柔和适中,图像细节比较清晰,但此算法对机器内存要求过高,运算速度较慢。将原图像尺寸压缩为200×281大小,在配置为Intel Core I3 CPU,主频2.53 GHz,内存2.00 GB的电脑上用7.1.0.246版本Matlab仿真运行需要17 s左右,而用本文算法处理原尺寸为600×845大小的同一幅图像只需要5 s左右,而且经本文算法处理后的图像更加明亮通透,在细节上也与暗原色算法不相上下。
图3 各图层叠加后图像
图4 原图像与各去雾算法图像对比
5 结束语
本文提出了一种基于单幅图像的去雾算法,此算法不需要利用任何的附加信息,例如场景深度,硬件参数等,是一种在概念上容易被理解的算法。通过对比原始图像和半逆解图像在每个像素上的色度值差异,能快速检测出图像中的雾气区域;利用Koschm ieder所提出的光学模型和经验知识估算出空气光常数等参数,作出多幅光传播图像;使用改进的图层叠加法将部分图层融合得成一幅去雾图像;最后使用对比度拉伸变换图像处理算法得到视觉效果更好的最终去雾图像。本文算法运算速度快,超过大多数的图像去雾算法,处理过后的图像也具有较清晰的细节。在未来,将完善雾气检测算法,使算法适用于更多类型的图像,让去雾效果更加精确。
[1]Fattal R.Single image dehazing[J].ACM Transactions on Graphics,2008,27(3).
[2]方帅,王勇,曹洋,等.单幅雾天图像复原[J].电子学报,2010,38(10):2279-2284.
[3]张瑞平.雾天条件下图像的恢复研究[D].天津:天津大学,2007.
[4]Schaul L,Fredembach C,Ssstrunk S.Color image dehazing using the near-infrared[C]//IEEE Int Conf on Image Processing,2009.
[5]Treibitz T,Schechner Y Y.Polarization:beneficial for visibility enhancement[C]//IEEE Conference on Computer Vision and Pattern Recognition,2009.
[6]Aydin T O,M antiuk R,M yszkow ski K,et al.dynamic range independent image quality assessment[J].ACM Trans on Graph,2008.
[7]Narasimhan S G,Nayar S K.Contrast restoration of weather degraded images[J].IEEE Transactions on Pattern Analysis and Machine Learning,2003,25(6):713-724.
[8]Apostoloff N E,Fitzgibbon A W.Bayesian video mating using learnt image priors[C]//Proc CVPR,2004.
[9]Boykov Y,V lahos P,Dadourian A.Comprehensive method for removing from an image the background surrounding a selected object:US,6135345[P].2000.
[10]Chuang Y,Agurwala A,Curless B,et al.Video matting of com plex scenes[J].ACM Trans on Graph,2002,21(3):243-248.
[11]Chuang Y,Curless B,Salesin D,et al.Bayesian approach to digital matting[C]//Proc CVPR,2001.
[12]Grady L,Schiw ietz T,Aharon S,et al.Random walks for interactive alpha-matting[C]//Proc VIIP,2005.
[13]Koschm ieder H.Theorie der horizontalen sichtweite[J]. Beitrage zur Physik derfreien A tmosphare,1924.
[14]He K,Sun J,Tang X.Single image haze removal using dark channel prior[C]//IEEE Conference on Computer Vision and Pattern Recognition,2009:1956-1963.
[15]Tan R T.Visibility in bad weather from a single image[C]// IEEE Conference on Computer Vision and Pattern Recognition,2008.
LI Xiangrong, ZHANG Hai
College of Mechanical and Electrical Engineering, Qingdao University of Science and Technology, Qingdao, Shandong 266061, China
In foggy environment, the pictures taking from cameras have a poor visibility for human or device to identify the details. This paper introduces a novel approach to detect the haze and restore the image. The presented algorithm allows for a fast identification of hazy regions of a single image without expensive optimization or refinement procedures. By applying a semi-inverse operation to the original image, a semi-inverse image is produced. Comparing the pixels hue disparity between the original and its semi-inverse, the hazy regions are identified by setting a threshold value. Based on the optical model and the improved layer-based approach, the airlight constant can be estimated and several transmission images can be produced and then part of the layers are combined into one defogged image. The contrast stretching transformation approach is applied to the original defogged image to enhance its contrast.
haze detection;semi-inverse approach;improved layer-based approach;contrast stretching transformation approach;haze removing
LI Xiangrong, ZHANG Hai. Semi-inverse approach to detect and improved layer-based approach to remove haze from single image. Computer Engineering and Applications, 2014, 50(17):267-270.
A
TP751
10.3778/j.issn.1002-8331.1209-0214
李向荣(1979—),女,博士,副教授,主要研究领域为传感器信号检测与处理、数字图像处理、机电一体化设计;张海(1988—),男,硕士研究生,主要研究领域为数字图像处理。E-mail:m ilksea@126.com
2012-09-21
2013-02-28
1002-8331(2014)17-0267-04
CNKI网络优先出版:2013-03-26,http://www.cnki.net/kcms/detail/11.2127.TP.20130326.1042.012.htm l