基于二次引导滤波的局部立体匹配算法 下载: 959次
1 引言
立体视觉匹配是一种从平面图像中获取深度信息的技术,在三维场景重建、智能机器人导航、工业视觉检测、虚拟现实等领域具有较为广泛的应用[1]。立体匹配的本质是从两幅或多幅图像的不同视点中找到对应的匹配点,通过计算视差来获取深度信息。Scharstein等[2]通过对两幅图像生成稠密视差的立体匹配算法进行分类和评估,将立体匹配总结为代价计算、代价聚合、视差计算和视差精细等4个相对独立的步骤。与立体匹配算法相关的研究可分为全局立体匹配算法和局部立体匹配算法。全局算法是基于全局约束的优化算法,利用对应整个图像的数据信息进行计算,达到全局最优解,但该方法计算较为复杂,实时性较差[3-4]。局部算法是基于区域约束的匹配算法,利用像素点的局部信息来计算视差,从而获得局部最优解,具有快速、易于实现等优点[5-10]。
与局部立体匹配算法相关的研究主要集中在代价聚合阶段[11],该阶段对最终视差图的质量影响也最大,因此,多数研究者通过对代价聚合阶段的改进和创新来提高视差精度。如Yoon等[12]提出的自适应支持权重算法成为局部立体匹配算法中的经典算法之一,该算法的本质是在代价聚合阶段引入了双边滤波器[13],根据待匹配像素点间的颜色和距离来计算各像素点的权值[14]。再如Hosni 等[15]将引导滤波[16]引入到代价聚合阶段,提出一种基于引导滤波器的立体匹配算法。相比双边滤波,引导滤波具有导向性,能更好地保护图像边缘细节,并且算法复杂度与支持窗口大小无关,在提升算法效率的同时提高了匹配精度。近年来,基于跨尺度的代价聚合算法[17-19]进一步推动了立体匹配的发展。当前在代价聚合阶段的研究主要集中在一次或单次引导滤波方面,其相关的视差精度还有进一步提高的空间。
本文基于引导滤波提出了一种二次引导滤波模型,并应用于局部立体匹配算法。介绍了引导滤波器理论,在此基础上引入二次引导滤波模型;对二次引导滤波在立体匹配算法各步骤中的应用进行了详述,尤其在代价聚合阶段引入跨尺度聚合框架,并在跨尺度聚合框架中使用二次引导滤波模型来聚合各尺度的匹配代价;给出实验结果与分析,表明二次引导滤波的引入可以使标准立体图像对具有更高精度的视差图和更低的错误匹配率。
2 引导滤波
2.1 引导滤波
引导滤波是一种基于局部线性模型的边缘保持算法,由He等[16]于2013年提出。假设引导图像为
式中:
为了得到与输入图像
式中:
式中:
其中,
式中:
2.2 二次引导滤波
输入图像
如
式中:
对(7)式用最小二乘法得到二次引导滤波的输出为
式中:
3 立体匹配算法
算法流程如
3.1 匹配代价计算
匹配代价是以左右两个视角拍摄同一场景不同图像的待匹配像素点间相似度的度量,是整个立体匹配的基础。所提算法采用当前常用的匹配代价计算方法——颜色强度加梯度的匹配代价。该方法运用图像RGB三通道的颜色差的绝对值,结合一个阈值求三通道均值,并与图像梯度信息加权,得到完整的图像信息。其匹配代价为
式中:
3.2 代价聚合
代价聚合是局部立体匹配算法中最重要的环节,通过对局部区域中的匹配代价进行累加聚合来提高匹配精确性[21-22]。大部分局部立体匹配算法的代价聚合可以看成是对代价体进行滤波的过程。传统的匹配代价聚合大都是在图像的最大分辨率下进行处理的,没有模拟人眼视觉从远到近的过程,并且在代价聚合阶段均采用一次滤波,匹配效果有进一步改进的空间。
运用高斯金字塔采样来模拟人眼视觉系统在不同尺度接收到的视觉信息的过程,并引入二次引导滤波模型。1)通过高斯采样得到不同尺度的匹配代价,2)对各个尺度下的匹配代价进行二次引导滤波,3)融合各尺度的匹配代价获得最终匹配代价。使用二次引导滤波模型来克服传统引导滤波的缺陷,在第一次引导滤波时,滤波窗口较大,消除噪声的干扰,获得可靠的匹配结果;进行第二次引导滤波时,滤波窗口较小,保留边缘细节的同时,获得更有效的代价聚合信息,进一步提高匹配精度,减小误匹配率。
为了验证二次引导滤波模型在立体匹配中的效果,在跨尺度代价聚合框架中分别使用一次引导滤波和二次引导滤波进行对比。测试素材为Teddy在不同视角的两幅图片。
图 3. Teddy在不同滤波器下的视差图。(a)一次引导滤波;(b)二次引导滤波
Fig. 3. Disparity maps of different filters on Teddy image. (a) Primary guided filtering; (b) secondary guided filtering
3.3 视差计算和视差精化
代价聚合后得到的最终匹配代价为
式中:
通过WTA后得到的初始视差图中还存在一些错误匹配点,需要进行后处理。所提算法主要是在代价聚合阶段进行了改进,因此在视差精化步骤中只进行了简单处理。使用加权中值滤波对初始视差图进行去噪,得到最终视差图。
4 实验结果与分析
所采用的实验环境为:Window 7 X64系统,Intel Core i5主频2.5 GHz,4 GB内存。用VS 2013编译下的C++编程环境与OpenCV2.46图像处理库混合编程实现算法。为了验证所提算法的实际效果,使用学术界公认的Middlebury[23]平台提供的立体匹配数据集来验证,该平台提供图像的标准视差图,将实验结果视差图与真实视差图对比可以得到量化的匹配误差,从而客观地评价算法的精度。共使用4组标准彩色图像数据集:Tsukuba(384 pixel×288 pixel)、Venus(434 pixel×383 pixel)、Teddy(450 pixel×375 pixel)、Cones(450 pixel×375 pixel)分别与真实视差(ground truth)进行对比。
4.1 Middlebury平台精度评估
图 4. Middlebury标准图像对在不同方法下的视差结果。(a)原始图像;(b)真实视差图;(c)跨尺度GF算法视差图;(d)所提算法视差图;(e)所提算法误匹配点
Fig. 4. Disparity results of Middlebury stereo pairs by different algorithms. (a) Original color images; (b) real disparity maps; (c) disparity maps obtained by multiscale guided filtering; (d) disparity maps obtained by proposed algorithm; (e) error matching point by proposed algorithm
为了定量分析,
表 1. Middlebury网站标准图像测试对的评估结果对比
Table 1. Comparison of experimental results of Middlebury stereo pairs%
|
4.2 运行时间评估
表 2. 算法平均运行时间对比
Table 2. Comparison of average runtime of different algorithmss
|
5 结论
基于传统的引导滤波理论提出了一种二次引导滤波模型,并分析其在抑制噪声方面的优势。在代价聚合阶段引入跨尺度聚合框架,并在跨尺度聚合框架中使用二次引导滤波模型来聚合各尺度的匹配代价,相比于传统引导滤波,二次引导滤波模型具有更好的边缘平滑度和滤波效果。评估结果显示,总体平均误差率仅为6.84%,相比于其他算法得到了进一步提高。所提出的模型为下一步工程实践的进一步应用打下了基础。
[2] ScharsteinD, SzeliskiR, ZabihR. A taxonomy and evaluation of dense two-frame stereo correspondence algorithms[C]∥Proceedings IEEE Workshop on Stereo and Multi-Baseline Vision (SMBV 2001), December 9-10, 2001, Kauai, HI, USA. New York: IEEE, 2001: 131- 140.
[3] 许金鑫, 李庆武, 刘艳, 等. 基于色彩权值和树形动态规划的立体匹配算[J]. 光学学报, 2017, 37(12): 1215007.
[5] Yang QX. A non-local cost aggregation method for stereo matching[C]∥2012 IEEE Conference on Computer Vision and Pattern Recognition, June 16-21, 2012, Providence, RI, USA. New York: IEEE, 2012: 1402- 1409.
[6] MeiX, SunX, Dong WM, et al. Segment-tree based cost aggregation for stereo matching[C]∥2013 IEEE Conference on Computer Vision and Pattern Recognition, June 23-28, 2013, Portland, OR, USA. New York: IEEE, 2013: 313- 320.
[7] 刘雪松, 沈建新, 张燕平. 基于人眼视觉特性的自适应支持权重立体匹配算法[J]. 激光与光电子学进展, 2018, 55(3): 031013.
[8] 龚文彪, 顾国华, 钱惟贤, 等. 基于颜色内相关和自适应支撑权重的立体匹配算法[J]. 中国激光, 2014, 41(8): 0812001.
[9] 郝红侠, 刘芳, 焦李成, 等. 采用结构自适应窗的非局部均值图像去噪算法[J]. 西安交通大学学报, 2013, 47(12): 71-76.
[10] 朱书进, 李跃华. 基于自适应流形高维滤波的太赫兹图像滤波算法[J]. 太赫兹科学与电子信息学报, 2016, 14(4): 497-501, 507.
[13] TomasiC, ManduchiR. Bilateral filtering for gray and color images[C]∥Sixth International Conference on Computer Vision, January 7, 1998, Bombay, India. New York: IEEE, 1998: 839- 846.
[17] ZhangK, Fang YQ, Min DB, et al. Cross-scale cost aggregation for stereo matching[C]∥2014 IEEE Conference on Computer Vision and Pattern Recognition, June 23-28, 2014, Columbus, OH, USA. New York: IEEE, 2014: 1590- 1597.
[18] 姚莉, 刘助奎, 王秉凤. 基于金字塔变换跨尺度代价聚合的立体匹配[J]. 系统仿真学报, 2016, 28(9): 2227-2234.
[20] 尹诗白, 王一斌, 李大鹏, 等. 两次引导滤波的显微视觉散焦图像快速盲复原[J]. 光学学报, 2017, 37(4): 0410002.
[21] 陈松, 陈晓冬, 苏修, 等. 基于加权引导滤波的局部立体匹配算法[J]. 纳米技术与精密工程, 2017, 15(5): 394-399.
[22] 王志, 朱世强, 卜琰, 等. 改进导向滤波器立体匹配算法[J]. 浙江大学学报(工学版), 2016, 50(12): 2262-2269.
Article Outline
王凯, 李志伟, 朱成德, 王鹿, 黄润才, 郭亨长. 基于二次引导滤波的局部立体匹配算法[J]. 激光与光电子学进展, 2019, 56(8): 081004. Kai Wang, Zhiwei Li, Chengde Zhu, Lu Wang, Runcai Huang, Hengchang Guo. Local Stereo Matching Algorithm Based on Secondary Guided Filtering[J]. Laser & Optoelectronics Progress, 2019, 56(8): 081004.