A curated list of awesome CARLA tutorials, blogs, and related projects.
π Table of Contents π
CARLA has been developed from the ground up to support development, training, and validation of autonomous driving systems. In addition to open-source code and protocols, CARLA provides open digital assets (urban layouts, buildings, vehicles) that were created for this purpose and can be used freely. The simulation platform supports flexible specification of sensor suites, environmental conditions, full control of all static and dynamic actors, maps generation and much more. More info here.
- 0.9.11 (Linux and Windows) official release
- 0.9.10 (Linux and Windows) official release
- 0.9.9 (Linux and Windows) official release
- 0.9.8 (Linux and Windows) official release
- 0.9.7 (Linux only) official release
- 0.9.7 (windows unofficial release) + Python API found at Discord uploaded by @edufrikuto => NOT tested!
- 0.9.6 (Linux only) official release
- 0.9.6 (Windows x64 unofficial release made by me!) - Unzip with 7-Zip or WinRAR => after run CARLA, Unreal installs pre-requirements automatically if needed. also for Python API see this issue
- 0.8.4 (Linux & Windows) official release
- Main source code
- Traffic scenario definition and execution engine - Work with 0.9.2 and up
- ROS bridge for CARLA Simulator - Work with 0.9.4 and up
- Reinforcement learning baseline agent trained with the Actor-critic (A3C) algorithm - Work with 0.8.x versions only
- Repository to store conditional imitation learning based AI that runs on CARLA - Work with 0.8.x versions only
- Repository to store different driving benchmarks that run on the CARLA simulator - Work with 0.8.x versions only
- Data collector, also contains an client side agent - Work with 0.8.x versions only
- Standalone GUI application to enhance RoadRunner maps with traffic lights and traffic signs information
- Integration of AutoWare AV software with the CARLA simulator - Work with 0.9.6
Tutorials π π π π
- Introduction to the CARLA simulator: training a neural network to control a car
- Setting up CARLA Simulator for the Self-Driving Cars Specialization
- Official Doc
- Coursera(self-driving-cars)
- Model-free Deep Reinforcement Learning for Urban Autonomous Driving
- Self-driving cars with Carla and Python(Sentdex Tutorials)
- My Bibliography for Research on Autonomous Driving
Sample Codes / Projects πππ
- Reinforcement learning official repoistory - Work with 0.8.x versions only
- Use Reinforcement Learning to train an autonomous driving agent in CARLA Simulator - Use version 0.8.2
- Autonomous Driving on Carla simulator using Deep Deterministic Policy Gradients - Use version 0.8.2
- CIRL: Controllable Imitative Reinforcement Learning for Vision-based Self-driving - version 0.8.2(seems)
- customized PPO based agent for Carla - Use version 0.9.5
- Setting up Reinforcement Learning Environment for CARLA Autonomous Driving Simulator - Use version 0.8.0
- Reinforcement Learning Coach by Intel AI Lab - Use version 0.8.4
- What is candy? A model with the structure: Hierarchical Observation(Plan&Policy)Hierarchical Actions - Use version 0.8.2
- Reinforcement Learning codebase for self-driving car in Carla - Use version 0.9.5
- Double DQN to train an agent how to drive autonomously - Use version 0.8.x (seems)
- Reinforcement Learning Experiments on Carla
- Hands-On-Intelligent-Agents-with-OpenAI-Gym - Use version 0.8.x
- An OpenAI gym wrapper for CARLA simulator
- Reproducing : https://github.com/intel-isl/DirectFuturePrediction And applying to gym and CARLA
- CARLA real traffic scenarios
- DI-drive: Decision Intelligence Auto-driving platform with Carla
- Intersection CARLA Gym: OpenAI Gymnasium Wrapper for Intersection Scenarios in CARLA - Dockerized
- imitation-learning official repository
- Training framework for conditional imitation learning - Use version 0.8.x
- Carla Imitation Learning Trainer - Use version 0.8.x
- A pytorch implementation to train the conditional imitation learning policy - Use version 0.8.x (seems)
- Carla-Imitation-Learning ETHZ
- Keras implementation of Conditional Imitation Learning
- Driving in CARLA using waypoints and two-stage imitation learning - Use version 0.9.6
- Module for deep learning powered, stateful imitation learning in the CARLA autonomous vehicle simulator - Use version 0.8.4
- Exploring Distributional Shift in Imitation Learning
Multi-Agent π
- Learning Environments for Multi-Agent Connected Autonomous Driving (MACAD) - Use version 0.9.x
- Build system for the new architecture of CARLA(supports multi-client multi-agent communication)
Detection π
- Module for car detection - Use version 0.8.4
- Module for detecting traffic lights in the CARLA - Use version 0.8.4
- CARLA-Lane_Detection - Use version 0.9.6
- Labeled Dataset for Object Detection in Carla Simulator
- Tensorflow-Carla-Object-Detection
- Detect CARLA Simulator's Traffic Speed Sign using YOLO v3
- Generating training data from the Carla driving simulator in the KITTI dataset format - Use version 0.8.x
- An application of Tensorflow's object detection API to the Carla simulator - Use version 0.8.4
- Autonomous car chase: The repository presents a system that can autonomously chase another vehicle
Segmentation π΄
- DAVID: Densely Annotated Video Driving Data Set
- Image segmentation using U-Net
- Semantic segmentation for carla dataset
- Semantic Instance Geometry Network for Unsupervised Perception
- Won 28th place in this competition to accurately detect cars and road
Data Collection/Generating πΎ
- A CARLA controller for generating datasets and end-to-end models for autonomous vehicle control
- Carla Simulator Data Collector (semantic segmentation) - Use version 0.8.4
- A simple tool for generating training data from the Carla driving simulator
- Script for extracting semantic segmentation/depth prediction dataset out of Carla Urban Driving Simulator
- Generate visual navigation data for CARLA - 0.9.5
- Multi-View Region of Interest Prediction for Autonomous Driving Using Semi-Supervised Labeling
- CARLA-KITTI: Yet another data collector generates inputs/outputs for the KITTI 2D/3D Object Detection task - Use version 0.9.10
Control π₯
- Implement Motion Planning for autonomous car on CARLA simulator
- Longitudinal and lateral car Controller in python for Carla Car Simulator
- Implementing Lane Keeping Assist (LKA) on CARLA simulator - Use version 0.8.x
- Self Driving Cars Longitudinal and Lateral Control Design - Use version 0.8.x
- Implementing Lane Keeping Assist (LKA) on CARLA simulator
- CARLA_Motion_Planning_for_Self-Driving_Cars_Project
- Repository for the infinite horizon controller and the preview path tracking controller for Carla-Vehicle assets
- CARMASimulation for vehicle dynamic
- Adaptive Cruise Control System (ACC) in the CARLA Simulator
Other π¦
- Autonomous driving platform running on the CARLA simulator <==
- MATLAB Carla Interface
- Dockerfile to use CARLA ROS bridge on Docker container
- The OmniScape Dataset - Use version 0.9.x
- ROS bridge for CARLA simulator - Use version 0.9.2 and up
- Small example for loading the CARLA data from the PRECOG paper - Use version0.8.x (seems)
- A scenario loader for the automotive simulator - Use version 0.9.3
- My playground with Carla - Use version 0.8.x
- Simulate precise LiDAR point cloud data from Carla - Use version 0.9.6
- C++ Client for Unreal Engine 4 running Carla
- Carla Display on Browser - Use version 0.9.6
- Dockerfile to use CARLA ROS bridge on Docker container - Use version 0.9.6
- A traffic rules monitor for the CARLA simulator
- Alpha Drive is a platform providing cloud-based tools for testing and validation of AI algorithms in simulation
- Code to generate instance masks for SIGNet, adapted for the CARLA simulator
- Exercises from the Self-Driving Cars Specialization by the University of Toronto on Coursera
- Exercises from the Self-Driving Cars Specialization by the University of Toronto on Coursera - 2
- Platform for Ethical Decision Making in Autonomous Vehicles
- Carla-Simulator environment compatible with Ray/Rllib
- VNC/SSH Carla server inside a docker container
- CARLA Simulator integration for the da Vinci Research Kit
- Additional clients examples for Carla
- TELECARLA: An Open Source Extension of the CARLA Simulator for Teleoperated Driving Research Using Off-the-Shelf Components
- Traffic-Aware Multi-View Video Stream Adaptation for Teleoperated Driving
- "Learning by Cheating" (CoRL 2019) submission for the 2020 CARLA Challenge
- Simple rule-based Carla Parking manoeuver - ROS integration
- Adversarial Attacks injection in Carla
- Privacy-Aware Personalized ADAS Research
- ScenarioRunner for CARLA
- Carla-GUI: tool to help human-vehicle interaction researchers design and conduct traffic experiments
- Predicting collisions using deep learning(CNN+LSTMs) for Carla
- Pylot is an autonomous vehicle platform for developing and testing autonomous vehicle components (from the ERDOS project)
- Running CARLA on cloud (AWS EC2)
- Running CARLA on Google Colab
Your contributions are always welcome!
If you want to contribute to this list (please do), send me a pull request Also, if you notice that any of the above listed repositories should be deprecated, due to any of the following reasons:
- Repository's owner explicitly say that "this library is not maintained".
- Not committed for long time (2~3 years).
More info on the guidelines
Licensed under the Creative Commons CC0 License.
Join Disocrd of Carla: