【论文理解】Pixel-level Extrinsic Calibration LiDAR and Camera

Pixel-level Extrinsic Self Calibration of High Resolution LiDAR and Camera in Targetless Environments

无目标环境中高分辨率激光雷达和相机的像素级外参估计

摘要

Our approach does not require checkerboards but can achieve pixel-level accuracy by aligning natural edge features in the two sensors. On the theory level, we analyze the constraints imposed by edge features and the sensitivity of calibration accuracy with respect to edge distribution in the scene. On the implementation level, we carefully investigate the physical measuring principles of LiDARs and propose an efficient and accurate LiDAR edge extraction method based on point cloud voxel cutting and plane fitting.

  • 优点:无需目标棋盘格,像素级精度,室内外均可用
  • 方法:基于高分辨率的雷达和相机的边缘特征,雷达是点云体素分割和平面拟合,相机是canny边缘检测,最小化重投影误差
  • 理论:边缘特征的约束,场景边缘特征分布对外参估计的敏感性

引言

需求:dense point cloud mapping, colorization, and accurate and automated 3D surveying.

批判:提前准备标定物,雷达本身的噪点,稀疏,导致代价函数不稳定,远距离的场景导致标定误差变大。

自夸:解决批判的问题,随时随地可以标定,像素级效果。

贡献:

  • 我们仔细研究了激光雷达的底层测量原理,发现常用的深度不连续边缘特征对于校准来说既不准确也不可靠。我们提出了一种新颖且可靠的深度连续边缘提取算法,可以产生更准确的校准参数
  • 我们评估我们的方法和在各种室内和室外环境中实施的鲁棒性、一致性和准确性,并将我们的方法与其他最先进的方法进行比较。结果表明,我们的方法对初始条件具有鲁棒性,与标定场景一致,并且在自然环境中实现了像素级标定精度。我们的方法的精度与基于目标的方法相当(有时甚至更好),并且适用于新兴固态和传统旋转激光雷达
  • 开源。

文献综述

基于目标:几何实体,棋盘格,有典型的坐标和特征,需要准备;

  • 几何实体[9]-[11]和棋盘格[4]-[6]已广泛应用于基于目标的方法;

[9] J. Kummerle and T. Kuhner. Unified intrinsic and extrinsic camera and lidar calibration under uncertainties. 2020 IEEE International Conference on Robotics and Automation (ICRA), 2020.

[10] X. Gong, Y. Lin, and J. Liu. 3d lidar-camera extrinsic calibration using an arbitrary trihedron. Sensors, 13(2):1902–1918, 2013.

[11] Y. Park, S. Yun, C. Won, K. Cho, K. Um, and S. Sim. Calibration between color camera and 3d lidar instruments with a polygonal planar board. Sensors, 14(3):5333–5353, 2014.

[4] J. Cui, J. Niu, Z. Ouyang, Y. He, and D. Liu. Acsc: Automatic calibration for non-repetitive scanning solid-state lidar and camera systems, 2020.

[5] G. Koo, J. Kang, B. Jang, and N. Doh. Analytic plane covariances construction for precise planarity-based extrinsic calibration of camera and lidar. 2020 IEEE International Conference on Robotics and Automation (ICRA), 2020.

[6] L. Zhou, Z. Li, and M. Kaess. Automatic extrinsic calibration of a camera and a 3d lidar using line and plane correspondences. 2018 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS), 2018.

无目标:

  • LiDAR 点首先投影到图像平面上,并根据深度和反射率值着色。然后从该颜色图中提取 2D 边缘并与从图像中获得的边缘进行匹配。
  • 通过最大化色彩图和图像之间的互信息来优化外在校准。
  • 通过激光束深度不连续性从点云中检测并提取 3D 边缘。然后将 3D 边缘反投影到 2D 图像平面上以计算残差。边缘估计的准确性限制了该方法,因为激光点并不严格落在深度不连续边缘上。
  • 外在因素是根据传感器的运动估计的,并通过外观信息进行细化。这种基于运动的校准通常需要传感器沿着足够的激励轨迹移动

作者:

  • we directly extract 3D edge features in the point cloud, which suffer from no occlusion problem.
  • we use depth-continuous edges, which proved to be more accurate and reliable.
  • Our method works for a single pair LiDAR scan and achieves calibration accuracy comparable to target-based methods.

