论文标题:Outdoor Monocular Depth Estimation: A Research Review
论文链接:https://arxiv.org/pdf/2205.01399.pdf
1摘要
深度估计在自动驾驶中有诸多应用方式。结合目标检测,可以达到伪激光检测或者三维重建的效果;结合语义分割,可以将其从2D扩展到3D,获取像素的语义和深度信息,如车道线检测;此外,深度估计还可以用来做通用障碍物检测。因此深度估计是自动驾驶中一项重要的视觉任务,本文对单目深度估计做了全面调研,包括数据集、技术发展历史、未来趋势和挑战等。
2数据集
本文将深度估计数据集分为以下几类:通用室外数据集、全景数据集和生成式方法。
通用数据集
数据的收集通常使用移动的车辆或短距离(小于 100 米)焦距有限的建筑物和场景的图片来完成。此类深度估计数据集包括 KITTI 数据集[1]、Make3D数据集[2]、Newer College数据集[3]、Megadepth数据集[4]、DIODE[5]和DrivingStereo数据集 [6]。
KITTI
最为常见的便是KITTI数据集。用于室外单目深度估计的主要有两个部分,一部分包含23488对训练图像和697张测试图像,另一部分包含42949对训练图像、1000张验证图像和500张测试图像。
Make3D
Make3D数据集的图像主要由白天的城市或自然场景组成。该数据集共包含53对RGBD图像,其中40对用于训练,13对用于测试。原生RGB图像分辨率为2272 x 170,深度图分辨率为55 x 305像素。
全景数据集
这些数据集是使用全景相机收集的,旨在供大焦距输入设备和3D相机使用。目前室外全景数据集的数量仍然较少,导致缺乏对其深度估计的研究。比较常见的数据集包括Multi-FoV(城市峡谷)数据集[7]、ETH3D[8]和Forest Virtual[9]。
生成式方法
根据特定研究工作所关注的应用领域生成,特定数据集的可用性可能受限。生成式方法主要指基于公开数据集(如KITTI)进行调整,以生成具有远距离和360全景场景的新数据集。
FarSight
FarSight[10]提出了一种生成超远距离户外图像以及带注释的深度图的策略。基于该策略FarSight使用来自Google地球的图像以适当的比例重新创建不同城市的大型3D模型。获取的3D模型和相关RGB视图及其远程深度渲染的存档用作深度预测的训练数据。
KITTI to panoramic dataset adaption
该数据集[11]使用KITTI数据结合360度FOV相机通过两个步骤转换得到。第一步是通过基于学习的方法[12]将360度图像的风格转移到目标数据集中的图像。第二步涉及将生成的图像与相关注释一起重新投影为所需的格式。
3深度学习方法
卷积神经网络
卷积神经网络使用卷积层、池化层等学习输入图像的2D空间特征,也成功应用到深度估计任务中。目前比较经典的室外深度估计方法主要在KITTI上展开实验,例如Convolutional Neural Fields[13]、AdaBins[14]、FarSight[10]等等。下图展示了CNN预测深度图的算法框架。
循环神经网络
下图概述了基于RNN的深度预测模型涉及的一般模块,代表性的算法有[15]其使用卷积LSTM来利用数据集中的时空一致性,[16]比较了ConvLSTM[17]和ConvGRU[18]的注意力机制。
分割模型应用于单目深度估计
单目深度估计和语义分割任务都是逐像素级别的任务,区别在于单目深度估计是回归任务而语义分割任务是分类任务。因此有许多工作将两者结合起来,除一般的分割模型以外,一些工作如[19]和[20]基于知识蒸馏的思想实现单目深度估计,[21]的工作使用一种新颖的基于分割的学习网络来估计单目360度视频的深度。此外,全景分割[22]的进步具有在该领域产生影响的巨大潜力,[23]和[24]使用全景分割对优化单目深度估计。下图展示了[22]使用全景分割辅助深度估计的模型架构。
4训练范式
监督学习
监督学习旨在利用标注真值训练单目深度网络,利用深度相关的损失函数[25]优化网络,使得模型预测的深度值尽可能接近标注真值。下图展示了使用深度图作为真值进行监督学习的通用框架。
无监督学习
逐像素标注需要大量的人力资源,因此无监督单目深度估计也获得了广泛的关注。一般而言,无监督单目深度估计通常使用成对的立体图像或单目图像序列中进行训练,并在单目图像中进行测试。立体匹配的经典算法是[26],其使用传统的信念传播的方法实现深度估计系统。[27]提出了一种基于CNN的架构,其中模型学习左右视图的深度图 MonoDepth[28]采用2D CNN架构,使用无监督学习方法以及视差平滑损失、外观匹配损失和左右视差一致性损失的组合,在 KITTI 数据集上对当时的SOTA模型进行了显著改进。下图展示了基于立体匹配实现单目深度估计的算法架构。
另一种方法是使用单目图像序列。由于单目深度估计的数据集具有更高的可用性且更容易收集,因此该类方法也获得了广泛的关注,并且使用单目图像序列还避免了涉及与投影和左右源映射相关的立体匹配所带来的问题。[29]和[30]的后续相关工作提出了在非结构化单目视频序列以及 SLAM 和光流等其他元素上训练无监督学习网络的方法。下图展示了这种方法的通用架构。
半监督学习
回到监督学习需要大量标注数据的问题上,半监督学习可以充分的利用大量无标注数据和少量标注数据训练更好的模型。这些方法可以使用来自合成数据、激光雷达和表面法线等来源的其他传感器和深度信息,以减少模型对标注数据的需求,同时提高网络的泛化性和深度图的准确性。[31]引入了一个可学习网络,该网络以立体对齐的几何约束方式处理稀疏数据和RGB数据。然后,该模型从这些输入源生成两个深度图,分别计算其损失,实验表明该模型优于有监督的模型。[32]在半监督学习网络设置中使用基于相互蒸馏的损失函数,在KITTI和Cityscapes数据集上表现出非常好的性能。
自监督学习
最后一种范式是自监督学习。由于实际应用中的深度值远大于这些神经网络可以持续生成的值,因此合适的深度表示将显着提高模型性能。合适的深度表示的选择以促进特征表示学习在深度的学习和自监督单目运动中起着重要作用。自监督从未标记的样本中获取信息,是一种介于有监督和无监督之间的学习方式。
自监督学习包含两个阶段,首先使用伪标签学习来获得更好的网络初始化权重,其次使用有监督或无监督学习的方式完成深度估计。自监督学习的主要好处是它允许使用质量较低的数据进行训练,并非专注于提升模型性能。自监督学习通过使用数据集的稀疏注释部分并生成新数据进行训练来实现。下图展示了自监督学习深度估计的网络架构。
MonoDepth2[33]在诸多工作中脱颖而出,其基于U-Net的结构进行深度预测以及姿态网络来解释视频帧中的时间一致性。为了考虑遮挡,他们利用具有特定损失函数的逐像素重投影,然后对深度图进行上采样。SuperDepth [34]提出了一种基于超分辨率的深度估计解决方案以及一个提高预测精度的新型增强层。[35]通过对自监督学习训练范式中涉及的不确定性进行建模来实现当时最先进的结果。[36]使用自监督学习的网络进行深度估计,该网络与 LiDAR 数据一起用于室外场景中的深度补全任务。
5挑战和趋势
远距离数据收集
无人机、机器人的应用都需要超过百米的深度范围,而当前大多数研究都是针对室内、短程室外和室外移动车辆数据集进行的。长期数据集的缺乏也使得模型的持续优化或调整可用数据变得困难,因此与此类数据集的收集将是未来领域发展的一大重点。
使用合成数据可以一定程度缓解上述问题,但必须注意将真实世界的元素包含到这些数据集中,例如照明和雾霾的自然条件、动态对象的遮挡等等。
多任务学习
已经有许多工作将分割和单目深度估计使用一个网络输出,但目前仍然是使用解耦的方式分别输出两者的预测结果。未来可以考虑从深度和分割的特性出发,将两者进行整合。
实时推理
由3D CNN、LSTM 和其他注意力机制实现的对时间一致性的利用仍然容易受到实际应用中每帧变化的静态性质的影响,这就导致室外深度估计任务仍然是单个图像深度估计的问题。目前为了平衡这个问题,仍然需要大量的计算资源。类似轻量级分割网络,未来轻量级深度估计网络会是另一大研究热点。
6参考文献
[1] Geiger, Andreas, et al. ”Vision meets robotics: The kitti dataset.” The International Journal of Robotics Research 32.11 (2013): 1231-1237.
[2] Saxena, Ashutosh, Min Sun, and Andrew Y. Ng. ”Make3d: Learning 3d scene structure from a single still image.” IEEE transactions on pattern analysis and machine intelligence 31.5 (2008): 824-840.
[3] Ramezani, Milad, et al. ”The newer college dataset: Handheld lidar, inertial and vision with ground truth.” 2020 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS). IEEE, 2020.
[4] Li, Zhengqi, and Noah Snavely. ”Megadepth: Learning single-view depth prediction from internet photos.” Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2018.
[5] Vasiljevic, Igor, et al. ”Diode: A dense indoor and outdoor depth dataset.” arXiv preprint arXiv:1908.00463 (2019).
[6] Yang, Guorun, et al. ”Drivingstereo: A large-scale dataset for stereo matching in autonomous driving scenarios.” Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2019.
[7] Chao, Fang-Yi, et al. ”A Multi-FoV Viewport-Based Visual Saliency Model Using Adaptive Weighting Losses for 360 Images.” IEEE Transactions on Multimedia 23 (2020): 1811-1826.
[8] Schops, Thomas, et al. ”A multi-view stereo benchmark with highresolution images and multi-camera videos.” Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. 2017.
[9] Mancini, Michele, et al. ”Toward domain independence for learningbased monocular depth estimation.” IEEE Robotics and Automation Letters 2.3 (2017): 1778-1785.
[10] Reza, Md Alimoor, Jana Kosecka, and Philip David. ”FarSight: Long-Range Depth Estimation from Outdoor Images.” 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS). IEEE, 2018.
[11] de La Garanderie, Greire Payen, Amir Atapour Abarghouei, and Toby P. Breckon. ”Eliminating the blind spot: Adapting 3d object detection and monocular depth estimation to 360 panoramic imagery.” Proceedings of the European Conference on Computer Vision (ECCV). 2018.
[12] Zhu, Jun-Yan, et al. ”Unpaired image-to-image translation using cycleconsistent adversarial networks.” Proceedings of the IEEE international conference on computer vision. 2017.
[13] Liu, Fayao, Chunhua Shen, and Guosheng Lin. ”Deep convolutional neural fields for depth estimation from a single image.” Proceedings of the IEEE conference on computer vision and pattern recognition. 2015.
[14] Bhat, Shariq Farooq, Ibraheem Alhashim, and Peter Wonka. ”Adabins: Depth estimation using adaptive bins.” Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2021.
[15] Zhang, Haokui, et al. ”Exploiting temporal consistency for real-time video depth estimation.” Proceedings of the IEEE/CVF International Conference on Computer Vision. 2019.
[16] Maslov, Dmitrii, and Ilya Makarov. ”Online supervised attention-based recurrent depth estimation from monocular video.” PeerJ Computer Science 6 (2020): e317.
[17] CS Kumar, Arun, Suchendra M. Bhandarkar, and Mukta Prasad. ”Depthnet: A recurrent neural network architecture for monocular depth prediction.” Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition Workshops. 2018.
[18] Wang, Rui, Stephen M. Pizer, and Jan-Michael Frahm. ”Recurrent neural network for (un-) supervised learning of monocular video visual odometry and depth.” Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2019.
[19] Cho, Jaehoon, et al. ”Deep monocular depth estimation leveraging a large-scale outdoor stereo dataset.” Expert Systems with Applications 178 (2021): 114877.
[20] Nekrasov, Vladimir, et al. ”Real-time joint semantic segmentation and depth estimation using asymmetric annotations.” 2019 International Conference on Robotics and Automation (ICRA). IEEE, 2019.
[21] Feng, Qi, Hubert PH Shum, and Shigeo Morishima. ”360 Depth Estimation in the Wild-the Depth360 Dataset and the SegFuse Network.” 2022 IEEE Conference on Virtual Reality and 3D User Interfaces (VR). IEEE, 2022.
[22] Yuan, Haobo, et al. ”PolyphonicFormer: Unified Query Learning for Depth-aware Video Panoptic Segmentation.” arXiv preprint arXiv:2112.02582 (2021).
[23] Saeedan, Faraz, and Stefan Roth. ”Boosting monocular depth with panoptic segmentation maps.” Proceedings of the IEEE/CVF Winter Conference on Applications of Computer Vision. 2021.
[24] Qiao, Siyuan, et al. ”Vip-deeplab: Learning visual perception with depthaware video panoptic segmentation.” Proceedings of the IEEE/CVFConference on Computer Vision and Pattern Recognition. 2021.
[25] Eigen, David, and Rob Fergus. ”Predicting depth, surface normals and semantic labels with a common multi-scale convolutional architecture.” Proceedings of the IEEE international conference on computer vision. 2015.
[26] Sun, Jian, Nan-Ning Zheng, and Heung-Yeung Shum. ”Stereo matching using belief propagation.” IEEE Transactions on pattern analysis and machine intelligence 25.7 (2003): 787-800.
[27] Garg, Ravi, et al. ”Unsupervised cnn for single view depth estimation: Geometry to the rescue.” European conference on computer vision. Springer, Cham, 2016.
[28] Godard, Cl´ement, Oisin Mac Aodha, and Gabriel J. Brostow. ”Unsupervised monocular depth estimation with left-right consistency.” Proceedings of the IEEE conference on computer vision and pattern recognition. 2017.
[29] A. Moreau, M. Mancas and T. Dutoit, ”Unsupervised depth prediction from monocular sequences: Improving performances through instance segmentation,” 2020 17th Conference on Computer and Robot Vision (CRV), 2020.
[30] Wang, Guangming, et al. ”Unsupervised learning of depth, optical flow and pose with occlusion from 3d geometry.” IEEE Transactions on Intelligent Transportation Systems 23.1 (2020): 308-320.
[31] Kuznietsov, Yevhen, Jorg Stuckler, and Bastian Leibe. ”Semi-supervised deep learning for monocular depth map prediction.” Proceedings of the IEEE conference on computer vision and pattern recognition. 2017.
[32] Baek, Jongbeom, Gyeongnyeon Kim, and Seungryong Kim. ”Semi-Supervised Learning with Mutual Distillation for Monocular Depth Estimation.” arXiv preprint arXiv:2203.09737 (2022).
[33] Godard, Cl´ement, et al. ”Digging into self-supervised monocular depth estimation.” Proceedings of the IEEE/CVF International Conference on Computer Vision. 2019.
[34] Pillai, Sudeep, Rares¸ Ambrus¸, and Adrien Gaidon. ”Superdepth: Selfsupervised, super-resolved monocular depth estimation.” 2019 International Conference on Robotics and Automation (ICRA). IEEE, 2019.
[35] Poggi, Matteo, et al. ”On the uncertainty of self-supervised monocular depth estimation.” Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2020.
[36] Ma, Fangchang, Guilherme Venturelli Cavalheiro, and Sertac Karaman. ”Self-supervised sparse-to-dense: Self-supervised depth completion from lidar and monocular camera.” 2019 International Conference on Robotics and Automation (ICRA). IEEE, 2019.