0

为了解决移动机器人路径规划问题,我正在使用 Shapley,给定一组已计算的子路径(目标到目标路径),检查子路径创建的多边形内是否存在障碍物( Point-In-Polygon 检查)。问题是,有时路径会创建一个内部带有不想要的孔的多边形,这使得“多边形内的障碍物”检查无用。

障碍检查在理想情况下应返回 True 时返回 False 的示例:

障碍检查在理想情况下应该返回 True 时返回 False 的示例

以图中为例,网上青色的多边形是这样考虑的,但是我想把红线定义的整个区域定义为一个多边形,所以“洞”内的障碍物也能被识别出来。我尝试使用“polygon.exterior”仅提取多边形的轮廓,但它给了我与用于创建多边形的坐标完全相同的一组坐标,所以它没有成功。

这是检查整个区域的另一种方法吗?有没有更简单的方法来执行相同的任务?

(这里的多边形基本上是“poly = Polygon(coords)”,是坐标定义路径的点列表并通过采样方法获得)

4

0 回答 0