方法

A. 概述

雷达坐标系,相机坐标系,像素坐标系之间的关系如下图所示. L C T = ( L C R , L C t ) ∈ S E ( 3 ) {}_{L}^{C}\mathbf{T}=(_L^C\mathbf{R},_L^C\mathbf{t})\in SE(3) LCT=(LCR,LCt)SE(3) ,表示雷达到相机之间的坐标转换,也可以表示雷达在相机坐标系下的坐标;基于室内室外的边缘特征实现估计这个 L C T {}_{L}^{C}\mathbf{T} LCT

LiDAR位姿相对于相机的以下自由度(DoF)无法区分:

由边缘特征施加的约束。蓝线代表 3D 边缘,其到图像平面(灰色平面)的投影产生相机测量值(红线)。沿 C 轴或 D 轴平移或绕 A 轴(即边缘本身)或 B 轴旋转(边缘穿过相机原点时除外)后,边缘仍保留在同一黄色平面上,因此在像平面上有相同的投影。这意味着,边缘上的这四个pose变换是不可区分的。
在这里插入图片描述

B. Edge Extraction and Matching

提取

  • 点云投影到图像平面并从投影的点云中提取特征,例如边缘提取[12]和互信息相关性[13]。

    ​ 问题:

    点投影后特征提取的一个主要问题是遮挡引起的多值和零值映射。

    • 如图(a),如果相机位于激光雷达上方,则区域A由于遮挡而被相机观察到,而激光雷达观察不到,导致该区域投影后没有点(零值映射,间隙A区,图3(b))。
    • B区域是激光雷达观测到的,而不是相机观测到的,该区域内的点(图3(a)中的红点)投影后会干扰其前景点(图3(a)中的黑点)的投影。 3(a))。结果,前景和背景的点将对应于相同的图像区域(多值映射,区域B,图3(b))。
    • 这些现象对于低分辨率的 LiDAR 可能并不显着 [13],但随着 LiDAR 分辨率的增加而变得明显(见图 3(b))。在投影点云上提取特征并将其与图像特征进行匹配(例如[13])会遇到这些基本问题,并导致边缘提取和校准中出现重大错误。

在这里插入图片描述

  • 因此直接在点云上提取这些特征,而不是投影之后进行特征提取

    问题:

    基于深度不连续的方法:方便提取但是对于精度较高的雷达,不稳定且不准确

    分析原因:

    前景膨胀:实际的激光脉冲并不是一个理想的点,而是具有一定发散角(即光束发散角)的光束。当从前景物体扫描到背景物体时,部分激光脉冲被前景物体反射,而剩余的激光脉冲被背景反射,产生两个反射脉冲到激光接收器。在前景物体反射率较高的情况下,由第一个脉冲引起的信号将占主导地位,即使光束中心线偏离前景物体,这也会导致前景物体的假点超出实际边缘(最左边的黄点)如图5(a))。

    出血点:在前景物体靠近背景的情况下,两个脉冲产生的信号会结合在一起,集总信号将导致一组连接前景和背景的点(称为出血点,即图 1 中的黄色点)。 5(a))。这两种现象会错误地使前景物体膨胀,并导致边缘提取(图5(b))和校准出现明显错误。

    基于深度连续的方法:

    1. 体素划分:室内0.5m,室内1m;
    2. 对于每一个体素进行RANSAC实现平面的拟合和提取;
    3. 保留连接并形成一定范围内(例如,[30°,150°])角度的平面对,并求解平面相交线(即深度连续边)。
    4. 这些线在体素内彼此垂直或平行。此外,通过正确选择体素大小,我们甚至可以提取弯曲的边缘。

在这里插入图片描述

  • 图像边缘检测使用canny实现
    • 边缘的提取放在k-D的二维的

匹配:

