Mega vs fonctionnalités d'ARKit/ARCore
EasyAR Mega présente à la fois des similitudes et des différences avec ARKit d'Apple et ARCore de Google. Comprendre leur relation et leurs avantages respectifs est essentiel pour les développeurs souhaitant maîtriser le fonctionnement de Mega. En bref, Mega peut pleinement exploiter les capacités de suivi de mouvement d'ARKit/ARCore tout en répondant aux besoins de localisation à grande échelle que ces derniers ne peuvent satisfaire.
Relation fondamentale
ARKit/ARCore (couche de base) :
- Ce sont des cadres de développement AR fournis par le système d'exploitation de l'appareil (iOS/Android).
- Leur responsabilité principale est la perception et le suivi de l'environnement au niveau de l'appareil. Par exemple, l'utilisation des caméras de l'appareil et de l'IMU pour réaliser le suivi et la cartographie simultanés (SLAM), la détection de plans, l'estimation de l'éclairage, la reconnaissance d'images/objets, etc.
- Ils fournissent aux applications de niveau supérieur un flux stable de données de pose 6DoF à faible latence.
EasyAR Mega (couche application/plateforme) :
- C'est une plateforme de calcul pour des espaces extrêmement vastes.
- Sa responsabilité principale est de réaliser une localisation persistante à l'échelle de la ville avec une précision centimétrique, en combinant des données 3D pré-construites de haute précision avec des techniques de localisation visuelle avancées. Il utilise les données 6DoF de base fournies par ARKit/ARCore pour réaliser un suivi de mouvement fusionné.
- Mega ne remplace pas ARKit/ARCore. Il les utilise pour obtenir les données de mouvement initiales de l'appareil dans le monde physique, puis, en les faisant correspondre à la carte Mega, "ancre" ces données dans un système de coordonnées unifié et de haute précision.
Comparaison des fonctionnalités et avantages de Mega
ARKit/ARCore offrent également certaines capacités de reconnaissance et de localisation spatiale, comme ARWorldMap d'ARKit ou Cloud Anchors/Geospatial API d'ARCore. Ces fonctionnalités présentent certaines similitudes avec les capacités de localisation à très grande échelle de Mega, mais il existe des différences fondamentales. Voici une comparaison technique détaillée entre les deux.
| Fonctionnalité | ARWorldMap | Cloud Anchors/Geospatial API | EasyAR Mega |
|---|---|---|---|
| Étendue de la localisation | Peut scanner et localiser l'environnement immédiat | Peut scanner et localiser l'environnement immédiat | Peut scanner et localiser des environnements à l'échelle d'une ville |
| Caractéristiques de localisation | Peut gérer les changements d'environnement | Peut gérer les changements d'environnement | Peut gérer les changements d'environnement, l'alternance jour/nuit |
| Construction de la carte | Capturée et construite côté appareil, partagée via réseau local | Capturée et construite côté appareil, partagée via des points de terminaison cloud hébergés par Google | Capturée par des appareils dédiés et construite dans le cloud, partagée sur n'importe quel appareil via un service de localisation cloud |
| Occultation réalité/virtuel | Occultation géométrique via Mesh issu de scan LiDAR | Occultation basée sur la profondeur via Depth API | Fournit des modèles 3D riches en détails avec LOD, permettant une occultation géométrique précise |
| Expérience multi-appareils | Prise en charge du partage et de l'expérience uniquement entre appareils iOS | Partage et expérience entre appareils Android et iOS via des points de terminaison cloud Google | Partage et expérience entre presque tous les appareils (Android, iOS, casques XR) via un service de localisation cloud unifié |
| Dépendance technologique | Fonctionne uniquement sur les appareils compatibles ARKit, certaines fonctionnalités nécessitent du matériel ou des logiciels supplémentaires (ex: LiDAR) | Fonctionne sur les appareils compatibles ARKit ou ARCore | Compatibilité étendue avec divers appareils, aucune exigence stricte d'ARKit ou ARCore |
Utilisation conjointe avec ARKit/ARCore
Lors de l'intégration d'EasyAR Mega, vous n'avez généralement pas besoin d'appeler directement les interfaces d'ARKit ou d'ARCore. C'est un concept très important :
- L'application Mega récupère automatiquement le flux de données 6DoF disponible d'ARKit/ARCore en fonction de l'appareil terminal exécutant l'application.
- Vous avez uniquement besoin d'utiliser l'API unifiée
MegaTrackerpour gérer le service de localisation et obtenir les données de pose. En interne, les données brutes d'ARKit/ARCore sont fusionnées et calculées pour vous fournir un résultat de localisation spatiale unifié, de haute précision et en suivi continu. - Cette conception simplifie énormément le flux de développement. Vous n'avez pas besoin d'écrire et de maintenir deux ensembles de code pour différentes plateformes, ni de comprendre en profondeur les API complexes d'ARKit/ARCore. Vous pouvez vous concentrer sur l'utilisation des fonctionnalités d'EasyAR Mega pour construire votre logique applicative.
Astuce
Cas exceptionnel : Si vous souhaitez utiliser une fonctionnalité spécifique d'ARKit/ARCore (par exemple, l'occultation des personnes d'ARKit) tout en utilisant la localisation Mega, vous devrez peut-être effectuer des appels mixtes à l'API native dans votre application.
EasyAR Mega n'est pas en concurrence avec ARKit/ARCore et ne les remplace pas. Il les complète et fonctionne en synergie avec eux. ARKit/ARCore résolvent le problème de "comment l'appareil se déplace dans son environnement", tandis qu'EasyAR Mega résout le problème de "comment tous les appareils se localisent avec précision dans le même espace immense". En combinant les deux, vous pouvez créer des applications AR sans précédent, dotées de capacités de localisation persistante et de partage spatial à grande échelle.