基于边缘校正的深度图像上采样后处理算法

2015-05-09 09:22袁艺天林春雨刘美琴
铁道学报 2015年12期
关键词:深度图边界点后处理

袁艺天,林春雨,赵 耀,姚 超,刘美琴

1.北京交通大学 计算机与信息技术学院,北京 100044;2.北京交通大学 现代信息科学与网络技术北京市重点实验室,北京 100044)

获取三维场景相对于摄像机的距离是计算机视觉研究中最基础的内容之一,场景中各点相对于摄像机的距离可以用深度图像来表示,即深度图像中某一点的像素值表示对应场景中某一点相对于摄像机的距离。深度图像表征了物体的第三维度信息,因此在三维重建、模式识别、人机交互等研究中有重要应用。

目前机器视觉系统获取场景深度图像的技术可分为被动光方法和主动光方法两大类。被动光方法的基本原理是从两个(或多个)视点观察同一景物,以获取在不同视角下的感知图像,通过三角测量原理计算图像像素间的位置偏差(即视差)来获取景物的三维信息,生成深度图像。然而被动光方法需要严格的约束条件和精确的校正,且时间复杂度也较高,在实际应用中较少采用。主动光方法是指视觉系统首先向场景发射能量,然后接收场景对所发射能量的反射能量,通过计算,获得场景的深度信息。目前依据此类方法设计的Kinect摄像机就是通过向测量空间投射红外光,从而在物体表面形成红外散斑,通过对散斑与摄像机距离的标定来获取物体的深度信息。通过此种方式能迅速生成深度图像,且成本较低,但获取的深度图像与同时获取的颜色图像相比,存在分辨率较低的问题,不利于后续工作的进行,限制了其在实际中的应用。所以需要设计高效的算法提高深度图像的分辨率,使其与对应颜色图像具有同样的大小,即深度图像的上采样。

图像上采样有一些经典的插值算法,例如最邻近插值算法(Nearest)、双线性插值算法(Bilinear)和双三次插值算法(Bicubic)等。最邻近插值算法即选择离它所映射到的位置最近的输入像素的灰度值作为插值结果,这种算法计算量虽小,但会产生明显的马赛克现象和锯齿效应。双线性插值算法则是对最邻近插值算法的改进,它先对水平方向进行一阶线性插值,然后再在垂直方向上进行一阶线性插值,综合二者经第三次插值得到最后结果,经此种方法得到的上采样结果图像的锯齿现象难以察觉,但图像的边缘会产生模糊现象。双三次插值算法是对双线性插值算法的改进,它不仅考虑了直接邻点的灰度值对待采样点的影响,还考虑了邻点间像素值变化率的影响, 因此所求得的待采样点像素值更为精确。此算法虽克服了前两种方法的缺点,边缘模糊现象也得到改善,但是会造成原始图像的细节丢失。

这些经典的插值算法都是利用待采样点邻近点的像素值加权,得到采样点的像素值,总体的时间复杂度不高,且在图像的平滑区域具有不错的处理效果,但是在图像的边界区域不可避免地会带来锯齿效应、模糊等问题。此外,这些经典的插值算法都是针对2D颜色图像进行设计的,而深度图具有边缘尖锐且内部平滑的特点。深度图不会直接呈现在3D显示端,而是通过视点合成算法映射到其他视点。在视点合成过程中,深度图的边缘区域对合成视点的影响较大。由于经典上采样后的边缘与颜色图像的边缘存在偏差,因此对合成视点造成的误差较大。

目前大部分深度图像上采样算法都是从边缘及细节保持出发。由于深度信息与其对应的颜色信息是对相同三维场景的不同角度描述,二者具有很强的相关性,因此可以利用颜色图像指导深度图像的上采样。文献[1]将待上采样图像的低纹理区域与高纹理区域分别进行处理,有效保证了图像高纹理区域的细节特征。文献[2]中马尔可夫随机场原形利用颜色信息实现了深度图像的上采样,但颜色信息的利用不够充分。由于双边滤波器综合使用了空间域距离核函数和颜色相似核函数,具有良好的边缘保持效果,依此思路,文献[3]首次提出了联合双边上采样算法JBU,但是该算法在对应相同颜色的深度不连续区域将出现边缘扩散的现象。文献[4]提出了一种融合颜色相似项和原始深度相似项的插值方法,一定程度上解决了边缘扩散的问题。文献[5]通过颜色图计算出各向异性扩散张量来指导深度图像的上采样,得到了边缘平滑的深度图像,且该算法在时效性和精确度上都有很大改进。文献[6]提出了深度图像快速上采样算法,上采样深度图像边缘的像素值由它邻近区域点的像素值筛选而得,筛选的评价函数由颜色、空间距离等因素构成,非边缘区域点的像素值则用双线性插值算法直接计算。文献[7]提出了一种颜色图像指导的深度图像滤波方法,对深度图像的边缘区域进行修复,使深度图像的边缘准确度得以提高。