将雷达中边缘中采样,每一个点使用初始转换矩阵转换到相机坐标系下;
C P i = L C T ( L P i ) ∈ R 3 ;   p i = f ( C p i ) \begin{equation} {}^{C}\mathbf{P}_{i}={}_{L}^{C}\mathbf{T}({}^{L}\mathbf{P}_{i})\in\mathbb{R}^{3};\ \mathbf{p}_i=\mathbf{f}(^C\mathbf{p}_i) \end{equation} CPi=LCT(LPi)R3; pi=f(Cpi)
根据这个pi寻找像素中的2-D树中的最近邻像素,得到k最近邻的点,计算对应的均值和方差
q i = 1 κ ∑ j = 1 κ q i j ; S i = ∑ j = 1 κ ( q i j − q i ) ( q i j − q i ) T \begin{equation} \mathbf{q}_i=\frac{1}{\kappa}\sum_{j=1}^\kappa\mathbf{q}_i^j;\quad\mathbf{S}_i=\sum_{j=1}^\kappa(\mathbf{q}_i^j-\mathbf{q}_i)(\mathbf{q}_i^j-q_i)^T \end{equation} qi=κ1j=1κqij;Si=j=1κ(qijqi)(qijqi)T
这样的话,根据 Q i = { q i j ; j = 1 , 2 , 3... κ } Q_i = \{ q_i^j;j = 1,2,3...{\kappa} \} Qi={qij;j=1,2,3...κ} 表示的直线包含参数为线上的点 q i q_i qi和法向量 n i n_i ni来表示。这个法向量对应S_i的最小特征值对应的特征向量;

另外将边缘方向投影到图像平面并验证其相对于ni的正交性。当两条非平行线在图像平面中彼此靠近时,这可以有效地消除错误匹配。

C. 外参校准

相机产生的测量噪声较为简单,认为1.5的标准差;

对于雷达
ω i g t = ω i ⊞ S 2 δ ω i ≜ e ⌊ N ( ω i ) δ ω i × ⌋ ω i \begin{equation} \omega_i^\mathrm{gt}=\omega_i\boxplus_{\mathbb{S}^2}\delta_{\boldsymbol{\omega}_i}\triangleq e^{\lfloor\mathbf{N}(\boldsymbol{\omega}_i)\boldsymbol{\delta}_{\boldsymbol{\omega}_i}\times\rfloor}\omega_i \end{equation} ωigt=ωiS2δωieN(ωi)δωi×ωi

d i g t = d i + δ d i \begin{equation} d_i^\mathrm{gt}=d_i+\delta_{d_i} \end{equation} digt=di+δdi

二者结合
L P i g t = d i g t ω i g t = ( d i + δ d i ) ( ω i ⊞ S 2 δ ω i ) ≈ d i ω i ⏟ L P i + ω i δ d i − d i ⌊ ω i × ⌋ N ( ω i ) δ ω i ⏟ L W i \begin{equation} \begin{aligned} {}^{L}\mathbf{P}_{i}^{\mathrm{gt}}& =d_i^\mathrm{gt}\omega_i^\mathrm{gt}=(d_i+\delta_{d_i})\left(\omega_i\boxplus_{\mathbb{S}^2}\delta_{\boldsymbol{\omega}_i}\right) \\ &\approx\underbrace{d_{i}\omega_{i}}_{L_{\mathbf{P}_{i}}}+\underbrace{\omega_{i}\delta_{d_{i}}-d_{i}\lfloor\omega_{i}\times\rfloor\mathbf{N}(\omega_{i})\delta_{\omega_{i}}}_{L_{\mathbf{W}_{i}}} \end{aligned} \end{equation} LPigt=digtωigt=(di+δdi)(ωiS2δωi)LPi diωi+LWi ωiδdidiωi×N(ωi)δωi
得到雷达的测量噪声模型
L w i = [ ω i − d i ⌊ ω i × ⌋ N ( ω i ) ] ⏟ A i [ δ d i δ ω i ] ∼ N ( 0 , L Σ i ) , L Σ i = A i [ Σ d i 0 1 × 2 0 2 × 1 Σ ω i ] A i T . \begin{equation} \begin{aligned}&{}^{L}\mathbf{w}_{i}=\underbrace{\begin{bmatrix}\boldsymbol{\omega}_{i}&-d_{i}\lfloor\boldsymbol{\omega}_{i}\times\rfloor\mathbf{N}(\boldsymbol{\omega}_{i})\end{bmatrix}}_{\mathbf{A}_{i}}\begin{bmatrix}\delta_{d_{i}}\\\delta_{\boldsymbol{\omega}_{i}}\end{bmatrix}\sim\mathcal{N}(\mathbf{0},{}^{L}\Sigma_{i}),\\&{}^{L}\mathbf{\Sigma}_{i}=\mathbf{A}_{i}\begin{bmatrix}\Sigma_{d_{i}}&\mathbf{0}_{1\times2}\\\mathbf{0}_{2\times1}&\Sigma_{\boldsymbol{\omega}_{i}}\end{bmatrix}\mathbf{A}_{i}^{T}.\end{aligned} \end{equation} Lwi=Ai [ωidiωi×N(ωi)][δdiδωi]N(0,LΣi),LΣi=Ai[Σdi02×101×2Σωi]AiT.
校准模型和优化
0 = n i T ( f ( π ( L C T ( L P i + L w i ) ) ) − ( q i + I w i ) ) \begin{equation} 0=\mathbf{n}_i^T\left(\mathbf{f}\big(\pi\big(_L^C\mathbf{T}\big(^L\mathbf{P}_i+^L\mathbf{w}_i\big)\big)\big)-\big(\mathbf{q}_i+^I\mathbf{w}_i\big)\right) \end{equation} 0=niT(f(π(LCT(LPi+Lwi)))(qi+Iwi))
使用优化的方式进行优化
L C T = L C T ˉ ⊞ S E ( 3 ) δ T ≜ E x p ( δ T ) ⋅ L C T ˉ \begin{equation} _L^C\mathbf{T}=_L^C\bar{\mathbf{T}}\boxplus_{SE(3)}\delta\mathbf{T}\triangleq\mathrm{Exp}(\delta\mathbf{T})\cdot_L^C\bar{\mathbf{T}} \end{equation} LCT=LCTˉSE(3)δTExp(δT)LCTˉ

