List of open-source algorithms and resources for autonomous drones. The list is a work in progress, so some information may be wrong and lots of useful resources are still missing.
Link | Who | Description | ROS |
---|---|---|---|
visual-slam-roadmap | Great Roadmap for Visual SLAM | ||
voxblox | ETH | voxel-based mapping | ✔️ |
maplab | ETH | visual inertial mapping | ✔️ |
orb-slam2 | sparse 3D reconstruction | ✔️ | |
open_vins | U. of Delaware | EKF fuses inertial info with sparse visual features | ✔️ |
SVO 2.0 | ETH | semi-direct paradigm to estimate pose from pixel intensities and features | ✔️ |
DSO | TUM | direct sparse odometry | |
XIVO | UCLA | inertial-aided visual odometry | |
VINS-Fusion | HKUST | An optimization-based multi-sensor state estimator | |
Kimera-VIO | MIT | real-time metric-semantic SLAM and VIO | ✔️ |
tagSLAM | UPenn | tagSLAM with apriltags | ✔️ |
LARVIO | A lightweight, accurate and robust monocular visual inertial odometry based on Multi-State Constraint Kalman Filter. | ✔️ | |
R-VIO | based on robocentric sliding-window filtering-based VIO framework | ||
nanomap | MIT | fast, uncertainty-aware proximity queries with lazy search of local 3D data | |
MSCKF_VIO | UPenn | package is a stereo version of MSCKF | |
VINS_mono | HKUST | Robust and Versatile Monocular Visual-Inertial State Estimator | |
SLAM_toolbox | Simbe Robotics / Samsung Research | SLAM for massive maps | ✔️ |
Link | Who | Description | ROS |
---|---|---|---|
mav_trajectory_generation | ETH | creates polynomial path | ✔️ |
mav_voxblox_planning | ETH | planning tool using voxblox (RRT*, etc.) | ✔️ |
pulp-dronet | ETH | deep learning visual navigation | |
Ewok: real-time traj replanning | TUM | replanning of global traj, needs prior map | |
Deep RL with Transfer Learning | Georgia Tech | end-to-end navigation trained from simulation | |
NVIDIA redtail project | Autonomous navigation for drones | ||
Fast-Planner | HKUST | robust and efficient trajectory planner for quads | ✔️ |
ego-planner swarm | Zhejiang University | Autonomous and Decentralized Quadrotor Swarm System in Cluttered Environments | |
spatio-temporal semantic corridor | HKUST | Safe Trajectory Generation For Complex Urban Environments Using Spatio-temporal Semantic Corridor | |
EVDodgeNet | ETH | obstacle avoidance with event cameras | |
aeplanner | KTH | unknown environment exploration based on octomap | |
nvbplanner | ETH | unknown environment exploration | |
HKUST Aerial Robotics | HKUST | a complete and robust system for aggressive flight in complex environment | |
PX4 generalized intelligence | low-level autonomy for PX4 | ||
PX4 avoidance | low-level autonomy for PX4 | ||
sim2real_drone_racing | ETH | deep learning Sim2Real Drone racing | ✔️ |
waypoint_navigator | ETH | high-level waypoint-following for micro aerial vehicles | ✔️ |
autonomousmavs | navigation in cluttered environment | ✔️ |
Link | Who | Description | ROS |
---|---|---|---|
Apollo Autonomous Driving | Apollo | Full autonomous driving stack | |
ROS_behavior_tree | Behavior trees for autonomy | ||
planning in ROS | generic method for task planning | ✔️ | |
EDUM Planner | HKUST | decision-making for automated driving using guided branching | |
autoware.ai | self-driving vehicles | ||
dronet: learning to fly | ETH | deep learning trained from cars to predict steering angle, collision prob | ✔️ |
Deep RL w Airsim | allows RL with Airsim | ||
Autonomous UAV swarms | |||
autonomous-drone | enable autonomous drone delivery w Aero RTF and PX4 | ✔️ | |
PEDRA | Georgia Tech | RL for drones with unreal engine | |
drif | Cornell | Map Natural Language Instructions to Physical Quadcopter Control using Simulated Flight | |
slugs | slugs - SmalL bUt Complete GROne Synthesizer | ||
LTL_stack | ROS Packages for running correct-by-construction controllers with ROS | ✔️ | |
multidrone_planning | cooperative planning and mission execution in autonomous cinematography with multiple drones | ✔️ |
Link | Who | Description | ROS |
---|---|---|---|
Robofleet | UT Austin | Web-based multi-robot control and visualization for ROS | ✔️ |
Swarm-Formation | ZJU FAST-Lab | Distributed Swarm Trajectory Optimization for Formation Flight in Dense Environments | |
ROS2Swarm | University of Lübeck | Provides swarm behavior for different hardware platforms. | ✔️ |
Link | Who | Description | ROS |
---|---|---|---|
lbmpc_ipm | Learning-Based Model Predictive Control (LBMPC) that uses the LBmpcIPM solver | ||
neural_mpc | Berkeley | Model Predictive Control with one-step feedforward neural network dynamics model from Model-based Reinforcement Learning | |
Control Toolbox | ETH | efficient C++ library for control, estimation, optimization and motion planning in robotics | |
PythonLinearNonlinearControl | library implementing the linear and nonlinear control theories in python | ||
rpg_mpc | ETH | Model Predictive Control for Quadrotors with extension to Perception-Aware MPC | |
rpg_quadrotor_control | ETH | alternative to PX4 that works with RotorS | |
gymFC | flight control tuning framework with a focus in attitude control | ||
ACADO toolkit | MPC toolkit that takes care of the implementation | ||
MPC ETH | ETH | also has PX4 implementation (claim badly hacked though) | |
mavros_controller | PX4 | trajectory tracking based on geometric control | |
DDC-MPC | ETH | Data-Driven MPC for Quadrotors | |
Deep-drone acrobatics | ETH | fly complex maneuvers with multi-layer perceptron | |
mav_control_rw | ETH | trajectory tracking with MPC | |
rpg_quadrotor_control | ETH | complete framework for flying quadrotors | |
flight controller | HKUST | high level controller compatible with DJI N3 flight controller | |
mavros_trajectory_tracking | combines mav_trajectory_generation and waypoint_navigator with mavros_controller | ✔️ | |
system identification scripts | ETH | calculates model parameters for a drone | |
MRS UAV framework | CTU | framework for controlling drones with PX4 and different advanced controllers |
Link | Who | Description | ROS |
---|---|---|---|
PythonRobotics | great overview of robotics | ||
Awesome-robotic-tooling | important tools for robotic programming | ||
awesome-dronecraft | everything about drones | ||
resilience-engineering | How to make safe systems? | ||
Trajectory Prediction | resources for predicting environment like movement of pedestrians | ||
hidden markov model | models lane switching, might be interesting | ||
modelling agents w prob | MPD, POMPD, etc. | ||
hierarchical state machine | Develop robotic tasks through graphical user interface | ||
Uncertainty estimation in deep learning | ETH | can quantify uncertainty on existing neural networks | |
Flightmare simulator | Flightmare is composed of two main components: a configurable rendering engine built on Unity and a flexible physics engine for dynamics simulation. | ||
US-manufactured drones | A list of drones manufactured in the US. |
Lab Website | Git | Where |
---|---|---|
Robotics & Perception Group | Link | Zurich, Switzerland |
GRASP Lab | Link | Philadelphia, USA |
ZJU FAST Lab | Link | Hangzhou, China |