随笔分类 -  开源SLAM

开源算法的代码分析和优化
摘要:构建栅格地图,要弄清楚坐标之间的关系。本篇根据代码,画出了坐标转换的关系。 如下图: 由于像素坐标系通常都是从左上角开始,所以把上面的图旋转一下: 这样就清晰了。可以看到,cartographer地图坐标系的原点在地图的右下角,只不过x轴朝上,y轴朝右。在实际转换的时候,直接在标准世界坐标系下画好图 阅读全文
posted @ 2023-05-27 21:45 水水滴答 阅读(1139) 评论(0) 推荐(0)
摘要:运动滤波,间隔一段时间、一段距离和角度,对odometry的数据进行关键帧采样。 absl::optional<MotionFilter> pose_graph_odometry_motion_filter; if (trajectory_options.has_pose_graph_odometr 阅读全文
posted @ 2023-05-25 15:17 水水滴答 阅读(236) 评论(0) 推荐(0)
摘要:参考官网文档:https://google-cartographer-ros.readthedocs.io/en/latest/compilation.html#system-requirements ubuntu20.04 + neotic ros sudo apt-get update sudo 阅读全文
posted @ 2023-04-10 14:23 水水滴答 阅读(265) 评论(0) 推荐(0)
摘要:树莓派4b,内存4g,4核,运行cartographer的情况: ![](https://img2022.cnblogs.com/blog/1044586/202206/1044586-20220628152302950-2054355318.png) 目前除cartographer,其他节点起的也 阅读全文
posted @ 2022-06-28 15:26 水水滴答 阅读(436) 评论(0) 推荐(0)
摘要:### 前言 #### 几个关键数据结构 * submap:父类,由submap2d继承后,还会有栅格类型等的属性 ``` //子图的局部位姿 const transform::Rigid3d local_pose_; //子图包含的激光帧数 int num_range_data_ = 0; //子 阅读全文
posted @ 2022-06-23 10:17 水水滴答 阅读(291) 评论(0) 推荐(0)
摘要:### 准备 * 1、终端起roslaunch cartographer_ros bslidar.launch * 2、clion里面:Run ==> Attach to Process,在下拉框中选择cartographer_node来执行,可以debug debug栏中可以看到线程信息,从下到上 阅读全文
posted @ 2022-06-15 09:08 水水滴答 阅读(428) 评论(0) 推荐(0)
摘要:这是因为实际的激光扫描的点数较多,比设置的2048要多,所以,在文件目录openslam_gmapping/include/gmapping/scanmatcher/scanmatcher.h文件中,#define LASER_MAXBEAMS 2048设置要比实际激光点数大即可。 修改完后需要重新 阅读全文
posted @ 2021-11-05 10:32 水水滴答 阅读(310) 评论(0) 推荐(0)
摘要:手持激光,并用cartographer建图,保存的地图是.pbstream格式 rosservice call /finish_trajectory 0 rosservice call /write_state "{filename: '${HOME}/Downloads/carto_map.pbs 阅读全文
posted @ 2019-11-16 20:22 水水滴答 阅读(4073) 评论(0) 推荐(0)