δ T = [ δ θ δ t ] ∈ R 6 ; E x p ( δ T ) = [ e ⌊ δ θ × ⌋ δ t 0 1 ] ∈ S E ( 3 ) \begin{equation} \delta\mathbf{T}=\begin{bmatrix}\delta\boldsymbol{\theta}\\\delta\mathbf{t}\end{bmatrix}\in\mathbb{R}^6; \mathrm{Exp}(\delta\mathbf{T})=\begin{bmatrix}e^{\lfloor\delta\boldsymbol{\theta}\times\rfloor}&\delta\mathbf{t}\\0&1\end{bmatrix}\in SE(3) \end{equation} δT=[δθδt]R6;Exp(δT)=[eδθ×0δt1]SE(3)

将其使用一阶近似,写成残差和雅可比的形式
0 = n i T ( f ( π ( L C T ( L P i + L w i ) ) ) − ( q i + I w i ) ) ≈ r i + J T i δ T + J w i w i \begin{equation} \begin{aligned}0&=\mathbf{n}_{i}^{T}\left(\mathbf{f}\big(\pi\big(_{L}^{\mathbf{C}}\mathbf{T}\big(^{L}\mathbf{P}_{i}+^{L}\mathbf{w}_{i}\big)\big)\big)-\big(\mathbf{q}_{i}+^{I}\mathbf{w}_{i}\big)\right)\\&\approx\mathbf{r}_{i}+\mathbf{J}_{\mathbf{T}_{i}}\delta\mathbf{T}+\mathbf{J}_{\mathbf{w}_{i}}\mathbf{w}_{i}\end{aligned} \end{equation} 0=niT(f(π(LCT(LPi+Lwi)))(qi+Iwi))ri+JTiδT+Jwiwi
对应的雅可比
r i = n i T ( f ( π ( L C T ˉ ( L P i ) ) ) − q i ) ∈ R J T i = n i T ∂ f ( p ) ∂ p ∂ π ( P ) ∂ P [ − ⌊ ( L C T ˉ ( L P i ) ) × ⌋ I ] ∈ R 1 × 6 J W i = [ n i T ∂ f ( p ) ∂ p ∂ π ( P ) ∂ P C L R ˉ − n i T ] ∈ R 1 × 5 W i = [ L W i I W i ] ∈ N ( 0 , Σ i ) , Σ i = [ L Σ i 0 α I Σ ] ∈ R 5 × 5 \begin{equation} \begin{aligned} &\mathbf{r}_{i}&& =\mathbf{n}_{i}^{T}\left(\mathbf{f}\big(\pi\big(_{L}^{C}\bar{\mathbf{T}}(^{L}\mathbf{P}_{i})\big)\big)-\mathbf{q}_{i}\right)\in\mathbb{R} \\ &\mathbf{J}_{\mathbf{T}_{i}}&& =\mathbf{n}_{i}^{T}\frac{\partial\mathbf{f}(\mathbf{p})}{\partial\mathbf{p}}\frac{\partial\pi(\mathbf{P})}{\partial\mathbf{P}}\left[-\lfloor(_{L}^{C}\bar{\mathbf{T}}(^{L}\mathbf{P}_{i}))\times\rfloor\quad\mathbf{I}\right]\in\mathbb{R}^{1\times6} \\ &\mathbf{J}_{\mathbf{W}_{i}}&& =\left[\mathbf{n}_{i}^{T}\frac{\partial\mathbf{f}(\mathbf{p})}{\partial\mathbf{p}}\frac{\partial\boldsymbol{\pi}(\mathbf{P})}{\partial\mathbf{P}}\frac{C}{L}\bar{\mathbf{R}}\quad-\mathbf{n}_{i}^{T}\right]\in\mathbb{R}^{1\times5} \\ &\mathbf{W}_{i}&& =\begin{bmatrix}L_{\mathbf{W}_i}\\I_{\mathbf{W}_i}\end{bmatrix}\in\mathcal{N}(\mathbf{0},\boldsymbol{\Sigma}_i),\boldsymbol{\Sigma}_i=\begin{bmatrix}L\boldsymbol{\Sigma}_i&\boldsymbol{0}\\\boldsymbol{\alpha}&I\boldsymbol{\Sigma}\end{bmatrix}\in\mathbb{R}^{5\times5} \end{aligned} \end{equation} riJTiJWiWi=niT(f(π(LCTˉ(LPi)))qi)R=niTpf(p)Pπ(P)[(LCTˉ(LPi))×I]R1×6=[niTpf(p)Pπ(P)LCRˉniT]R1×5=[LWiIWi]N(0,Σi),Σi=[LΣiα0IΣ]R5×5
进行移动
v ≜ − J w w = r + J T δ T ∼ N ( 0 , J w Σ J w T ) . \begin{equation} \mathbf{v\triangleq-J_w w=r+J_T\delta T\sim\mathcal{N}(0,J_w\Sigma J_w^T)}. \end{equation} vJww=r+JTδTN(0,JwΣJwT).
那么最大似然估计,
max ⁡ δ T log ⁡ p ( v ; δ T ) = max ⁡ δ T log ⁡ e − 1 2 v T ( J w Σ J w T ) − 1 v ( 2 π ) N det ⁡ ( J w Σ J w T ) = min ⁡ δ T ( r + J T δ T ) T ( J w Σ J w T ) − 1 ( r + J T δ T ) \begin{equation} \begin{aligned} &\max_{\delta\mathbf{T}}\log p(\mathbf{v};\delta\mathbf{T})=\max_{\delta\mathbf{T}}\log\frac{e^{-\frac{1}{2}\mathbf{v}^{T}\left(\mathbf{J}_{\mathbf{w}}\boldsymbol{\Sigma}\mathbf{J}_{\mathbf{w}}^{T}\right)^{-1}\mathbf{v}}}{\sqrt{(2\pi)^{N}\det\left(\mathbf{J}_{\mathbf{w}}\boldsymbol{\Sigma}\mathbf{J}_{\mathbf{w}}^{T}\right)}} \\ &=\min_{\delta\mathbf{T}}(\mathbf{r}+\mathbf{J}_{\mathbf{T}}\delta\mathbf{T})^{T}\left(\mathbf{J}_{\mathbf{w}}\mathbf{\Sigma}\mathbf{J}_{\mathbf{w}}^{T}\right)^{-1}(\mathbf{r}+\mathbf{J}_{\mathbf{T}}\delta\mathbf{T}) \end{aligned} \end{equation} δTmaxlogp(v;δT)=δTmaxlog(2π)Ndet(JwΣJwT) e21vT(JwΣJwT)1v=δTmin(r+JTδT)T(JwΣJwT)1(r+JTδT)
得到优化的解
δ T ∗ = − ( J T T ( J w Σ J w T ) − 1 J T ) − 1 J T T ( J w Σ J w T ) − 1 r \begin{equation} \delta\mathbf{T}^{*}=-\left(\mathbf{J}_{\mathbf{T}}^{T}\left(\mathbf{J}_{\mathbf{w}}\mathbf{\Sigma}\mathbf{J}_{\mathbf{w}}^{T}\right)^{-1}\mathbf{J}_{\mathbf{T}}\right)^{-1}\mathbf{J}_{\mathbf{T}}^{T}\left(\mathbf{J}_{\mathbf{w}}\mathbf{\Sigma}\mathbf{J}_{\mathbf{w}}^{T}\right)^{-1}\mathbf{r} \end{equation} δT=(JTT(JwΣJwT)1JT)1JTT(JwΣJwT)1r
进而更新这个pose
L C T ˉ ← L C T ˉ ⊞ S E ( 3 ) δ T ∗ . \begin{equation} _L^C\bar{\mathbf{T}}\leftarrow_L^C\bar{\mathbf{T}}\boxplus_{SE(3)}\delta\mathbf{T}^*. \end{equation} LCTˉLCTˉSE(3)δT.
校准的不确定性

