基于改进卷积神经网络的稠密视差图提取方法 下载: 1003次
1 引言
近年来,随着立体视觉算法的迅速发展,基于立体视觉算法进行三维重构的各种应用已经走进人们的视线,比如无人机勘测、无人驾驶汽车等。王琪龙等[1]提出结合双目视觉与激光测距的目标跟踪系统,解决了时滞问题,提高了算法的实时性。大多数双目立体视觉算法均是围绕视差展开。视差是指物体在左右视图中像素坐标水平方向的差值。根据简单的三角测量原理,可以由物体的视差结合像素焦距、基线距离得到其深度,进而通过三角形相似获取该物体完整的三维空间位置信息。提取稠密准确的视差图是三维重构的关键,视差获取则需要物体在左右视图中的对应关系。
通过物体匹配获取视差的方法最早由Scharstein等[2]进行总结归纳,基本分为4个步骤:匹配代价计算、代价聚合、视差计算以及视差细化。Boykov等[3]将视差获取问题转换成全局能量最小化问题,通过建立网络图,基于图论方法求解从而得到视差图。Hirschmuller[4]基于匹配像素之间的互信息量提出了半全局匹配(SGM)算法,通过将目标像素以及周围区域像素纳入代价计算,在速度远快于全局匹配算法的同时取得了优异的匹配效果。Lowe[5]从局部特征提取、特征描述、特征比较的角度,提出了尺度不变特征变换(SIFT)匹配方法。Bay等[6]改进了SIFT中的特征提取和描述,提高了算法实现效率。张鑫等[7]对于SIFT中特征描述进行降维,特征匹配加入方向约束,提高了匹配准确率。祝世平等[8]基于改进Census变化,在视差选择阶段采用改进的动态规划算法,消除了扫描线效应,提高了匹配速度和正确率。
近年来,随着深度学习[9]的迅速发展,卷积神经网络在众多图像处理领域取得了优异的效果,其中也包括立体视觉领域。Zagoruyko等[10]提出了双通道输入的卷积神经网络架构,实现了宽基线条件下的特征匹配。
前沿的MC-CNN方法得到的视差数据仍然较为离散,结果图中的许多物体失去了连通性。本文结合对传统特征提取匹配算法的理解,对MC-CNN中的卷积神经网络部分给予了具有实际意义的解释,并结合前沿的网络架构以及传统特征提取算法中的尺度空间理论,对其进行了结构上的改进,主要包括网络的加深以及双金字塔结构的引入。本文基于MC-CNN-fst架构进行改进,在时耗少量增加的代价下提升了精度,获得了连通性更加完整的视差图。
2 改进的卷积神经网络网络模型
介绍了所提出的双金字塔网络结构,随后引入改进网络的其他细节。本文中所有的网络模型输入为两个大小为9×9的相关图像块,输出为它们的匹配代价。
2.1双金字塔网络结构
MC-CNN网络架构本身可以分为三个部分:卷积层部分、连接部分和全连接层部分。网络的功能实现类似特征提取匹配算法中的三个步骤:特征提取、特征描述和特征匹配。MC-CNN中的卷积层实现了特征提取和特征描述;连接部分对所得到的左右视图图像块的特征描述向量进行合并;全连接层部分实现了特征匹配,最终输出匹配代价。不同于LW-CNN[17]对全连接层部分进行改进,本文基于卷积层部分提出一种新型结构。
MC-CNN卷积层部分中采用4层卷积核为3×3、步长为1、无补零的卷积层,前三层卷积层后连接着线性整流函数(ReLU)[18]。输入图像块大小为9×9,4层卷积层依次输出像素大小分别为7×7、5×5、3×3、1×1的特征图。依据尺度空间理论,可以通过降采样得到对不同尺度下保留原始信息的图像。公路网络 [19]中对于网络中的一层进行了重新定义:
式中
令
改进后的卷积层部分网络架构如
本文所提出的结构选择卷积核通道数(特征图维度)为64,与MC-CNN-fst相同,最终输出64×1×1的特征描述。从结构上可以看出,图像尺度的变化类似于图像金字塔,本文将这种结构称为双金字塔结构。
2.2 改进网络结构
基于双金字塔网络结构,提出了如
本文所提出的网络结构相对于MC-CNN-fst架构主要具有两处改进:1) 将网络深度由4层(卷积层)提到7层高,提高了精度;2) 引入了双金字塔结构,保持了图像的连通性。当直接将9×9的图像块输入双金字塔结构时,平均池化会在7×7的尺度空间产生大量相同的降采样图像,使得网络中的信息大量冗余而降低效率。因此,在输入图像和双金字塔结构之间引入64通道卷积核的卷积层进行特征图维度的提升。对于额外增加卷积层,在9×9的图像块特征提取过程中:采用1×1卷积核则无法提取卷积中心与周围像素的相关信息;采用5×5卷积核则将输入图像块补零至13×13,在原始81 pixel的基础上额外引入了88 pixel的零值。而3×3卷积核在考虑到与周围像素的相关性的同时尽量少地引入零值。将其与1×1和5×5卷积核进行对比,结果如
图 3. 错误率与额外卷积层参数的关系。(a)不同卷积核大小下的错误率;(b)不同卷积层层数下的测试误差
Fig. 3. Relationship between error rate and parameters of additional convolutional layers. (a) Error rate with different convolutional kernel sizes; (b) test error with different number of convolutional layers
He等[20]提出残差结构,在50层以下网络中将(1)式中的
表 1. 复杂度与精度对比
Table 1. Comparison of complexity and accuracy
|
由
3 实验与结果分析
本文进行卷积神经网络训练、预测和性能测试的服务器的CPU和GPU分别为Intel Xeon E5-2620 v4与Nvidia GeForce GTX 1080Ti,操作系统为Ubuntu 14.04,采用Torch 7作为深度学习框架。
3.1 实验细节
为了验证改进网络以及改进模块的效果,实验与MC-CNN-fst方法进行对比。实验所采用的图像训练集、预测集来源于KITTI Stereo 2012数据集。该数据集分为两部分,其中194对图像提供真实视差值,另外195对图像作为测试使用。为了便于计算出所得视差图的错误率,本文沿用MC-CNN[11]中的方法,在194对提供真实视差值的图像中随机选取40对图像作为测试集,剩余图像对作为训练集,训练和预测均只考虑未遮挡区域。一个训练样本包含截取自左、右图像的两个图像块,即<
网络采用随机梯度下降(SGD)算法进行参数更新。(3)式中
3.2 主观效果
将4对左右视图经过MC-CNN-fst以及所提出的改进网络,得到的结果作为主观效果。
本文所提出的网络生成视差图与MC-CNN-fst整体上相似,在一些细节上的轮廓要明显优于MC-CNN-fst。
图 4. 视差图对比。(a)路标1;(b)围栏;(c)汽车;(d)路标2;(e)交通指示牌;(f)路标3
Fig. 4. Comparison of disparity maps. (a) Signpost 1; (b) fence; (c) car; (d) signpost 2; (e) traffic sign; (f) signpost 3
图 5. 图4中方框区域放大图。(a)路标1;(b)围栏;(c)汽车;(d)路标2;(e)交通指示牌;(f)路标3
Fig. 5. Zoomed parts over region marked by box in Fig. 4. (a) Signpost 1; (b) fence; (c) car; (d) signpost 2; (e) traffic sign; (f) signpost 3
3.3 客观指标
本文采用3 pixel阈值的百分比错误率作为评价视差图效果的客观指标,实验中采用40幅测试图的平均结果作为衡量标准,平均结果如
如
3.4 复杂度
对比了MC-CNN-fst与本文所提网络的复杂度与计算耗时,其中复杂度的计算公式为
表 2. 10幅测试图的客观指标
Table 2. Objective index of 10 test images
|
表 3. 复杂度对比
Table 3. Comparison of complexity
|
由
3.5 网络结构的影响
通过对比实验探究2.2节中两个结构上的改进对网络性能的影响。网络层加深的对比实验通过移除改进网络中额外卷积层实现。由于双金字塔结构需要对输入图像进行升维,这里保留一层影响最小的1×1卷积层进行维度扩展,同时提供MC-CNN-fst的基础上添加一层1×1卷积层的网络作为对比。双金字塔结构的对比实验通过移除双金字塔结构实现。
客观指标的实验结果如
表 4. 不同网络结构的对比
Table 4. Comparison of different network structures
|
从
实验结果如
图 6. 结构对于主观效果的影响。(a)输入左视图;(b)去除额外卷积层;(c)去除双金字塔结构;(d)视差图
Fig. 6. Effect of structure on subjective quality. (a) Left input image; (b) without additional convolutional layers; (c) without dual pyramid structure; (d) default
4 结论
针对现有的卷积神经网络方法所获取的视差图细节损失严重的问题,通过解析卷积神经网络方法与传统经典特征提取算法之间的相似之处,结合前沿的卷积神经网络架构与尺度空间理论对现有的卷积神经网络方法进行了改进,主要特点包括:1) 对于网络的加深;2) 引入了所提出的双金字塔结构。实验结果表明,与MC-CNN-fst架构相比较,所提出的网络在整体时间消耗增加18%的代价下生成了细节更加准确的视差图,同时将3 pixel阈值错误率从3.029%降到了2.795%。通过对比实验,证明了两处改进都对结果具有正面的影响,网络的加深提高了精度,双金字塔结构的引入保持了图像连通性。
从实验结果中可以看出,所提出的双金字塔结构在浅层卷积神经网络中对精度产生了负面的影响,这种影响在一定程度可以被网络的加深所削减。因此,下一步研究内容应该考虑减少所提出结构产生的负面影响,从而提高精度。
[1] 王琪龙, 李建勇, 沈海阔. 双目视觉-激光测距传感器目标跟踪系统[J]. 光学学报, 2016, 36(9): 0912002.
[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, 2001: 131- 140.
[7] 张鑫, 靳雁霞, 薛丹. SICA-SIFT和粒子群优化的图像匹配算法[J]. 激光与光电子学进展, 2017, 54(9): 091002.
[8] 祝世平, 闫利那, 李政. 基于改进Census变换和动态规划的立体匹配算法[J]. 光学学报, 2016, 36(4): 0415001.
[9] LeCun Y, Bengio Y, Hinton G. Deep learning[J]. Nature, 2015, 521(7553): 436-444.
[10] ZagoruykoS, KomodakisN. Learning to compare image patches via convolutional neural networks[C]∥IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2015: 4353- 4361.
[11] ŽbontarJ, LeCun Y. Computing the stereo matching cost with a convolutional neural network[C]∥ IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2015: 1592- 1599.
[14] MeiX, SunX, Zhou MC, et al. On building an accurate stereo matching system on graphics hardware[C]∥ IEEE International Conference on Computer Vision Workshops (ICCV Workshops), 2011: 467- 474.
[18] FanB, Niu JC, ZhaoJ. Three-phase full-controlled rectifier circuit fault diagnosis based on optimized neural networks[C]∥ 2nd International Conference on Artificial Intelligence, Management Science and Electronic Commerce (AIMSEC), 2011: 6048- 6051.
[19] Srivastava RK, GreffK, SchmidhuberJ. Training very deep networks[C]∥Neural Information Processing Systems, 2015: 2377- 2385.
[20] He KM, Zhang XY, Ren SQ, et al. Deep residual learning for image recognition[C]∥ IEEE Conference on Computer Vision and Pattern Recognition (CVPR), 2016: 770- 778.
[21] IoffeS, SzegedyC. Batch normalization: Accelerating deep network training by reducing internal covariate shift[C]∥International Conference on Machine Learning, 2015: 448- 456.
黄东振, 赵沁, 刘华巍, 李宝清, 袁晓兵. 基于改进卷积神经网络的稠密视差图提取方法[J]. 激光与光电子学进展, 2018, 55(12): 121004. Dongzhen Huang, Qin Zhao, Huawei Liu, Baoqing Li, Xiaobing Yuan. Dense Disparity Map Extraction Method Based on Improved Convolutional Neural Network[J]. Laser & Optoelectronics Progress, 2018, 55(12): 121004.