Falemos

Investigação e desenvolvimento · 2019

RobinHUD

Navegação indoor em realidade aumentada: âncoras espaciais na cloud e aplicação protótipo Android desenvolvida em Unity, para guiar uma pessoa num edifício onde o GPS não chega.

Título oficial, em italiano: «Ricerca pianificata mirante ad acquisire nuove tecnologie da utilizzare per raggiungere un miglioramento del processo di navigazione indoor tramite l'utilizzo di realtà aumentata».

Objetivo

O RobinHUD é um sistema de navegação indoor assente na realidade aumentada. Nos lugares fechados o GPS não funciona: o projeto explorou o uso do Azure Spatial Anchors, o serviço Microsoft de âncoras espaciais, para uma pessoa se orientar dentro dos edifícios apenas com a câmara do equipamento e uma ligação à Internet. O exemplo condutor é o de um grande armazém: as âncoras espaciais conduzem o utilizador até à zona ou ao corredor certo, enquanto o reconhecimento de proximidade por código QR, com o motor Vuforia, identifica o produto preciso na prateleira ou mostra um painel de informação sobre uma máquina. As atividades decorreram de 8 de janeiro a 19 de dezembro de 2019.

O que foi feito

O projeto estava articulado em três fases: a criação de duas aplicações — uma de authoring, para construir o ambiente de navegação, outra para o utilizador final —, o acrescento de informações pontuais sobre os produtos via código QR, e a perspetiva de levar a solução para iOS e HoloLens 2. Para o desenvolvimento do protótipo foram escolhidos o Android e o Unity, com scripts em C#; a persistência das âncoras está confiada a uma base Cosmos DB no Azure, alcançada através de uma WebApp que expõe API REST com autenticação. O estudo partiu dos exemplos oficiais do SDK Microsoft, então em beta e quase sem documentação, para construir depois uma aplicação própria, com uma arquitetura de classes dedicadas à gestão das sessões, dos planos detetados e da interação.

O que daí saiu

O resultado é uma solução protótipo funcional em Android: a aplicação permite criar, guardar, mudar o nome, procurar e apagar âncoras espaciais, obter indicações para uma âncora escolhida — com uma seta direcional em realidade aumentada — e partilhar as âncoras entre equipamentos através da base de dados na cloud. O relatório documenta também as interfaces, as limitações conhecidas e as dificuldades de conceção e de experimentação encontradas com uma tecnologia então em beta.

Do laboratório

As imagens provêm da documentação original do projeto.

A vista em realidade aumentada: a aplicação pede para enquadrar um plano e tocá-lo, para criar uma âncora espacial.
A vista em realidade aumentada: a aplicação pede para enquadrar um plano e tocá-lo, para criar uma âncora espacial.
O detalhe de uma âncora guardada: mudar o nome, apagar, obter indicações e pesquisar.
O detalhe de uma âncora guardada: mudar o nome, apagar, obter indicações e pesquisar.
As definições da aplicação, com a janela de depuração e a pesquisa de todas as âncoras na base de dados.
As definições da aplicação, com a janela de depuração e a pesquisa de todas as âncoras na base de dados.