根据10表达式,两边乘以 J T T ( J w Σ J w T ) − 1 \mathbf{J}_{\mathbf{T}}^{T}\left(\mathbf{J}_{\mathbf{w}}\mathbf{\Sigma}\mathbf{J}_{\mathbf{w}}^{T}\right)^{-1} JTT(JwΣJwT)1 ,然后求解出 δ T \delta\mathbf{T} δT得到
δ T ≈ − ( J T T ( J w Σ J w T ) − 1 J T ) − 1 J T T ( J w Σ J w T ) − 1 r ⏟ δ T ∗ − ( J T T ( J w Σ J w T ) − 1 J T ) − 1 J T T ( J w Σ J w T ) − 1 J w w ∼ N ( δ T ∗ , ( J T T ( J w Σ J w T ) − 1 J T ) − 1 ) \begin{equation} \begin{aligned} \delta^{\mathrm{T}}& \approx\underbrace{-\left(\mathbf{J}_{\mathbf{T}}^{T}\left(\mathbf{J}_{\mathbf{w}}\mathbf{\Sigma}\mathbf{J}_{\mathbf{w}}^{T}\right)^{-1}\mathbf{J}_{\mathbf{T}}\right)^{-1}\mathbf{J}_{\mathbf{T}}^{T}\left(\mathbf{J}_{\mathbf{w}}\mathbf{\Sigma}\mathbf{J}_{\mathbf{w}}^{T}\right)^{-1}\mathbf{r}}_{\delta\mathbf{T}^{*}} \\ &-\left(\mathbf{J}_{\mathrm{T}}^{T}\left(\mathbf{J}_{\mathrm{w}}\mathbf{\Sigma}\mathbf{J}_{\mathrm{w}}^{T}\right)^{-1}\mathbf{J}_{\mathrm{T}}\right)^{-1}\mathbf{J}_{\mathrm{T}}^{T}\left(\mathbf{J}_{\mathrm{w}}\mathbf{\Sigma}\mathbf{J}_{\mathrm{w}}^{T}\right)^{-1}\mathbf{J}_{\mathrm{w}}\mathbf{w} \\ &\sim\mathcal{N}\left(\delta\mathbf{T}^{*},\left(\mathbf{J}_{\mathbf{T}}^{T}\left(\mathbf{J}_{\mathbf{w}}\mathbf{\Sigma}\mathbf{J}_{\mathbf{w}}^{T}\right)^{-1}\mathbf{J}_{\mathbf{T}}\right)^{-1}\right) \end{aligned} \end{equation} δTδT (JTT(JwΣJwT)1JT)1JTT(JwΣJwT)1r(JTT(JwΣJwT)1JT)1JTT(JwΣJwT)1JwwN(δT,(JTT(JwΣJwT)1JT)1)
这个协方差可以表示外参校准的不确定性

