付青青,景春雷,裴彦良,阚光明,张正炳*,吴爱平
( 1. 长江大学 电子信息学院,湖北 荆州 434023;2. 国家深海基地管理中心,山东 青岛 266237;3. 自然资源部第一海洋研究所,山东 青岛 266061;4. 海洋沉积与环境地质自然资源部重点实验室,山东 青岛 266061;5. 青岛海洋科学与技术试点国家实验室 海洋地质过程与环境功能实验室,山东 青岛 266237)
海洋蕴含着丰富的生物、矿产和能源等资源,人类在对海洋开展基础研究、资源勘探、生态监测等的过程中,一般需借助先进的海洋探测技术获取相应海域的环境信息[1-3]。利用水下光学探测技术,获取水下图像是一种认识和探索海洋、获取海洋有用信息的重要技术手段。由于水体本身特殊性质以及悬浮颗粒、微生物等复杂环境的影响,光线在水中传播时会受到水体的吸收和散射效应,导致采集的水下光学图像存在对比度低、色偏、细节模糊等退化现象[4-7],不利于水下图像资料的解释和有用目标的识别。因此,为了提高水下图像的利用率和解释的准确性,采用图像处理技术改善水下图像的质量至关重要。
由Zuiderveld[8]提出的限制对比度的直方图均衡技术(Contrast Limited Adaptive Histogram Equalization,CLAHE)是一种对图像局部细节增强性能良好的方法,在图像增强领域有广泛应用。Garcia等[5]为了解决光照的问题,较早地将CLAHE技术应用于水下岩石图像处理,取得了不错的效果。杨卫中等[9]将CLAHE方法应用到水下海参图像处理,得到了适合海参图像增强的参数值,在提高其对比度和细节保持方面有良好表现。这类基于直方图均衡技术的空域增强算法会一定程度上改善水下图像质量,但会存在放大噪声、人工伪影、颜色失真等现象[1]。基于变换域的增强技术也是改善图像质量一种重要的手段,陈从平等[10]针对传统同态滤波的不足,对处理的图像先分块进行均值估计出背景,然后与原始图像求差值,得到光照均匀的前景图,对前景图用改进的巴特沃斯同态滤波处理,达到抑制低频成分,有效放大高频信息的目的,实验表明,该算法对于特别灰暗的水下图像有显著的增强效果。还有学者将小波变换技术用于水下图像的增强处理[11],取得了比较好的去噪效果,但对于局部细节的增强仍然不够理想。He等[12]提出的基于暗通道先验理论(Dark Channel Prior, DCP)的图像去雾算法对雾天图像的处理取得了非常好的效果。由于水下图像成像环境和户外大雾天气相似,因此DCP被广泛地使用在水下图像去模糊[13-17],曹美等[14]以部分像素值的统计平均值作为水体光强的估计和利用双边滤波求解水体透射率,使DCP算法可以更好地去除水下图像的模糊。朱振杰和王红茹[15]借助中值滤波优化了准确估计背景光的方法,结合DCP原理求取水体透射率,取得较好视觉效果。Han和Chen[16]结合DCP与饱和度改进了背景光的估计。汤忠强等[17]分析了DCP处理水下图像时受到的局限性,对其做了改进,提出改进DCP算法(Improved DCP,IDCP),将最亮通道与最暗通道差值作为水体亮度值估计,对水下图像进行增强。这类基于物理模型的方法,如何准确估计水体光强和透射率也是一个难点。
He等[18]和谢岱伟[19]经过大量的实验证明,提出的引导滤波(Guided Filter,GF)在滤除噪声、去雾、细节增强等方面表现出良好性能。谢岱伟[19]利用引导滤波对红外图像进行细节增强,取得了不错的效果。但直接将引导滤波用于图像的细节增强,会出现噪声放大问题,对于细微结构的增强能力也有待提高。为了改善水下图像细节不清晰以及对比度不足的问题,本文以我国“蛟龙”号在西南印度洋采集的深海图像为研究对象,提出一种基于非锐化掩模引导滤波的水下图像细节增强算法。该算法对传统的引导滤波细节增强进行了改进,以非锐化掩模图像代替原始图像作为引导图,并设计了噪声检测的中值滤波对细节层进行处理,最后将滤波后的细节层进行增益后与引导滤波获取的基础层进行合并,达到增强水下图像细节和对比度的目的。
引导滤波作为一种新型滤波方法,其核心思想是基于局部线性模型,它通过一幅引导图像指导输入图像,使得输出图像整体轮廓特征上与输入图像相同,而纹理细节方面与引导图相似,在去除噪声的同时能够很好地保持边缘信息,其输出图像q可用下式表示
式中,p为输入图像,即待滤波的图像;I为引导图像;r为滤波窗口大小;ε是正则化参数;r和ε可依赖经验值确定。输出图像q和引导图像I之间满足如下假设:在以像素k为中心的局部窗口wk中呈线性关系,则某像素点的输出表达式为
式中,i对应局部窗口中的像素索引;ak和bk为窗口中的线性系数。对公式(2)两边求导取梯度,可得:,可见当输入引导图像在某区域有梯度时,输出图像也会保持对应的梯度,因此引导滤波在平滑背景的同时具有良好的边缘保持性能。为了得到系数ak和bk的最优解,需要输出q尽量保留与输入图像p的有效信息,即使两者之间差距最小,实现的方式通常是引入最小化代价函数,并使其最小来求最优化问题,为最小化代价函数,表达式如下:
通过引导滤波可以对图像进行细节增强,其过程可以用下式表示[18,20]
由引导滤波的原理可知,输出图和引导图之间存在局部线性关系,两者的梯度图也满足线性关系,具有一致性。由于图像锐化可以突出图像边缘和纹理细节区域,因此,本文提出将非锐化掩模的锐化图像作为引导图对原始图像进行引导滤波,让输出图像的细节信息更加清晰;然后对细节层使用噪声检测的中值滤波去除斑点噪声,将滤波后的细节层进行增益后与引导滤波获取的基础层进行叠加,达到增强水下图像细节的目的。增强过程分为以下步骤:
(1)以原始图像p作为引导图对其进行引导滤波,得到细节层pd;
(2)对步骤(1)中的细节层进行噪声检测的中值滤波,去除斑点噪声,得到图像fd;
(3)对原始图像p进行基于均值滤波的非锐化掩模,得到锐化图像ps;
(4)将步骤(3)中的锐化图像ps作为引导图,对原始图像p进行引导滤波,得到输出图像,即基础层pb;
(5)对去除噪声的细节层fd进行增益,与步骤(4)中的基础层pb叠加,得到细节增强的图像qout。
图1为本文细节增强算法流程框图。
图 1 细节增强算法流程框图Fig. 1 Block diagram of the detail enhancement algorithm
根据引导滤波原理,将原始图像p作为引导图像,由式(6)得到输出图像。根据文献[18]给出的参考值,并结合实验测试,r、ε的取值分别为16、0.02。则步骤(1)中的细节层pd=p-q对应图像的高频部分,其不仅包含了反映图像纹理的有效信息,也含有噪声信息,为了避免细节层乘以增益系数后导致噪声放大,需要对细节层进行去噪处理。本文所采用的由“蛟龙”号拍摄的水下生物图像由于海底杂质的影响,会引起散状斑点噪声的出现,噪声也会存在于细节层中,为了更加准确地检测噪声、保护图像细节,本文对细节层先用四方向拉普拉斯算子进行噪声检测,然后对其进行中值滤波,非噪声部分保持不变。拉普拉斯(Laplacian)算子是一种二阶导数算子,对连续函数,它在位置(x,y)处的拉普拉斯值定义为
在数字图像中,计算函数的拉普拉斯值通常借助各种模板来实现,图2为常用的拉普拉斯模板,从模板的形式可以看出,如果图像中在较暗的区域出现一个亮点,经过拉普拉斯算子处理后,该亮点会变得更亮,因此该算子对线和孤立点检测效果较好。
图 2 拉普拉斯算子模板Fig. 2 Laplacian template
图 3 四方向拉普拉斯模板Fig. 3 Laplacian template of four direction
为了更好地区分细线和孤立噪声,受到经典的拉普拉斯模板的启发,本文定义四方向的拉普拉斯算子,分别为水平、垂直,两个斜对角方向的4个模板,记为Mk,k=1,2,3,4,如图3所示。用细节图像分别与4个模板进行卷积,如果图像是较平滑的区域,由于像素值都较接近,4个模板卷积值都很小,如果是边缘细节区,沿着细节方向的卷积值必定很小,剩下3个方向的值可能很大,如果是孤立噪声点,模板卷积的绝对值都较大。因此,可以用模板卷积绝对值的最小值与设定阈值T比较进行噪声检测,大于阈值的用中值滤波去除,其余的像素不做处理,这样去除噪声的同时,很好地保留了细节层中的有效信息。具体公式为
图 4 细节层滤波Fig. 4 Detail layer filtering
图 5 非锐化掩模效果对比Fig. 5 Comparison of unsharp masking results
非锐化掩模(Unsharp Masking, UM)是一种常用的锐化增强技术。其基本原理是将原图像与低通滤波后得到的模糊图做差值运算得到高频部分,然后乘上一个增益系数再与原图求和,最后得到细节和边缘等均增强的图像。非锐化掩模过程用下式表示
常用的低通平滑滤波器有均值滤波器和高斯滤波器。两者都是典型的线性滤波算法,其滤波思想采用模板卷积方式处理,将某一尺寸模板在图像上移动,把模板中心与要处理的像素重合,中心像素点的值用邻域内所有像素点进行加权平均的灰度值来代替,均值滤波的模板中各位置的权值相同。均值滤波对图像进行平滑滤波的表达式由下式定义,
式中,S为原图像中以点(i,j)为中心的一个邻域;N为邻域中像素点的个数。高斯模板的权重依赖于高斯函数的形状,各个位置的权重不一样,越靠近邻域中心像素的位置,权值越大。与图像进行卷积的二维高斯函数表达式为
根据式(12)和式(13),生成 3×3 的均值滤波和高斯滤波模板分别用M1,M2表示,其中取1。
将尺寸相同的这两类模板分别对图像进行滤波操作,并用原始图像减去模糊图像得到高频部分,即掩模图像。图5为高斯滤波非锐化掩模与均值滤波非锐化掩模的效果对比,测试对象为图4a中的原始图像,横坐标为第95行像素坐标的列索引值,纵坐标对应灰度值。可以看出,图5b中均值滤波对边缘和细节部分平滑效果要好于高斯滤波,滤波前后相差得到的高频图像反映的细节更加明显。为了获得丰富的纹理细节信息,本文的低通滤波器采用平滑效果较好的均值滤波,均值滤波在滤除噪声的同时,会使得图像的边缘和细节变得模糊,模糊图像中高频成分被很大程度上削弱了,原图与模糊图像相减,会得到高频图像,即反映图像细节的图像,将细节部分信息乘上增益系数后,再与原始图像进行叠加,则的某些细节部分得到了增强,达到了图像锐化的效果。对于噪声较少的深海图像,采用这种线性的UM算法,能取得较好的锐化效果,细节部分清晰度提高的同时,原图中的平滑区域不受影响,得到了保留。最后将非锐化掩模的锐化图像作为引导图像对图像进行引导滤波,这样可以让输出图像纹理细节部分与引导图相似。
原始图像经过以非锐化掩模的锐化图像为引导图像滤波后,得到了反映图像轮廓部分的基础层pb,其中r、ε的取值分别为40、0.02。若式(7)中经滤波后的细节层用fd表示,则细节增强过程可由下式表示
根据本文所提出的算法,使用版本为R2008b的Matlab软件实现了图像细节增强算法程序,对我国“蛟龙”号采集的不同水下图像进行了测试,并将本文所提算法与CLAHE算法[8]、暗通道先验算法(DCP)[12]、改进暗通道先验算法(IDCP)[17]和引导滤波细节增强算法[18]进行了对比。
为了验证本文算法的性能,本文对大洋35航次第二航段,“蛟龙”号在西南印度洋海底拍摄的大量图像进行了测试,下面选取有代表性的3幅图像进行说明。图6显示了本文方法和其他算法进行增强的结果对比,图6a是采集的原始图像,分别是2 900 m水深海底珊瑚图像、2 800 m水深海底鱼类图像和海底虾类图像。图6b是CLAHE算法增强的结果,对比度有提高,但细节部分没有多大变化,图像出现少许色偏现象。图6c是采用引导滤波细节增强的效果,图像的整体对比度得到了增强,亮度提高,但纹理细节不够明显,图像中斑点噪声也被放大,比如珊瑚图像右下部分斑点噪声比较明显。图6d是暗通道先验算法增强结果,对比度略有提高,但整体图像与原图像比较偏暗。图6e是改进暗通道先验算法处理结果,该算法对于严重色偏和浑浊环境的水下图片有良好去雾和色偏校正效果,对于本文图片细节增强效果并不理想,珊瑚根部和鱼背上的纹理发白不可见。图6f是本文算法增强的结果,从图中可以看出,整体对比度提高的同时,细节清晰可见,比如珊瑚纹理细节信息,鱼眼睛部分都得到了突显,珊瑚图像中散斑噪声也被滤除,虾类图像中顶部白色物体细微结构也得到了增强,视觉效果更好。通过实验测试,本文算法对于自然场景的图像以及雾天图像也有良好的细节增强效果,由于篇幅限制,文中没有给出处理效果图。
除了主观评价图像处理结果的视觉效果,本文还采用信息熵(Information Entropy, IE)[10,14],局部对比度(Local Contrast, LC)[22]和平均梯度(Mean Gradient,MG)[10,14,23]对图像处理效果进行客观评价,信息熵是评估图像中信息量的有效方法,灰度级范围在[0,L-1]的图像,信息熵的表达式为
式中,M、N表示图像尺寸大小;、分别表示以像素点(x,y)为中心的某一子块中像素灰度最大值和最小值,本文中子块大小取为5×5,为了避免出现分母为0的情况,c是一较小的常数,取值为0.000 1。
图像的平均梯度可以反映图像微小细节的反差和纹理变换特征,通常平均梯度越大,图像的细节层次越多,清晰度也越高,平均梯度的定义为
本文借助索贝尔(Sobel)算子来计算像素点(x,y)处的梯度值。不同算法的客观评价指标计算结果见表1。从表中可以看出,相对于原始图像,4种算法增强处理后,IE、LC、MG 3个客观评价指标数据均高于原始图像对应的值,说明这些方法对图像都有增强效果,本文算法增强后的3幅图像在局部对比度、平均梯度这两个指标上的值均优于其他算法,信息熵的值除了珊瑚图像对应的测试结果略低于CLAHE算法,鱼、虾类图像对应的信息熵也高于其他3种算法,说明本文算法在对比度的增强以及细节层次和清晰度的提高方面有明显优势。
图 6 各种算法处理结果Fig. 6 Comparison of enhancement results using various techniques
表 1 原图和不同算法图像客观指标对比结果Table 1 Contrast results of image objective indexes between original image and images with different algorithms
由于水下复杂环境的影响,光学成像过程中水体对光线存在散射和吸收效应,导致拍摄的水下图像存在对比度低、细节模糊等退化现象,不利于水下图像资料的解释和目标的识别。针对这一问题,本文提出了基于非锐化掩模引导滤波的细节增强方法对水下图像进行增强。首先对原始图像做引导滤波得到细节层图像,并对细节层使用噪声检测的中值滤波去除斑点噪声;然后对原始图像进行均值滤波的非锐化掩模得到锐化图像,并将锐化图像作为引导图对原始图像进行引导滤波,让输出基础层图像的细节信息更加清晰;最后将滤波后的细节层增益后与引导滤波获取的基础层进行叠加,达到增强水下图像细节的目的。将本文方法与文献中的其他4种经典方法进行了比较,并通过信息熵、局部对比度和平均梯度3种客观评价指标对图像处理结果进行了对比分析。主观和客观测试结果表明本文算法能够有效提高图像对比度以及细节清晰度,本文研究成果可以为提高水下图像资料解释和目标识别的准确性提供一种可行的方法。本文主要针对信噪比较高、色偏不严重的水下图像进行细节和对比度的增强,对于低信噪比图像或有严重色偏图像的细节增强处理,后期的研究工作需要对现有算法进行改进,寻求满足图像去噪和色偏校正功能的图像细节增强方法。
致谢:本文主要基于中国大洋35航次第二航段“蛟龙”号载人潜水器在西南印度洋洋脊拍摄的海底图像资料,在此对航次组织实施单位国家深海基地管理中心和全体参航科考队员致以诚挚的谢意!