实验结果

法石雷达 12m

30mvs12m雷达对比报告

雷神雷达 12 m

30mvs12m雷达对比报告

思岚雷达 12m

30mvs12m雷达对比报告

法石和雷神参数完全一致, 回环稳定建图效果良好。

雷神因为路径不一样回环不正确, 故更改了 loop_search_maximum_distance: 3.0 减小错误的回环

雷神30m 雷达参数和结果

30mvs12m雷达对比报告

参数对比

主要参数 30m范围雷达 12m范围雷达 解释 性能影响
minimum_travel_distance 0.8~ 1 0.3~0.4 大范围雷达视野更远,相邻节点间匹配的差异不大, 但距离小的雷达可能在1m 内环境变化大会导致匹配出错。 数值越小,全局的总结点数越多,全局优化会更耗时(与节点数成正比)
loop_search_maximum_distance 8 ~ 10 3 ~ 5 同样大范围雷达视野远,匹配出错可能小 搜索范围内的非相邻节点, 数值越大范围也越大,开始匹配的也越早,
loop_match_maximum_variance_coarse 3 4 -5 与雷达数据的可靠性相关, 最好看返回的数值范围确定区间 越大越容易回环, 出错的可能性也越大, 如果设置越小很可能检测道德回环一直不符合要求,导致一直寻找,极消耗 cpu
loop_match_minimum_response_coarse 0.01 - 0.1 0.3 与雷达数据的可靠性相关, 最好看返回的数值范围确定区间 越小越容易回环, 出错的可能性也越大, 如果设置越小很可能检测道德回环一直不符合要求,导致一直寻找,极消耗 cpu
loop_match_minimum_response_fine 0.01 - 0.1 0.3 与雷达数据的可靠性相关, 最好看返回的数值范围确定区间 越小越容易回环, 出错的可能性也越大, 如果设置越小很可能检测道德回环一直不符合要求,导致一直寻找,极消耗 cpu
map_update_interval 120 - 2400 大于 3 发布map的频率 越小更新地图越频繁, 极消耗 cpu

总结

  1. loop_search_maximum_distance , minimum_travel_distance 范围打的与范围小的雷达有效数据区间不一样,故两个值响应变化
  2. loop_match_maximum_variance_coarse: 3.0
    loop_match_minimum_response_coarse: 0.3
    loop_match_minimum_response_fine: 0.3
    三个参数和雷达的性质相关, 要求越高回环的准确度越高,但相应的检测的节点数目也会越多,计算量差距较大(cpu 占用率百分之百的元凶), 具体调试看再一个合理范围
  3. 测出30m雷达, minimum_travel_distance 设置为 0.8时, 地下车库大概为1200个节点; 12m雷达, minimum_travel_distance 设置为 0.4时大概460个节点; 但前者更新一次地图耗时5s 左右, 后者2s左右。 优化后的程序代码, UpdateMap采用双线程,对主线程 即addScan, trycloseloop 和影响不大。 同时对 tryCloseLoop部分采用4线程处理, 回环处理速度提升50%, 但每次回环检测还需要3s 左右时间。

相关文章:

  • 2021-12-13
  • 2021-06-03
  • 2021-12-09
  • 2021-07-26
  • 2021-10-11
  • 2021-09-17
  • 2022-12-23
  • 2021-08-10
猜你喜欢
  • 2021-04-07
  • 2021-11-26
  • 2021-06-03
  • 2021-12-03
  • 2021-11-18
  • 2021-12-18
  • 2022-12-23
相关资源
相似解决方案