VT2019 ARCore ARKit

ARCore et ARKit sont tous les deux des kits de développement d'applications mobiles en réalité augmentée, développés respectivement par Google et Apple. Ces systèmes de réalités augmentées étant intégrés aux systèmes d'exploitations de nos smartphones et tablettes.

=Abstract= ARCore and ARKit are both development kit of mobile apps in augmented reality, developed respectively by Google and Apple. These systems of augmented reality are embedded in operating systems of our phones and tablets.

=Réalité Augmentée ?= La réalité augmentée est une technologie permettant de superposer des images de synthèse sur le monde réel par l'intermédiaire d'un dispositif et offrant la possibilité à un utilisateur d’interagir avec ces images. Attention à ne pas confondre la réalité augmentée et la réalité virtuelle. En effet, la réalité virtuelle permet l'immersion d'un utilisateur dans un nouveau monde. Pour résumé nous pouvons dire que la réalité augmentée est composée d'un décor réel et d'objets virtuels alors que la réalité virtuelle ne se compose que d'éléments virtuels.

Les principes
La réalité augmentée repose sur trois principes fondamentaux :


 * Le suivi du mouvement de l'appareil :  C'est grâce à différents capteurs comme l’accéléromètre, le gyroscope et la boussole que le kit de développement est capable de positionner l'appareil dans l'espace. Cette reconnaissance est essentielle à la bonne superposition des images de synthèse. L'utilisation de la caméra est aussi importante, car elle permet à l'outil de détecter les "points caractéristiques" (coins d'une table, dossier d'une chaise, etc.). Les points caractéristiques peuvent être calculés de plusieurs façons : calcule des contours des objets de l'image, calcule des changements brusques de direction, etc.


 * La compréhension de l'environnement :  Le kit de développement est capable de détecter les surfaces (horizontales ou verticales) de notre environnement. Cette fonctionnalité requiert elle aussi l'utilisation de la caméra, un regroupement de points caractéristique est très souvent signe d'une surface plane. Cette fonctionnalité est utile pour savoir si une image peut être appliquée sur une table ou une surface.


 * L'estimation de la luminosité ambiante :  La luminosité ambiante est mesurée grâce au capteur de luminosité de l'appareil, c'est grâce à cette mesure que l'outil est capable d'adapter la luminosité de l'image de synthèse pour faire en sorte qu'elle soit le plus "fidèle" possible.

=Cas d'utilisations= La réalité augmentée est utilisée aujourd'hui dans de nombreux domaines, notamment à des fins professionnelles.

L'immobilier
Tout d'abord, elle est utilisée dans le domaine de l'immobilier. En effet, la possibilité de visualiser un nouveau bâtiment ou encore un aménagement de maison ou d'appartement est une grande plus-value et facilite la vente pour les professionnels. On peut visualiser un bâtiment depuis un plan (figure ci-dessous) ou depuis le site lui-même (figure ci-contre).

Musée
La réalité virtuelle permet aux musées d'enrichir leur visite en mettant à disposition des objets disparus ou non disponibles. Elle sert de pédagogie pour les enfants afin de leur faire la visite du musée sous forme de jeux ludiques.

Industrie
La réalité augmentée permet également de montrer (par exemple lors de salon) des choses que l'on ne peut pas déplacer: grosses machines, chaîne de production, etc. Elle peut également permettre de présenter à un client son fonctionnement dans le détail. Cela peut aussi permettre à de nouveau propriétaire de se promener virtuellement dans leur future maison afin de choisir leur mobilier. Ou encore grâce à des catalogues virtuels afin de voir si le produit irait bien chez soi.

Jeux vidéos
Dans les jeux vidéos, la réalité augmentée est appliquée afin de supprimer les manettes et de faire de la reconnaissance vocale, faciale ou encore gestuelle, afin de rendre les jeux encore plus ludiques. Un exemple de jeu qui a été connu mondialement utilisant de la réalité augmentée est : Pokémon Go !

Formations
Les logiciels de réalité augmentée sont également utilisés afin de former les futurs employés dans des domaines à risque, par exemple, le nucléaire.

=ARCore VS ARKit= '''Attention ! Cette section n'est pas faite pour distinguer quel outil est le meilleur. Il est question de les comparer sur certains aspects.'''

La disponibilité

 * ARKit est disponible sur les iPhone et iPad avec iOS11 ou plus. Vous pouvez retrouver les appareils compatible avec ARKit ici
 * ARCore est compatible avec beaucoup de smartphones tournant sous Android Nougat (7.0) ou plus, mais aussi sur les appareils iOS les plus récents. Vous pouvez retrouver les appareils compatible avec ARCore ici

Les fonctionnalités
En termes de fonctionnalités pures, les deux outils sont environ au même stade. Néanmoins quelques détails peuvent être observés.
 * ARCore permettrait de détecter un plus grand nombre de points caractéristique sur une image, mais aussi plus rapidement que ARKit. De plus ARCore serait meilleur dans le stockage des données du monde réel tel que les localisation récentes par exemple.
 * ARKit détecterait plus précisément les surfaces horizontales et verticales que ARCore. Les processeurs incluent dans les appareils iOS seraient aussi mieux optimisé pour la technologie ARKit.

Conclusion
Pour conclure ce court comparatif, nous pouvons dire que l'outil à utiliser est dépendant du développeur et qu'il doit garder ces avantages et inconvénients en tête lors de la création de son projet. Par exemple, si il veut une application cross-plateforme son choix portera plus sur ARCore car il aura une facilité de développement sur Android et iOS, ce que ARKit ne permet pas.

=Alternatives= Il existe de nombreuses alternatives à ARCore & ARKit. Ils sont bien évidemment les deux plus utilisés et connus. Les alternatives les plus utilisées sont notamment : Vuforia, aws, Microsoft Holo, snap art, zapWorks, shopifyAR, wikitude SDK et bien d'autres. Chacune de ses alternatives a des inconvénients et des défauts comme tout logiciel. Le plus grand paramètre de choix étant la plateforme de votre smartphone ou tablettes.

=Démonstration= Vous pouvez trouver le code de la démonstration ici

=Sources=
 * https://www.artefacto-ar.com/realite-augmentee/ : Exemples d'utilisations
 * https://developers.google.com/ar/discover
 * https://www.realite-virtuelle.com/apple-arkit-vs-google-arcore/
 * https://www.realite-virtuelle.com/definition-realite-augmentee/ : Définition réalité augmentée
 * https://medium.com/coletiv-stories/augmented-reality-6c7be8ab7fde : Logo ARCore & ARKit
 * https://medium.com/@mnrmja007/if-ar-core-was-ever-asked-tell-us-about-yourself-in-brief-94af6b2be10d
 * https://www.g2.com/products/arcore/competitors/alternatives : alternative to ARCore
 * https://www.producthunt.com/alternatives/apple-arkit : alternative to ARKit
 * https://exyte.com/blog/augmented-reality-software
 * https://www.youtube.com/watch?v=DuO31Ro2ypg : Vidéo des 10 meilleurs APPS avec de l’AR
 * https://www.marxentlabs.com/arcore-google-apple-arkit/

=VT2019=
 * Année : VT2019
 * Sujet : ARCore & ARKit
 * Slides : [[Media:ARCore_ARKit_VT2019.pdf|Slides]]
 * Démonstration : Démonstration
 * Auteurs : Manon CHABRE, Daniel COSCIA