点击下方卡片,关注“自动驾驶之心”公众号
ADAS巨卷干货,即可获取
点击进入→自动驾驶之心技术交流群
后台回复【ECCV2022】获取ECCV2022所有自动驾驶方向论文!
原文链接:https://arxiv.org/pdf/2207.03704.pdf
导语
本文提出了一种在线联合时空标定的视觉-激光雷达算法;设计了一个双向损失函数,避免了单向投影可能导致的局部最优,从而获得了更稳定的性能;并结合来自视觉里程计的延迟估计,同时估计了外参和延迟。
摘要
借助多种输入模态的信息,基于传感器融合的算法通常优于单模态。具有互补语义和深度信息的相机和激光雷达是复杂驾驶环境中的典型传感器配置。然而,对于大多数相机和激光雷达融合的算法,传感器的标定将极大地影响性能。具体来说,检测算法通常需要多个传感器之间的精确几何关系作为输入,并且默认传感器的时间戳是同步的。配准这些传感器需要精心设计的标定装置和精确的同步机制,并且标定通常是离线完成的。本文则提出一种基于分割的框架来联合估计相机-激光雷达标定中的几何和时间参数。首先将语义分割Mask应用到两种传感器上,并通过逐像素双向损失优化校准参数。此外,本文专门将来自光流的速度信息作为时间参数。最后在KITTI数据集上进行了测试,实验结果表明算法的有效性和鲁棒性,整体来说是个不错的外参标定工作。
相关工作
几何标定
基于Rig的标定:几何传感器校准的最早尝试始于人造目标。此类对象通常具有规则的形状或特定的图案,很容易通过简单的检测算法检测到[13,14,15,16]。
基于特征的标定:从标定板出发,一些工作尝试在现实世界中找到各种特征进行标定[17,18,19]。
端到端标定:最近,一些基于学习的方法使用原始传感器输入 [7]、[8]、[9] 预测传感器的外参。为了训练这些模型,研究人员通常需要使用包含真实标定数据的大型数据集。更重要的是,上述工作都没有评估模型在其他数据集上的泛化能力。
时间标定
传感器同步在驾驶相关任务中经常被忽视 [1],大多数算法通常天真地假设提供的数据已经同步。然而,这样的假设很少成立。为了同步传感器,研究人员设计了离线和在线同步机制。
离线同步:在离线设计中,同步在数据采集之前执行。与早期多相机设置中的触发机制类似,传感器同步的一个朴素的尝试是使用硬件触发器 [22],如固定频率脉冲信号。也有一些数据集提供了具有补偿触发时间的软件触发器 [12],但时间延迟的手动校准通常很耗时。
在线同步:在线同步在数据采集过程中或之后进行。一个典型的例子是 Argoverse 数据集[11],其中每个相机图像都与最近的激光雷达扫描相匹配,而物理传感器本身并不完全同步。该领域的大多数研究工作估计传感器在捕获真实数据时之间的时间延迟。视觉惯性导航系统 (VINS) 通过优化这两个传感器之间的轨迹一致性来校准高频惯性测量单元 (IMU) 和相机之间的时间延迟。
联合标定
通过SLAM进行标定是联合标定的一种主流方式。通过SLAM算法,每个传感器模态都配备了单独的里程计,其依赖时间和空间。在[23]和[24]中,作者利用里程计估计来找到两个生成的轨迹之间的最佳时空匹配。然而,上述方法依赖SLAM在整个行驶轨迹上的性能,一旦 SLAM发生漂移会很容易影响下游标定任务。本文则通过迭代地优化外参和时间参数,避免沿行进路径上的累计误差。
方法
所提出的标定方法的整体流程如下图所示。标定过程包括用于空间外参初始标定的静态空间参数标定模块和用于双参数估计的联合时空参数标定模块。

本文提出的算法输入是点云扫描和两个连续的RGB图像{}。算法的目标是估计一个6-DoF{}的外参和时间延迟。
为此,本文首先通过任意的语义分割算法处理和,进一步得到语义分割Mask。之后利用一个初始化的外参{}将激光雷达点云投影到图像平面上。通过寻找从点云到像素和从像素到点云的最近邻关系,计算两者之间的欧几里得距离进行优化。
第一次优化迭代(静态空间参数标定模块)在本车车速接近0的帧上进行。静态空间参数标定给出了旋转和平移参数{, }的初始值。该初始值作为联合时空参数标定的初始值和正则化参考。
其次,对于动态场景,本文从视觉里程计估计和之间的时间信息,进一步预测两个图像帧之间的速度。
语义分割
利用现成的语义分割模块,本文提出的方法可以推广到任何有语义标注的数据集上。本文分别使用SqueezeSegV3[26]和SDC-net[27]进行点云和图像语义分割。考虑城市环境中车辆是最常见的目标,本文仅使用车辆类别进行语义分割。使用分割网络得到点云和图像的分割结果。
点云投影
为了计算语义损失,本文首先将点云投影到2D图像平面上,使用经典的相机模型,可以实现如下投影:

双向损失
假设是相机视野内的一组投影LiDAR点,对于投影点,令为同一类的最近邻像素。然后帧k上的单向点云到像素的语义对齐损失计算如下:

上式中,损失是按投影点计算的。下图(a)展示了点云到像素损失的计算过程。如[10]所示,通过最小化这个损失函数,可以使投影点云与具有相同语义标签的像素很好地对应起来。因此,最小化这个损失函数可以引导我们得到正确的估计

然而,当外参的初始值与GT存在明显差异时,最近邻匹配不一定有用。因为最小化单向损失得到的解是局部最优的。为了避免这种情况,本文提出了一种双向损失,即进一步利用像素到点云的最近邻匹配,如上图(b)所示。
双向损失函数本质上就是基于单向损失函数添加了像素到激光的损失:

在这里,损失是按采样像素计算的。那么,第次迭代的双向语义对齐损失可以表示为:

联合时空标定
在联合标定之前,通过使用视觉里程计获取两个连续帧{}之间的运动速度。本文使用基于稀疏光流进行FAST特征跟踪,之后使用带有RANSAC [30]的Nister5 点算法获取视觉里程计。
在车辆运动和异步传感器的条件下,基于静态外参的点云投影不可能与图像像素匹配上。因此为了补偿时间延迟,将投影方程修改如下:

和分别是激光投影点通过与时间和速度补偿在相机坐标系的坐标。为了可以同时估计空间与时间标定参数,双向损失函数修改如下:

其中,是使外参估计更接近初始值的正则化项。和是分别用于平移和旋转的正则化系数。
实验结果
在异步数据条件下,联合时空标定算法估计的延迟为103.4ms,与真值相差3.4ms。

可视化结果如下:

引入噪声后的鲁棒性实验结果如下:

不同延时下的实验结果:

双向损失函数的消融实验:

【自动驾驶之心】全栈技术交流群
自动驾驶之心是首个自动驾驶开发者社区,聚焦目标检测、语义分割、全景分割、实例分割、关键点检测、车道线、目标跟踪、3D感知、多传感器融合、SLAM、高精地图、规划控制、AI模型部署落地等方向;
加入我们:自动驾驶之心技术交流群汇总!