D. 校准的边缘分布分析

(12)中的雅可比 J T i J_{T_i} JTi表示残差对于外在变化的敏感性。在边缘特征非常少或分布不良的情况下, J T i J_{T_i} JTi 可能非常小,导致估计不确定性(协方差)很大,如(16)所示。从这个意义上说,数据质量由(16)中的协方差矩阵自动定量编码。在实践中,在数据收集之前对校准场景进行快速、粗略的评估通常很有用。这可以通过分析推导雅可比 J T i J_{T_i} JTi来实现。忽略畸变模型,将针孔投影模型π(·)代入式(11),得到
J T i = n i T [ − f x X i Y i Z i 2 f x + f x X i 2 Z i 2 − f x Y i Z i f x Z i 0 − f x X i Z i 2 − f y − f y Y i 2 Z i 2 f y X i Y i Z i 2 f y X i Z i 0 f y Z i − f y Y i Z i 2 ] \begin{equation} \mathbf{J}_{T_i}=\mathbf{n}_i^T\begin{bmatrix}\frac{-f_xX_iY_i}{Z_i^2}&f_x+\frac{f_xX_i^2}{Z_i^2}&\frac{-f_xY_i}{Z_i}&\frac{f_x}{Z_i}&0&-\frac{f_xX_i}{Z_i^2}\\-f_y-\frac{f_yY_i^2}{Z_i^2}&\frac{f_yX_iY_i}{Z_i^2}&\frac{f_yX_i}{Z_i}&0&\frac{f_y}{Z_i}&\frac{-f_yY_i}{Z_i^2}\end{bmatrix} \end{equation} JTi=niT Zi2fxXiYifyZi2fyYi2fx+Zi2fxXi2Zi2fyXiYiZifxYiZifyXiZifx00ZifyZi2fxXiZi2fyYi
说明,图像中的边缘特征要分布均匀一些,同时深度适中使得这个矩阵大一些,使得不确定性小一些;

