Google open-sourced its real-time localization and mapping library


Real-time Simultaneous localization and mapping (SLAM) is a critical component of all autonomous platforms, be it self-driving cars, drones or … self-parking chairs (nope, not kidding); Autonomous systems need to be able to locate their position on the map and simultaneous create a map of their environment to function.

Introducing Cartographer 

Google just open-sourced its SLAM library called “Cartographer” that they had been using internally for a while now for indoor mapping and most probably also with their Tango Smartphone and self-driving cars.

If the name Cartographer sounds familiar, it’s because Google had launched a backpack mapping platform by the same name back in 2014 (Related: Google unveils The Cartographer – its backpack for mapping indoors).

Cartographer, is a real-time SLAM library that works both in 2D and 3D environment, with the ability to combine data from different sensors (LIDAR, IMU and Camera) to simultaneously compute the position of the device and create a map of the device’s surroundings. Here’s the link to the IEEE paper (pay-walled) where a detailed description of Cartographer’s 2D algorithms are available.

Youtube video description: Demonstrates Cartographer’s real-time 3D SLAM. The blue arrow shows the position and orientation of the backpack in 6 DoF. The yellow line is the trajectory. This is an X-ray visualization that indicates vertical density of occupied space. Pixels on the map become darker and lighter as the number of occupied voxels along the z-axis increase and decrease respectively. This data was collected in the Deutsches Museum. – Cartographer, YouTube page

Why Open-Source it?

For the same reason, why TensorFlow, the AI Engine that powers many of the Google apps we use everyday (Photos, Translate and more) was open sourced – get more people involved and increase the capabilities of the library. As the mentioned in the VentureBeat article about this topic, Cartographer isn’t the only open-source SLAM library out there (e.g. hector_slam from TU Darmstadt). By open-sourcing its library, Google has the opportunity to get researchers to use its library to solve more problems than they could possibly attempt to solve if they kept it in-house.

Considering that Indoor mapping and self-driving cars are two areas where Google has invested a lot of time and energy recently, open-sourcing Cartographer could very well serve as a platform to recruit researchers and programmers who are skilled in SLAM for its projects.

But none of these reasons, diminish the collective benefit of having a powerful SLAM library like Cartographer available for use by everyone. On a related side note, it’s going to be interesting to see if anyone utilises the library for the latest Udacity self-driving car challenge on Image-Based Localization.


Open Data for SLAM 

In addition to open-sourcing its library, Google also announced that they will be releasing 3 years of LIDAR and IMU data collected using the mapping backpack platform during the  development of Cartographer in the world’s largest tech museum in the world (any guesses? here’s the answer).