自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(7)
  • 收藏
  • 关注

原创 cartographer-地图保存加载

栅格地图中包含:limits_、correspondence_cost_cells_、known_cells_box、min_correspondence_cost_、max_correspondence_cost_。在map_builder_bridge_.FinishTrajectory函数中,进一步调用map_builder_->FinishTrajectory,及删除相应的sensor_bridges_。及data_.global_submap_poses_2d,构造SubmapData。

2025-09-23 15:03:58 741

原创 cartographer-栅格地图

子图逻辑:同时维护两个激活的子图,向两个子图中添加数据,两个子图中的数据有一半重合。只有一个子图时就维护这一个子图。当两个子图都生成后,第二个子图添加的数据达到设定阈值,则第一个子图添加的数据达到最大。添加新的子图,并将最前面的子图删除。因为每生成新的子图,都会添加到后端,所以删除的子图在后端一样可以获取到。子图添加的数据达到最大后,会子图剪切及标记成完成。栅格地图更新:通过查表的方式更新栅格地图。cell就是对应栅格的指针,* cell就是取出对应的概率,这个概率是int类型的,可以作为下标获取t

2025-08-08 14:36:22 987

原创 cartographer-ros数据流向

维护了一个队列的队列,第一层队列是和topic相关,第二层队列才是放的具体的数据。ros订阅器根据topic订阅数据时进入回调,回调函数中根据topic向对应的第二层队列中添加数据。分发器获取所有topic中最老的数据,传入回调函数(第二层队列其实是包含在一个结构体中,结构体中同时也包含了该回调函数),从而传入全局轨迹构建器。调用全局轨迹构建器的添加数据函数,该函数根据不同的数据实现了重载。获取队列中的数据传入回调函数。最老的数据会调用下面函数,最老的数据其实封装成Dispatchable。

2025-07-31 17:06:05 262

原创 cartographer-二维三维后端优化

gps源点2d是Rigid2d、3d是Rigid3d,2d没有局部参数化,3d局部参数化,平移为空,旋转设置为只更新航向角,rp设置为零,即获得航向角,通过轴角求得矩阵。landmark_node.second.landmark_observations:landmark_id是一样的,说明是同一个landmark,应该是被不同传感器检测的结果,例如,前相机检测到了,走了一段距离时后相机也看到了,landmark_id一样,放在一块。gps约束残差:gps数据,其相对gps的第一帧,也是当前节点的位姿;

2025-07-31 15:19:04 665

原创 cartographer-线程池

AddDependency中任务的依赖数量uncompleted_dependencies_会加一,同时使用AddDependentTask给依赖任务中添加哪些是需要依赖他的,放到dependent_tasks_队列中,即dependent_tasks_中存放的都是需要依赖该任务的任务。scan_matcher创建分支定界匹配器同时生成子地图的金字塔,是constraint_task的依赖,constraint_task计算约束,是finish_node_task_的依赖,

2024-07-18 11:02:50 919

原创 cartographer-分支定界

当大于0.55,四等分及排序,往下递归到第零层时,最优解已是0.6(因为进行新的分支,传的是新的最优解)。当回溯到最高一层时,for循环到下一个节点,有可能改变角度,继续分支定界,因为最高层的候选解,包含了不同的角度,并且也是经过排序的,某个角度得分高的,先分支定界,后面的得分低于最优得分,也会直接截支。上层的节点得分必定>=下层的节点得分,因为上层的栅格地图更粗,下层击不中的语义点,上层可能会击中,语义点击中的概率会更高,这也是分支定界可以实现的默认假设,这个假设不成立,搜索到的将不是最优解。

2024-07-13 14:12:07 732

原创 amcl运动模型

里程计运动模型差分机器人运动被分解为旋转,平移,再旋转。定义笛卡尔坐标系,向右为x轴正方向,向上为y轴正方向。式2: atan2求的是机器人两次位姿连线与x轴的夹角,后面的角度是机器人第一次位姿的朝向与x轴的夹角,取值范围为-pi到pi,其为负数,相减求得机器人第一次旋转角度。式3: 求平移量。式4: 机器人两次朝向(都是与x轴的夹角,第一次为负,第二次为正)相减,得到到机器人的角度变换...

2019-11-17 14:05:46 717

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除