ARCore

ARCore, также известный как Google Play Services for AR — комплект разработки программного обеспечения (SDK), разработанный компанией Google, позволяющий создавать приложения дополненной реальности[1]. Программный комплекс смешивает виртуальный контент с реальным миром, видимым через камеру смартфона или планшета. ARCore поддерживается на многих устройствах под управлением Android, iOS[2].

Что важно знать
ARCore
Тип комплект разработки программного обеспечения
Разработчик Google
Написана на Java, C++, C#
Интерфейс API
Операционные системы Android, iOS
Первый выпуск 29 августа 2017
Аппаратная платформа Android
Последняя версия
Лицензия проприетарная
Сайт developers.google.com/ar

Технологии

ARCore использует три основные технологии для интеграции виртуального контента с окружающей средой[3]:

  • Motion tracking (отслеживание движения) позволяет устройству определять и отслеживать своё положение относительно окружающего мира. ARCore определяет визуально различимые особенности на изображении с камеры и использует эти точки для вычисления изменения положения. Визуальная информация комбинируется с данными инерциальных сенсоров устройства для оценки положения и ориентации камеры по отношению к миру во времени.
  • Environmental understanding (понимание окружения) даёт возможность обнаруживать размер и расположение различных типов поверхностей: горизонтальных, вертикальных или наклонных, таких как пол, стол или стены. ARCore распознаёт кластеры, которые лежат на одной плоскости, и предоставляет эти поверхности приложению в виде геометрических плоскостей. Кроме того, определяется граница каждой плоскости и передаётся в приложение — это позволяет размещать виртуальные объекты на плоских поверхностях.
  • Light estimation (оценка освещения) предоставляет оценку текущих условий освещения и отдаёт приложению средние параметры интенсивности и цветовой коррекции для изображения с камеры, что необходимо для гармоничного освещения виртуальных объектов в соответствие с условиями окружающего мира.

Возможности

ARCore также реализует и другие функции для работы с дополненной реальностью[4]:

  • Отслеживание движущихся изображений, например, рекламного щита на движущемся автобусе. Изображения могут компилироваться офлайн для создания базы данных или добавляться с устройства в реальном времени. После регистрации ARCore обнаруживает такие изображения, определяет их границы и возвращает соответствующее положение.
  • Построение карт глубины, которые содержат сведения о расстоянии до поверхностей относительно заданной точки с использованием основной RGB-камеры поддерживаемого устройства. Эти карты глубины используют для более реалистичного взаимодействия виртуальных объектов с реальными, что позволяет создавать эффект окклюзии (перекрытия объектов).
  • Совместный доступ к камере, благодаря которому приложения могут одновременно использовать камеру устройства с ARCore или передавать управление другой программе.
  • Использование ARCore как источника данных для моделей машинного обучения — для распознавания объектов, жестов, эмоций и других элементов окружающего мира.

Среды разработки и совместимость

ARCore поддерживает такие среды разработки, как Java/Android Studio, Unity, Unreal Engine, WebXR и другие. Также ARCore совместим с другими сервисами Google, включая Google Maps Platform, Firebase и ML Kit[5].

Примечания