APP下载

基于匹配点传播的三维重建及深度估计算法

2017-06-05时连标

电子技术与软件工程 2017年7期
关键词:深度图立体匹配视差

摘 要 在计算机视觉中,从两幅或多幅图像中重建出稠密的深度图是一个相当重要且具有挑战性的问题,深度信息通常作为一个有价值的信息来源,促进诸多应用领域的发展。重建稠密深度信息的关键之处在于找到两幅图像中的对应点匹配,即多视角立体匹配。本文提出的方法中,我们预先提取图像中最初稀疏匹配点对,然后在此基础上进行全局传播。我们假设在图像局部区域中,深度信息的变化是有规律的。本文中,我们运用SLIC对图像进行分割,得到超像素块,然后在超像素块内对粗糙的深度图进行细化,修复。我们的算法,在精度上要优于传统的立体匹配算法,且适应性较强,可以应用于现实生活中拍摄得到的一组序列图像。

【关键词】立体视觉 深度匹配点传播超像素

1 引言

在计算机视觉领域中,图像的深度信息通常可作为一个有价值的信息,促进诸多应用领域的发展,如目标检测、目标识别、路径规划以及场景复原等。而从两幅或多幅图像中重建稠密的深度图是一个相当重要且具有挑战性的问题。

重建稠密的深度图的关键技术,在于如何判断出两幅图像中点与点的密集对应关系,即多视角立体匹配。近几十年来,该领域也一直被广大学者所研究。立体匹配,在计算机视觉领域中是一个重要的问题之一。研究表明,诸多问题导致多视角立体匹配问题是一个不易解决的问题,一个问题就是场景本身的属性导致的,例如无纹理区域、非朗博表面、反射和半透明,以及遮挡等不可避免的问题。还有其他与相机相关的问题:例如图像噪声、不准确的校准所产生的一系列错误。

近几十年来,许多优秀的算法致力于更好地解决多视角立体匹配问题。

Scharstein和Szeliski等[1]提出了立体算法的分类和分类方案,他们将不同的立体算法分为两大类:局部和全局算法。 在局部算法中,一个给定的图像像素的视差计算仅取决于在一个窗口中的图像的强度/颜色值。所有的局部算法都需要成本聚合(步骤2),通常利用成本聚合来达到隐含的平滑性假设。另一方面,全局算法提出明确的平滑性假设,然后解决一个优化问题。这样的算法通常省略了成本聚合步骤,而是寻求一个视差解决方案(步骤3),最大限度地减少全局成本函数。流行的全局方法有动态规划[2],置信传播[3,4,5,6]以及图分割[7]。与局部算法不同的是,全局算法通过估计在其他像素的视差来估计某一个像素的视差。

大多数的成本聚合方法可以被看作是成本量的联合过滤。实际上,即使是简单的线性图像过滤器,如方波或高斯滤波器也可以用于成本聚合,但作为各向同性的扩散滤波器,它们往往会导致在深度边界处出现模糊。因此一些边界保持的滤波器,如双边滤波器[8]和图像引导滤波器[9]被引入到成本聚合中。Yoon和Kweon[10]将双边滤波器运用到成本聚合中,在Middlebury数据集[1]上产生了夺目的视差图,但是,他们的计算成本很高。为了解决计算问题,Rhemann等[11]提出引导滤波的使用,其计算复杂性取决于核大小。最近,Yang等[12]提出非局部成本聚合的方法,期望于核大小为整幅图像,通过在图上计算最小生成树,非局部成本聚合有着非常快的表现。Mei等[13]紧跟着非局部成本聚合的思想,使用分割树来强制视差一致性,可以得到更好的视差图。

前人的工作大多在于预先设定可能的视差范围,设计成本计算函数,然后对所有可能的视差计算成本函数,最后利用优化求解技术最小化匹配成本来计算最佳匹配,是一个优化类问题。

相反的,我们的工作在于依照简单的匹配,扩展和滤波:

(1)匹配:通过DSP-SIFT[14]来寻找特征并在多幅图像上匹配,在图像显著区域产生稀疏的匹配点对。

得到初始的匹配点对后,依照下面两步进行:

(2)扩展:利用图像局部关系,扩展初始匹配的点到周围的像素来获得一个稠密的点集。对稀疏点对进行准稠密化[15]。

