All Projects → ApolloAuto → Apollo

ApolloAuto / Apollo

Licence: apache-2.0
An open autonomous driving platform

Programming Languages

C++
36643 projects - #6 most used programming language
python
139335 projects - #7 most used programming language
Starlark
911 projects
shell
77523 projects
javascript
184084 projects - #8 most used programming language
Cuda
1817 projects

Projects that are alternatives of or similar to Apollo

Apollo perception ros
Object detection / tracking / fusion based on Apollo r3.0.0 perception module in ROS
Stars: ✭ 179 (-99.1%)
Mutual labels:  apollo, autonomous-driving, self-driving-car, autonomous-vehicles
Rtm3d
Unofficial PyTorch implementation of "RTM3D: Real-time Monocular 3D Detection from Object Keypoints for Autonomous Driving" (ECCV 2020)
Stars: ✭ 211 (-98.94%)
Mutual labels:  autonomous-driving, self-driving-car, autonomous-vehicles
Awesome Self Driving Car
An awesome list of self-driving cars
Stars: ✭ 185 (-99.07%)
Mutual labels:  autonomous-driving, self-driving-car, autonomous-vehicles
JuliaAutonomy
Julia sample codes for Autonomy, Robotics and Self-Driving Algorithms.
Stars: ✭ 21 (-99.89%)
Mutual labels:  autonomous-driving, autonomous-vehicles, autonomy
Lidarobstacledetection
Lidar Obstacle Detection
Stars: ✭ 90 (-99.55%)
Mutual labels:  autonomous-driving, self-driving-car, autonomous-vehicles
Self Driving Golf Cart
Be Driven 🚘
Stars: ✭ 147 (-99.26%)
Mutual labels:  autonomous-driving, self-driving-car, autonomous-vehicles
BtcDet
Behind the Curtain: Learning Occluded Shapes for 3D Object Detection
Stars: ✭ 104 (-99.48%)
Mutual labels:  self-driving-car, autonomous-driving, autonomous-vehicles
Visualizing-lidar-data
Visualizing lidar data using Uber Autonomous Visualization System (AVS) and Jupyter Notebook Application
Stars: ✭ 75 (-99.62%)
Mutual labels:  self-driving-car, autonomous-driving, autonomous-vehicles
Error-State-Extended-Kalman-Filter
Vehicle State Estimation using Error-State Extended Kalman Filter
Stars: ✭ 100 (-99.5%)
Mutual labels:  self-driving-car, autonomous-driving, autonomous-vehicles
dig-into-apollo
Apollo notes (Apollo学习笔记) - Apollo learning notes for beginners.
Stars: ✭ 1,786 (-90.99%)
Mutual labels:  self-driving-car, autonomous-driving, autonomous-vehicles
Dig Into Apollo
Apollo notes (Apollo学习笔记) - Apollo learning notes for beginners.
Stars: ✭ 903 (-95.44%)
Mutual labels:  autonomous-driving, self-driving-car, autonomous-vehicles
SelfDrivingRCCar
Autonomous RC Car using Neural Networks, Python and Open CV
Stars: ✭ 102 (-99.49%)
Mutual labels:  self-driving-car, autonomous-driving, autonomous-vehicles
Carla
Open-source simulator for autonomous driving research.
Stars: ✭ 7,012 (-64.61%)
Mutual labels:  autonomous-driving, self-driving-car, autonomous-vehicles
Autonomousdrivingcookbook
Scenarios, tutorials and demos for Autonomous Driving
Stars: ✭ 1,939 (-90.21%)
Mutual labels:  autonomous-driving, self-driving-car, autonomous-vehicles
SelfDrivingCarsControlDesign
Self Driving Cars Longitudinal and Lateral Control Design
Stars: ✭ 96 (-99.52%)
Mutual labels:  self-driving-car, autonomous-driving, autonomous-vehicles
highway-path-planning
My path-planning pipeline to navigate a car safely around a virtual highway with other traffic.
Stars: ✭ 39 (-99.8%)
Mutual labels:  self-driving-car, autonomous-driving, autonomous-vehicles
WIMP
[arXiv] What-If Motion Prediction for Autonomous Driving ❓🚗💨
Stars: ✭ 80 (-99.6%)
Mutual labels:  self-driving-car, autonomous-driving, autonomous-vehicles
OpenHDMap
An open HD map production process for autonomous car simulation
Stars: ✭ 152 (-99.23%)
Mutual labels:  autonomous-driving, autonomous-vehicles
opendlv
OpenDLV - A modern microservice-based software ecosystem powered by libcluon to make vehicles autonomous.
Stars: ✭ 67 (-99.66%)
Mutual labels:  self-driving-car, autonomous-driving
Matlabrobotics
MATLAB sample codes for mobile robot navigation
Stars: ✭ 332 (-98.32%)
Mutual labels:  autonomous-driving, autonomous-vehicles

Build Status Simulation Status


We choose to go to the moon in this decade and do the other things,

not because they are easy, but because they are hard.

-- John F. Kennedy, 1962

Welcome to Apollo's GitHub page!

Apollo is a high performance, flexible architecture which accelerates the development, testing, and deployment of Autonomous Vehicles.

For business and partnership, please visit our website.

Table of Contents

  1. Introduction
  2. Prerequisites
  3. Individual Versions
  4. Architecture
  5. Installation
  6. Quick Starts
  7. Documents

Introduction

Apollo is loaded with new modules and features but needs to be calibrated and configured perfectly before you take it for a spin. Please review the prerequisites and installation steps in detail to ensure that you are well equipped to build and launch Apollo. You could also check out Apollo's architecture overview for a greater understanding of Apollo's core technology and platforms.

Prerequisites

