3、激光雷达标定基础:标定的意义与目标、标定板设计、内参标定(激光雷达自身)、外参标定(激光雷达与车体/其他传感器)

3.1 标定的意义与目标

在自动驾驶系统中,激光雷达作为核心的3D环境感知传感器,其输出的点云数据必须与物理世界建立精确的映射关系。标定的核心意义在于消除传感器自身的制造误差以及多传感器之间的空间不一致性,从而保证感知算法(如目标检测、SLAM、融合)的输入数据是准确且对齐的。

标定的主要目标包括:

  • 几何一致性: 确保点云中每个点的三维坐标能够真实反映其在世界坐标系中的位置,消除由于激光雷达内部机械或光学偏差导致的点云畸变。
  • 多传感器对齐: 将激光雷达坐标系与车体坐标系、相机坐标系、IMU坐标系等统一,使得不同传感器的数据可以在同一空间参考系下进行融合。
  • 时间同步: 虽然标定主要解决空间问题,但通常需要结合时间戳对齐,确保标定过程中采集的数据来自同一时刻。

3.2 标定板设计

标定板是进行激光雷达标定的关键物理工具,其设计直接影响特征提取的精度和鲁棒性。针对激光雷达(尤其是机械旋转式或固态式),标定板设计需考虑以下要素:

设计要素 要求与说明
几何形状 常用矩形、圆形或棋盘格。矩形板便于提取边缘和角点;圆形板(如圆形靶标)可提供稳定的圆心特征。
尺寸与厚度 尺寸需足够大(如1m x 1m),以确保在远距离(10-30m)仍有足够点云覆盖。厚度应均匀,避免边缘弯曲导致点云畸变。
表面材质 采用高反射率(如白色亚光漆)与低反射率(如黑色哑光)的对比区域,以增强激光雷达回波强度差异,便于分割。
边缘锐利度 边缘必须平直且锐利,避免倒角,以保证点云中边缘点的提取精度。
多角度适应性 标定板应能稳定放置于不同俯仰角和偏航角下,通常配合三脚架或固定支架使用。

典型设计示例: 采用黑白相间的棋盘格标定板(如6x4格),每个格子尺寸为20cm x 20cm。黑色区域吸收激光,白色区域反射激光,从而在点云中形成清晰的强度梯度,便于提取角点。


3.3 内参标定(激光雷达自身)

内参标定旨在校正激光雷达内部固有的系统误差,包括激光发射器与接收器的对准偏差、旋转机构(对于机械式)的轴心偏移、以及各激光通道的俯仰角与水平角偏差。

主要标定参数:

  • 距离偏移(Range Offset): 由于电子延迟或光路长度差异导致的测距系统误差。
  • 水平角偏移(Azimuth Offset): 每个激光通道在水平旋转方向上的角度偏差。
  • 俯仰角偏移(Elevation Offset): 每个激光通道在垂直方向上的角度偏差。
  • 旋转轴倾斜(Axis Misalignment): 旋转轴与理想垂直轴之间的微小倾斜角。

标定方法(基于平面约束):

  1. 数据采集: 将激光雷达固定,在多个不同距离和角度下,采集标定板(或已知平面)的点云数据。
  2. 特征提取: 从点云中提取平面点集,并拟合平面方程。
  3. 优化求解: 构建最小二乘问题,最小化所有点云点到拟合平面的距离残差。优化变量即为上述内参参数。

代码示例(伪代码,基于平面约束的优化):

import numpy as np
from scipy.optimize import least_squares

def residual_function(params, points, plane_normals):
    # params: [range_offset, azimuth_offset, elevation_offset, ...]
    # 对每个点应用内参校正
    corrected_points = apply_intrinsic_correction(points, params)
    # 计算点到平面的距离
    distances = np.abs(np.dot(corrected_points, plane_normals.T))
    return distances.flatten()

# 假设已有标定板点云和对应平面法向量
initial_params = np.zeros(4)  # 初始内参偏差为0
result = least_squares(residual_function, initial_params, 
                       args=(lidar_points, plane_normals))
calibrated_params = result.x

3.4 外参标定(激光雷达与车体/其他传感器)

外参标定解决的是激光雷达坐标系与其他坐标系(如车体坐标系、相机坐标系)之间的刚体变换关系,即旋转矩阵 R 和平移向量 t

3.4.1 激光雷达与车体标定

目标: 将激光雷达坐标系下的点云转换到车体坐标系(通常以车辆后轴中心或IMU位置为原点)。

方法:

  • 基于标定板: 将标定板放置在已知车体坐标系的特定位置(如车辆正前方、侧方),通过提取标定板在激光雷达坐标系下的位姿,与车体坐标系下的已知位姿进行匹配,求解外参。
  • 基于自然特征: 利用车辆自身的对称结构(如车头、车尾平面)或地面平面,通过点云拟合与车体几何约束进行优化。

3.4.2 激光雷达与相机标定

目标: 求解激光雷达坐标系到相机坐标系的变换,实现点云与图像的像素级融合。

方法(基于共视标定板):

  1. 数据采集: 同时采集包含标定板的激光雷达点云和相机图像。
  2. 特征提取:
    • 在点云中提取标定板的角点或圆心(3D点)。
    • 在图像中提取对应的角点或圆心(2D像素点)。
  3. PnP求解: 利用3D-2D点对,通过透视n点算法(如EPnP、直接线性变换)求解外参矩阵。
  4. 非线性优化: 使用重投影误差作为代价函数,进一步优化外参。

重投影误差公式:

error = || pixel_2d - project( R * point_3d + t ) ||^2

其中 project() 为相机内参投影函数。

3.4.3 激光雷达与IMU标定

目标: 求解激光雷达与IMU之间的旋转和平移,以及时间延迟。

方法: 通常采用运动激励法,让传感器组合进行多轴旋转和平移运动,利用IMU的角速度和加速度积分与激光雷达的里程计结果进行联合优化(如Kalibr工具或LIO-SAM中的初始化模块)。


总结: 激光雷达标定是自动驾驶系统精度的基石。内参标定消除传感器自身误差,外参标定实现多传感器空间对齐。标定板设计需兼顾几何精度与反射特性,而标定算法则依赖于特征提取与非线性优化。在实际工程中,建议采用自动化标定流程,并定期进行校验以应对机械振动或温度变化导致的参数漂移。