文章目录
- 1.数据格式
- 2.数据融合基本流程
- 3.时间戳同步
- 4.待完善
- 5.代码链接
- 6.效果对比
1.数据格式
相机数据格式:sensor_msgs::Image
激光雷达数据格式:sensor_msgs::PointCloud2
原始点云数据格式:pcl::PointXYZ
融合后点云数据格式:pcl::PointXYZRGB
2.数据融合基本流程
将原始点云sensor_msgs::PointCloud2
转换成pcl::PointXYZ
,通过标定好的雷达相机外参以及相机内参,投影到相机uv坐标系中,获取对应像素的RGB值,并用pcl::PointXYZRGB
存储,转换成sensor_msgs::PointCloud2
发布出来。
3.时间戳同步
时间同步使用ros里message_filters类实现,但要做好相机和雷达的初始时间戳同步(重要),本人采用的相机频率为15hz,雷达频率为10hz。
4.待完善
1.实时的显示每帧数据融合效果,点云比较稀疏,在每帧数据前后插入一帧,利用高斯噪声对xyz做一个偏置可稠密化实时显示的点云,但由于当前用不上,已将此代码部分删除。
2.代码封装成了一个类,很方便插入到激光里程计中,调整话题名,就可利用激光里程计生成彩色点云地图。
5.代码链接
https://github.com/KAI-yq/camera_lidar_fusion
6.效果对比