Table of Contents

Сравнение возможностей Mega и ARKit/ARCore

EasyAR Mega связан с ARKit от Apple и ARCore от Google, но также имеет отличия. Понимание их взаимосвязи и сильных сторон каждой технологии имеет решающее значение для разработчиков, стремящихся освоить механизмы работы Mega. Проще говоря, Mega может в полной мере использовать возможности отслеживания движения ARKit/ARCore, одновременно расширяя их для удовлетворения потребностей в позиционировании в больших пространствах, которые ARKit/ARCore не могут удовлетворить.

Основные отношения

  • ARKit/ARCore (Базовый уровень):

    • Это фреймворки для разработки AR, предоставляемые операционной системой устройства (iOS/Android).
    • Основная задача: восприятие окружения и отслеживание на уровне устройства. Например, использование камеры устройства и IMU для реализации одновременной локализации и построения карты (SLAM), обнаружения плоскостей, оценки освещенности, распознавания изображений/объектов и т.д.
    • Они предоставляют приложениям верхнего уровня стабильный поток данных о положении с 6 степенями свободы (6DoF) с низкой задержкой.
  • EasyAR Mega (Уровень приложения/платформы):

    • Это платформа для вычислений в сверхбольших пространствах.
    • Основная задача: с использованием предварительно построенных высокоточных 3D данных и передовых технологий визуального позиционирования обеспечить позиционирование в масштабах города с сантиметровой точностью и долговременной стабильностью. Использует базовые данные 6DoF от ARKit/ARCore для реализации отслеживания движения с сенсорным слиянием.
    • Mega не заменяет ARKit/ARCore. Она использует их для получения исходных данных о движении устройства в физическом мире, а затем, сопоставляя эти данные с картой Mega, «привязывает» их к единой системе координат с высокой точностью.

Сравнение функций и превосходство Mega

ARKit/ARCore также предоставляют определенные возможности распознавания пространства и позиционирования, такие как ARWorldMap в ARKit или Cloud Anchors/Geospatial API в ARCore. Эти функции имеют некоторое сходство с возможностями Mega по позиционированию в сверхбольших пространствах, но также имеют фундаментальные отличия. Ниже приведено детальное техническое сравнение.

Функциональность ARWorldMap Cloud Anchors/Geospatial API EasyAR Mega
Масштаб позиционирования Может сканировать и позиционировать в окружающей среде Может сканировать и позиционировать в окружающей среде Может сканировать и позиционировать в городских масштабах
Особенности позиционирования Может адаптироваться к изменениям среды Может адаптироваться к изменениям среды Может адаптироваться к изменениям среды, смене дня и ночи
Построение карты Собирается и строится на устройстве, совместное использование через локальную сеть Собирается и строится на устройстве, совместное использование через точки доступа Google Cloud Собирается специализированными устройствами и строится в облаке, совместное использование на любых устройствах через сервис облачного позиционирования
Окклюзия AR/VR Геометрическая окклюзия через Mesh, полученный сканированием LiDAR Окклюзия на основе глубины через Depth API Предоставление детализированных 3D-моделей с LOD для точной геометрической окклюзии
Кросс-платформенный опыт Поддержка совместного использования и взаимодействия только между устройствами iOS Совместное использование и взаимодействие между устройствами Android и iOS через точки доступа Google Cloud Совместное использование и взаимодействие между практически любыми устройствами (Android, iOS, XR-гарнитуры) через единый сервис облачного позиционирования
Технологические зависимости Работает только на устройствах с поддержкой ARKit, некоторые функции требуют дополнительного оборудования или ПО (например, LiDAR) Работает на устройствах с поддержкой ARKit или ARCore Широкая совместимость с различными устройствами, не требует обязательного наличия ARKit или ARCore

Одновременное использование с ARKit/ARCore

При интеграции EasyAR Mega вам обычно не нужно напрямую вызывать API ARKit или ARCore. Это очень важная концепция:

  • Приложение Mega автоматически получает доступный поток данных 6DoF от ARKit или ARCore в зависимости от устройства, на котором оно запущено.
  • Вам нужно использовать только унифицированный API MegaTracker для управления сервисом позиционирования и получения данных о положении. Внутри системы исходные данные от ARKit/ARCore автоматически объединяются в вычислениях, чтобы в итоге предоставить вам единый результат пространственного позиционирования с высокой точностью и непрерывным отслеживанием.
  • Такой подход значительно упрощает процесс разработки. Вам не нужно писать и поддерживать два набора кода для разных платформ или глубоко разбираться в сложных API ARKit/ARCore. Вы можете сосредоточиться на использовании функций EasyAR Mega для построения логики вашего приложения.
Совет

Исключение: Если вы хотите одновременно с позиционированием Mega использовать определенные функции ARKit/ARCore (например, People Occlusion в ARKit), вам, возможно, потребуется использовать смешанный вызов нативных API в приложении.


EasyAR Mega не конкурирует с ARKit/ARCore и не заменяет их, а дополняет и работает с ними в синергии. ARKit/ARCore решают вопрос: «Как устройство движется в среде?», тогда как EasyAR Mega решает вопрос: «Как все устройства точно позиционируются в одном огромном пространстве?». Объединяя обе технологии, вы можете создавать невиданные ранее AR-приложения с возможностью массового пространственного взаимодействия и долговременного точного позиционирования.