Компания Google выложила на GitHub исходники Cartographer — библиотеки для синхронного определения позиции и картографирования в реальном времени (Simultaneous Localization And Mapping, SLAM) с поддержкой Robot Operating System (ROS).

Алгоритмы SLAM используют показания лазерных радаров (LIDAR), инерционных датчиков движения (IMU), камер и т.п. для того, чтобы одновременно отслеживать перемещения сенсора и строить 2D- или 3D-карту ближайшего окружения.

Примером их применения являются новейшие модели роботов-пылесосов Roomba, в ходе уборки составляющие карту пола обслуживаемых помещений. Другие важные приложения SLAM это автономные машины, такие как роботы-погрузчики на автоматизированных складах и беспилотные летательные аппараты.

Благодаря интеграции с ROS и вкладу компаний-партнеров, Cartographer может применяться на нескольких роботизированных платформах, совместимых с ROS, таких как Toyota HSR, TurtleBots, PR2, Revo LDS.

Сама Google использует Cartographer в проектах визуализации памятников архитектуры, создания карт транспортных терминалов и музеев. В сотрудничестве с крупнейшим политехническим музеем в мире, Deutsches Museum, компания также предоставит открытому сообществу разработчиков коллекции данных LIDAR и IMU, собранные с помощью портативной (смонтированной в рюкзаке) платформы 2D/3D-картографирования за три года тестирования Cartographer.

Google рассчитывает, что демократизация процесса дальнейшей разработки ее технологий SLAM позволит расширить поддержку в Cartographer различных сенсоров и платформ, а также дополнить библиотеку новыми функциями, такими как локализация на имеющейся карте и ориентирование в условиях динамически меняющейся обстановки.