使用LIO-SAM进行点云赋色 与 激光雷达和相机的精细化标定(防止自己忘记的博客)----- 激光雷达和相机的精细化标定

目录

[1 标定相机](#1 标定相机)

[2 激光雷达、相机粗标定](#2 激光雷达、相机粗标定)

[3 精细化标定激光雷达和相机](#3 精细化标定激光雷达和相机)


1 标定相机

使用Kaliber标定D435i相机,本次标定的分辨率为1920*1080,相机的内参如下:

FX:1439.96402547

FY:1442.82612329

CX:979.00103052

CY:565.47085426

K1:0.10055069

K2:-0.2034116

P1:0.00245444

P2:-0.00117788

由于做点云赋色,并不要求VIO性能,因此重投影误差不要求很小,本次重投影误差为2pixel:

2 激光雷达、相机粗标定

使用autoware的雷达相机标定工具,粗略的求出Lidar->Camera和Camera->Lidar的旋转平移变换:

Tcl

\[-0.06861033 -0.99751013 -0.01631455 0.03627205

0.03137146 0.01418779 -0.99940709 -0.03832164

0.99715017 -0.06908146 0.03031992 -0.03982055

0. 0. 0. 1. \]

Tlc

\[-0.06861033 0.03137146 0.99715016 0.04339791

-0.99751013 0.0141878 -0.06908146 0.03397458

-0.01631454 -0.9994071 0.03031992 -0.0364998

0. 0. 0. 1. \]

3 精细化标定激光雷达和相机

使用录制好的标定包,删除掉工作空间的这三个文件夹的内容:

在外刷新ROS环境。并进入clion:

启动groundremove节点,并播放标定用包。位置在/bag/PatchmatchNet-main/data/清明/assistBD.bag中。

得到了拆分的雷达点云和图像:

得到拆分图像后,运行/home/liuhongwei/catkin_mask/src/predict_in_lvi.py文件,执行DetectMask函数,将文件夹换成mask文件夹。

执行。得到标定的mask信息。

在assistBiaoding.cpp中,将相机参数换掉。

代码的57-59行替换雷达->相机的变换矩阵。

27-33行读入邻近的帧

原本的标定结果是这样的,需要调整,对齐图像:

得到精细化标定结果:

选择另外图像进行微调:

微调成功!标定成功!

相关推荐
mit6.82440 分钟前
[vroom] docs | 输入与问题定义 | 任务与运输工具 | json
c++·自动驾驶
Zhichao_975 小时前
【ROS2 自动驾驶学习】02-安装ROS2及其配套工具
自动驾驶·ros2
Mr.Winter`5 小时前
轨迹优化 | 基于激光雷达的欧氏距离场ESDF地图构建(附ROS C++仿真)
c++·人工智能·机器人·自动驾驶·ros·ros2·具身智能
CoovallyAIHub6 小时前
YOLO模型优化全攻略:从“准”到“快”,全靠这些招!
深度学习·算法·计算机视觉
LCG元17 小时前
自动驾驶感知模块的多模态数据融合:时序同步与空间对齐的框架解析
人工智能·机器学习·自动驾驶
超龄超能程序猿18 小时前
(三)PS识别:基于噪声分析PS识别的技术实现
图像处理·人工智能·计算机视觉
Chef_Chen20 小时前
从0开始学习计算机视觉--Day07--神经网络
神经网络·学习·计算机视觉
加油吧zkf1 天前
YOLO目标检测数据集类别:分类与应用
人工智能·计算机视觉·目标跟踪
Blossom.1181 天前
机器学习在智能制造业中的应用:质量检测与设备故障预测
人工智能·深度学习·神经网络·机器学习·机器人·tensorflow·sklearn
加油吧zkf1 天前
水下目标检测:突破与创新
人工智能·计算机视觉·目标跟踪