训练模型的学习目标
由于深度补全和单目深度估计具有相同的目标输出,即预测密集深度图,因此它们共享相同的学习目标,例如深度损失、表面法线损失和光度损失,常见的loss如下所示:
数据集和评估指标
在本节中,将详细介绍以前工作中常用的基准数据集,还全面调查了相关数据集,以供参考。
数据集
KITTI depth completion dataset :KITTI数据集是一个广泛使用的大型户外数据集,包含93000多张半密集深度图以及相应的原始稀疏激光雷达扫描和RGB图像。训练、验证和测试集分别有86000、7000和1000个样本,图像和深度图的全分辨率可达1216×352,比大多数现有RGBD数据集都大。原始激光雷达扫描由Velodyne HDL-64E捕获。为了获得半密集地面真实深度图,Uhrig等人[109]使用半全局匹配(SGM)纯化了原始数据,并通过累积11次激光扫描来加密稀疏深度图。应该注意的是,在实施以前的方法时,可以不同地使用基本事实。原始稀疏深度图的密度仅为约5%(如图13(b)所示),而KITTI基准提供的半密集真实度可达到约30%(如图13C所示)。大多数先前的工作采用更密集的gt来实现其方法,而一些无监督方法[118]、[119]、[120]、[121]、[129]假设只有原始稀疏深度图可用,在这种情况下,深度一致性仅适用于那些5%有效像素!
NYU-v2 :NYU-v2 数据集由464个室内场景组成,其中408000张RGBD图像由Microsoft Kinect拍摄,原始分辨率为640×480。尽管原始RGBD数据仅适用于深度增强方法,但先前的深度补全研究通过随机选择200个(图14(b))或500个深度点(图14)(c))作为稀疏输入来实现其方法。在这两种情况下,总有效像素都小于1%。在NYU-v2数据集上评估的大多数方法都是RGB引导的。对于在此数据集上评估的方法,无监督方法只能将深度一致性应用于合成稀疏深度输入中的有效深度点。相比之下,[12]、[13]、[77]等监督方法通常使用由官方修复工具箱预先加密的密集像素地面真实深度图。
VOID[120]:VOID数据集包含使用Intel RealSense D435i相机从室内和室外场景采集的56个序列,其中48个序列(约47000帧)用于训练,其余8个序列用于测试。每个帧的分辨率为640×480,每个序列有三个不同的密度级别,分别为1500、500和150点。该数据集用于评估[93]、[118]、[119]、[120]、[121]中的方法。DenseLivox[133]:DenseLivox数据集是使用比KITTI更便宜的Livox LiDAR采集的,该LiDAR具有更密集的深度图(密度为88.3%)。DenseLivox还提供了一些额外的数据,如绑定遮挡和正常。该数据集用于评估[133]中的方法。
Evaluation Metrics
实验
深度补全的一些问题与研究方向
Depth Mixing Problem
深度混合问题,也称为深度涂抹问题,是由于难以正确识别物体边界附近的像素,通常会导致边缘模糊和伪影。为了缓解这个问题,[51]通过将深度图划分为一组具有固定深度范围的bins,将深度完成公式化为一个热编码问题。Imran等人[52]分离遮挡边界区域中的前景和背景深度,并分别对其进行建模。NLSPN[86]使网络学习非局部相对邻居,从而可以在迭代传播期间分离像素,实现这种分离过程的一种更简单的方法是利用K最近算法[9],[126],[140]。此外,在深度补全后添加了边界一致性网络,以鼓励预测更清晰的边界[47],[105]。然而,这个问题对于深度估计任务来说仍然是困难的,需要持续研究。
缺陷的GT
另一个问题是真实深度标签存在缺陷,首先,与语义分割不同,由于深度传感器的限制,现有的真实世界数据集都不能提供像素级的真实情况。尽管许多现有方法都是以监督的方式训练的,但大多数像素都不能得到充分的监督。其次,由于遮挡、动态对象等引起的异常值,半密集注释并不完全可靠。为了克服稀疏性问题,一些研究人员[76]、[100]转向自监督框架来缓解真实深度的不足。为了解决第二个问题,Zhu等人[144]通过将不确定性估计纳入深度补全网络来处理异常值。此外,一些工作[1]、[134]利用合成数据集进行模型训练。然而,真实世界和合成数据之间的领域差距阻碍了这些方法的广泛应用。尽管先前的研究做出了上述努力,但如何排除不可靠深度的影响仍然是一个悬而未决的问题,而且仍有很大的改进空间。
Lightweight Networks
大多数以前的方法具有复杂的网络结构和大量的参数,此外,他们中的许多人采取两阶段的粗到精预测。因此,这些方法是耗时的,并且需要大量使用硬件资源。然而,对于自动驾驶和机器人导航等应用,计算资源有限,需要实时推理。尽管一些先前的研究[2]、[105]、[112]、[126]部分考虑了实时推理问题,但它们的性能较差,此外,网络设计本质上是经验性的。随着单目深度估计的进展,可以进一步应用几种技术,例如应用知识蒸馏[40]、网络压缩[117]和神经架构搜索[50]。在不牺牲太多准确性的情况下,开发具有快速推理速度的轻量级方法对于现实世界的部署具有巨大的潜力,因此,这是未来工作中有价值和实用的研究点。
无监督/自监督框架
如前所述,无监督学习框架是在缺乏密集的GT情况下常用的解决方案。与监督方法相比,当前无/自监督方法的精度仍然较低,因为它们仅将深度一致性应用于稀疏输入中的有效深度点,并且无法利用监督方法所使用的GT深度点。另一方面,只有当预测的深度图足够接近地GT时,光度损失才会有效。然而,由于光度损失特别容易受到噪声、移动对象和无纹理区域的影响,这仍然是一个挑战,因此无监督方法还有很大的改进空间。由于这类方法对动态对象、远距离区域等不鲁棒,因此可以通过利用更有效的网络结构来执行辅助任务(例如姿态估计和异常值去除)来实现改进。
Domain Adaptation
当前的基准数据集面临缺乏可靠深度点的挑战,此外,在有限的场景中,在理想的照明条件下捕获数据。因此,使用这种类型的数据训练的模型不能保证在不同的工作条件和领域中进行泛化。因此,在模拟环境中操纵深度网络是合理的,我们不仅可以获得每像素的GT实况,还可以通过大量不同的场景获得可变的照明或天气条件。此外,它鼓励开发在现实世界中难以实现的更先进的方法,挑战是如何将模型从模拟环境转移到真实场景。一些工作探索了深度完成的域自适应方法[1],[71]。然而,这个探索不足的问题仍然未知,值得进一步探索。
对不同传感器的鲁棒性
现有方法仅适用于特定传感器,例如,最常用的KITTI数据集由64线激光雷达捕获。不能保证以前的方法可以应用于较低扫描线传感器,例如32线、16线和1线激光雷达。如[72]、[76]、[93]、[131]所示,从64线传感器到较低扫描线传感器,性能下降显著。因此,保持较低扫描线传感器的相同精度水平具有挑战性。这一探索不足的问题在实际应用中也很实用,因为高扫描线传感器比低扫描线传感器更昂贵。因此,确保各种低扫描线传感器的基于学习的方法的准确性也是一个重要而有价值的研究课题。
基于Transformer的网络结构
最近,视觉transformer(ViT)引起了广泛关注,并不断为许多感知任务引入新的最新结果,包括分类[18]、语义分割[101]、目标检测[139]和单目深度估计[4]。与CNN不同,ViT接收一组图像补丁作为输入,并使用自我关注进行局部和全局特征交互。它可能为深度补全带来新的范式转变,其中可能存在更有效的多模态数据融合和处理输入稀疏性的新策略。
参考
[1] Deep Depth Completion from Extremely Sparse Data: A Survey
原文首发微信公众号【自动驾驶之心】:一个专注自动驾驶与AI的社区(https://mp.weixin.qq.com/s/NK-0tfm_5KxmOfFHpK5mBA)