wildwing DOI

Autonomous UAS Software for In Situ Imageomics Missions

Summary of the WildDrone system, showing a drone and a laptop. There is are two arrows between the drone and the laptop, showing they are connected with the SoftwarePilot control software, with the Python logo.

This repo contains software to autonomously track group-living animals using Parrot Anafi drones.

Overview of WildWing framework

Detailed overview of the WildWing control system, including drone, control software, and GPU laptop. The control software includes an illustration of video frames flowing into the navigation component and outputting commands. The navigation includes computer vision models and autonomous policy. The GPU laptop illustrates the live system system monitoring, including battery level and video stream. The WildWing Unmanned Aerial System (UAS) consists of three components: a Parrot Anafi drone, open-source control software, and a laptop equipped with GPU. The control software connects the drone to the autonomous navigation policy and allows users to monitor the system during deployment. The navigation policy analyzes video frames using computer vision models and determines the next commands to send to the drone. The control software is hosted on the laptop, where the users can also monitor the live WildWing system deployment.

Instructions for use

See the WildWing wiki for detailed instructions on how to deploy the WildWing system.

Hardware Requirements

This tool requires a Parrot Anafi drone and its controller, and a laptop running Ubuntu 22.04.4 OS on 86_64 architecture.

Software Requirements

This tool requires a laptop running Ubuntu 22.04.4 OS with VLC media player and a text editor, such as nano, emacs, or vi. VisualStudio Code may also be used.

See requirements.txt for required packages.
Details on the control software here: SoftwarePilot
Optional: SmartPhone with FreeFlight 6 app to connect drone and controller.

Step 1: Set-up hardware

Step 2: Initialize software parameters

Initialize the following parameters in the python scripts. You can use these parameters to customize the mission for specific weather conditions, species, and habitats.

Step 3: Launch drone

Step 3: Monitor the system

Step 4: End mission

Once the mission duration is complete, you may continue the autonomous tracking mission, or land the drone using the remote controller. To continue the mission without first landing, comment out the takeoff line in controller.py, shown below, and save the file. Run launch.sh from the terminal to start the new mission.

# drone.piloting.takeoff()

Step 5: Analyze video data

This script saves the video recordings, telemetry data, and YOLO outputs for each mission. See the WildWing deployment data in Zenodo for example outputs.

To automatically label video data with behavior, we recommend using KABR tools.

To analyze the telemetry, use the data analysis notebook.

Map displaying drone missions with photos of the animals surveyed, including horses, giraffes, and zebras. Mapped mission telemetry.

Acknowledgements

This work was supported by the Imageomics Institute, which is funded by the US National Science Foundation’s Harnessing the Data Revolution (HDR) program under Award #2118240 (Imageomics: A New Frontier of Biological Information Powered by Knowledge-Guided Machine Learning). Additional support was also provided by the AI Institute for Intelligent Cyberinfrastructure with Computational Learning in the Environment (ICICLE), which is funded by the US National Science Foundation under Award #2112606. Any opinions, findings and conclusions or recommendations expressed in this material are those of the author(s) and do not necessarily reflect the views of the National Science Foundation.

The data was gathered at The Wilds, a private, non-profit conservation center located on nearly 10,000 acres of reclaimed coal mine land in southeastern Ohio. The Wilds is home to rare and endangered species from around the world living in natural, open-range habitats. The data collection was conducted under approval by the The Wilds Science Committee.