Abstract
单目深度估计是自动驾驶和许多其他计算机视觉应用中的关键任务。尽管该领域取得了显著进展,但视点变化对深度估计模型的影响仍未得到充分探索。本文引入了一个新颖的数据集和评估方法,旨在量化不同相机位置和方向对单目深度估计性能的影响。我们提出了一种基于单应估计和目标检测的地面真实值策略,消除了对昂贵激光雷达传感器的需求。我们收集了来自多个视点的多样化道路场景数据集,并使用该数据集评估了现代深度估计模型对几何变化的鲁棒性。在验证我们的策略在公共数据集上的有效性后,我们提供了有关当前模型局限性的宝贵见解,并强调了视点变化对实际应用的影响。
数据集地址:kaggle.com/datasets/aurelpjetri/viewpointdepth
欢迎加入自动驾驶实战群
Introduction
环境深度估计是感知中的一个基本任务,众所周知,这类任务易受分布外样本的影响,例如恶劣的天气、光照条件和图像损坏。
视点变化是另一种常见的分布转变,可能由不同尺寸的车辆或相机安装的变化引起。最近的一些研究开始关注这种变化对鸟瞰视角语义分割和目标检测等相关任务的影响。然而,对于单目深度估计器的这种影响量化仍然很少有研究,只有少数工作对这些模型的行为提供了一些见解。这可能主要是由于缺乏标注数据以及与其相关的高昂成本和技术难题。传统上,这类任务是通过昂贵的激光雷达传感器的测量来完成的。这些传感器并不普及,且需要多层后处理,如异常值检测和移除、数据对齐、与其他来源的注册,以及其他计算密集型步骤。
Dataset
该数据集的目标是衡量不同视点变化对单目深度估计模型的影响。我们使用一辆2023年RAM Promaster 2500货车收集数据,该车辆位于美国乔治亚州阿尔法利塔市。2023年3月至2024年2月期间,我们在车辆的挡风玻璃上安装了两个相同的行车记录仪。第一个摄像头,我们称之为基准摄像头,固定在行车记录仪的理想位置,即靠近后视镜,高度为177.8厘米,角度设置为:横滚角为0°,偏航角为0°,俯仰角为-4°(后续调整为6°,如表1所示)。这些位置的示例帧如图4所示。
第二个摄像头,我们称之为偏移摄像头,用于模拟不同的视点变化,并每周移动一次。表1和图3展示了数据收集期间不同的摄像头位置和角度组合。对于挡风玻璃中的摄像头位置(X, Y, Z),我们使用图3(a)中以基准摄像头位置为中心的参考系统。
需要注意的是,当摄像头安装在左侧时(表1中的第6至第9行),偏航角是由挡风玻璃本身的曲率隐式生成的。横滚角通过手动测量摄像头在挡风玻璃上的倾斜角度来计算。另一方面,我们通过手动标注道路直线的水平消失点(vu, vv),并根据摄像头的焦距(fx, fy)和主点(cu, cv)计算每个视点的俯仰角和偏航角:
我们总共收集了10个不同的视点。对于每个视点,我们提供3段来自不同场景的10分钟视频。由于视频分布时间范围较长,我们手动选择了样本,以代表非恶劣天气下郊区区域的类似分布,且视频均为白天录制,见图4和图5。行车记录仪以30帧每秒的速度录制视频,分辨率为720p MP4格式,视场角为150°。我们将数据降采样为10帧每秒,并以JPEG格式提取去失真的帧,质量因子为92,色度抽样为4:2:0。最终共得到360,000帧图像。
需要注意的是,虽然两个摄像头同时记录相同场景,但没有实现同步机制。这可能导致两段录制的视频之间存在可变数量的帧差。为了促进进一步研究,我们还提供了以1Hz和100Hz频率记录的GPS点和加速度计数据。
4.1 目标检测
我们使用了Yolov5目标检测器,该检测器在BDD100K和使用相同摄像机型号的私人数据集上进行了训练。我们不认为视点变化会影响目标检测器的性能,因为用于训练的两个数据集都具有非固定的视点。此外,通过定性分析,我们观察到表1中的视点组合并未引起物体外观的显著变化。小规模实验也证实了,不同视点之间的平均精度没有明显变化。
为排除有问题的情况,我们过滤掉了置信度低于0.5且物体下边缘高于相机消失点的所有框。此外,我们通过检测重叠的框来移除遮挡的物体,并仅保留图像中最靠下的物体。最后,我们根据每个类别的特定面积阈值过滤掉小物体:所有车辆的面积阈值为3000像素²,行人和自行车的为1000像素²,摩托车的为1500像素²。我们发布了原始检测结果和过滤后的检测结果。
4.2 单应性
如第3节所述,为了能够将地面真实距离与道路物体相关联,我们估计了将图像地面点映射到具有公制参考系统的目标平面的单应性(见图1),并随数据集一同发布。
基准摄像头单应性
我们利用空停车场的规则图案来获得多个参考点并最小化手动测量。在图1中,我们展示了在图像上手动标注的地面点及其在具有公制坐标的平面上的对应点。使用提供的所有点通过OpenCV Python库中的简单最小二乘法方案估算了单应性。
偏移摄像头单应性
我们在手动同步两个视频的一部分后,选择了摄像头之间的对应点。使用基准摄像头的单应性,我们将基准摄像头的点投影到目标平面,并使用偏移摄像头的对应点来估计所需的单应性。此操作为每个位置重复一次。
Experiments
在本节中,我们报告了实验结果。特别是,我们通过与 KITTI 数据集上的激光雷达读数进行比较,验证了我们的几何基准方法作为真实值的有效性(见第 5.1 节)。然后,在第 5.2 节中,我们使用我们的真实值方法来测量不同视点变化对自监督单目深度估计模型的影响。
在所有实验中,我们使用了 MonoViT 深度估计模型 [28],该模型是一种现代架构,在 RoboDepth 挑战中针对恶劣天气、光照和传感器损坏的鲁棒性表现优异,取得了最先进的性能 。尽管该挑战使用模拟的天气条件和图像降解,我们认为它是我们研究的有前景候选模型。
5.1 KITTI 上的单应性评估
本次实验的目标是通过与激光雷达真实值进行比较,评估我们的基于几何策略的误差幅度。我们使用 MonoViT 模型,该模型是在 KITTI 数据集上训练的自监督单目深度估计模型,使用两种真实值源测量其绝对相对误差(公式(3)):激光扫描和我们的策略。
首先,我们利用提供的相机投影矩阵估计单应性。我们选择目标平面中的一组参考点,并通过投影到图像平面上,使用我们数据集中相同的方法估计单应性。我们还利用提供的物体标签,并过滤掉被遮挡和部分遮挡的物体。
我们在 Eigen 划分 的测试集上使用 MonoViT 进行推理。单目深度估计器提供的预测具有未知的比例因子,必须使用真实值手动缩放到度量深度。传统上,图像级别的中位数缩放会在每个图像 j 上执行,即将预测结果乘以。然而,这可能对其他基于立体或监督方法不公平,因为它们在测试时不使用真实值信息。因此,在这些实验中,我们通过计算整个测试集的中位数来计算单个缩放系数。我们在我们的策略中也做了类似操作,计算了通过边界框调整后的预测百分位数的中位数。为了找到边界框缩放的最佳参数及预测框内的百分位数(α 和 β 分别),我们进行了网格搜索,结果表明 α=0.75 和 β=75 是最佳参数。在这些参数下,我们使用我们的单应性测量得到了 16.8 的绝对相对误差,而使用激光雷达则是 13.6,差值为 3.22 点。
此外,对于目标距离估计任务,我们计算了激光雷达读数与单应性之间的 Spearman 秩相关分数。为了将激光距离与物体相关联,我们选择了边框下侧中点的传感器读数。我们观察到这两种真实值源具有很高的相关性,Spearman 分数为 0.97。
道路几何
这些结果表明,单应性使用中的内在误差(假设平坦的地面表面)是有限的。为了进一步验证这一点,我们还利用提供的 GPS 信号计算了 KITTI 测试集上道路坡度的统计数据。事实上,通过使用海拔和速度,我们能够计算行驶路段的坡度。具体来说,我们以 1Hz 采样 GPS 点,并仅保留水平位移超过 1 米的点。我们观察到角度绝对值的平均值为 1.2°,中位数为 0.4°,99 分位数为 21.1°。在我们的数据集中,相关统计数据为 1.8°,0° 和 19.1°。此外,仅当道路几何发生变化时,单应性假设才被打破,因此当 GPS 海拔变化超过 1 米时(我们 GPS 信号的精度),我们观察到在 KITTI 中的发生频率为 1.46%,在我们的数据集中则为 1.99%。这些测量结果表明两个数据集的道路几何是相似的,并鼓励我们在自己的数据集上使用这一策略,预计会有与 KITTI 类似的内在误差。
5.2 视点变化影响
我们的目标是找出收集到的不同位置中最具降级影响的视点变化。我们从基础摄像机的额外 3 个视频中构建了一个训练集,摄像机的俯仰角为 -4°,帧率为 10 fps,利用数据集的其余部分作为测试集,帧率为 1 fps,用以测量不同视点对 MonoViT 的影响。我们运行的实验使用了在 KITTI 上预训练的 MonoViT,分辨率为 1024x320。为了让图像适应网络,我们将帧从 720 中央裁剪到 704,最终得到 1280x704 像素的帧。
我们首先在两个摄像机和所有位置上运行了零样本实验。然后我们使用 Nvidia L4 GPU(24GB)对模型进行微调,批量大小为 2,共训练了 21 个 epoch。对于优化,我们使用了 AdamW [18],深度编码器的初始学习率为 (10^{-9}),其他部分的初始学习率为 (10^{-8}),并进行了指数衰减。
正如第 5.1 节所述,预测需要缩放到度量距离才能进行评估。然而,为了突出视点变化对模型感知尺度的影响,我们选择对所有位置使用相同的缩放系数。该系数通过利用训练集中的所有物体 (O) 计算得出,公式如下:
表 2 给出了模型在不同位置上的绝对相对误差,包括零样本和微调推理结果。
为了隔离视点的影响,我们对每个位置都测试了同时由两个摄像机记录的相同场景的录像,并计算了偏移(S)和基础(B)摄像机之间的性能差异。
偏移摄像机和基础摄像机之间差异最大的行对应的是安装位置导致性能最严重降级的情况。
从零样本结果中,我们观察到受影响最严重的两个位置是 7 和 5(按降序排列)。俯仰角和偏航角的组合具有最降级的效果,导致误差增加了一倍多。俯仰角和翻滚角的组合也导致模型的误差增加了一倍。微调减少了整体误差,但两个表现最差的位置的降级影响几乎没有变化。总的来说,我们观察到纯旋转或平移对模型的影响不如它们的组合,其中某些组合比其他组合更有影响。
缩放效应
鉴于所有位置都使用了单一的缩放因子,我们认为视点变化的主要影响是模型感知尺度的失真,如果使用每幅图像或每个位置的缩放,则无法检测到这种效应。为了更好地研究这一现象,我们分别计算了不同位置的缩放系数(如公式 (7) 所示)。表 3 报告了零样本实验中的缩放系数,以及表 2 中的误差降级。可以看出性能降级与感知缩放之间存在相关性。特别是,我们观察到较高的俯仰角对应于模型感知的较小的尺度(因此需要更大的缩放因子以与真实值对齐)。同样,较低的俯仰角生成较大的感知尺度。这一观察似乎证实了深度模型确实使用物体的垂直位置作为深度提示的说法 [21]。总的来说,这表明处理这一问题的自适应方法应侧重于推理时模型的自动缩放。
Conclusion
文章的贡献如下:
技术创新:提出了一种基于经典计算机视觉技术的地面真实值策略,可替代昂贵的传感器进行目标距离估计;
方法论研究:深入讨论了该方法的局限性,并在公共标注数据集上验证了其有效性。
数据集贡献:发布了一个从多个视点收集的道路场景新数据集。
性能分析:量化了不同视点对现代单目深度估计模型性能的影响。
文章地址:
A New Dataset for Monocular Depth EstimationUnder Viewpoint Shifts
最后别忘了,帮忙点“在看”。
您的点赞,在看,是我创作的动力。
AiFighing是全网第一且唯一以代码、项目的形式讲解自动驾驶感知方向的关键技术。