自动驾驶汽车的工作原理有四大支柱:感知、定位、规划和控制。融合可以分为早期融合和晚期 融合——早期融合指的是融合原始数据。晚期融合指的是融合物体(中级传感器融合)或轨迹(高级传感器融合)。
在进行早期传感器融合时,我们希望进行点云与像素或框之间的关联。
在进行后期传感器融合时,我们希望进行结果(边界框)之间的关联,因此有匈牙利算法和卡尔曼滤波器等算法来解决它。

将 LiDAR 点云(3D)投影到 2D 图像上。1. 二维物体检测
用摄像头检测物体,类似 YOLOv4 这样的算法就可以完成物体检测。2. ROI匹配
1. 3D障碍物检测(LiDAR)
2. 3D障碍物检测(摄像头)
3. IOU匹配
IOU Matching的原理完全相同:如果第1帧到第2帧的边界框重叠,我们就认为这个障碍物是同一个。
在这里,我们跟踪边界框的位置,并使用 IOU(交并比)作为度量标准。我们还可以使用深度卷积特征来确保边界框中的对象是相同的——我们将此过程称为 SORT(简单在线实时跟踪),如果使用卷积特征,则称为深度 SORT。
由于我们可以在空间和时间上跟踪物体,因此我们也可以使用完全相同的算法,通过这种方式进行高级传感器融合。
进行早期融合的两种方法
有两种方法可以进行早期融合:
第一种方法是将一个数据投影到另一个数据上。例如,可以将点云投影到图像上。或者,也可以将像素投影到 3D 空间中。第一种方法更常见,但第二种方法也越来越多地被采用,尤其是在密集 SLAM 和 3D 重建领域。当将 LiDAR 点云投影到图像空间时, 实际上是从一个坐标空间移动到另一个坐标空间。3D空间中的单个点首先转换为相机空间(3D),然后移动到图像空间(2D)。一个公式甚至可以帮助我们实现这一点:这不是唯一的方法,因为你还可以将像素投影到三维空间。在这幅图像中,我们不是将像素与点融合,而是将特征与点融合。也可以进行特征与特征的融合,在这种情况下,会融合高度相关的特征,而不是其他特征。与机器学习的早期融合
在这里融合了来自第 1 层的原始数据。这是“真正的”早期融合。
另一方面,先用几个卷积处理每个数据,然后在 3 或 4 次之后进行融合,它将看起来像这样:
但这不再是“早期”融合,我们更愿意称之为“中期”或“中级”融合。注意到它与之前的“特征融合”概念有多么相似吗?这是因为我们可以进行“直接”融合,也可以进行“特征”融合,并且可以使用传统或深度学习技术。鸟瞰图融合
最常见的方法是将两者转换为“通用表示”。这通常是一种鸟瞰视角。
这看起来像是“中间融合”(事实也的确如此),但至少它展示了各个变换到鸟瞰视图空间的过程,并将它们融合在一起。我们使用鸟瞰视图是因为这样一来,所有信息都变得通用。显示车辆的像素与显示相同车辆的点云位于完全相同的位置,依此类推……在这个例子中,数据进入卷积神经网络,然后转换为鸟瞰视图。概括
当使用多个传感器时,对于何时进行融合有很多不同的选择。可以是在数据层面进行,这被称为早期融合;也可以是在特征层面进行,这被称为中期融合;又或者在对象层面进行,这被称为后期融合。
早期融合是指在处理数据之前就进行合并。您可以通过从一帧到另一帧的投影(例如,点云到图像空间)来实现;或者通过使用神经网络来实现。
经典方法(投影)涉及几何和公式。它可能非常可靠,但很大程度上取决于你的传感器及其校准方式。此外,投影还会导致“丢失”一个维度,因为将 3D 点投影到 2D 意味着你现在在 2D 中工作。
神经网络方法可能感觉更复杂。实际上,它涉及通过连接层合并数据,然后使用合并后的信息。然而,大多数研究人员更喜欢先进行特征提取,或者融合范围视图,然后在鸟瞰视图空间中融合传感器(融合中期)。
早期融合和晚期融合并没有优劣之分;它们高度依赖于具体情况。较简单的问题可以用晚期融合解决,而其他问题则可以两种方法都尝试。晚期融合的缺点是高度依赖传感器和检测算法。