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图像。
在这里插入图片描述
这项工作的贡献如下所示:

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

2. 遮挡处理

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

2.1 处理遮挡

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

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

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

根据这些规则修改的真实BEV图像如下图所示。
在这里插入图片描述

2.2 投影预处理

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

世界坐标xw和图像坐标xi之间的关系由以下投影矩阵P给出:
x_i=Px_w
投影矩阵将相机的内在参数如焦距编码为一个矩阵K和外参(世界坐标系中的旋转R和平移t):
P=K[R|t]
假设存在从道路平面$x_r$到世界坐标系的变换$M$:
x_w=Mx_r
x_r=(PM)^{-1}x_i

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

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

3. 深度学习

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

3.1 单输入模型

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

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

在这里插入图片描述

3.2 多输入模型

该模型处理来自车辆摄像头的所有非转换图像作为输入,在未转换的相机视图中提取特征,因此不完全受IPM引入的误差的影响。模型名字称为uNetXST;它为每个输入图像都有单独的编码器路径(绿色路径); 作为每个尺度级(紫色路径)跳连接的一部分,特征图将进行投影变换(v-块)、与其他输入流串联(|| -块)、卷积、解码器路径的上采样输出进行串联;此图显示了一个只有两个池化层和两个上采样层的网络,实际训练的网络分别包含四个。

在这里插入图片描述
上图中v-块类似于空间变换器单元,其细节如下图所示: 来自前一个卷积层(橙色网格层)的输入特征图通过IPM(逆投影映射)获得的单应性做投影变换; 不同摄像机的输入流之间,这种转换也不同;这里建立了空间一致性,因为变换的特征图捕获了与BEV真值相同的视野。 然后需要将这些变换的特征图级联到一个单特征图(参见上图的||-块)。

在这里插入图片描述

4. 参考链接

https://blog.csdn.net/Yong_Qi2015/article/details/107218611
https://zhuanlan.zhihu.com/p/365561705