Новая технология от MIT позволяет смоделировать 3D-карту местности/помещения с помощью обычной видеокамеры.



Суть в том, что обычная камера снимает окружение и запоминает его с помощью специального алгоритма. Как только камера после своего кругового путешествия возвращается к начальной точке маршрута, алгоритм понимает, что это одно и то же место, и быстро «сшивает» концы пространства, образуя связную 3D-карту.


«У меня есть мечта сделать полную модель всего Массачусетского технологического института» — говорит Джон Леонард, который занимается информатикой в лаборатории искусственного интеллекта MIT'a. «С помощью этой 3D карты абитуриенты смогли бы „плавать“ по MIT'у как рыбы в большом аквариуме. Там еще многое предстоит сделать, но я думаю, что это выполнимо.»

Леонард, Уилан и другие члены команды — Майкл Каесс из Массачусетского технологического института и Джон Макдональд из национального университета Ирландии — представят свои работы на 2013-й Международной конференции по интеллектуальным рóботам и системам в Токио.

Устройство, принцип действия



Проблема миллионов точек

Камера Kinect снимает цветное изображение, а датчик глубины измеряет расстояние до каждого пикселя полученного изображения. Эти данные могут быть обработаны приложением для создания 3D-карты.

В 2011 году группа из королевского колледжа Лондона и Microsoft Research разработала приложения для подобного 3D-моделирования под названием KinectFusion, которое успешно строит 3D-модели в реальном времени. Получаются очень детализированные модели пространства, с разрешением меньше сантиметра, но только для ограниченной фиксированной области в пространстве.

Уилан, Леонард и их команда попытались разработать методику для создания 3D-карт с одинаково высоким разрешением на сотни метров, в различных условиях и в реальном времени. Цель, отмечают они, была амбициозной с точки зрения данных: смоделированное окружение будет состоять из миллионов 3D точек. Чтобы создать точную карту, нужно было бы определить, какие однородные участки можно выровнять без ущерба для качества миллионов других отличающихся участков. Пре��ыдущие исследовательские группы решали эту проблему при помощи повторных съемок — непрактичный подход, если вы хотите создать карту в реальном времени.

Вместо этого, Уилан и его коллеги придумали гораздо быстрый подход, при котором камера снимает пространство в два этапа: используется первая камера на передней части устройства и вторая камера на задней части устройства.

В передней части устройства исследователи разработали алгоритм отслеживания положения камеры в любой момент по своему маршруту. Так как Kinect-камера делает 30 кадров в секунду, алгоритм показывает, сколько и в каком направлении движется камера между кадрами. В это же время, алгоритм создает 3D-модель, состоящую из облака мелких кусочков — поперечных сечений тысяч 3D-точек в непосредственном окружении. Каждый кусочек облака связан с конкретной позицией камеры.

По мере того, как камера перемещается вниз по коридору, кусочки облака включается в глобальную 3D-карту.

Камера в задней части устройства вновь снимает окружение, находит знакомые кусочки, соответствующие положению камеры и достраивает недостающие кусочки. Таким образом, устройство автоматически присваивает расположение облака кусочков положению камеры вместо того, чтобы запоминать расположение каждого из кусочков в отдельности.

Команда использовала свою технику, чтобы создать 3D-карты центра Массачусетского технологического института, а также крытые и открытые места в Лондоне, Сиднее, Германии и Ирландии. В будущем группа предполагает, что метод может быть использован, чтобы дать роботам гораздо богаче информации об их окружении. Например, 3D-карта не только поможет роботу решить, повернуть налево или направо, но и представить более подробную информацию.

«Представьте, что робот мог бы посмотреть на одну из этих карт и сказать при пожаре где находится огнетушитель, или принимать другие разумные действия, исходя из обстановки», говорит Уилан. «Это системы типа „увидел и сделал“, и мы чувствуем, что есть большой потенциал для такого вида техники.»

Костас Данилидис, профессор компьютерных и информационных наук в Университете штата Пенсильвания, рассматривает устройство исследовательской группы как полезный метод для использования роботов в повседневных задачах, а также в строительной инспекции.

«Система, которая сводит к минимуму погрешности в режиме реального времени позволяет газонокосилке или пылесосу вернуться в то же положение без использования специальных маркеров. Эта же идея применима и к навигации марсохода.» — говорит Данилидис, который не принимал участия в исследовании. «Это устройство делает возможным использование точных 3D-моделей окружения для проверки в архитектуре или инфраструктуре. Было бы интересно посмотреть, как же устройство ведет себя в сложных климатических условиях.»

Это исследование получило поддержку от Научного фонда Ирландии, ирландского совета по исследованиям и управления военно-морских исследований.