APP下载

基于边缘信息引导滤波的深度图像增强算法

2017-08-12张芳芳李良福肖樟树

计算机应用与软件 2017年8期
关键词:彩色图像图像增强邻域

张芳芳 李良福 肖樟树

(陕西师范大学计算机科学学院 陕西 西安 710119)



基于边缘信息引导滤波的深度图像增强算法

张芳芳 李良福 肖樟树

(陕西师范大学计算机科学学院 陕西 西安 710119)

由于Kinect传感器的有效测距有限,深度图像会出现黑洞、噪声等问题,传统的深度图像增强算法仅利用彩色图像信息填充黑洞,增强后的深度图像物体边缘不清晰。针对这种情况,提出基于边缘信息引导滤波的深度图像增强算法。首先,分别获取彩色图像和深度图像的边缘信息,通过融合得到作为引导的边缘图像信息;然后,将边缘信息和迭代非局部中值滤波算法相结合进行黑洞填充;最后,利用自适应中值滤波对图像进行平滑噪声的处理。实验结果表明,该算法能够很好地修复深度图像,得到较为清晰的物体边缘。

深度图像增强 边缘检测 迭代非局部中值滤波 图像去噪

0 引 言

随着Kinect传感器的出现,计算机视觉领域有了开放性的变革。Kinect传感器不仅可以获得彩色图像信息,而且可以获取深度图像信息,因此被广泛地应用到三维场景重建[1]、目标跟踪与识别[2]等研究领域。由于Kinect的有效测距范围有限,深度图像会存在以下一些问题:① 某些物体Kinect不能准确地获取,深度值表现为零;② 一个物体挡住其后面的区域,在物体的边缘会出现黑洞;③ 获取深度图像时会产生深度噪声[3]。针对上述问题,国内外许多研究人员提出了一些深度图像增强的算法。

刘俊毅[4]提出一种彩色图像引导的深度图像增强算法,他们将彩色图像信息和传统的快速行进法的图像修补模型相结合,得出了一种新的深度值估计算法并且改进了深度值填充的次序。Bapat等[5]提出了一种迭代非局部中值滤波,他们利用该像素邻域的深度中位数值和此像素的深度值相近的思想进行填充黑洞。Camplani等[6]提出了一个高效的时空黑洞填充算法进行深度图修复,他们使用一个联合双边滤波框架来近似错误的深度值,时间和空间信息均用来选择滤波器权重。Qietal等[7]提出了一种基于融合的深度图像增强算法,他们的方法将传统的增强技术和非局部滤波模型结合。Zhang等[8]提出一种基于彩色图像引导、区域自适应以及深度选择的统一框架对深度图像增强的算法,他们将彩色图像信息、自适应区域选择和可靠深度的选取统一成一个引导的框架,在这个框架的引导下,对深度图像进行增强处理。但是,以上算法都是只利用彩色图像信息填充黑洞,没有考虑边缘信息。事实上,深度图像中产生无效像素的区域主要位于物体的边界。对于彩色图像修复时,不同的物体可能有相同的颜色,但不需要考虑两个像素是否属于同一物体。但深度图像增强时,属于不同物体的深度值是没有相关性的,因此这些像素不应该用来估计彼此的深度值。

针对上述问题,本文提出了基于边缘信息[9]引导滤波的深度图像增强算法。该算法利用边缘信息引导迭代非局部中值滤波进行黑洞填充,由于填充后的深度图像会有噪声出现,再使用自适应中值滤波[10]对填充后的深度图像进行平滑处理,得到边缘更为清晰的图像,从而提高深度图像质量。

1 本文算法描述

