彭 诚, 孙新柱
(安徽工程大学 安徽省电气传动与控制重点实验室,安徽 芜湖 241000)
一种改进的深度图像修复算法研究
彭诚, 孙新柱
(安徽工程大学 安徽省电气传动与控制重点实验室,安徽 芜湖 241000)
摘要:深度图像在采集过程中由于受到设备本身和采集环境的影响,使采集得到的图像中存在大量的空洞,以致很难提取到准确的深度信息;提出了一种形态学滤波与双边滤波相结合的方法来解决深度图像中的空洞现象,算法根据形态学算法简单、易于分析的特点,首先利用膨胀、腐蚀、开运算、闭运算等基本算法对空洞部分进行填充,然后通过双边滤波使图像平滑; 实验结果表明方法对深度图像中所存在的空洞问题能够起到有效的填补,修复后的图像相比于原始深度图像,更加清晰,易于提取出可靠的信息。
关键词:深度图像;空洞;形态学;双边滤波
深度图像在人机交互、三维场景重建、导航与定位等领域有着较为广泛的应用。目前深度图像的获取主要有3种方式:一是激光雷达技术,即在一定时间间隔内朝目标发射信号并通过所经过的距离来计算深度信息;二是立体视觉技术,主要通过固定多个摄像头,计算视差来获取深度信息;三是结构光技术,主要原理是根据投射源投影到场景空间中产生可识别的条纹图像,然后由图像传感器读取空间中的条纹并且与参考条纹进行对比从而计算场景中的深度信息。
随着科技的迅猛发展,利用结构光技术获取深度图像的设备也更加趋于平民化了,例如微软的kinect系列,美国NaturalPoint公司的OptiTrack系列等。现采用的则是美国NaturalPoint公司的OptiTrackTMDPC640/30深度相机,可以同时获得分辨率均为640×480的RGB和深度图像。但是在采集过程中,由于设备自身的原因以及周围环境的影响,采集到的深度信息中往往含有大量的空洞和噪声,如果不对这些空洞和噪声进行处理就直接应用,则会直接影响到后续工作的精度甚至导致失败。因此,对于深度图像的处理具有很重要的意义。
在国内外有很多研究人员对于深度图像的优化与修复也进行了不少的研究。例如,Krishma Rao Vijayanagar等[1]通过高斯滤波的方法对空洞进行填补修复。方法虽然可以修复空洞,但是很容易就会造成边缘模糊,丢失边缘信息。Na Eun Yang等[2]通过空洞附近深度值的分布来估计空洞区域的深度值,从而达到对此部分的修复。方法并没有考虑到像素之间的差异,存在区域性。CAMPLAN M等[3]利用双边滤波的方法来对深度图像进行修复,可以有效的改善高斯滤波中边缘模糊的情况,但是面对大面积空洞的情况效果并不是很好。Jaesik Park等[4]通过对非局域均值滤波加入边缘信息权重对深度图像进行上采样来修复深度图像。Matyimin等[5]利用帧间运动补偿和中值滤波对深度图像进行黑洞填充。刘金荣等[6]提出一种联合双边滤波的方法,方法通过寻找深度图与彩色图边缘不匹配的像素,通过插值的算法对空洞进行填充。李应彬等[7]提出一种改进的双边滤波的方法,利用直方图信息二值化深度图像生成空洞掩膜对空洞部分进行填补,然后使用中值滤波使图像平滑。陈晓明等[8]提出一种优化算法,根据深度图像结合RGB图像来填补深度图像中的空洞部分。所以在此基础上提出一种基于形态学滤波和双边滤波相结合的方法对深度图像处理。形态学滤波主要是基于数学形态学,是一种非线性的滤波形式,它由膨胀、腐蚀、开、闭运算等基本的算法组合而成,通过集合相关的思想来对图像结构进行分析,可以直观的得到物体的形态本质,使其易于分析处理。所以利用其这一特性对深度图像中空洞进行处理,处理完成以后图像会出现一点毛糙的现象,再结合双边滤波具有良好的平滑图像功能,使得处理后的图像更加清晰,易于提取到准确的深度信息。
1算法描述
采用的是将形态学滤波与双边滤波算法相结合的方法对深度图像进行处理,通过形态学中的几种基本算法实现对深度图像中空洞的填补,然后利用双边滤波平滑图像。形态学滤波是以形态学中几种基础运算为核心算法的一种图像处理的方法,比起常规的线性滤波,在某种程度上有着更好的效果。它利用不同的结构元素消除掉目标物体中包含的不同类型的噪声信号。算法流程如图1所示。
图1 算法流程Fig.1 Algorithm flow
1.1形态学滤波
随着图像处理技术的日益发展,形态学方法也逐渐引起了人们的关注,现在不仅在图像处理范围内,在其它领域也得到了广泛应用,比如,计算机识别、视觉、生物医学图像处理、工业检测等。
形态学处理的大多数是二值图像和灰度图像。在二值运算中处理的对象是集合元素,而在灰度图像中处理的对象是图像函数。利用形态学处理深度图像的原理类似于处理灰度图像。形态学中包括很多不同的方法,例如,膨胀、腐蚀、开运算和闭运算等,其中膨胀和腐蚀是最基本的运算[9]。
1.1.1形态学基本理论
膨胀的主要作用是扩充目标物体的边缘,使物体范围增大,这样就可以将与物体接触到的孤立部分合并进物体本身。膨胀的公式定义为
图2 膨胀过程Fig.2 Dilation process
其中f表示的是图像函数,s表示的是结构元素,Df和Ds分别表示为f、s的定义域(图2)。
腐蚀的作用刚好和膨胀相反,它主要是使目标物体的边缘向内部收缩。
腐蚀的公式定义为
其中f表示的是图像函数,s表示的是结构元素,Df和Ds分别表示为f、s的定义域(图3)。
开运算的公式定义为
先进行腐蚀运算再进行膨胀运算,这个过程就是开运算。开运算的作用能够去掉图像中单独的小点、毛刺和小桥,并能平滑物体的边缘(图4)。
闭运算的定义为
图3 腐蚀过程Fig.3 Corrosion process
图4 开运算过程Fig.4 Open operation process
先进行膨胀运算再进行腐蚀运算,这个过程就是闭运算。闭运算的作用能够将目标物体中存在的细小空洞进行填充,并且能修复细小裂缝、平滑物体的边缘。闭运算是通过填充图像的凹角来滤波的(图5)。
图5 闭运算过程Fig.5 Closed operation process
1.1.2形态学滤波器的建立
开运算能够去除图像中的孤立、毛刺点,闭运算能够填补图像中细小的裂缝。如果单独运用开闭进行图像滤波,会因为它们自身的特性出现统计偏差的问题,这就会导致滤波效果不佳。所以需要对开闭运算进行组合使用:开闭滤波和闭开滤波。但是开闭滤波会使结果幅度偏小,而闭开滤波又会使结果偏大,故在此基础上采用的是将这两种运算进行平均后使用(图6)。
图6 形态学滤波流程图Fig.6 Morphologic filter flow chart
开闭滤波公式
闭开滤波公式
采用的组合滤波公式
1.1.3结构元素的选取
结构元素的选取对形态学滤波有着至关重要的作用,结构元素的尺寸大小和形状都会影响到滤波的结果,所以应当选取合适的结构元素。结构元素通常有直线、曲线、三角、半圆等。采用的则是圆形结构元素。
1.2双边滤波
双边滤波是一种非线性滤波,它是Tomasi等在高斯滤波的基础上提出的。双边滤波由两个核函数组成,它不仅参考了空间域上的相关性,同时还参考了像素值的相似程度。这样就能在滤波的同时考虑到图像信息中的图像边缘信息,使图像在正常高斯滤波后很模糊的边缘信息得以保持清晰,并且图像边缘更加平滑。
高斯核函数如下
(1)
式(1)中σs是高斯函数的标准差。
高斯核函数仅仅考虑了像素的空间关系,并没有关注图像的灰度值变化,所以在滤波的时候也将边缘进行了平滑处理,这就导致了滤波的结果往往趋于模糊化。所以双边滤波则是在此基础上增加一个函数来约束图像的灰度值变化。
(2)
式(2)中σr也是高斯函数的标准差。所以双边滤波的权系数H=HsHr。
如果点(i,j)和点(x,y)的灰度值很接近的话,权系数H就会趋向于HS。结果会趋于高斯滤波的结果。双边滤波的结果取决于σs和σr两个参数,当σs一定,σr的值很大时,权系数H也很大,则此时和高斯滤波一样,达不到保留边缘的效果。但是当σr的值很小时,将会失去滤波的作用,所以选取合适的参数进行滤波至关重要。
2实验及分析
利用OptiTrackTMDPC640/30深度相机采集到分辨率均为640×480的RGB图像和深度图像,并在win7系统的计算机上,使用Matlab软件对算法的可行性进行验证。为了突出采用算法实现效果的优越性,将与高斯滤波和双边滤波的结果进行比较(图7-图11)。
由上面的实验结果可知,高斯滤波虽然对于抑制服从正态分布的噪声非常有效,但是在处理深度图像的空洞中,并没有实现预期中的效果。当滤波参数选择的小时,图像没有什么变化,当滤波参数选择的过大时,图像将会变得非常模糊。双边滤波是基于高斯滤波上改进的一种滤波方法,它在去噪方面也有着不错的效果,不仅能够避免高斯滤波时造成的图像模糊,还能有效的保留目标对象的边缘信息,但是对于深度图像的空洞问题也没有起到有效的效果。采用的是将形态学滤波和双边滤波相结合的算法,不仅有效的填补了空洞,而且很好的保留了边缘,使图像平滑。
图7 原始RGB图像Fig.7 Primitive RGB image
图8 原始深度图像Fig.8 Primitive depth image
图9 高斯滤波结果Fig.9 Gaussian filter result
图10 双边滤波结果Fig.10 Bilateral filter result
图11 改进后算法结果Fig.11 Improved algorithm result
3结论
对深度图像中存在空洞问题提出一种形态学滤波与双边滤波相结合的方法。通过与其他滤波算法的实验结果进行比较,方法能够有效的去除空洞,并能使图像平滑,为能够提取到准确的深度信息提供了坚实的基础。
参考文献(References):
[1]KRISHNA R V,MAZIAR L,JOOHEE K.Refinement of Depth Maps Generated by Low-Cost Depth Sensors in Proc[J].IEEE Conf SoC Design Conference(ISOCC),2012,355-358
[2] NA E Y,YONG G K,RAE H P.Depth Hole Filling Using the Depth Distribution of Neighboring Regions of Depth Holes in the Kinect Sensor[J].Signal Processing Communication and Computing (ICSPCC),2012,658-661
[3] YANG Q Q,WANG L H,LI D X,et al.Hierarchical Joint Bilateral Filtering for Depthpost-Processing[C].IEEE Internal ional Conference on Image and Graphics,2011:129-134
[4] PARK J,KIM L,TAI Y W,et al.High Quality Depth Map Upsampling for 3D-TOF Cameras[C].IEEE International Confcrcncc on Computer Vision,2011:1623-1630
[5] MALYUNIN S,VATOLIN D,BERDNIKOV Y,el al.Temporal Filtering for Depth Maps Generated by Kinect Depth Camera[C].3DTV Conference,2011:1-4
[6] 刘金荣,李淳芃.基于联合双边滤波的深度图像增强算法[J].计算机工程,2014,40(3):249-252
LIU J R,LI C P.Depth Image Enhancement Algorithm Based on Joint Bilateral Filtering[J].Computer Engineering,2014,40(3):249-252
[7] 李应彬,冯杰.基于改进双边滤波的Kinect深度图像空洞修复算法研究[J].工业控制计算机,2013,26(11):105-109
LI Y B,FENG J.New Algorithm of Depth Hole Filling Based on Intensive Bilateral Filter[J].Industrial Control Computer,2013,26(11):105-109
[8] 陈晓明,蒋乐天.基于Kinect深度信息的实时三维重建和滤波算法的研究[J].计算机应用研究,2013,30(4):1216-1218
CHEN X M,JIANG L T.Research of 3D Reconstruction and Filtering Algorithm Based on Depth Information of Kinect[J].Application Research of Computers,2013,30(4):1216-1218
[9] 武瑛.形态学图像处理的应用.[J].计算机与现代化,2013,213(5):90-94
WU Y.Application of Morphology in Image Processing[J].Computer and Modernization,2013,213(5):90-94
责任编辑:田静
Study on an Improved Depth Image Restoration Algorithm
PENG Cheng, SUN Xin-zhu
(Anhui Key Laboratory of Electric Drive and Control,Anhui Polytechnic University,Anhui Wuhu 241000,China)
Abstract:In depth image acquisition process due to the impact of the device itself and acquisition environment, the image obtained has a large number of empty,it is difficult to extract accurate depth information to solve the problem,a new method is proposed to solve the void in the depth image,which is simple and easy to be analyzed.First, expansion,corrosion,opening and closing operations and other basic algorithm are used to fill the empty part,and then through the bilateral filtering to make the image smooth.Experimental results show that the proposed method can effectively fill the holes in the depth image,and it is more clear and easy to extract reliable information than the original image.
Key words:depth image;cavity;morphology;bilateral filtering
中图分类号:TP118.1
文献标志码:A
文章编号:1672-058X(2016)01-0065-06
作者简介:彭诚(1987-),男,安徽安庆人,硕士研究生,从事立体视觉研究.
收稿日期:2015-07-10;修回日期:2015-10-14.
doi:10.16055/j.issn.1672-058X.2016.0001.014