【学习记录】激光雷达与相机标定

本文仅用于个人纪录。

激光雷达与相机标定

基本原理即寻找雷达和相机的对应点,然后求解外参RT问题。
难点在于,如何进行数据关联,即雷达和普通相机的电如何确定对参数的约束方程?

手工标定法

一类方法手工标定对应点,即从点云中和图像中人工点击对应的点,然后进行计算。例如:https://github.com/zhenzhenxiang/autoware_camera_lidar_calibrator

自动法(特征提取与配准)

一类典型的方法是从LiDAR和普通相机中提取特征点,然后做3D和2D的标定,但这种方法精度不高。因此出现了一些3D和3D的对准。

另一类自动提取采用简单的特征,进行精确关联,然后3D配准,例如:

LiDAR-Camera Calibration using 3D-3D Point correspondences
官方公布的代码:https://github.com/ankitdhall/lidar_camera_calibration

或利用棋盘格角点检测,进行精确的关联,例如棋盘格不同的反射率找角点:

Reflectance Intensity Assisted Automatic and Accurate Extrinsic Calibration of 3D LiDAR and Panoramic Camera Using a Printed Chessboard
https://github.com/mfxox/ILCC

或者利用棋盘提取边缘特征,然后进行直线/平面的约束配准,例如:

Automatic Extrinsic Calibration of a Camera and a 3D LiDAR using Line and Plane
其他人复现的代码:https://github.com/farhad-dalirani/extrinsic_calibration-of_a_camera_and_a_3d_lidar_using_line_and_plane_correspondences

或者更加自然的场景,例如纸箱:

Accurate Calibration of LiDAR-Camera Systems Using Ordinary Boxes

或者其他更加自然的场景。略掉了一堆基于learning的配准。

Zhou18IROS的方法

  1. 提取棋盘格边界和平面在LiDAR系下的参数:
    首先用ransac提取出平面参数,然后寻找平面的大致边界点,可以区分出棋盘格的左右,再通过两边界点之间的方向确定一侧的点对应的两条边;
    为避免噪声,将实测的点投影到平面后再投影到对应的一行水平扫描线,从而确定精确的边界线。四条边记为 L i j L L_ij^L LijL,即第i个位姿的第j条边,在L系下的坐标,以及平面法向量 n i L n_i^L niL
  2. 提取棋盘格边界和平面在Camera系下的参数:
    首先棋盘格参数已知,可以计算棋盘格空间平面;再根据棋盘格边界在图像中的直线,投影到三维空间与棋盘格平面求交线,确定三维参数,四条边与法向量记作 L i j C , n i L L_ij^C, n_i^L LijC,niL
  3. 求解外参
    求解外参是基于约束,计算从LiDAR到Camera的旋转 R L C R_L^C RLC 和平移 t L C t_L^C tLC
    基于边的约束: R L C d i j L = d i j C R_L^C d_{ij}^L=d_{ij}^C RLCdijL=dijC ( I − d i j C ( d i j C ) T ) ( R L C Q i j k L + t L C − P i j C ) = 0 3 × 3 (I-d_{ij}^C(d_{ij}^C)^T) (R_L^C Q_{ijk}^L+t_L^C-P_{ij}^C)=0_{3\times3} (IdijC(dijC)T)(RLCQijkL+tLCPijC)=03×3 其中d为空间直线上的法向量。第一个式子就是法向量的旋转,二式中Q_ijk是LiDAR下边界上一点,经过平移旋转后做差应该是Camera下棋盘格的边界线,与左侧相乘是另一个约束(但没搞清楚具体的约束含义是啥)。
    同理,可以计算法向量的约束
    在这里插入图片描述
    作者后续给出证明,平行的两条线的约束本质上是一样的,且一个pose给出的约束足够计算Rt参数。但还给出了多个pose的基于SVD分解的求解方法,能够实现更高的精度。

Dhall17Arxiv的方法

在这里插入图片描述
直接利用3D点进行类似ICP的配准。其中camera的3D点是通过aruco计算出来,LiDAR的是寻找卡片的角点,以实现DA。具体过程略。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值