Cartographer调参与系统资源使用情况分析

任务动机:通过Cartographer调参,达到在Rockchip rk3399开发板上实时和精度兼顾的效果。

任务描述:参照Cartographer官方调参文档,通过逐个调参,记录真实机器人建立的地图和系统资源消耗。

1. 硬件及OS信息

name type
CPU RK3399 双核Cortex-A72(大核)+四核Cortex-A53(小核)
Kernel 4.4.179
ROS Meloc
lidar ToF
bag Speed 0.266 m/s Turn 1.0 Rad/s

使用预先录制好的bag,然后用同一个bag对比不同的参数效果

2. 参数效果

评判调参效果,从两方面进行:

  1. 建图中的优化实时性,即在建图中纠偏优化的实时速度;
  2. 建图完成后的优化速度或者优化时间。

建图完成以后,地图的保存分成三步,写成一个脚本文件,这里并没有用通用变量,用起来需要进入脚本修改名称。使用cartographer_ros/offline_node 进行参数粗调,找到建图质量较好的地图后,记录实时的CPU使用情况。

2.1 官方给出的调参教程

### Low latency 调整
#### local
- 提高 voxel_filter_size
- 提高 submaps.resolution
- 降低 min_num_points max_range 提高 max_length
- 降低 max_range
- 降低 submap.num_range_data

#### global
- 降低 optimize_every_n_nodes
- 提高 num_background_threads <= CPU 核数
- 降低 linear_xy_search_window linear_z_search_window angular_search_window
- 提高global_constraint_search_after_n_seconds
- 降低max_num_iterations

2.2 参数调整

第一个调整的参数推荐 MAP_BUILDER.num_background_threads 先明确预留的CPU资源,在这个基础上进行调整。

2.2.1 Local SLAM(optimize_every_n_nodes = 0)

a.submap.num_range_data

构建子图需要的scan数据量

  • value = 90(default)

过程效果 = 1

90

最终效果 = 4

90-2

CPU使用情况

90

  • value = 10

过程中

10

优化后

10-afterAPeriod

CPU

10

  • value = 50

过程中

50

优化后

50-afterAPeriod

  • value = 30
对于cartographer调参,我可以给你一些基本的指导。Cartographer是一个用于实时三维同步定位和地图构建的开源SLAM(Simultaneous Localization and Mapping)系统。 首先,你需要了解一些关键的参数:resolution(分辨率)、range(范围)、variance(方差)等。这些参数将直接影响到地图的精度和性能。 一种常见的调参方法是通过修改配置文件来调整Cartographer的参数。你可以使用Google Cartographer的官方文档中提供的样例配置文件作为起点,并根据你的需求进行修改。 以下是一些常见的参数及其含义: 1. submaps.resolution:地图分辨率。较高的分辨率会得到更精确的地图,但也会增加计算量。 2. submaps.range_data_inserter.hit_probability、miss_probability:用于构建概率地图的参数。调整这些参数可以影响地图的清晰度和噪声。 3. trajectory_builder_2d.motion_filter.max_angle_radians、max_distance_meters:用于过滤运动时的噪声。适当调整这些参数可以提高定位的准确性。 4. trajectory_builder_2d.num_accumulated_range_data:积累多少个测距数据才进行一次处理。增加此值可以提高精度,但会增加计算量。 值得注意的是,Cartographer还有许多其他参数,根据你的具体应用场景和硬件配置,你可能需要进一步进行调整。 在调参过程中,建议你先从默认配置开始,并逐步修改参数进行测试和评估。观察地图的质量、定位的准确性和系统的实时性能,根据实际情况进行调整。 同时,也可以参考Cartographer的论文和官方文档,了解更多关于算法原理和参数调优的细节。希望这些信息对你有所帮助!如果还有其他问题,请随时提问。
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值