在Kinect获取的深度图像中,黑洞出现的位置大部分位于物体的边缘,只利用彩色图像信息很难准确地找到深度值。针对此问题,本文提出基于边缘信息引导滤波的深度图像增强算法。首先,对Kinect采集的彩色图像和深度图像进行边缘提取得到彩色边缘图像和深度边缘图像,分别增强彩色边缘图像和深度边缘图像,并将增强后的边缘图像进行融合处理,得到作为引导的边缘图像;然后,以融合后的边缘图像为引导,利用迭代非局部中值滤波进行黑洞填充;最后,使用自适应中值滤波对图像进行平滑噪声的处理。算法流程图如图1所示。

图1 本文算法流程图

1.1 图像边缘图像的获取

1.1.1 彩色图像边缘和深度图像边缘检测

本文在获取彩色图像边缘之前,首先利用中值滤波对彩色图像进行平滑处理,使得物体的边缘更为明显,然后采用Canny算子分别获取彩色图像边缘和深度图像边缘,从而得到各自的边缘图像。

1.1.2 彩色边缘图像增强

1.1.3 深度边缘图像增强

深度边缘图像中存在真正的边缘和错误的边缘。深度图像中黑洞区域的像素称为无效像素,无效像素为零,而有效像素都大于零。为了确定这两个边缘需要检测深度边缘图像中某一边缘像素ed的8邻域像素,如果没有无效像素的存在,则这个像素为真正的边缘像素,如果有无效像素的存在,则这个像素为错误边缘的像素。虽然错误边缘不是真正的物体边缘,但是可以为寻找黑洞部分中物体真正的边缘提供一种引导。

1.1.4 边缘图像融合

通过上述步骤,分别获得了增强的彩色边缘图像和增强的深度边缘图像。为了获得更准确的图像边缘信息,将增强的边缘图像进行融合处理,得到最终的边缘图像。由于彩色图像的边缘比较可靠,所以以彩色边缘图像为主,如果彩色边缘图像的某一个部分不可靠,再采用深度边缘图像的边缘。具体做法如下:对于增强后的深度边缘图像,首先计算每一个像素的矢量方向,如果彩色边缘图像的边缘接近于该方向,则采用彩色边缘图像的边缘,放弃深度边缘图像的边缘,否则就将深度边缘图像的边缘代替彩色边缘图像的边缘。通过融合增强后的彩色边缘图像和深度边缘图像,得到了更为准确的图像边缘信息,为后续图像处理提供了有利的引导条件。

1.2 彩色图像信息的获取

设I(x,y)表示彩色图像,x和y为像素坐标,NI(x,y)是像素(x,y)的邻域,这里使用一个3×3模式。因此,NI(x,y)表示像素(x,y)的8邻域像素。下面的式(1)中,MED代表矩阵的中位数。

MI(x,y)=MED(NI(x,y))

(1)

针对彩色图像,首先利用式(1)计算每一个像素的邻域的中位数,然后将该像素的邻域像素都减去中位数,得到式(2)。为了更清楚地表示像素的相似性,用一个灰度模型阈值Cth限定。这个结果用一个9维邻域矢量Ns(x,y)表示,如式(3)。由于Ns(x,y)表示像素之间的相似性,因此相似邻域矢量Ns(x,y)可以被用作深度数值恢复的一个引导。

(2)

(3)

1.3 边缘信息引导滤波进行黑洞填充

在彩色图像中,每一个像素的像素值和此像素的邻域中值相似。同样,在深度图像中,每一个像素的深度值和此像素的邻域深度中值相似,因此使用此思想进行黑洞填充。设ND(x,y)代表深度图像D(x,y)像素(x,y)的邻域。同样用一个3×3的模式。对于每一个像素(x,y),计算MD(x,y):

MD(x,y)=MED(ND(x,y))

(4)

但是,计算时分两种情况:

(1) 3×3的模式对应的边缘图像中没有边缘的出现,即边缘图像中没有像素0的出现,则直接计算MD(x,y),如图2(a)所示。图2(a)中左图代表深度图像,右图代表对应的边缘图像。计算灰色处像素的中值,对应的边缘图像中没有像素0的出现,则在深度图像中利用像素的邻域像素计算中值。

