A waypoint-based mission planner for coverage and inspection tasks.
This package deals with the path planning problem of an Unmanned aerial vehicle, in order to calculate coverage patterns supporting No-Fly zones/Obstacles and optimal routes in any arbitrary polygon shape.
Example of Coverage:
Example of Inspection:
Install all the neccecary dependencies using pip3 install <package name>
- pyproj
- shapely
- numpy
- geopy
- math
- requests
- json
- time
- sys
- xml.etree.ElementTree
- For Coverage task:
~PROJECT_PATH/GeoCordinatesGUI polygon_area obstacle_area flight_direction scanning_distance mission_type speed
- For Inspection task:
~PROJECT_PATH/GeoCordinatesGUI points_of_interest obstacle_area flight_direction scanning_distance mission_type speed
- Polygon, obstacle areas and points of interest must follow the original type of .geojson
- Flight direction is in degrees
- Scanning distance is in meters
- Mission type = 1 is for coverage task
- Mission type = 2 is for inspection task
- Speed is in m/s
Note: Waypoints for coverage and inspection tasks are saved at Coverage_path.geojson and Hotpoint_path.geojson while .gpx format for Geoplaner is also supported.
- Clone this repo
- Open terminal on ~PROJECT_PATH
- Run
- For coverage e.g. GeoCordinatesGUI map_data.geojson disabled_paths.geojson 0 40 1 3
- For inspection e.g. GeoCordinatesGUI hotspot_data.geojson disabled_paths.geojson 0 5 2 3
Note: Visualization of the results can be shown through CoFly GUI at http://localhost:8081/calculated_path
@article{raptis2023end,
title={End-to-end Precision Agriculture UAV-Based Functionalities Tailored to Field Characteristics},
author={Raptis, Emmanuel K and Krestenitis, Marios and Egglezos, Konstantinos and Kypris, Orfeas and Ioannidis, Konstantinos and Doitsidis, Lefteris and Kapoutsis, Athanasios Ch and Vrochidis, Stefanos and Kompatsiaris, Ioannis and Kosmatopoulos, Elias B},
journal={Journal of Intelligent \& Robotic Systems},
volume={107},
number={2},
pages={23},
year={2023},
publisher={Springer}
}