⭐ Star us on GitHub — it helps!
Progress Report 2019.08.01-2019.08.28
GAAS (Generalized Autonomy Aviation System) is an open source software platform for autonomous drones and VTOLs. GAAS was built to provide a common infrastructure for computer-vision based drone intelligence. In the long term, GAAS aims to accelerate the coming of autonomous VTOLs. Being a BSD-licensed product, GAAS makes it easy for enterprises, researches, and drone enthusiasts to modify the code to suit specific use cases.
Our long-term vision is to implement GAAS in autonomous passenger carrying VTOLs (or "flying cars"). The first step of this vision is to make Unmanned Aerial Vehicles truly "unmanned", and thus make drones ubiquitous. We currently support manned and unmanned multi-rotor drones and helicopters. Our next step is to support VTOLs and eVTOLs.
See the repo and the documentation
Please see Setup.md
Currently the project provides the following ten funcitons, some of which may need to be further optimized:
NOTE: This is a beta version of the software. Please re-ensure the stability of each feature before implementing on real drones.
VISION BASED POLE AVOIDANCE BY GAAS
- Details about automatic taking off and landing can be found in:
software/px4_mavros_scripts
; - Navigation in GPS denied environment can be found in:
software/SLAM/ygz_slam_ros
, currently we are using stereo optical flow; - Obstacle avoidance based on stereo vision can be found in:
software/Obstacle_Map
; - Path planning can be found in
software/Navigator
; - Scene recoginition, given an image, recover its position in terms of given environment, details can be found in algorithms/scene_retrieving;
- 3D modeling, details can be found in
algorithms/sfm
; - Object tracking, details can be found in
algorithms/object_trace_tracking
; - Object detection, details can be found in
algorithms/image_detection
; - Instance segmentation, details can be found in
algorithms/image_detection
; - A list of control API based on MAVROS, and a series of tutorials can be found in
GAAS/demo
; - A list of hardware that we use is at
GAAS/hardware
.
You have come to the right place!
If this is your first time building an autonomous aviation system, check out our first Tutorial. You will get a basic understanding of what MavROS, PX4 and Gazebo are, which are fundamental for the success of your autonomous drone.
If you are stuck with configuration, you may:
- Google the error messages and see if someone else has solved a similar problem.
- Visit the Issues Page to see if others have provided solutions for a similar problem.
- If neither Step 1 or Step 2 were able to help you, submit an issue to let the community know that you need help.
If you are an advanced user, feel free to help others to get started, contribute by solving issues, or share with us about your project on our Gitter group chat.
We are so grateful for your interest in contributing!
To start contributing, you need to become familiar with PX4 and MavROS, as well as the workflow of GitHub.
A good place to start is to look at the open issues. From there, you may choose one that interests you to tackle, or open an issue of your own to communicate with other developers.
PS: One of the best ways to contribute is to help others to kick off their autonomous drone journey. Pay attention to the “Configuration” label in issues page to help others get started. For more details, please follow CONTRIBUTING.md
Project initialized by Generalized Intelligence
Distributed under the BSD 3-Clause license. See LICENSE
for more information.
It is worth mentioning that we did not build everything from scratch, but on top of the solid foundations built by pioneers in the field. We would like to thank communities such as PX4 and Dronecode for constantly pushing the industry foward. What they have built are what allowed us to build GAAS!
We are also very grateful for our contributors. You may be able to find them at AUTHORS.md.
Il Vole