【栅格地图实现布氏单元分解算法+栅格地图实现牛耕】Boustrophedon Cellular Decomposition Path Planning

系列文章目录

提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加
TODO:写完再整理

文章目录


前言

认知有限,望大家多多包涵,有什么问题也希望能够与大家多交流,共同成长!

本文先对**【栅格地图实现布氏单元分解算法+栅格地图实现牛耕】Boustrophedon Cellular Decomposition Path Planning**做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章


提示:以下是本篇文章正文内容

【栅格地图实现布氏单元分解算法+栅格地图实现牛耕】Boustrophedon Cellular Decomposition Path Planning

利用Boustrophedon模式分块,每个块内的路径计算相对独立,减少了全局搜索的复杂度,提高了计算效率。

https://github.com/RicheyHuang/BoustrophedonCellularDecompositionPathPlanning

实现原理

1、通过手动构造多边形,通过多边形使用opencv构造珊格地图(或者通过加载PNG图片构造珊格地图)

2、ExtractContours()在珊格地图中,通过像素值不同分别提取出边界顶点和障碍物顶点,并对顶点进行排序

3、【核心】ConstructCellGraph()输入多边形信息,进行ConstructCellGraph区域分解,得到cell_graph及单位cell的信息

4、【核心】StaticPathPlanning()依次根据cell_graph及单位cell的信息,使用珊格地图生成每个cell的覆盖路径

5、FilterTrajectory()把每个cell的覆盖路径整合到一个容器中

实现代码

(1)整体代码框架
https://blog.csdn.net/qq_35635374/article/details/142417386?sharetype=blogdetail&sharerId=142417386&sharerefer=PC&sharesource=qq_35635374&spm=1011.2480.3001.8118

(2)Boustrophedon Cellular Decomposition 区域分解

https://blog.csdn.net/qq_35635374/article/details/142416475?sharetype=blogdetail&sharerId=142416475&sharerefer=PC&sharesource=qq_35635374&spm=1011.2480.3001.8118(3)用珊格地图生成每个cell的覆盖路径
https://blog.csdn.net/qq_35635374/article/details/142416514?sharetype=blogdetail&sharerId=142416514&sharerefer=PC&sharesource=qq_35635374&spm=1011.2480.3001.8118

牛耕的整体过程示例





相关推荐
大白话_NOI11 分钟前
【洛谷 P2249】查找(深基 13. 例 1)+ 详细分析
c++·算法
吠品12 分钟前
C++实现m行n列带边框的长方形输出
算法
智者知已应修善业20 分钟前
【51单片机2个外部中断显示中断历时,初始化8左移3位共阳数码管】2024-6-6
c++·经验分享·笔记·算法·51单片机
码之气三段.1 小时前
edu158-B
c++
西安邮电大学1 小时前
分治算法详细讲解
java·后端·其他·算法·面试
code bean1 小时前
平衡相关性与多样性:推荐系统中的永恒博弈与 MMR 算法详解
算法
青梅橘子皮1 小时前
Linux---进程控制(2)(进程程序替换)
linux·c++·算法
Shan12051 小时前
经典问题——验证栈序列
数据结构·算法
chase_my_dream1 小时前
A-LOAM中scanRegistration.cpp详细讲解
c++·人工智能·自动驾驶
2501_906565121 小时前
勾股定理证明
算法