(2) 3×3的模式对应的边缘图像中有边缘的出现,即边缘图像中有像素0的出现,则只利用边缘一侧数据较多的部分计算MD(x,y),如图2(b)所示,计算中值时只利用图中阴影区域的数据。

图2 边缘图像引导的原理图

基于上述方法得到较为准确的MD(x,y),它可以作为一个深度参考值。一旦MD(x,y)对于每一个像素位置已经计算,进行下一步的操作。对于给定的像素值(x,y),计算如下:

(1) 计算Md(x,y),Md(x,y)=MED(ND(x,y));

(2) 在(x,y)邻域内的每一个像素位置(p,q),只有在Ns(x,y)为1的像素值处才会比较MD(p,q)和Md(x,y);

Md(x,y)不同于MD(p,q)和MD(x,y),MD(p,q)和MD(x,y)是在改变Md(x,y)之前计算出来的,而Md(x,y)是作为一个黑洞填充深度数据的中间值。随着迭代次数的增加,Cth以一个很小的值δ进行增加,从而得到更为准确的像素相似性。

2 自适应中值滤波降噪

通过上述步骤,得到填充较为充分的深度图像。由于填充后的深度图像会出现噪声现象,因此利用自适应中值滤波对深度图像进行降噪处理。自适应中值滤波算法是通过对窗口的调整进行图像降噪处理。S(x,y)为像素(x,y)处的像素值,W为初始窗口,设置为3,Zmax和Zmin分别表示窗口最大灰度值和最小灰度值,Zmed表示窗口内中值。具体算法步骤如下:

(1)W初始为3。如果Zmed≥Zmax或者Zmed≤Zmin,则将窗口W扩展为W+2;

(2) 如果Zmax>Zmed>Zmin,并且Zmax>S(x,y)>Zmin,则输出S(x,y);

(3) 如果Zmax>Zmed>Zmin,并且S(x,y)≥Zmax或者S(x,y)≤Zmin,则输出Zmed。

由上述步骤可以看出,一个像素被判断是否为噪声点,主要取决于Zmax和Zmin。如果某一像素值大于等于Zmax或者小于等于Zmin,则该像素值为噪声点,被修改为Zmed。中值滤波在平滑噪声的同时能很好地保持边缘,得到更清晰的图片。

3 实验结果与分析

针对本文提出的算法,在PC机上基于Matlab语言实现该算法。本实验使用Kinect获取不同场景的深度图像和彩色图像,大小为640×480。本算法参数选取是通过实验的比较,得出较优值。其中,迭代次数为9次,δ=2时,所有黑洞均被填充,深度图像增强的结果较优。

实验1是采用本文算法对Kinect采集的深度图像进行增强处理,结果如图3。图中(a)列为原始深度图像,(b)列为使用本文算法增强的深度图像。从图中可以看出,黑洞被全部填充,能够很好地修复,并且边缘比较清晰。

图3 本文算法实验结果图

为了能够从定量的角度对本文的算法进行评价,实验2选择了Middlebury标准数据集中的Teddy和Art两幅典型图像,分别进行双边滤波(BF)、传统快速行进法(FMM)与本文算法作对比实验,结果如图4所示。从图中观察可得,BF和FMM算法均在纹理和边缘处清晰度不高,如图中黑色框所示,而本文算法在填充黑洞和保持边缘的细节性具有更好的效果。

图4 从左到右为Middlebury数据集Teddy、Art的实验结果

通过计算,得到三种方法的最终均方根误差(Root Mean Square Error,RMSE),结果如表1所示。由表1可知,使用本文算法处理后的场景的RMSE值均为最小,具有很好的增强效果。

表1 基于Middlebury数据集的RMSE值对比

4 结 语

