Технология дополненной реальности AR

Дополненная реальность – одна из многих технологий взаимодействия человека и компьютера. Ее специфика заключается в том, что она программным образом визуально совмещает два изначально независимых пространства: мир реальных объектов вокруг нас и виртуальный мир, воссозданный на компьютере.

Новая виртуальная среда образуется путем наложения запрограммированных виртуальных объектов поверх видеосигнала с камеры, и становится интерактивной путем использования специальных маркеров.

Дополненная реальность уже много лет используется в медицине, в рекламной отрасли, в военных технологиях, в играх, для мониторинга объектов и в мобильных устройствах.

Основа технологии дополненной реальности – это система оптического трекинга. Это значит, что «глазами» системы становится камера, а «руками» - маркеры. Камера распознает маркеры в реальном мире, «переносит» их в виртуальную среду, накладывает один слой реальности на другой и таким образом создает мир дополненной реальности.

Существуют три основных направления в развитии этой технологии:

«Безмаркерная» технология AR

«Безмаркерная» технология работает по особым алгоритмам распознавания, где на окружающий ландшафт, снятый камерой, накладывается виртуальная «сетка». На этой сетке программные алгоритмы находят некие опорные точки, по которым определяют точное место, к которому будет «привязана» виртуальная модель. Преимущество такой технологии в том, что объекты реального мира служат маркерами сами по себе и для них не нужно создавать специальных визуальных идентификаторов.

AR технология на базе маркеров

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

«Пространственная» технология

Кроме маркерной и безмаркерной, существует технология дополненной реальности, основанная на пространственном расположении объекта. В ней используются данные GPS/ГЛОНАСС, гироскопа и компаса, встроенного в мобильный телефон. Место виртуального объекта определяется координатами в пространстве. Активация программы дополненной реальности происходит при совпадении координаты, заложенной в программе, с координатами пользователя.

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

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

Примеры приложений с AR технологиями

Оборудование для AR технологий

Для работы с технологией дополненной реальности обязательно необходимы следующие компоненты:

  • Графическая станция. Это может быть мобильный телефон, ноутбук, персональный компьютер, графическая рабочая станция с профессиональной видеокартой. Одним словом, компьютер.
  • Дисплей. Экран телефона, телевизор, монитор, моно или стерео дисплей, проекционный экран.
  • Камера. Благодаря камере мы получаем «слепок» реального мира, на который специальное программное обеспечение накладывает виртуальные объекты.
  • Метки, или маркеры.
  • Программное обеспечение. Математические алгоритмы, которые позволяют камере увидеть и распознать метку (маркер) в окружающем пространстве, а затем определить, какая именно модель программно «привязана» к метке. И, наконец, «положить» эту модель на метку таким образом, чтобы виртуальный 2D или 3D объект повторял любое движение реальной метки.

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

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

После этого, как бы мы ни передвигали метку в реальном пространстве, виртуальная 3D модель на ней будет точно следовать за движением метки.

К сожалению, маркерная технология, как и  любая другая технология, имеет ряд возможных проблем в работе с метками. Бывает, что при движении метки объект может «соскочить» с нее или вовсе исчезнуть с экрана. Это означает, что камера просто перестала «видеть» метку. Есть пять основных причин для этого.

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

Вторая проблема – это расположение реальной метки в пространстве по отношению к камере. Поскольку камера должна четко и целиком видеть рамку метки, она не сможет распознать ее, если метка будет под наклоном или если область рамки будет закрыта, например, рукой. Еще одна причина – слишком быстрое перемещение метки из стороны в сторону. Большинство любительских камер просто не успевает отследить ее перемещения по частоте кадров в секунду и «теряет» метку вместе с моделью.

Если первые две сложности легко устранить, просто следуя инструкции по применению, то есть и третья, более серьезная проблема. Она связана с калибровкой камеры. Калибровка нужна, чтобы построить модель реальной камеры в компьютерном пространстве.

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

Еще одна проблема, которая часто относится к web-камерам, - это низкое разрешение камеры. Любительская оптика, тем более встроенные камеры на ноутбуках, как правило, не обладают хорошими объективами с высоким разрешением. Поэтому они дают больше нелинейных искажений и проблем в работе с метками дополненной реальности. Например, если метка будет находиться слишком далеко от камеры или на границе ее видимости, то последняя ее просто «не увидит». Этот вопрос решается покупкой камеры с более высоким разрешением и ее последующей калибровкой.

И последняя проблема – это программное обеспечение. Некоторые алгоритмы распознавания могут иметь ошибки и давать погрешности во время распознавания рамки и «чтения» картинки метки. В этом случае модели могут отображаться некорректно (например, на метке с совой может появиться совсем другой объект) или вовсе исчезать с экрана.

Аппаратная часть, для реализации базовых функций технологии дополненной реальности должна решать 3 основных задачи: получать видеопоток хорошего качества, иметь возможность обработать данный видеопоток и дополнить слоем с виртуальными объектами и, конечно же, вывести обработанные данные на устройства вывода для восприятия конечным пользователем.