Realidade Aumentada e Virtual
Tudo junto e misturado!

Desenvolvido pelo programador alemão Michael Zoellner, é um aplicativo (ainda beta) que se baseia em informações dadas pelo GPS, magnetrômetro (bússola digital) e pelo acelerômetro, para sobrepor na câmera, os avatares dos twitters que estão por perto e ainda com informações extras como a distância da pessoa e último ponto visitado. Selecionando o avatar, mostra os twits do usuário.

TwittARound: An Augmented Reality Twitter Viewer


Fonte: i.document

 

Catapult - Gizmondo
Jogo aparentemente no estilo Tower defense, onde pode-se construir diversos tipos de torres para combater os inimigos, neste caso, outras torres. Achei maneiro... fazer esse tipo de jogo já estava na minha lista, hehe.
Pode ser jogado no modo two player vs. game, two-player co-op game ou ainda no modo single-player. Todos os modos dispõem de uma batalha rápida ou em campanha.



Procurei mais informações sobre este, mas não achei. Segue a descrição no youtube:

Vídeo criado pelo estudante de design Lasorne Frantz que juntou um projeto de realidade aumentada em um jogo criando algo nunca visto antes.

Ok, descrições exageradas à parte, segue na mesma idéia do primeiro, porém, com um ambiente bem mais agradável e detalhista. Gostei também da idéia de possível imersão com algum Head Mounted Display.



A empresa Fishy criou um jogo simples com RA para a ação do Prêmio de Mídia da Globo Nordeste. É a velha brincadeira do whatever (não sei o nome, hehe) Mole in the hole ou Bate Monster, no Brasil (tkz @crisstanza), implementado em flash, provavelmente utilizando o FlarToolKit.

 

A edge detection é a base para praticamente qualquer aplicação de Realidade Aumentada, pois, a partir dela pode-se ter um maior controle sobre as propriedades da imagem. O algoritmo da Transformada de Sobel elimina o background da imagem e marca em tons de cinza os delimitadores dos objetos.

Ele se baseia em duas matrizes: Gx e Gy, então, calcula o gradiente local e assim consegue detectar a presença das bordas da imagem. A borda é caracterizada por uma região que contém um alto gradiente. O gradiente de uma imagem f numa posição (x,y) é dado pelo vetor das equações abaixo:


[δf]
Δf = [Gx]=[δx]
[Gy] [δf]
[δy]

Então, a magnitude do gradiente pode ser calculada por:
ΔF = [(Gx)² + (Gy)²]^1/2 = mag(Δf)

O gradiente do pixel é influenciado pelo seus pixels vizinhos. O padrão das matrizes Gx e Gy pode ser:

[-1 0 +1]
Gx=[-2 0 +2]
[-1 0 +1]

[-1 +2 -1]
Gy=[ 0 0 0]
[-1 -2 -1]

A partir destes gradientes, é possível determinar a magnitude e a direção da borda para cada pixel. Após isto, a partir de um limiar fixo, cada ponto da imagem é percorrido e é atribuído ao ponto (x,y) uma cor referente à distância do limiar pré-estabelecido, fazendo assim, uma imagem binarizada e evidenciando as principais bordas.

Imagem normal:


Após o Sobel Transform:


Fontes: Marcelo Gattass, UFPR.