文献[1-6]都是在深度图像上采样的过程中就开始考虑保持边缘信息,并采用颜色图像指导等方式对上采样进行处理,但是插值算法本身带来的边缘模糊效应仍然难以消除。考虑到同一物体在深度图像中的深度信息通常一致,而不同物体的交界处才出现深度值的突变,所以深度图像具有边界尖锐而局部平滑的特点。针对平滑区域,采用简单的插值算法就能够达到较好的上采样效果。而对于边界区域,需要对上采样进行干预,保证其边缘细节。为此,本文将这些边界区域提取出来,先采用时间复杂度较低的经典插值算法,将深度图像的尺寸扩充至与颜色图像相同,再对此初步上采样后的深度图的边界区域进行后处理。算法在有效保持深度图中重要边缘信息的同时,减少了平滑区域的处理时间。

1 算法设计

本文所述算法能够对用简单经典插值算法得到的上采样深度图进行边界修复,使上采样后的深度图像边界能够和与之匹配的同分辨率的颜色图像的几何边界相吻合,同时深度图像边界区域比较清晰,消除了经典算法带来的边界模糊现象。本文所述算法大致分为3部分:(1)用简单插值算法(例如双三次插值算法)对深度图像进行初步的上采样,并提取出初步上采样后深度图像的初始边界;(2)结合颜色图像梯度信息,校正深度图像的初始边界,使之与颜色图像的几何边界相吻合;(3)用修正后的深度图像边界图指导上采样深度图像的边界修复。算法总体框图如图1所示。

图1 颜色指导的深度图像上采样算法后处理整体框图

1.1 深度图像的初步上采样

设待上采样的原始深度图像为DO,长宽尺寸为其a倍的颜色图像表示为C(C与DO所示场景一致)。利用简单的经典插值算法将DO放大a倍,得到D′,用canny算子对D′进行边缘检测,得到E′。

由于图像像素的灰度值是离散的, 因此一般上采样算法的处理方法是对原来在整数点坐标上的像素值进行插值生成连续的曲面, 然后在插值曲面上重新采样以获得缩放图像像素的灰度值。这种处理是全局的,在图像的平滑区域仍然能保证上采样结果图像的平滑性,但是在图像像素灰度值突变的区域,由于待采样点的灰度值是由临近各点灰度值采用各种模式的加权平均方法得到的,必然造成边界两侧区域各点的灰度值差异减小,造成边界模糊的现象。图2(a)为上采样前的局部区域图像,经Bicubic算法进行上采样后这一图像区域如图2(b)所示,可见图像边缘十分模糊,且上采样后深度图的边界与颜色图边界吻合度很低。而改进后的具有保边效果的上采样算法,例如联合双边上采样,由于同时考虑了空间域和像素值域的影响,一定程度改善了边缘模糊的现象,但是边界区域仍然影响着图像的质量,所以直接上采样得到的D′的边界区域需要进一步修复。由于D′边界区域的模糊现象,在用canny算子检测边缘时,边界点的位置有多种可能性,如图2(c)所示,边界线的位置可能有3种,给检测带来许多不确定性因素。且提取出的边缘与和它相匹配的颜色图像的几何边缘公共点很少,如图2(d)所示,这说明提取出的边界点位置很不准确,所以得到的边界二值图E′也需要进一步校正。

(a)直接上采样之前的图像(局部图像)(b)直接上采样后的图像(局部图像)(c)插值算法给边缘检测带来不确定性(局部图像)(d)直接上采样后颜色图和深度图的公共边界图图2 深度图像直接上采样后存在的问题

1.2 边界二值图的校正

