costmap2D数据结构及生成过程

本文详细介绍了costmap_2D的内部数据结构,包括全局和局部地图,以及地图生成的过程,包括初始化layered_costmap、设置各层插件、更新地图坐标和聚合等步骤。通过分析move_base类的构造函数,揭示了costmap_2D如何维护和更新地图数据。
摘要由CSDN通过智能技术生成

概述

前一篇源码分析,让我了解到了costmap_2d包类的具体功能。但costmap2d包的到底整体包含什么地图数据?如何维护地图数据?何时调用各层更新?何时聚合?这些问题还不甚明了。这篇对costmap2d维护的地图数据、更新过程做一个总结。

地图数据结构‘

在这里插入图片描述
如中序号对应了地图生成过程的步骤,可能不全,但是已经对地图的数据有了清晰的认识。

地图生成过程

move_base类的构造函数,调用了costmap2d的功能,生成过程如下:

1、初始化costmap2DROS

全局地图调用了

planner_costmap_ros_ = new costmap_2d::Costmap2DROS("global_costmap", tf_);
planner_costmap_ros_→pause();

局部地图调用了

controller_costmap_ros_ = new costmap_2d::Costmap2DROS("local_costmap", tf_);
controller_costmap_ros_->pause();
1.1 初始化layered_costmap
layered_costmap_ = new LayeredCo
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值