Kinect传感器可以方便地获取深度图像,但是受到许多因素的影响,获取的深度图像质量较低。本文提出了一种基于边缘信息引导滤波的深度图像增强算法。该算法综合运用了边缘信息和彩色图像信息,能够很好地修复由无效像素组成的黑洞,再结合自适应中值滤波降噪,得到边缘清晰平滑的深度图像,提高了深度图像的质量。

[1] Camplani M, Mantecon T, Salgado L. Depth-color fusion strategy for 3-d scene modeling with kinect[J]. IEEE Transactions on Cybernetics, 2013, 43(6): 1560-1571.

[2] Wang Z, Mirbozorgi S A, Ghovanloo M. Towards a kinect-based behavior recognition and analysis system for small animals[C]// 2015 IEEE Biomedical Circuits and Systems Conference, 2015: 1-4.

[3] 徐欢, 郑江滨. Kinect深度图像修复算法[J]. 微电子学与计算机, 2013, 30(11): 98-103.

[4] 刘俊毅. 彩色图像引导的深度图像增强[D]. 浙江大学, 2014.

[5] Bapat A, Ravi A, Raman S. An iterative, non-local approach for restoring depth maps in RGB-D images[C]// IEEE National Conference. 2015: 1-6.

[6] Camplani M, Salgado L. Efficient spatio-temporal hole filling strategy for kinect depth maps[C]// International Society for Optics and Photonics. Electronic Imaging, 2012: 841-845.

[7] Qi F, Han J, Wang P, et al. Structure guided fusion for depth map inpainting[J]. Pattern Recognition Letters, 2013, 34(1): 70-76.

[8] Zhang D, Yao Y, Zang D, et al. A spatio-temporal inpainting method for Kinect depth video[C]// IEEE International Conference. 2013: 67-70.

[9] Chen W, Yue H, Wang J, et al. An improved edge detection algorithm for depth map inpainting[J]. Optics and Lasers in Engineering, 2014, 55(7): 69-77.

[10] 周萌萌, 任子晖, 周旋旋. 基于窗口的自适应中值滤波算法[J]. 电视技术, 2015, 39(22): 15-18.

DEPTHIMAGEENHANCEMENTALGORITHMBASEDONEDGEINFORMATIONGUIDANCEFILTER

Zhang Fangfang Li Liangfu Xiao Zhangshu
(SchoolofComputerScience,ShaanxiNormalUniversity,Xi’an710119,Shaanxi,China)

Because of limited distance measurement of Kinect sensor, black holes and noise etc. would occur in the depth map. Previous approaches to fill the black holes only used color images information and might cause unclear object edges of depth map after strengthening. So we proposed a new depth map enhancement algorithm based on edge information guided filtering. First, we combined the edge information of the color image and depth map as guide edge image information. Second, we combined the edge information and the non-local iterative median filtering algorithm to cover the hole. Finally, we used the adaptive median filter to smooth the noise. Experimental results show that the proposed approach can produce high quality depth map and can get a sharp edge.

Depth map enhancement Edge detection Iterative non-local filtering Image denoising

216-09-08。国家自然科学基金项目(61573232,61201434,61401263);中央高校基本科研业务费专项资金资助项目(GK201503068)。张芳芳,硕士生,主研领域:图像处理,计算机视觉。李良福,副教授。肖樟树,副教授。

TP391

A

10.3969/j.issn.1000-386x.2017.08.035

猜你喜欢

彩色图像图像增强邻域
通过图像增强与改进Faster-RCNN网络的重叠鱼群尾数检测
基于混合变邻域的自动化滴灌轮灌分组算法
一种基于轻量级深度网络的无参考光学遥感图像增强算法
含例邻域逻辑的萨奎斯特对应理论
图像增强技术在超跨声叶栅纹影试验中的应用
基于二维直方图的彩色图像全局阈值分割方法研究
基于FPGA的实时彩色图像边缘检测
尖锐特征曲面点云模型各向异性邻域搜索
基于图像增强的无人机侦察图像去雾方法
基于DCT—DWT—SVD的彩色图像安全存储方案