要校正二值边界图像E′中边界点的位置,使其边缘与和它相匹配的颜色图像的几何边缘吻合,就需要利用颜色图像的信息来指导此校正过程。

图像边缘检测主要是利用图像某一点的梯度信息来判定该点是否为边界点,一般认为梯度值越大,这一点为边界点的可能性越大。基于此原理,选用颜色图像的梯度信息来指导校正过程。但有时某些梯度幅值较大的点不一定是边缘点,图3(a)是一副原始的颜色图像,对此图像进行边缘检测,提取出的边界有两种可能性,一种是物体的几何边界,一种则是图像纹理区域的边界,如图3(b)所示。而在深度图像中,即便某一区域对应的颜色图像为纹理图像,但只要该区域处于同一深度,那么这一区域在深度图像中仍是平滑的。同一物体的各个部位深度值往往差别不大,只有在物体的交界处,或是前景物体与背景的交界处,才会出现深度值的突变,所以检测深度图像的边界,得到的一般是物体的几何边界,检测图3(c)为原始深度图像的边缘,得到的结果如图3(d)所示。仅需要用颜色图像提取出的几何边界来指导校正上采样后深度图像的边界点,因此在校正时,要排除掉纹理区域边界对这一过程的干扰。虽然E′中边界点的位置不是十分准确,但是每一个待校正边界点与正确边界点间的距离并不会太大,所以在校正过程中,只需在待校正边界点邻近的区域中搜寻正确的边界点并记录下来。

(a)颜色图像(b)颜色图像边界(c) 深度图像(d) 深度图像边界图3 深度图像与颜色图像对比

下文为对校正过程的具体描述。对二值边界图像E′中的每个边界点做如下处理:设E′中某一边界点为P,只对P点在水平或竖直的某一个方向上进行校正,该校正方向应该与P点对应于DO中边界区域深度值的突变方向一致。校正方向具体判定方式如下:逆向找到P点在原始深度图DO上的对应点p,求出p点的左右两侧和上下两侧像素点的灰度差值,分别称为水平差值和竖直差值,如果其水平差值大于等于竖直差值,那么认为P点需要进行水平方向上的位置校正,否则,进行竖直方向上的位置校正。如图4所示,待校正边界点由于在原始深度图DO对应点处的水平像素差值小于竖直像素差值,故应做竖直方向上的边界点校正。

(a)原始深度图对应点区域(b)待校正的边界点区域图4 边界点校正方向判定示例图

若需要进行水平方向上的位置校正,则寻找P点在C中的对应点PC,以PC点为中心,左右各取r个连续的象素点为待考察点,所有的待考察点组成待考察区域R。若M为某一待考察点,且其水平梯度值大于PC点的水平梯度值,那么M就有可能是正确的边界点,但考虑到颜色图像中即使在同一深度处,由于颜色纹理信息的干扰,也会出现水平梯度值较大的情况,但深度图中没有纹理信息干扰,所以需要利用D′的深度信息,交叉验证M点是否为正确的边界点。寻找M点在D′中的对应点Md,若Md点的水平梯度值大于某一阈值thresh,则认为M点是正确的几何边界点,将P点在E′中的位置修正至M点的对应位置。若有多个M点满足条件,则取在颜色图待考察区域上水平梯度最大的点为校正点。竖直方向上位置校正与水平方向类同。

设P点在E′中的位置为(x0,y0),校正一次后P点的位置为(xg,yg)。

若P点判定为应在水平方向上进行校正,那么在R区域寻找到的校正点M必须满足此点对应的颜色图像水平梯度域比P点对应的大,且在初步上采样深度图中M点的水平梯度域大于某一阈值thresh。即,当gradx(p)≥grady(p)时

(xg,yg)=(xM,yM)M|M∈R,gradx(M)>

gradx(PC),gradx(Md)>thresh

在竖直方向上校正也是类似的,当gradx(p)

(xg,yg)=(xM,yM)M|M∈R,grady(M)>

grady(PC),grady(Md)>thresh

按照以上方式反复校正,直至校正前后边界图像不发生变化为止,最后得到的边界图像为E。

1.3 初次上采样深度图像D′的边界修复

由1.2节得到的E,其边界与C的几何边界是吻合的,利用E来指导修复D′的边界区域,达到消除D′边界模糊,且上采样深度图与颜色图几何边界一致的效果。

