Parlons-en

Recherche et développement · 2019

RobinHUD

Navigation indoor en réalité augmentée : ancres spatiales dans le cloud et application prototype Android développée sous Unity, pour guider une personne dans un bâtiment où le GPS n'arrive pas.

Titre officiel, en italien : « Ricerca pianificata mirante ad acquisire nuove tecnologie da utilizzare per raggiungere un miglioramento del processo di navigazione indoor tramite l'utilizzo di realtà aumentata ».

Objectif

RobinHUD est un système de navigation indoor fondé sur la réalité augmentée. Dans les lieux fermés, le GPS ne fonctionne pas : le projet a exploré l'usage d'Azure Spatial Anchors, le service Microsoft d'ancres spatiales, pour s'orienter dans les bâtiments avec la seule caméra de l'appareil et une connexion à Internet. L'exemple directeur est celui d'un grand magasin : les ancres spatiales conduisent l'utilisateur jusqu'à la bonne zone ou au bon couloir, tandis que la reconnaissance rapprochée par QR code, avec le moteur Vuforia, identifie le produit précis sur l'étagère ou affiche un panneau d'information sur une machine. Les activités se sont déroulées du 8 janvier au 19 décembre 2019.

Ce qui a été fait

Le projet était articulé en trois phases : la création de deux applications — l'une d'authoring pour construire l'environnement de navigation, l'autre pour l'utilisateur final —, l'ajout d'informations ponctuelles sur les produits via QR code, et la perspective de porter la solution sur iOS et HoloLens 2. Pour le développement du prototype, Android et Unity ont été retenus, avec des scripts en C# ; la persistance des ancres est confiée à une base Cosmos DB sur Azure, atteinte via une WebApp qui expose des API REST avec authentification. L'étude est partie des exemples officiels du SDK Microsoft, alors en bêta et presque sans documentation, pour construire ensuite une application propre, avec une architecture à classes dédiées pour la gestion des sessions, des plans détectés et de l'interaction.

Ce qui en est sorti

Le résultat est une solution prototype fonctionnelle sur Android : l'application permet de créer, enregistrer, renommer, chercher et supprimer des ancres spatiales, d'obtenir des indications vers une ancre choisie — avec une flèche directionnelle en réalité augmentée — et de partager les ancres entre appareils via la base de données dans le cloud. Le rapport documente aussi les interfaces, les limitations connues et les difficultés de conception et d'expérimentation rencontrées avec une technologie alors en bêta.

Depuis le laboratoire

Les images proviennent de la documentation originale du projet.

La vue en réalité augmentée : l'application demande de cadrer un plan et de le toucher pour créer une ancre spatiale.
La vue en réalité augmentée : l'application demande de cadrer un plan et de le toucher pour créer une ancre spatiale.
Le détail d'une ancre enregistrée : renommage, suppression, indications et recherche.
Le détail d'une ancre enregistrée : renommage, suppression, indications et recherche.
Les réglages de l'application, avec la fenêtre de débogage et la recherche de toutes les ancres dans la base de données.
Les réglages de l'application, avec la fenêtre de débogage et la recherche de toutes les ancres dans la base de données.