Fields2Cover/Fields2Cover

Robust and efficient coverage paths for autonomous agricultural vehicles. A modular and extensible Coverage Path Planning library

它解决了什么问题

Fields2Cover 解决了覆盖路径规划(CPP)的挑战,即创建一条确保车辆完全覆盖特定区域的路径。尽管该领域有许多理论论文,但缺乏开源实现,使得研究人员和开发者难以比较算法或构建用于农业、清洁或监控的自主系统。

它如何工作

该库提供了一个模块化框架,用于离线规划,使用多种算法生成覆盖路径。它通过以下几个阶段完成整个过程:

  • 分解:使用梯形分解和Boustrophedon分解,将复杂的非凸田地(凹形)分割成更简单的凸子区域。
  • 条带生成:生成车辆必须遵循的平行线(条带),包括优化的成本函数以减少计算时间。
  • 路径规划:确定条带的访问顺序,利用 Google 的 OR-tools 进行优化,而不是依赖固定的模式。
  • 路径生成:基于优化后的路径生成最终可执行的路径。

适用对象

专为从事自主农业车辆开发的研究人员和开发者设计,也适用于构建用于监控、排雷或工业清洁的机器人。

主要特点

  • 支持非凸区域:能够处理带有障碍物和凹形的田地。
  • 多语言支持:使用 C++ 编写,通过 SWIG 提供 Python 接口。
  • 优化能力:集成 OR-tools 进行路径优化,并包含高效的条带生成算法。
  • 灵活的结构:设计为一个库,允许用户轻松插入和比较不同的覆盖规划器。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目