1.Gridmap 地图数据存储
首先我们需要大概了解在Ego-Planner 地图信息是怎么存储的。定义了一个名为MappingData的数据结构,用于存储地图和相关信息
其中
std::vector<double> occupancy_buffer_;
//存储地图中每个体素(voxel)的占据信息 double类型
std::vector<char> occupancy_buffer_inflate_;
//存储的是膨胀后的占据信息 char类型
完整代码如下:
struct MappingData {
// main map data, occupancy of each voxel and Euclidean distance
std::vector<double> occupancy_buffer_;
std::vector<char> occupancy_buffer_inflate_;
// camera position and pose data
Eigen::Vector3d camera_pos_, last_camera_pos_;
Eigen::Matrix3d camera_r_m_, last_camera_r_m_;
Eigen::Matrix4d cam2body_;
// depth image data
cv::Mat depth_image_, last_depth_image_;
int image_cnt_;
// flags of map state
bool occ_need_update_, local_updated_;
bool has_first_depth_;
bool has_odom_, has_cloud_;
// odom_depth_timeout_
ros::Time last_occ_update_time_;

文章详细描述了Ego-Planner中用于存储地图信息的MappingData结构,包括占据信息、膨胀信息、分辨率设定等,以及如何通过函数检查特定位置的占用状态。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



