Skip to content

SoftwarePilot is an open source software suite to support aerial systems. SoftwarePilot allows users to connect consumer DJI drones to programmable Java routines that include access to computer vision and deep learning software packages like OpenCV, DLIB, and Tensorflow.

License

Notifications You must be signed in to change notification settings

natshineman/SoftwarePilot

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

81 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

SoftwarePilot Logo

SoftwarePilot v1.0

SoftwarePilot is an open source middleware and API that supports aerial applications. SoftwarePilot allows users to connect consumer DJI drones to programmable Java routines that provide access to the drones flight controller, camera, and navigation system as well as computer vision and deep learning software packages like OpenCV, DLIB, and Tensorflow.

SoftwarePilot comes with a dockerfile and installation scripts for all requisite software, and an Android-x86 VM to communicate with DJI drones from most systems.

SoftwarePilot provides sample routines and demos ranging from simple flight control applications to fully autonomous aerial systems. A simulation framework for fully autonomous aerial systems that use SoftwarePilot is also provided. The simulation framework can be used to aid development and profiling of complicated aerial systems.

Getting Started

Please review our comprehensive user guide here for installation instructions, and our development guide here to learn about adding to SoftwarePilot.

Prerequisits

The goal of SoftwarePilot is to be as accessible as possible to anyone with a drone. Therefore, it only requires a basic laptop with the following specifications:

  • At least 4GB of ram
  • A 2GHz processor
  • WiFi capabilities
  • 10 GB of available disk space
  • Linux, Windows, or MacOS

Software prerequisites include:

Built With

  • DJI-SDK - To interact with DJI drones
  • Java - To write the API between DJI drones and our programmable routines
  • Python - For machine learning routines and simulation
  • Docker - For portability
  • VirtualBox - To run our virtual machine
  • Tensorflow - For custom deep models
  • Dlib - For facial recognition
  • OpenCV - For image processing
  • Android-x86 - To execute DJI-SDK apps on most hardware
  • Android - To use the DJI-SDK

Authors

See also the list of contributors who participated in this project.

License

This project is licensed under the MIT License - see the License file for details

About

SoftwarePilot is an open source software suite to support aerial systems. SoftwarePilot allows users to connect consumer DJI drones to programmable Java routines that include access to computer vision and deep learning software packages like OpenCV, DLIB, and Tensorflow.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 94.8%
  • Python 4.5%
  • Other 0.7%