- 在CLaserOdometry2DNode.cpp中找到如下代码
tf_listener.lookupTransform(base_frame_id,last_scan.header.frame_id,ros :: Time(0),transform)
修改1:把上面代码中last_scan.header.frame_id
修改成自己的frame_id,如我的是"/laser_frame"
可利用rostopic echo /scan查看/scan的frame_id, /scan是你激光雷达节点发出来的有关激光雷达数据的话题。
修改2:在代码前面添加tf_listener.waitForTransform(base_frame_id,your_frame_id,ros::Time(),ros::Duration(5.0));
。
如下图,我的修改。
2. 在CLaserOdometry2DNode.cpp中添加publish_tf=1;
或者在launch文件中,把false,改成true
3. 修改rf2o_laser_odometry.launch
具体参考github issuse