(3)过滤:利用视觉一致性来去除一些错误的匹配点对。最后,利用立体视觉交叉投影技术有效地求解出初始深度图,由此,得到的深度是绝对深度信息。我们在此粗糙深度图的基础上,在超像素块上进行深度图的传播,最终获得一个细化的深度图。

2 准稠密化

2.1 种子点的选取和初始匹配

如图1所示,从两幅图像中提取特征点,采用类似传统的稀疏匹配算法进行匹配,得到初始的对应点对。本文中,我们采取SIFT的变形DSP-SIFT[14]来求解初始的匹配点对。SIFT特征,被设计出来为了减少由于光照和制高点引起的不同,同时保留辨别能力。有助于寻找相同的底层场景的不同视图之间的关系。DSP-SIFT点特征,除了空间位置上,还在不同的尺度上对梯度进行池化操作,将会得到自然可靠的二维点特征。因此,它可以解决大的视差问题,且我们认为该匹配得到的点对,是相对可靠的。

2.2 传播

我们假设,在初始匹配点对的附近区域,很大程度上会存在着新的潜在的可能的匹配点对。因此,我们认为初始匹配点对周围的统计信息对于点的传播将会有很大的帮助,我们考虑使用某一点的邻域5*5窗口内的统计信息,以及使用邻域5*5窗口内各个点为中心的邻域统计特征。简单地来说,我们采用的统计信息是基于某点的邻域,以及该邻域的邻域进行的。当我们计算两者的综合信息并排序,我们有理由认为邻域内统计得分最高的点对,是下一组可能的匹配点对。具体的标准,我们采用零均值归一化互相关(ZNCC)的变形ZNCC来用于两幅图像的匹配点的传播。它具有局部线性不变性。

其中,和是在给定的以x为中心的窗口内像素亮度的均值,同理和是在给定的以x+i以及x+△+i为中心的窗口内像素亮度的均值。之后,用交叉一致性来保证两个图像之间的匹配是一一对应的。交叉一致性由像素从第一幅图像到第二幅图像的相关性以及第二幅图像到第一幅图像的相关性共同构成,只有在两个方向上都保持好的匹配,才會被保留下来。这里,因为邻域的邻域信息会产生的影响要弱于邻域统计信息,因此,我们设定相应的比例以期望于更好的效果。

所有初始经过交叉检查过的稀疏匹配点对,按相关性分数递减排序,用作接下来传播的种子点。每一步中,由两个相对应像素x和x组成的匹配点对(x,x'),其中ZNCC得分最高的匹配从当前种子集合中挑选出来,然后我们在当前空间邻域N(x,x')内搜索新的可能的匹配。本文中,我们同时使用一个平滑约束,称为二维视差梯度约束。

2.2.1 二维视差梯度约束

通常,沿极线的一维的视差梯度约束已被广泛用在立体匹配的修正中来消除一些歧义。但是在实际生活中,所得到的图像对,并不是简单的一维上的偏差,我们可以认为,两幅图像在水平和垂直方向上均有偏差,所以,本文中,采用了在二维空间上加以扩展的二维梯度约束,用来处理未校准的图像对:比如有着不正确极线约束的严格场景或者本身就是一些不严格的场景下所得到的图像对。

2.2.2 置信测度

置信测度的引入,是因为我们的传播方法需要计算匹配点对周围的统计信息,所以,我们期望于点对的周围是有梯度信息存在,这样才能使得我们的传播有可信度,我们的算法在完全没有纹理的区域是不能起作用的。我们这里使用一个简单的基于差分的置信测度:

为了确保我们算法的有效性,我们约束着传播沿着有梯度的区域进行,我们禁止在太过均匀的区域内(假设0≤I(u) ≤1,s(u) ≤t,t=0.01)中传播。

2.2.3 匹配的传播特性

研究发现,该匹配传播算法有很多很好的性能如下:

(1)关于错误种子匹配点具有鲁棒性。

稀疏匹配的全局最优策略大大提高了该算法的鲁棒性和稳定性。尽管种子点选择步骤与现在现存的一些方法相似,利用特征点的相关性做匹配。关键的区别在于,匹配传播依靠极少数可靠的特征点就可以进行,并非需要提取大量的特征点。这就使得算法不容易受到种子点选择阶段时匹配异常值的存在的过多干扰。不良传播的风险明显减少了,有以下两個原因:1)不好的种子匹配点,如果它们在列表中的排名不靠前,则根本就没有机会被选出。2)尽管坏种子点中偶尔有排名靠前的情况,也会因为传播过程中缺乏一致性被很快停止。

