【阅读】Extrinsic 6DoF Calibration of 3D LiDAR and Radar
作者:互联网
Extrinsic 6DoF Calibration of 3D LiDAR and Radar
三维激光雷达和毫米波雷达的外部六自由度标定
论文地址:https://lamor.fer.hr/images/50020776/Persic2017.pdf
摘要
环境感知是自驾系统的关键组成部分,通常基于异构的多传感器融合,其中传感器的外参标定起基础作用。本文针对三维激光雷达测量精度低、信息稀疏等问题,提出了三维激光雷达的标定方法。
我们提出了一个适用于这两个传感器的互补校准目标设计,从而实现了一个简单而可靠的校准程序。
标定方法由对应配准
和两步优化
组成。
第一步,基于重投影误差的优化,提供校准参数的初始估计。
第二步,视场优化,使用来自雷达截面测量(RCS值)和标称视场的附加信息来细化参数。
最后,实验结果验证了该方法的有效性,并证明了这两种方法的结合提供了一种改进的外部标定参数估计方法。
I 介绍
鲁棒环境感知是自动移动机器人或自动驾驶汽车必须完成的必要任务之一。为了实现这一目标,使用了各种传感器,如照相机、雷达、激光雷达和惯性导航单元,它们的信息经常被融合。融合过程中的一个基本步骤是传感器校准,包括内在的和外在的。前者提供各个传感器的内部参数,后者提供传感器坐标系之间的相对转换。标定可以同时处理两个参数组,或者假设传感器已经本质标定,然后进行外部标定,这就是我们在本文中采用的方法。
解决外部校准问题需要在内参校准好了的传感器的数据中找到对应关系,这是一个挑战,因为不同的传感器可以测量不同的物理量。校准方法可以是基于目标的
或无目标的
。在基于目标的校准情况下,对应来源于一个专门设计的目标,而无目标方法利用两个传感器感知的环境特征。前者具有设计自由的优点,最大限度地增加了两个传感器感知校准目标的机会,但需要开发这样的目标并执行适当的离线校准程序。后者的优点是利用环境本身作为校准目标,可以通过记录环境中的对应结构进行在线标定。
但是都要求两个传感器能提取相同的环境特征。例如,3D-LiDAR和相机的标定可以基于图像中强度边缘检测到的线特征和点云中的深度不连续[1]。此外,基于里程表的方法可以避免结构对应的配准,该方法使用单个传感器估计的系统运动来校准它们[2],[3]。然而,由于目前汽车雷达系统的分辨率有限,在所有实际的手段和目的中,无目标的方法都难以实现,因为雷达实际上无法推断被检测目标的结构,提取直线或角点等特征。因此,我们的研究重点是基于目标的方法。
基于目标的三维激光雷达标定通常采用在点云中易于检测和定位的平面矩形。例如,在平面表面覆盖棋盘
[4][7]或一组QR码
[8],[9]的三维激光雷达相机标定方面,已有广泛的研究。采用相同目标对二维激光雷达-相机对进行外部标定[10],通过提取v形平面目标的中心线和边缘特征
进行改进[11]。此外,在[12]中提出了一种针对不同传感器工作原理的目标校正方法,作者提出了一种外部标定三维激光雷达和热成像相机的方法,方法是将平面方格表面扩展为由灯泡组成的网格
。
对于汽车雷达,常见的工作频率(24 GHz和77 GHz)可以可靠地检测导电物体,如平板、圆柱体和角反射器
,然后用于校准方法[13]。在[14]中,作者使用了一个金属面板
作为雷达摄像机标定的目标。他们假设所有的雷达测量都来源于单一的地面,从而忽略了问题的3D性质。通过优化地面和成像平面之间的单应变换来实现定标。与[14]相反,在[15]中,作者考虑了问题的3D性质。其中,他们通过在视场(FoV)内移动一个角反射器来手动搜索最大检测强度
。他们假设探测位于雷达平面(雷达坐标系中的零仰角平面)。利用这些点优化了雷达和摄像机之间的单应变换。该方法的缺点是最大强度搜索容易出现误差,因为返回强度取决于许多因素,如目标方向和雷达天线辐射方向,通常设计为尽可能恒定的FoV。在[16]中,采用二维激光雷达作为真值,目标由雷达管反射面和方形纸板组成。这种纸板实际上是雷达看不到的,同时使更好的检测和定位在激光雷达点云。这些互补的特性为我们的目标设计提供了灵感。
虽然上述雷达校准方法为目标应用提供了足够好的结果,但它们缺乏充分评估雷达相对于其他传感器的位置的可能性。为此,提出了一种利用6自由度(DoF)外参标定三维激光雷达-雷达对的新方法。该方法包括特殊标定目标设计、对应配准和两步优化。第一步是基于重投影误差优化,而第二步使用来自雷达截面(RCS)的附加信息,RCS是探测强度的度量。利用雷达视场的RCS分布来细化具有较高不确定性的定标参数子集。
本文的组织结构如下。第二节阐述了标定方法,包括标定目标设计II-A和数据对应配准II-B。第三节解释了优化的两个步骤:重投影误差优化III-A和FoV优化III-B。第IV-A节提供了详细的实验设置来测试该方法,结果在第IV-B中给出。我们在第五节作最后的评述,并提出今后的工作。
II Radar-Lidar外参标定方法
该方法基于在雷达视场内外不同高度范围内观测标定目标。它要求3DLidar的视场超过雷达的垂直视场,这是大多数应用的情况。此外,由于雷达的相关问题,如多径传播的鬼影测量、低角度分辨率等,数据收集必须在一组距离(2-10米)的室外进行,目标周围有足够的清晰空间。
A 标定工具设计
一个精心设计的目标的特性是(i)易于检测和(ii)两个传感器的定位精度高。对于雷达来说,具有高RCS的目标提供良好的探测率。形式上,物体的RCS定义为回波强度等于物体强度[13]的完美导电球的面积。因此,它是一个对象大小,材料,形状和方向的函数。虽然任何一种金属都能满足这种材料的需要,但选择其他特性却并非易事。雷达通常以回波信号的质心来估计目标的距离和角度。因此,为了准确定位检测源,目标应尽可能小,但这意味着较小的RCS。因此,必须折衷考虑目标大小和足够高的RCS。雷达反射镜是雷达高度可见的物体,不仅用于内在校准,而且作为海洋安全设备有许多的设计。根据之前的讨论,我们断言这些设计中的一个可以被认为是一种很好的折中方案,我们选择了由三个正交的平面金属三角形组成的三角形三面角反射器。
图1.a表示了构建好的radar标定目标和工作原理,它有一个有趣的特性,即任何从三面反射的光线都会以图1.b所示的相同方向返回。这背后的原因是这三条边的法线构成了一组标准正交基。即反射使入射光线平行于表面法线的分量方向相反,而平行于表面切面的分量方向不变。经过三次反射,形成一个标准正交基,射线的方向是相反的。由于这一特性,无论入射角如何,许多光线都会返回到它们的源,也就是返回到雷达。与具有高RCS但对方向变化高度敏感的单一平板不同,三面角反射器提供了高且稳定的RCS。当角反射镜ac的轴线直接指向雷达时,达到其最大RCS值:
σ
c
=
π
l
4
3
λ
2
\sigma_c = \frac{\pi l^4}{3 \lambda^2}
σc=3λ2πl4
其中
l
l
l是一个角反射器的斜边长度,
λ
\lambda
λ是雷达的工作波长
将反射器RCS作为方向函数的解析描述是重要的。但是,从[13]中的实验可以看出,±20°朝向变化导致RCS略有下降,近似为一个常数,而±40°朝向变化导致RCS下降3dBm²。此外,作者在[17]中表明,所有经过多次反射的光线所经过的长度都与直接从角中心反射过来的光线相同。该方法具有较高的定位精度。(突出这种角反射器的好处,确实很好
)
角反射镜对激光雷达可见,但由于其体积小、形状复杂,难以在较大距离下精确定位。这个问题可以通过在反射器前面放一块三角形的聚苯乙烯泡沫板来解决。聚苯乙烯泡沫塑料是由大约98%的空气造成的低介电常数(约1.10)和不导电。这些特性使得它几乎不被雷达探测到,但仍然可以被激光雷达探测到。然而,我们没有选择一般的矩形形状,而是选择了三角形形状来解决有限的激光雷达分辨率造成的定位模糊问题。即,激光雷达的方位角分辨率通常大于仰角分辨率,从而产生对目标的分层效应;因此,沿着垂直轴平移矩形将产生相同的测量结果,直到它成为下一个激光雷达层可见(这不是三角形形状的情况)。这种效应对我们的方法所要求的更大距离处的定位有更大的影响。
最后,目标站应能保持目标在不同高度(0-2m)的范围内,并具有较低的RCS,不干扰目标检测和定位。我们使用了一个由三根细木棒组成的支架,固定在一个地面木平面上,并与塑料桥连接(图1.a)。附着在桥上的目标可以滑动和倾斜来调整其高度和方向。
B 对应配准
对应配准数据从lidar点云的三角形的检测开始。第一步是分割候选平面,从中提取边缘点。第二步,将这些边缘点与三角形模型相匹配。Levenberg-Marquardt (LM)算法通过最小化边缘点到三角形模型边界的距离来优化三角形的姿态。根据我们接受或放弃的估计经验来定义最终的阈值。基于三角形姿态估计和已知目标结构,计算了角反射器原点的位置
l
x
l
l_{x_l}
lxl。(lidar坐标系下的lidar点
)
感兴趣的雷达数据是一列表的由探测角度
r
ϕ
r
r_{\phi_r}
rϕr、范围
r
r
r
r_{r_r}
rrr和RCS
r
σ
r
r_{\sigma_r}
rσr描述的被探测对象(radar坐标系下的radar点
)。
在雷达坐标系
F
r
F_r
Fr中,列表中的第i个对象由vector描述
r
m
i
=
[
r
ϕ
r
,
i
,
r
r
r
,
i
,
r
σ
r
,
i
]
r_{m_i} = [r_{\phi_{r,i}}, r_{r_{r,i}}, r_{\sigma_{r,i}}]
rmi=[rϕr,i,rrr,i,rσr,i]
被检测对象的唯一结构属性包含在RCS中,它受到许多其他因素的影响,因此,仅仅根据雷达的测量值来分类检测是否是角反射器是不可能的。
为了找到匹配的对象,需要进行粗略的初始校准,例如,用测量尺来变换估计从lidar到radar坐标系的角点位置,并消除超出预定义阈值的所有其他对象,只有留下单一点时才接受对应配准。(就是用手量呗,滤除掉不要的点,多少有些难顶,直接人工标得了
)
按如下方法获取radar对应的一组点。目标在短时间内处于静止状态,而配准关系对中插入一组lidar和radar的数据集合
r
m
i
,
l
x
l
r_{m_i},l_{x_l}
rmi,lxl,radar的方差,即RCS值用于确定目标的稳定性,RCS超过阈值就舍弃该点,因为很可能目标检测被阻碍了,否则,取平均值。此外,我们在雷达探测缺失的地方创建未对应配准的集合,用于第二个优化步骤,我们细化FoV。此后,我们将把这两组的平均值称为雷达和激光雷达测量值。(应该就是RCS过滤一部分点或者一组数据?对应的一帧radar和lidar放到vector中,是一组数据,多组就可以算RT了
)
III 两步优化
A 投影误差优化
这章有很多坐标欧式转换的公式,写的又很复杂,没必要看,文字同样也能理解。懂基本的欧式转换和Rt矩阵就行,《视觉slam十四讲》第三章里有相关知识
配对的测量准备好后,执行传感器坐标系的对齐。为了保证对来自标定目标的雷达测量值进行优化,我们进行了RCS阈值滤波。选择阈值 ζ R C S \zeta_{RCS} ζRCS接近角点最大强度 σ c \sigma_c σc,以便我们包含尽可能多的强大和可靠的雷达测量,而排除可能的异常值。
图2给出了第i对测量的重投影误差的计算。如前所述,雷达提供的测量是在没有高度的球坐标下进行的,激光雷达提供了一个点在直角坐标系。利用当前变换估计,将Lidar测量变换为radar坐标系,变成球体坐标系。忽略俯仰角,我们得到了Lidar测量驻留的弧,可以和雷达的相比。重投影误差则定义为其所在弧上点的欧氏距离。(其实就是投影到radar平面,算欧式距离,xy差的平方和
)
使用LM算法
,通过最小化N次测量的重投影误差平方和,得到校准参数的估计值。
对所描述的重投影误差进行优化,在标定参数之间产生不等的估计不确定性。也就是说,雷达平面的平移和围绕其正常旋转会导致雷达测量值的显著变化。因此,可以正确地估计参数X、Y和θz。相比之下,其余参数Z、θy和θx的变化引起雷达测量的较小变化,例如,雷达沿Z平移只引起距离测量的较小变化。因此,在第二步中对这些参数进行了细化。
由于对应配准中的滤波,数据中并没有太多的离群值。通过优化后的重投影误差检测,将剩余的异常值从数据中剔除。超过雷达精度的测量数据将被排除在数据集之外,并对剩余的测量数据再次进行优化。(迭代
)
B FoV优化
为了细化具有较高不确定性的参数,我们提出了利用RCS附加信息的第二步优化步骤。我们试图通过包含尽可能多的高RCS测量数据来拟合雷达的名义视场。RCS的定义是与雷达辐射无关的。然而,雷达是根据回波强度来估计目标的RCS,而回波强度依赖于辐射能量。雷达的固有校准确保RCS仅在其相当恒定的名义视场内被正确估计。当物体离开名义视场时,向其方向辐射的能量更少,然后导致RCS的减少,直到物体变得无法检测。这种效应被用来估计名义视场的位姿,基于RCS分布在整个激光雷达数据。
宽度为
2
ψ
f
2\psi_f
2ψf的垂直视场定义为穿过radar坐标系原点的两个平面,
P
U
,
P
D
P_U, P_D
PU,PD,仰角分别为
p
s
i
f
psi_f
psif。(up和down两个平面
)。我们提出了一种优化方案,我们定位了雷达的名义视场,使尽可能多的强反射落在其范围内,而忽略了弱反射。优化参数向量由转换参数子集和RCS阈值
c
f
=
[
r
p
z
,
l
θ
y
θ
x
ζ
R
C
S
]
c_f = [r_{p_{z,l}} \theta_y \theta_x \zeta_{RCS}]
cf=[rpz,lθyθxζRCS]组成,而其他参数保持不变。(算第一步没优化的参数
)。
转换lidar观测到radar坐标系,第i个观测的FoV误差被定义为:
(这个公式没看懂...咋两个条件一样?)
ϵ
f
,
i
(
c
f
)
=
{
0
投
影
点
在
F
o
V
且
大
于
R
C
S
阈
值
d
投
影
点
在
F
o
V
且
大
于
R
C
S
阈
值
0
投
影
点
不
在
F
o
V
且
大
于
R
C
S
阈
值
d
投
影
点
不
在
F
o
V
且
大
于
R
C
S
阈
值
\epsilon_{f,i}(c_f) = \begin{cases} 0 \ 投影点在FoV且大于RCS阈值\\ d \ 投影点在FoV且大于RCS阈值\\ 0 \ 投影点不在FoV且大于RCS阈值\\ d \ 投影点不在FoV且大于RCS阈值\\ \end{cases}
ϵf,i(cf)=⎩⎪⎪⎪⎨⎪⎪⎪⎧0 投影点在FoV且大于RCS阈值d 投影点在FoV且大于RCS阈值0 投影点不在FoV且大于RCS阈值d 投影点不在FoV且大于RCS阈值
其中
d
=
m
i
n
(
d
i
s
t
(
P
U
,
r
x
l
,
i
)
,
d
i
s
t
(
P
D
,
r
x
l
,
i
)
)
d = min(dist(P_U, r_{x_{l,i}}), dist(PD, r_{x_{l,i}}))
d=min(dist(PU,rxl,i),dist(PD,rxl,i))
只有当激光雷达测量在视场范围内时,误差才大于零,反之亦然。函数dist(P, x)被定义为平面P到点x的无符号距离。标定参数的估计值可通过cost函数最小化得到。
cost函数相对于RCS阈值的依赖性是离散的,因为阈值的变化不会影响成本函数,直到至少有一个测量落在或离开FoV。这导致许多局部极小值和内点方法被用于优化,因为它被发现能够收敛在大多数分析的情况下。
个人总结
后面的实验也就不用写了。总结一下,基本每一步都用到了RCS值做滤波,雷达的这个信号还是蛮关键的。
先找到每帧radar和lidar对用的配准点,是一个集合,算出转换矩阵。然后对转换矩阵做两步优化,第一步是lidar2radar投影之后计算所有帧的欧式距离差,使之平方和最小,这步优化的是(x,y,θz)。第二步是高强度RCS组成一个FoV,lidar2radar投影之后算点到垂直视角场上下两个平面的距离,使之平方和最小,这步优化的是(z,θx,θy)。
第一步投影之后计算距离差个人觉得很有用,优化应该也挺有效果,可以剔除一些噪点,使标定结果更准确,同时也在想,这个是不是可以作为一个标定的评价标准来使用;第二步说实话没太看懂,希望懂的大佬多指教多交流。有缘更新。
标签:目标,Calibration,Extrinsic,校准,标定,LiDAR,雷达,RCS,激光雷达 来源: https://blog.csdn.net/weixin_43152152/article/details/118310150