I deeply believe that simulators are crucial in developing a good self-driving system. Not everyone will have access to quality self-driving hardware platforms, therefore software simulator is a nature incubator for cutting-edge research and development.

Personally, I have been having quite a lot of problems with acquiring sensors and building the hardware, which serves as the motivation behind me integrating this simulator to the project.

Carla Simulator

The Carla Simulator

The Carla team describes the platform as “an open-source simulator for autonomous driving research. CARLA has been developed from the ground up to support the development, training, and validation of autonomous urban 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 and environmental conditions.”

Carla is still under heavy development right now. Here is a video showing Carla’s features.

ROS Bridge

Carla was initially made for software researchers, and it naturally provides a great interface in Python. However, as you might have learned, I have migrated the entire code base to ROS (Robot Operating System). The open source community developed a Python->ROS bridge for Carla that would allow the self-driving software run on Carla as it is, without modifications.

simulator

This is a RVIZ screenshot of the Carla simulator and ROS bridge running. As you can see, the lidar from the simulation is visualized with the point cloud. There are three camera views, one for depth, segmentation and raw image.

If you are interested in setting up the Carla simulator with this ROS bridge, please check out the Github repo and the corresponding documentation.

Limitations

All simulators have advantages and limitations. While Carla provides a great environment with lidars and cameras, it’s missing key features as well. First of all, Carla only supports two driving environments, and those two towns do not have highways or other types of roads. Maps and other key navigation features are obscure. Furthermore, there is no customization to sensors and vehicles. I know that I am asking for too much, but the team is working on these features.

I there is a gap between my Carla bridge and the ROS software. I will bridge that gap in the days to come.

Thanks for stopping by, if you have any questions, comments or concerns, please let me know. My email is: contact@neilnie.com. If you liked this post, please leave a like!

Posted by:NeilNie

Student at Columbia University, School of Engineering and Applied Sciences. Prev. software engineer intern at Apple. More than six years of experience developing iOS and macOS applications. Experienced in electrical engineering/microcontrollers. From publishing several apps to presented a TEDx talk in machine learning. Striving to use my knowledge, skills, and passion to positively impact the world.

9 replies on “Self-Driving Software + Carla Simulator

Leave a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.