(2)在低纹理区域具有稳定性。

对于低纹理图像,如典型的多面体场景。我们可以预料,匹配区域由于不良的纹理会被减少到种子点的小邻域内,但非常有趣的是,传播沿着梯度边缘很好的生长,我们表明,如果透视失真是适度的情况下,那么在两幅图像中沿着边缘的距离是相似的。

3 基于SLIC的整幅图像深度估计

当我们得到两幅图像上对应的匹配点对之后,采用八点法计算得到本质矩阵,并利用本质矩阵和三角化原理,计算得到三维空间中的点,再利用透视投影的比例关系,得到点到图像的距离,即图像的深度信息。此时得到的深度信息是有空洞的,粗糙的,因此需要接下来的处理。

3.1 SLIC分割

SLIC[16]:simple linear iterative clustering的简称,即简单的线性迭代聚类算法。它是2010年提出的一种思想简单、实现也很方便的算法。基本思想:将图像从RGB颜色空间转换到CIE-Lab颜色空间。对应每个像素的(L , a , b)颜色值和(x , y)坐标组成一个5维向量V [L , a , b , x , y]。然后对5维特征构造距离度量标准,对图像像素进行局部聚类的过程。SLIC算法能生成紧凑、近似均匀的超像素,在运算速度,物体轮廓保持、超像素形状方面都有较好的表现。

具体的实现方法如下:

(1)首先生成K个种子点(K为人为设定的参数,即代表着期望于得到K个超像素),然后在每个种子点的周围空间里搜索距离该种子点最近的若干像素,将他们归为该种子点一类,直到所有像素点都归类完成。

(2)然后计算K个超像素里所有像素点的平均向量值,重新得到K个聚类中心。

(3)然后再以这K个中心去搜索其周围与其最相似的若干像素。

(4)反复迭代上述过程。

算法接受一个参数K,用于指定生成的超像素数目,设原图有N个像素,则分割后的每一块约有N/K个像素,每块超像素的连长大约为S=[N/K]^1/2。开始时,每隔S个像素取一个聚类中心。然后以这个聚类中心的周围2S*2S为其搜索空间。对于KITTI数据集中图的分割效果如图2。

3.2 整幅图像深度估计

假设在一个超像素块内,物体的深度信息是趋于一致的,因此,我们在一个超像素块内对深度信息进一步的补全工作。

我们假设在一个超像素块内,图像的深度信息是趋于一致的:

具体实现:

(1)首先,我们统计每个超像素块内非空深度的值并求取平均值。

(2)搜索每个超像素块内的深度值为空的点,然后令其为第一步计算得到的数值。

(3)重复上述两个步骤,直到结束。

我们利用SLIC超像素分割和深度局部光滑性约束,实现了对整幅图像的深度估计。实验结果来看,不仅获得了所有位置的深度信息,同时也保证的深度信息基本可靠。

4 实验结束与分析

4.1 算法结果

图3为本算法处理多对测试图像得到的SLIC分割图和稠密视差图,以及与SGM[17],Yamaguchi[18]等,MeshStereoExt[19]算法的比较。从上到下,分别为Adirondack、Motorcycle、Piano和Recycle,从左到右分别为,原图、SLIC分割图、真实值、SGM算法结果、Yamaguchi算法结果、MeshStereoExt算法结果以及本文的结果。

4.2 评价指标

为了定量地说明结果的好坏,本文给出了两种评价标准的对比结果。

(1)均方根誤差(root-mean-squared,RMS):测量计算得到的深度值dc(x,y)与真实深度值dr(x,y)之间的均方根误差,具体公式如下:

(2)错误匹配像素百分比:测量错误匹配点占全部像素的百分比,即匹配误差超过可容忍的阈值的像素个数占全部像素个数的比重。

其中,δd是视差可以容忍的阈值大小,在实验中我们令δd=10。

5 总结

我们的深度求解,是基于立体视觉和三维重建等几何基础上提出的方法,与传统的方法相比,我们的深度信息,是更加准确且真实的深度信息。本文的算法,对于两幅图像本身的要求也没有那么严格,可以是没有对准的图像对;我们假设深度在超像素块内是保持局部一致性的,并利用超像素块对深度图进一步地恢复。通过实验表明,我们的方法是在精度上优于传统的立体匹配算法的,且适应性较强。但是,我们的算法在解决毫无纹理的区域块时,会受到限制,将会产生不好的结果,这也是我们后面将要考虑解决的问题。

