DroneVision
Drone Vision (DroneVis) is a full compatible drone library to automate computer vision algorithms on parrot drones. You can read a detailed documentation of Drone Vision docs.
DroneVis is a cutting-edge drone software library that has been specifically designed for use with the AR. Drone. It has been extensively tested both indoors and outdoors, and offers a wide range of features including adaptability in connecting to the drone, advanced computer vision algorithms, and 3 user-friendly interfaces. This makes it easy for users to take full advantage of the drone's capabilities and control it with simple commands. All of the implemented real-time data, inference, and detection achieve a minimum fps >= 4.5
on an Intel core 8 CPU.
Features
- Unified state-of-the art computer vision algoritms
- Full control over the drone
- PEP8 compliant (unified code style)
- Documented functions and classes
- Tests, high code coverage and type hints
- Clean code
- Multiple implementations for the same models
- Logger with timestamps
- Three UI for easier usage (GUI, CLI, Gesture Recognition)
Computer Vision Models
You provide a wide variety of 20+ computer vision and recommends users to the best models in terms of accuracy and speed, whilst giving users the chance to use any model of their choice.
Drone Control
- Right ➡️, Left :arrow_left:
- Up ⬆️, Down :arrow_down:
- Forward ▶️, Backward ◀️
- Takeoff 🚀, Land 🛬
- Reset 🔄, Emergency 🚨
- Rotate Left ↩️ /Right :arrow_right_hook:
- Hover 🔍, Calibrate 🔧
- Camera Stream 📹/Record ⏺️
- Hand Gesture Control 🖌️
How to Install
Install PyTorch
You should consider installing the version of Pytorch that corresponds to your cuda version.
You start controling your drone now with just two commands:
pip install dronevis
dronevis-gui
Press the start
button to start a demo drone simulation, and run your favourite algorithms with the stream
button.
You can control your drone with our CLI
:
dronevis
Getting Started
Dronevis is built with multiple modes for customizibility. You can view all the options for either runnning our GUI
or CLI
as follows:
dronevis --help
The default mode for running either the CLI or the GUI is the demo
mode. You can alter the mode by providing "real" to --drone
argument.
dronevis --drone=real
or for GUI,
dronevis-gui --drone=real
Documentation
Dronevis is developed with an extensive documentation for easier user contributions. You can check our full documentation in here to go more in-depth of how the library is structure and how to contribute your favourite model.
Citing the Project
To cite this repository:
@software{drone-vis,
author = {Ahmed Heakl, Fatma Youssef, Abdallah-Elbarkokry},
title = {Dronevis: Full compatible drone library to automate computer vision algorithms on parrot drones},
year = {2023},
url = {github.com/ahmedheakl/drone-vis},
version = {1.3.0}
}