Autoware 相机联合雷达标定核心是先完成相机内参标定,再通过工具匹配图像与点云对应特征求解外参(旋转 + 平移矩阵),最后验证优化,常用工具为 autoware_camera_lidar_calibrator 与 Calibration Tool Kit,以下是详细流程。
一、标定准备
1.硬件与场景
相机与激光雷达安装牢固,确保标定过程无位移;镜头、雷达罩清洁,预热 10 分钟以上。
标准棋盘格标定板(如 6×8 格,已知方格尺寸),置于两传感器公共视场内,背景简洁、光照均匀(>500lux)。
确保传感器时间同步,通过 ROS 消息过滤器或硬件同步模块对齐时间戳。
2.软件与数据
安装 Autoware 并配置 ROS 环境,安装依赖包:autoware_camera_lidar_calibrator、image_view2、rviz等。
采集 ROS bag 包,包含图像话题(如/camera/image_raw)和点云话题(如/points_raw),确保数据同步且覆盖多视角。
二、相机内参标定
先获取相机内参(焦距、主点、畸变系数等),生成.yaml文件。
- 启动内参标定工具:
bash
运行
roslaunch autoware_camera_calibration camera_calibration.launch image_src:=/camera/image_raw - 移动标定板,在图像中显示不同角度,工具自动检测棋盘格并计算内参。
- 完成后生成内参文件,如
20260106_1000_autoware_camera_calibration.yaml,保存备用。
三、相机 - 雷达标定(外参求解)
方法一:使用 autoware_camera_lidar_calibrator(手动选点法)
- 启动标定节点,指定内参文件和图像话题:
bash
运行
roslaunch autoware_camera_lidar_calibrator camera_lidar_calibration.launch intrinsics_file:=/path/to/xxx.yaml image_src:=/camera/image_raw - 打开 Rviz,添加点云话题,设置正确的 fixed frame;同时打开图像查看器(image_view2)。
- 手动匹配对应点:在图像中点击标定板角点,在 Rviz 中用 Publish Point 工具点击点云中对应 3D 点,至少匹配 9 组不同位置的点(覆盖不同深度和角度)。
- 系统自动计算外参,结果保存为
xxx_autoware_lidar_camera_calibration.yaml,包含旋转矩阵 R、平移向量 T。
方法二:使用 Calibration Tool Kit(棋盘格自动匹配法)
- 启动工具,配置标定板参数(如格子数、尺寸),加载 ROS bag 包。
- 播放 bag,在合适帧暂停,点击 “Grab” 抓取当前图像与点云帧。
- 在图像和点云窗口中标记标定板区域,重复抓取多组(10-20 组)不同角度数据。
- 点击 “Calibrate”,工具通过 PnP 算法结合非线性优化求解外参。
四、结果验证与优化
- 可视化验证
- 启动 Calibration Publisher,加载标定文件,在 Rviz 中查看点云投影到图像的效果,红色散点应与标定板角点重合。
- 用
Project功能,检查重投影误差(理想值<0.5 像素),误差过大则重新采集数据或调整匹配点。
- 优化调整
- 若误差较大,增加匹配点数量或优化标定板摆放角度,重新计算外参。
- 验证完成后,将外参文件集成到 Autoware 的 TF 树,用于后续传感器融合