[New 2021-01] The Apollo platform (stable version) is now upgraded with software packages and library dependencies of newer versions including:

  1. CUDA upgraded to version 11.1 to support Nvidia Ampere (30x0 series) GPUs, with NVIDIA driver >= 455.32
  2. LibTorch (both CPU and GPU version) bumped to version 1.7.0 accordingly.

We do not expect a disruption to your current work, but to ease your life of migratation, you would need to:

  1. Update NVIDIA driver on your host to version >= 455.32. (Web link)
  2. Pull latest code and run the following commands after restarting and logging into Apollo Development container:
# Remove Bazel output of previous builds
rm -rf /apollo/.cache/{bazel,build,repos}
# Re-configure bazelrc.
./apollo.sh config --noninteractive

  • The vehicle equipped with the by-wire system, including but not limited to brake-by-wire, steering-by-wire, throttle-by-wire and shift-by-wire (Apollo is currently tested on Lincoln MKZ)

  • A machine with a 8-core processor and 16GB memory minimum

  • NVIDIA Turing GPU is strongly recommended

  • Ubuntu 18.04

  • NVIDIA driver version 455.32.00 and above (Web link)

  • Docker-CE version 19.03 and above (Official doc)

  • NVIDIA Container Toolkit (Official doc)

Please note, it is recommended that you install the versions of Apollo in the following order: 1.0 -> whichever version you would like to test out. The reason behind this recommendation is that you need to confirm whether individual hardware components and modules are functioning correctly, and clear various version test cases before progressing to a higher and more capable version for your safety and the safety of those around you.

Individual Versions:

The following diagram highlights the scope and features of each Apollo release:

Apollo 1.0:

Apollo 1.0, also referred to as the Automatic GPS Waypoint Following, works in an enclosed venue such as a test track or parking lot. This installation is necessary to ensure that Apollo works perfectly with your vehicle. The diagram below lists the various modules in Apollo 1.0.

Apollo 1.5:

Apollo 1.5 is meant for fixed lane cruising. With the addition of LiDAR, vehicles with this version now have better perception of its surroundings and can better map its current position and plan its trajectory for safer maneuvering on its lane. Please note, the modules highlighted in Yellow are additions or upgrades for version 1.5.

Apollo 2.0:

Apollo 2.0 supports vehicles autonomously driving on simple urban roads. Vehicles are able to cruise on roads safely, avoid collisions with obstacles, stop at traffic lights, and change lanes if needed to reach their destination. Please note, the modules highlighted in Red are additions or upgrades for version 2.0.

Apollo 2.5:

Apollo 2.5 allows the vehicle to autonomously run on geo-fenced highways with a camera for obstacle detection. Vehicles are able to maintain lane control, cruise and avoid collisions with vehicles ahead of them.

Please note, if you need to test Apollo 2.5; for safety purposes, please seek the help of the
Apollo Engineering team. Your safety is our #1 priority,
and we want to ensure Apollo 2.5 was integrated correctly with your vehicle before you hit the road.

Apollo 3.0:

Apollo 3.0's primary focus is to provide a platform for developers to build upon in a closed venue low-speed environment. Vehicles are able to maintain lane control, cruise and avoid collisions with vehicles ahead of them.

Apollo 3.5:

Apollo 3.5 is capable of navigating through complex driving scenarios such as residential and downtown areas. The car now has 360-degree visibility, along with upgraded perception algorithms to handle the changing conditions of urban roads, making the car more secure and aware. Scenario-based planning can navigate through complex scenarios, including unprotected turns and narrow streets often found in residential areas and roads with stop signs.

Apollo 5.0:

Apollo 5.0 is an effort to support volume production for Geo-Fenced Autonomous Driving. The car now has 360-degree visibility, along with upgraded perception deep learning model to handle the changing conditions of complex road scenarios, making the car more secure and aware. Scenario-based planning has been enhanced to support additional scenarios like pull over and crossing bare intersections.

Apollo 5.5:

Apollo 5.5 enhances the complex urban road autonomous driving capabilities of previous Apollo releases, by introducing curb-to-curb driving support. With this new addition, Apollo is now a leap closer to fully autonomous urban road driving. The car has complete 360-degree visibility, along with upgraded perception deep learning model and a brand new prediction model to handle the changing conditions of complex road and junction scenarios, making the car more secure and aware.

Apollo 6.0:

Apollo 6.0 incorporates new deep learning models to enhance the capabilities for certain Apollo modules. This version works seamlessly with new additions of data pipeline services to better serve Apollo developers. Apollo 6.0 is also the first version to integrate certain features as a demonstration of our continuous exploration and experimentation efforts towards driverless technology.

Architecture

  • Hardware/ Vehicle Overview

  • Hardware Connection Overview

  • Software Overview

Installation

Congratulations! You have successfully built out Apollo without Hardware. If you do have a vehicle and hardware setup for a particular version, please pick the Quickstart guide most relevant to your setup:

Quick Starts:

Documents

  • Technical Tutorials: Everything you need to know about Apollo. Written as individual versions with links to every document related to that version.

  • How-To Guides: Brief technical solutions to common problems that developers face during the installation and use of the Apollo platform

  • Specs: A Deep dive into Apollo's Hardware and Software specifications (only recommended for expert level developers that have successfully installed and launched Apollo)

  • FAQs

Questions

You are welcome to submit questions and bug reports as GitHub Issues.

Copyright and License

Apollo is provided under the Apache-2.0 license.

Disclaimer

Apollo open source platform only has the source code for models, algorithms and processes, which will be integrated with cybersecurity defense strategy in the deployment for commercialization and productization.

Please refer to the Disclaimer of Apollo in Apollo's official website.

Connect with us

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].