(a)双三次插值后的图像(局部)(b)寻找填充灰度值(局部)(c)填充修复边界区域(局部)(d)修复完毕后(局部)图5 深度图像局部后处理过程及结果

2 实验结果

通过观察初步上采样后的深度图像边缘细节,标定测量边界模糊区域的空间范围,对比模糊区域相近像素值的差异,反复试验,对于Bicubic算法取参数r=3,thresh=3,对于Bilinear算法取r=2,thresh=3,实施效果最佳。

为验证本文算法的可行性和有效性,以Bilinear、Bicubic算法为基础,分别在初次上采样完成后采用本文所述后处理算法进行二次优化。实验数据采用了middlebury[8,9]标准数据集Teddy、Reindeer、Bowling、Cones、Art,原始深度图像分辨率分别为375×450、555×671、555×626、375×450、555×695,对应的彩色图像分辨率分别是750×900、1110×1342、1110×1252、750×900、1110×1390,即上采样的2倍。针对Teddy、Cones数据集,进行上采样4倍的操作,深度图像上采样4倍对应的颜色图像分辨率为1500×1800。

2.1 校正前后深度图边界线与颜色图边界线公共点数目对比

在Teddy、Cones、Bowling、Reindeer、Art5组实验数据下,后处理算法在校正深度图边界线前后,其边界线与颜色图边界线公共点的数目见表1。针对Teddy、Cones数据集,上采样2倍前后,其深度图与颜色图的公共边界线对比示图如图6所示。

表1 后处理前后边界线公共点个数对比

(a)Teddy校正前的公共边界线(b)Teddy校正后的公共边界线(c)Cones校正前公共边界线(d)Cones校正后公共边界线图6 校正操作前后深度图与颜色图公共边界线对比示图

由表1知,经本文算法校正后,上采样深度图边界与颜色图几何边界公共点的个数明显增加,校正后的个数平均约为校正前的2倍以上。由图6(a)和图6(b)对比可见,本文所提算法获得的边界更加连续,可以直观地看到公共点数目的增加,证明本文所述算法的确能使上采样深度图的边界与颜色图的几何边界相吻合。

2.2 与guidedfilter后处理方法对比

颜色图像指导的针对深度图像的滤波方法guidedfilter[7]能使滤波后的深度图像具有良好的边缘准确度,且深度图与颜色图的合成视点效果也较好。由Bicubic, Bilinear方法上采样以后得到初步深度图,分别用guidedfilter方法及本文所述算法进行滤波后处理,将所得的深度图像分别与颜色图像进行合成视点,生成I1、I2,再将标准深度图和颜色图合成视点,生成I0。计算I1与I0的峰值信噪比,I2与I0的峰值信噪比,所得结果见表2。guidedfilter方法和本文所述方法后处理得到的深度图与颜色图的合成视点图如图7所示。

表2 本文后处理算法与guidedfilter后处理对比的合成视点图PSNR

图7 guidedfilter方法与本文算法所得深度图与颜色图合成视点图对比

由表2可知,经本文所述后处理算法得到的深度图与颜色图的合成视点I2和由guidedfilter方法所得的I1相比,I2与真实深度图合成视点I0的PSNR更大,将深度图上采样2倍时,PSNR平均提高了约10.9%,上采样4倍时,PSNR平均提高了约3.7%。这说明本文所述算法对深度图像的边缘修复是有效的,使深度图像边缘与颜色图像边缘的吻合度得到了提高,较guidedfilter方法更优。

由图7可见,本文所述后处理算法在合成视点图上效果更佳,边缘毛刺效应更少,从主观视觉效果上说明经本文算法得到的深度图与颜色图边缘吻合度更高,合成视点效果更佳。

2.3 深度图细节对比

针对Reindeer图像[8],以Bicubic算法为基础将深度图上采样2倍,采用本文所述算法进一步优化深度图,对比后处理前后深度图像局部特征如图8所示。

(a)后处理前(Reindeer)(b)后处理后(Reindeer)图8 后处理前后深度图细节对比

由图8(a)、图8(b)对比可知,经本文所述算法对上采样深度图边界修复以后,其边界模糊现象得到了有效改善,边缘细节特征得到了保持。

