Новая технология от 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-моделей окружения для проверки в архитектуре или инфраструктуре. Было бы интересно посмотреть, как же устройство ведет себя в сложных климатических условиях.»
Это исследование получило поддержку от Научного фонда Ирландии, ирландского совета по исследованиям и управления военно-морских исследований.
Автор: Michael134096