hdl_graph_slam源码分析(4)——SLAM建图

写在前面

四个nodelet,这已经是最后一个了,代码约1000行,包含的内容也是最多的。

4. SLAM建图

在hdl_graph_slam_nodelet.cpp里定义了继承自Nodelet的HdlGraphSlamNodelet类。同样的,也需要实现onInit和cloud_callback。

4.1 onInit()

比起前几个,多定义了一个mt_nh = getMTNodeHandle(),这是个多线程句柄。
参数初始化:
帧id;地图分辨率;最大关键帧更新量;unique_ptr(生产者和订阅者)的reset,stddev的赋值.

sync.reset(new message_fliters::TimeSynchrizer<nav_msgs::Odometry,sensor_msgs::PointCloud2>(*odom_sub,*cloud_sub,32));
sync->registerCallback(boost::bind(&HdlGraohSlamNodelet::cloud_callback,this,_1,_2));
sync是一个最多支持九个传感器的时间同步器,当odom_sub和cloud_sub的Header里的时间戳一致,则触发cloud_callback,bind里的_1和_2是占位符。
给定graph更新间隔;给定map_cloud更新间隔;

subscribers:

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值