E. 初始化和粗校准

需要给出一个初值最大化下面的值即可,每次给定范围内的旋转0.5°和平移2cm
P . C . = N m a t c h N s u m \begin{equation} P.C.=\frac{N_{match}}{N_{sum}} \end{equation} P.C.=NsumNmatch

实验和分析

雷达:Avia 和D435i,大约20s即可累积足够的点

这些初始值是在从 CAD 模型获得的值的邻域(旋转 ±5° 和 ±10cm)中随机采样的。耗时不到60s

稳健性验证,准确性验证,交叉验证,比较实验

不好的场景

  • 当场景包含所有圆柱形对象时。由于边缘提取是基于平面拟合的,圆形物体会导致边缘提取不准确。此外,圆柱形物体也会产生视差问题,从而降低校准精度。
  • 其次是场景中边缘分布不均匀。例如,大部分边缘分布在图像的上部,这形成了较差的约束,很容易受到测量噪声的影响。
  • 当场景仅包含沿一个方向(例如垂直)的边缘时,其中约束不足以唯一地确定外部参数。

在这里插入图片描述

通用性

除了 Livox Avia 之外,我们的方法还可以应用于传统的多线旋转激光雷达,由于重复扫描,其在静止时具有较低的分辨率。

  • 为了提高扫描分辨率,可以稍微移动激光雷达(例如,小的俯仰运动),以便填充扫描线之间的间隙。
  • LiDAR(惯性)里程计可用于跟踪 LiDAR 运动并将所有点注册到其初始姿态,从而实现更高分辨率的扫描,从而能够使用我们的方法。

实际操作流程

  • 雷达的是否是稠密的,如果不是需要累积点云地图,累积的方式可以是FASTLIO或者直接提取;
  • 选择合适的场景,不能太近,也不能太远,特征分布要均匀在整个图像中,使得在x,y,z三个方向都有约束,场景不要太杂乱,不要有圆柱场景;
  • 最好是几个箱子,正对着雷达和相机;
  • 相机标定可以使用matlab或者calib开源库,注意畸变参数书写方式为 [ k 1 , k 2 , p 1 , p 2 , k 3 ] [k1,k2,p1,p2,k3] [k1,k2,p1,p2,k3](opencv格式);
  • 这些初始值是在从 CAD 模型获得的值的邻域(旋转 ±5° 和 ±10cm)中随机采样的,或者采取默认值;

文章参考

  1. https://arxiv.org/abs/2103.01627
  • 10
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值