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