参考文献

[1]Scharstein D,Szeliski R.A taxonomy and evaluation of dense two-frame stereo correspondence algorithms[J]. International journal of computer vision,2002,47(1-3):7-42.

[2]Bobick A F,Intille S S.Large occlusion stereo[J].International Journal of Computer Vision,1999,33(03):181-200.

[3]Freeman W T,Pasztor E C,Carmichael O T.Learning low-level vision[J]. International journal of computer vision,2000,40(01):25-47.

[4]Sun J,Zheng N N,Shum H Y.Stereo matching using belief propagation[J]. Pattern Analysis and Machine Intelligence,IEEE Transactions on,2003,25(07):787-800.

[5]Yang Q,Wang L,Ahuja N.A constant-space belief propagation algorithm for stereo matching[C]//Computer vision and pattern recognition (CVPR),2010 IEEE Conference on. IEEE,2010:1458-1465.

[6]Yang Q,Wang L,Yang R,et al. Stereo matching with color-weighted correlation,hierarchical belief propagation,and occlusion handling[J].Pattern Analysis and Machine Intelligence,IEEE Transactions on,2009,31(03):492-504.

[7]Boykov Y,Veksler O,Zabih R.Fast approximate energy minimization via graph cuts[J].Pattern Analysis and Machine Intelligence,IEEE Transactions on,2001,23(11):1222-1239.

[8]Tomasi C,Manduchi R.Bilateral filtering for gray and color images[C]//Computer Vision,1998. Sixth International Conference on.IEEE,1998:839-846.

[9]He K,Sun J,Tang X.Guided image filtering[M]//Computer Vision–ECCV 2010.Springer Berlin Heidelberg,2010:1-14.

[10]Yoon K J,Kweon I S.Adaptive support-weight approach for correspondence search[J].IEEE Transactions on Pattern Analysis & Machine Intelligence,2006(04):650-656.

[11]Rhemann C,Hosni A,Bleyer M,et al.Fast cost-volume filtering for visual correspondence and beyond[C]//Computer Vision and Pattern Recognition (CVPR),2011 IEEE Conference on.IEEE,2011:3017-3024.

[12]Yang Q.A non-local cost aggregation method for stereo matching[C]//Computer Vision and Pattern Recognition (CVPR),2012 IEEE Conference on.IEEE,2012:1402-1409.

[13]Mei X,Sun X,Dong W,et al.Segment-tree based cost aggregation for stereo matching[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition.2013:313-320.

[14]J.Dong and S.Soatto.Domain-Size Pooling in Local Descriptors:DSP-SIFT. In Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition (CVPR),2015.

[15]Lhuillier M,Quan L.Match propagation for image-based modeling and rendering[J].Pattern Analysis and Machine Intelligence,IEEE Transactions on,2002,24(08):1140-1146.

[16]Achanta R, Shaji A,Smith K,et al.SLIC superpixels compared to state-of-the-art superpixel methods[J].IEEE transactions on pattern analysis and machine intelligence,2012,34(11):2274-2282.

[17]Hirschmüller H.Stereo processing by semiglobal matching and mutual information[J].Pattern Analysis and Machine Intelligence,IEEE Transactions on,2008,30(02):328-341.

[18]Yamaguchi K,McAllester D,Urtasun R.Efficient joint segmentation, occlusion labeling,stereo and flow estimation[M]//Computer Vision–ECCV 2014.Springer International Publishing,2014:756-771.

[19]Zhang C,Li Z,Cheng Y,et al. Meshstereo:A global stereo model with mesh alignment regularization for view interpolation[C]//Proceedings of the IEEE International Conference on Computer Vision.2015:2057-2065.

作者簡介

时连标(1990-),男,安徽省蚌埠市人。在读硕士。主要研究方向为计算机视频三维重建、目标识别。

作者单位

合肥工业大学屯溪路校区 安徽省合肥市 230009

猜你喜欢

深度图立体匹配视差
基于自适应窗的立体相机视差图优化方法研究
基于深度图的3D-HEVC鲁棒视频水印算法
基于梯度域引导滤波的视差精炼迭代算法
影像立体匹配中的凸优化理论研究
基于互补不变特征的倾斜影像高精度立体匹配
基于分割树的视差图修复算法研究
改进导向滤波器立体匹配算法
立体视差对瞳孔直径影响的研究
一种基于图像分割的立体匹配算法
Kinect深度图像快速修复算法