De que se trata o artigo

Este artigo apresenta o desenvolvimento de uma aplicação para a plataforma Android que faz uso de realidade aumenta. Para exemplificar este recurso, foi proposto um aplicativo que, ao apontar a câmera do dispositivo Android para uma imagem previamente cadastrada, é apresentada sobre esta imagem um botão virtual que, ao ser clicado pelo usuário, apresenta um filme relacionado à imagem. Este aplicativo se torna útil para utilização em vídeo locadoras ou cinemas, onde ao direcionar a câmera para um cartaz ou capa de filme, é apresentada a opção de ver o clipe diretamente no dispositivo Android.


Em que situação o tema é útil

Este artigo é útil aos profissionais que já conhecem a tecnologia Android e desejam aumentar as oportunidades de desenvolvimento de software, adicionando um recurso relativamente novo e complexo em seus aplicativos: realidade aumentada, permitindo uma maior interação entre o usuário da tecnologia e o software.

Utilizando recursos de realidade aumentada em aplicações Android

Para lidar com o tema, este artigo apresenta os conceitos básicos sobre realidade aumentada e sua utilização em dispositivos móveis. Após os conceitos, é proposto o desenvolvimento de um aplicativo que rastreia imagens a partir da câmera dos dispositivos móveis, e caso a imagem esteja cadastrada em uma base de dados, é apresentado na tela um botão virtual, cuja função é redirecionar para um clipe no youtube. Para o desenvolvimento deste aplicativo será apresentado o framework Vuforia, apresentando em detalhes seu download, configuração e utilização.

Autores: Robison Cris Brito, Geison Andriano Biazus e Fábio Favarim

Realidade aumentada é a junção de elementos reais com elementos virtuais, onde normalmente se utiliza uma câmera para capturar um vídeo no qual algum dispositivo tecnológico insere em tempo real os elementos virtuais no cenário real, dando a impressão de que os mesmos estejam no local.

Para que a realidade aumentada seja possível, é necessário um dispositivo que tenha a capacidade de capturar um vídeo e exibir o mesmo ao usuário em tempo real. Nesse dispositivo utiliza-se um software que insere os elementos virtuais, sendo que estes elementos podem ser manipulados pelo usuário tanto na tela do dispositivo quanto pela interação do usuário com o elemento virtual.

A realidade aumentada pode ser utilizada para inúmeros fins. Pode ser usada no entretenimento, permitindo criar jogos mais interativos, na venda de quadros ou outros acessórios decorativos onde é possível a visualização dos mesmos no local desejado, na medicina auxiliando nos procedimentos cirúrgicos, em dispositivos de navegação onde o usuário visualiza o caminho a ser seguido para chegar em determinado local, entre outros.

Para que o software exiba os elementos virtuais e mantenha-os no local, mesmo movimentando a câmera, fazendo com que ele virtualmente faça parte do ambiente, é necessário que o elemento virtual sempre esteja sendo atualizado, e para isso é necessário uma alta capacidade de processamento no dispositivo onde o software é executado.

Assim, até alguns anos atrás, a utilização de realidade aumentada só era possível em computadores modernos, porém, com a evolução da computação móvel e aumento de processamento desses dispositivos, tornou-se possível que a realidade aumentada chegasse aos celulares e smartphones.

A grande vantagem em utilizar realidade aumentada nestes dispositivos está na grande quantidade de aparelhos celulares existentes hoje no mercado, e estes tem evoluído e adquirido características de pequenos computadores, tanto em hardware quanto em software, tendo sistemas operacionais cada vez mais poderosos e uma grande disponibilidade de aplicativos.

Destaca-se entre esses o sistema operacional Android que foi desenvolvido pela empresa Google e trata-se de um sistema operacional baseado na plataforma Linux que permite que os desenvolvedores de software possam tirar proveito de todas as funcionalidades que o aparelho possa oferecer.

A plataforma Android possui um SDK (Software Development Kit): o Android SDK, que permite o desenvolvimento de aplicativos para a plataforma. Esse SDK utiliza a linguagem de programação Java e vários de seus componentes, onde é possível criar, além de aplicativos simples como cadastros, também aplicativos complexos com reconhecimento de voz e realidade aumentada, utilizando para isso frameworks (conjunto de códigos) para auxiliar em características mais específicas.

Neste contexto, a empresa americana Qualcomm desenvolveu um kit de desenvolvimento de software (SDK) chamado Vuforia para trabalhar com realidade aumentada, o qual tem suporte às plataformas Android, iOS e Unity 3D. Esse SDK permite o desenvolvimento de aplicações nativas para essas plataformas.

O que é realidade aumentada e qual a sua origem?

A realidade aumentada deriva-se de outro conceito muito conhecido, chamado realidade virtual, a qual se caracteriza como a inserção do próprio indivíduo em um ambiente não real, ou seja, consiste de um mundo criado artificialmente onde o usuário é inserido e pode interagir com os objetos do mesmo. A Figura 1 mostra um monitor preso à cabeça e luvas com fios para que possibilitem a visualização e manipulação em um ambiente de realidade virtual.

Figura 1. Monitor preso à cabeça e luvas com fios.

A partir da realidade virtual surgiu um novo conceito chamado de realidade misturada. Este é um conceito amplo que engloba dois conceitos específicos: a realidade aumentada e a virtualidade aumentada. A realidade aumentada é quando o ambiente principal é real ou há predominância do real no ambiente misturado, ou seja, o ambiente real é exibido, porém com alguns objetos ou modificações virtuais. A virtualidade aumentada, por sua vez, é quando o ambiente principal é virtual ou há predominância do virtual. A Figura 2 compara os ambientes de realidade aumentada e virtualidade aumentada com os ambientes real e virtual.

Figura 2. Realidade e Virtualidade contínuas.

Ao contrário da realidade virtual que transporta o usuário para o ambiente virtual, a realidade aumentada mantém o usuário em seu ambiente real, porém, transporta objetos virtuais para o espaço do usuário, permitindo que o mesmo interaja com esse ambiente de forma natural. O usuário pode interagir com os componentes virtuais de forma livre utilizando as mãos ou alguma ferramenta, como mostra na Figura 3.

...

Quer ler esse conteúdo completo? Tenha acesso completo