Table of Contents

Comparação de recursos entre Mega e ARKit/ARCore

EasyAR Mega tem relação com o ARKit da Apple e o ARCore do Google, mas também é diferente deles. Entender essa relação e as vantagens de cada um é essencial para que developers compreendam como o Mega funciona. Em termos simples, o Mega pode aproveitar totalmente as capacidades de motion tracking do ARKit/ARCore, ao mesmo tempo em que expande as necessidades de large-scale spatial localization que ARKit/ARCore não conseguem atender.

Relação central

  • ARKit/ARCore (camada base):

    • São AR development frameworks fornecidos pelos sistemas operacionais dos dispositivos (iOS/Android).
    • Sua responsabilidade central é environment perception e tracking em nível de dispositivo. Por exemplo, usam a camera e a IMU do dispositivo para implementar simultaneous localization and mapping (SLAM), plane detection, lighting estimation, image/object recognition e muito mais.
    • Fornecem às aplicações de camada superior um fluxo estável e de baixa latência de pose data 6DoF.
  • EasyAR Mega (camada de aplicação/plataforma):

    • É uma plataforma de computação espacial em escala ultra grande.
    • Sua responsabilidade central é combinar dados 3D de alta precisão previamente construídos com tecnologia avançada de visual localization para alcançar persistent localization em escala de cidade e em nível centimétrico. Ele usa os dados 6DoF subjacentes fornecidos por ARKit/ARCore para implementar fused motion tracking.
    • Mega não substitui ARKit/ARCore. Em vez disso, ele os utiliza para obter os dados iniciais de movimento do dispositivo no mundo físico e então combina esses dados com o mapa Mega para "ancorá-los" em um sistema de coordenadas unificado e de alta precisão.

Comparação de recursos e vantagens do Mega

ARKit/ARCore também fornecem certas capacidades de spatial recognition e localization, como ARWorldMap do ARKit e Cloud Anchors/Geospatial API do ARCore. Esses recursos têm alguma semelhança com as capacidades de ultra-large-scale spatial localization fornecidas pelo Mega, mas são fundamentalmente diferentes. A seguir está uma comparação técnica detalhada.

Recurso ARWorldMap Cloud Anchors/Geospatial API EasyAR Mega
Alcance de localization Pode escanear e fazer localization do ambiente ao redor Pode escanear e fazer localization do ambiente ao redor Pode escanear e fazer localization de ambientes espaciais em escala de cidade
Características de localization Pode lidar com mudanças ambientais Pode lidar com mudanças ambientais Pode lidar com mudanças ambientais e alternância dia/noite
Construção de map Coletado e construído no lado do dispositivo, compartilhado via local area network Coletado e construído no lado do dispositivo, compartilhado via endpoints hospedados no Google Cloud Coletado com dispositivos dedicados e construído na cloud, compartilhado com qualquer dispositivo por cloud localization services
Virtual-real occlusion Geometric occlusion por Mesh escaneado por LiDAR Occlusion baseada em depth por Depth API Fornece modelos 3D detalhados com LOD para geometric occlusion precisa
Experiência entre dispositivos Suporta compartilhamento e experiência apenas entre dispositivos iOS Compartilhamento e experiência entre dispositivos Android e iOS por endpoints do Google Cloud Compartilhamento e experiência em quase todos os dispositivos (Android, iOS, XR headsets) por serviços unificados de cloud localization ou on-device deployment
Dependências técnicas Executa apenas em dispositivos com ARKit, e alguns recursos têm requisitos adicionais de hardware ou software (como LiDAR) Executa em dispositivos com ARKit ou ARCore Amplamente compatível com vários dispositivos, sem exigência rígida de ARKit ou ARCore

Usar ao mesmo tempo com ARKit/ARCore

Ao integrar EasyAR Mega, geralmente você não precisa chamar diretamente as APIs ARKit ou ARCore. Este é um conceito muito importante:

  • Uma aplicação Mega obtém automaticamente o data stream 6DoF ARKit/ARCore disponível com base no dispositivo em que está sendo executada.
  • Você só precisa usar a API unificada MegaTracker ou MegaGoTracker para gerenciar localization services e obter pose data. Internamente, os raw data do ARKit/ARCore são automaticamente fundidos e calculados, fornecendo finalmente um resultado de spatial localization unificado, de alta precisão e com tracking contínuo.
  • Esse design simplifica muito o processo de desenvolvimento. Você não precisa escrever e manter dois conjuntos de código para plataformas diferentes, nem entender profundamente as APIs complexas de ARKit/ARCore. Você só precisa se concentrar em usar os recursos do EasyAR Mega para construir a lógica da sua aplicação.
Dica

Exceção: se você quiser usar certos recursos específicos do ARKit/ARCore enquanto usa Mega localization, como People Occlusion do ARKit, talvez seja necessário chamar APIs native na aplicação.


EasyAR Mega não compete com ARKit/ARCore nem os substitui; ele os complementa e colabora com eles. ARKit/ARCore resolvem o problema de "como um dispositivo se move no ambiente", enquanto EasyAR Mega resolve o problema de "como todos os dispositivos fazem localization com precisão no mesmo enorme espaço". Combinando os dois, você pode criar aplicações AR sem precedentes, com capacidades de large-scale spatial sharing e persistent localization.