使用legoloam构建3D场景地图

本文参考该博主:https://blog.csdn.net/qq_36396941/article/details/83513121

本人仅将自己遇到的一些问题以及做的一些修改再做一些补充

 

第一:将代码中的话题改为自己的话题名称

在include,h文件中修改以下选项

typedef pcl::PointXYZI  PointType;

extern const string pointCloudTopic = "/lslidar_point_cloud";
extern const string imuTopic = "/imu_data_raw";

第二,生成pcd文件并设置保存的位置

// Save pcd
extern const string fileDirectory = "/home/utryjc/date/";

第三:启动地盘和Lego_loom节点

 

$roslaunch xiaoyuan_robot buildmap.launch

$roslaunch lego_loam run.launch

关于run.launch中的话题/camera和/camera_init的理解,以及将生成的点云稀疏或者稠密化

https://blog.csdn.net/weixin_42048023/article/details/87736777

mapOptimization中下面这两行代码,将地图点云稀疏化或者稠密化的作用
        downSizeFilterHistoryKeyFrames.setLeafSize(0.4, 0.4, 0.4); // for histor key frames of loop closure
        downSizeFilterSurroundingKeyPoses.setLeafSize(1.0, 1.0, 1.0); // for surrounding key poses of scan-to-map optimization

第四:用ROS方法记录点云数据生成pcd文件

生成了很多个pcd文件,但每一个都不是整张地图,解决办法参考下面的连接:

https://blog.csdn.net/littlethunder/article/details/51955849

rosbag record /laser_cloud_surround /imu_data_raw

问题是我所录的话题为自己的点云话题,而不是Legoloam的/laser_cloud_surround 这个话题,record /laser_cloud_surround 这个主题就行了,之后调用

rosrun pcl_ros bag_to_pcd corrior.bag(点云包名) /laser_cloud_surround(话题名称) pcd(将要保存的目录)

  • 1
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值