经典文献阅读之--Cam2BEV

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了经典文献阅读之--Cam2BEV相关的知识,希望对你有一定的参考价值。


0. 简介

这里我们介绍一篇20年的论文《​​A Sim2Real Deep Learning Approach for the Transformation of Images from Multiple Vehicle-Mounted Cameras to a Semantically Segmented Image in Bird’s Eye View​​​》。这篇文章描述了一种获取360°鸟瞰图的方法,这些图像来自于多个摄像头。对校正后的BEV图像进行语义分割,并预测遮挡的部分。该方法不需要手工标注数据,而是在合成数据集上面进行训练,这样就能够在真实世界表现更好的效果。下面是他们的​​Github​​开源代码。

1. 文章贡献

自动驾驶的其中一个关键因素是准确的感知周围的环境,这对于安全来说至关重要。由于单目摄像机只能提供图像平面上位置的信息,因此可以对图像进行透视变换。透视变换是从一个视角所看到的相同场景的近似,在这个视角中,成像平面与摄像机前面的地平面对齐。将相机图像转换为BEV的方法通常称为逆变换角度映射(IPM)。IPM假设世界是扁平的,但是任何三维物体都会违背这一假设,所以不太适用。

尽管IPM引入的错误是可以校正的,但是仍然需要在BEV中检测目标。为此提出了一种不受IPM下的平度假设所带来的误差影响的BEV图像获取方法。通过语义分割的输入,该算法能够获取类信息,从而能够将这些信息纳入IPM生成的图像的校正中。模型的输出是输入场景的语义分段BEV,由于对象形状被保留,输出不仅可以用于确定自由空间,而且可以定位动态对象。下图为四个摄像头通过IPM得到的图像和所需的真实BEV图像。

经典文献阅读之--Cam2BEV_人工智能


这项工作的贡献如下所示:

  1. 提出了一种在BEV中能够将多个车载摄像机图像转换为语义分割图像的方法
  2. 使用不同的神经网络架构,设计并比较了两种不同的方法,其中一种是专门为这项任务设计的;
  3. 在设计过程中,不需要对BEV图像进行人工标记来训练基于神经网络的模型
  4. 最后展示了一个成功的实际应用的模型。

2. 遮挡处理

该文章基于卷积神经网络(CNN)的使用,但是大多数的CNNs只处理一个输入图像。单输入网络可以将多个图像按其通道级联作为输入会导致输入和输出图像之间的空间不一致,这表明我们需要一种额外的深度学习机智。

2.1 处理遮挡

当只考虑输入域和期望的输出时,会出现一个明显的难题:交通参与者和静态障碍可能会遮挡部分环境,使得在BEV图像中预测这些区域几乎不可能。

为此对每个车载摄像机,虚拟射线从其安装位置投射到语义上分割的真值BEV图像的边缘。这个射线仅投射到特定摄像头视野的边缘像素。根据以下规则处理这些射线的所有像素以确定它们的遮挡状态:

  1. 一些语义类总是挡住视线(例如,建筑物,卡车);
  2. 一些语义类永远不会遮挡视线(例如道路);
  3. 汽车挡住了视线,但不能挡在后面的较高物体(例如卡车,公共汽车);
  4. 被部分遮挡的物体仍然完全可见;
  5. 仅当目标在所有摄影机透视图中均被遮挡时,才将其标记为遮挡。

根据这些规则修改的真实BEV图像如下图所示。

经典文献阅读之--Cam2BEV_深度学习_02

2.2 投影预处理

IPM技术作为方法中的一部分,作者推导了汽车摄像机框架与BEV之间的投影变换,确定了单应矩阵涉及的相机内部和外部参数。

世界坐标xw和图像坐标xi之间的关系由以下投影矩阵P给出:
经典文献阅读之--Cam2BEV_世界坐标系_03
投影矩阵将相机的内在参数如焦距编码为一个矩阵K和外参(世界坐标系中的旋转R和平移t):
经典文献阅读之--Cam2BEV_深度学习_04
假设存在从道路平面经典文献阅读之--Cam2BEV_神经网络_05到世界坐标系的变换经典文献阅读之--Cam2BEV_世界坐标系_06
经典文献阅读之--Cam2BEV_深度学习_07
经典文献阅读之--Cam2BEV_深度学习_08

设置该变换作为捕捉与真实BEV图像相同的视野。由于这一区域被所有摄像机图像的并集覆盖,因此它们首先通过IPM分别变换,然后合并成一个单独的图像,以下称为单应图像。重叠区域中的像素,即从两个摄像机可见的区域,从变换后的图像中任意选择一个。

这部分的详细推导可以看一下博主的另一篇文章《​​IPM 鸟瞰图公式转换与推导​​》。

3. 深度学习

本文作者提出两个模型设计,一是单输入模型,基于DeepLabv3+,其中主干分别采用MobileNetV2 和 Xception测试;二是 多输入模型,基于U-Net,做了一些变型。

3.1 单输入模型

作者预先计算如上节所示的单应性图像,以弥补相机视图和BEV之间的很大一部分差距。作者在此提供了神经网络输入与输出在一定程度上的空间一致性,网络的任务就是纠正IPM带来的错误------也就是拿到四个视角下的IPM结果后,然后输入到单输入模型,并得到处理后的结果

由于单应性图像和期望的目标输出图像覆盖相同的空间区域,作者使用已有的CNNS进行图像处理,这在语义分割等其他任务上已经被证明是成功的。最后作者选择了DeepLabv3+作为单网络输入的架构。

经典文献阅读之--Cam2BEV_人工智能_09

…详情请参照​​古月居​


以上是关于经典文献阅读之--Cam2BEV的主要内容,如果未能解决你的问题,请参考以下文章

经典文献阅读之--FEC

经典文献阅读之--BoW3D

经典文献阅读之--R3LIVE

经典文献阅读之--M-LOAM(多激光雷达在线标定方案)

经典文献阅读之--Multi-modal Semantic SLAM(多模态语义SLAM)

经典文献阅读之--LOCUS 2.0(LiDAR为中心的多传感器LSLAM)