本文所述的深度图像后处理算法以颜色图像的边界线为参照,对简单上采样的深度图像边界线进行校正,经后处理后,深度图像边界线与颜色图像边界线的公共点增多了约1倍,边缘吻合度更高,且经后处理后的深度图像与颜色图像生成的合成视点图边界毛刺较少,和标准深度图像与颜色图像生成的合成视点图相比,在上采样2倍时,本后处理算法得出结果的PSNR值比guidedfilter后处理算法平均高出约10.9%,较guidedfilter算法有了很大提升。以校正后的边界线为界,用深度图像内部平滑区域的像素值填充深度图像边缘两侧因简单上采样带来模糊效应的区域,从主观视觉上看,深度图像的边界模糊现象得到了明显的改善。

本文所提算法在得到较好质量的上采样图像的同时,在时间复杂度方面也付出了代价。经初步上采样后,深度图像检测出的每一处边缘,本后处理算法都要对其进行边界点的校正和对应边缘模糊区域的填充,若深度图像边界点的个数为n,算法的总体时间复杂度即为O(n)。但场景复杂的深度图像边界点的个数往往较多,且校正和填充操作都有相应的时间开销,所以尽管算法时间复杂度随着边界点的个数呈线性增长,但是算法实施的时间耗费较大。

3 结束语

本文通过结合与深度图像相匹配的颜色图像的梯度信息,对用经典插值算法得到的上采样深度图进行边界线的校正和边界区域的填充修复,通过两次后处理改进了已有的插值算法。实验结果表明,本文所述后处理算法具有良好的保边效果,改善了初次上采样后深度图像边缘模糊的现象,且其边界能与颜色图像的几何边界更好地吻合。由于本文所述算法是一种基于颜色图像指导的上采样深度图的边界校正算法,它可以和不同的上采样算法相结合,对所得结果进行后期的边界修复和优化,使其边界区域更为清晰,因此具有很好的兼容性。下一步将解决在颜色图像纹理信息干扰比较多的区域,对相应深度图像边界进行稳定修复的问题,进一步提高深度图像质量。

参考文献:

[1]GUO N N, SONG L, YANG X K, et al. Image Interpolation Based on Decomposition[C]// International Symposium on Intelligent Signal Processing and Communication Systems (ISPACS), 2010:1-4.

[2]KIM D, YOON K. High-quality Depth Map Up-sampling Robust to Edge Noise of Range Sensors[C]//Orlando: International Conference on Image Processing, 2012:553-556.

[3]KOPF J, COHEN M F. Joint Bilateral Upsampling[J]. ACM Transaction on Graphics, 2007, 26(3):96-100.

[4]CHAN D, BUISMAN H, THEOBALT C,et al. A Noise-aware Filter for Real-time Depth Upsampling[C]//Proc. of Workshop on Multi-camera and Multi-model Sensor Fusion Algorithms and Applications, 2008:1-12.

[5]FERSTL D, REINBACHER C, RANFRL R, et al. Image Guided Depth Upsampling Using Anisotropic Total Generalized Variation[C]// IEEE International Conference on Computer Vision (ICCV), 2013:993-1000.

[6]KIM S Y, HO Y S. Fast Edge-preserving Depth Image Upsampler[J]. IEEE Transactions on Consumer Electronics,2012,58(3):971-977.

[7]HE K M, SUN J, TANG X O. Guided Image Filtering[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2013, 35(6):1397-1409.

[8]SCHARSTEIN D, SZELISKI R. High-accuracy Stereo Depth Maps Using Structured Light[C]//IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR 2003), 2003:195-202.

[9]SCHARSTEIN D, PAL C. Learning Conditional Random Fields for Stereo[C]//IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR 2007), 2007:1-8.

猜你喜欢
深度图边界点后处理
一种基于WMF-ACA的深度图像修复算法
果树防冻措施及冻后处理
基于深度图的3D-HEVC鲁棒视频水印算法
乏燃料后处理的大厂梦
区分平面中点集的内点、边界点、聚点、孤立点
基于降维数据边界点曲率的变电站设备识别
一种基于局部直方图匹配的深度编码滤波算法
多阈值提取平面点云边界点的方法
叠加速度谱在钻孔稀少地区资料解释中的应用
乏燃料后处理困局