Open source technologies are solving many of our most pressing problems, in part because the open source model of cooperation, collaboration, and almost endless iteration creates an environment where problems are more readily solved. As the adage goes, "given enough eyeballs, all bugs are shallow."
However, self-driving vehicle technology is one rapidly growing area that hasn't been greatly influenced by open source. Most of today's autonomous vehicles, including those from Volkswagen, BMW, Volvo, Uber, and Google, ride on proprietary technology, as companies seek to be the first to deliver a successful solution. That changed recently with the launch of Baidu's Apollo.
Apollo is an open and secure autonomous driving platform with a flexible architecture. Launched in July 2017, Apollo was recently recognized by Black Duck as one of its Open Source Rookies of 2018.
Apollo, an open source project (under the Apache 2.0 license), aims to become "the Android of the auto industry." As Infoworld described, "Apollo enables Tier 1 providers, vehicle makers, and startups to build their own autonomous vehicles without the burden of reinventing the wheel."
How Apollo's autonomous driving platform works
While most of us can look in just one or two directions while we're driving, autonomous driving platforms use lidar- and radar-based obstacle perception sensors to "see" in all directions at the same time. Apollo can sense vehicles in front of the vehicle, follow at a set distance, see traffic lights, and make its way through intersections. It can also detect and classify objects that pass by it, such as cars, bicycles, and pedestrians.
The ApolloScape dataset, which is key to the solution, is also open source. The dataset's 26 predefined semantic terms accurately classify what the system sees and how it reacts to its environment. It is this level of complexity that makes ApolloScape so appealing.
According to a recent Medium article, "Apollo gives developers access to a complete set of service solutions and open source codes and can enable, for example, a software engineer to convert a Lincoln MKZ into a self-driving vehicle in about 48 hours."
With Apollo, Baidu has sought to leverage the artificial intelligence (AI) and machine learning communities, and it teamed with Berkeley DeepDrive to help expedite the research process. Berkeley DeepDrive's mission is to merge deep learning with automotive perception. It also brings a large number of industry partners to Apollo, including Toyota, Hyundai, Ford, Nvidia, and Honda.
Baidu is also a founding member of the Linux Foundation's LF Deep Learning Foundation, which supports open source innovation in artificial intelligence, machine learning, and deep learning.
Apollo's 1.0 release last July attracted 50 partners, and version 2.0, released in January 2018, has nearly doubled that to 90 industry partners, including Bosch, Daimler, Delphi, Ford, Hyundai, TomTom, and others. Engadget says Baidu is committed to supporting the Intel, NXP, NVidia, and Renesas computing platforms and is working to develop more cost-effective sensors that integrate Apollo into a wide variety of vehicles, including ridesharing and public transportation.
Learn more and get involved
Baidu has teamed with Udacity to develop a course on self-driving cars for anyone who would like to learn more about the technology.
If you'd like to get involved or just look deeper into the Apollo project, you can access its source code, documentation, how to's, and more on GitHub, and even find out how to get involved as a contributor.
In the meantime, we have some questions for you. What do you think are the biggest challenges with open autonomous vehicles? What else do you want to know about this project? Why is it important this project is open source? Please share your ideas in the comments.