ARToolKit: Criando aplicativos de Realidade Aumentada

Neste documento apresento a ARToolKit, uma biblioteca criada para facilitar o desenvolvimento de aplicativos com o recurso de realidade aumentada. Ou seja, a sobreposição de objetos virtuais e tridimensionais gerados por computador junto ao ambiente real.

[ Hits: 59.015 ]

Por: Alessandro de Oliveira Faria (A.K.A. CABELO) em 08/09/2009 | Blog: http://assuntonerd.com.br


Introdução: O que é Realidade Aumentada e ARToolKit



Em 30/03/2009 disponibilizei um documento sobre o jogo Levelhead, um jogo de realidade aumentada. Define-se realidade aumentada como a sobreposição de objetos virtuais e tridimensionais, gerados por computador junto ao ambiente real, por meio de algum dispositivo tecnológico de vídeo captura.

A Realidade Aumentada disponibiliza uma interação sem necessidade de treinamento, pois o usuário pode trazer para o ambiente real objetos virtuais, incrementando e aumentando a visão do mundo real. Isto somente é possível com técnicas de visão computacional junto a computação gráfica.

Os objetos virtuais introduzidos no ambiente real podem ser manipulados com as próprias mão, assim proporcionando ao usuário uma interação inovadora e atrativa. Veja no vídeo a seguir um exemplo de interatividade com a tecnologia de realidade aumentada.
Logo, Realidade Aumentada é um sistema que:
  • combina elementos virtuais com o ambiente real;
  • é interativa e tem processamento em tempo real;
  • é concebida em três dimensões.

ARToolKit

ARToolKit é uma biblioteca escrita em C, baseada em software livre e desenvolvida pelo Dr. Hirokazu Kato, utilizada atualmente por pesquisadores do Laboratório Tecnológico de Interface Humana, na Universidade de Washington. Criada para a construção de aplicações de Realidade Aumentada, a biblioteca ARToolKit utiliza recursos de visão computacional e processamento de imagens para prover os recursos de RA.

A complexidade do desenvolvimento das aplicações de Realidade Aumentada é calcular precisamente, em tempo real, o ponto de observação do usuário, para somente então projetar corretamente os objetos virtuais no mundo real. Este é o principal objetivo da biblioteca ARToolKit, ou seja, rastrear rapidamente e calcular a posição real da câmera e de seus marcadores de referência possibilitando que o programador acrescente objetos virtuais sobre estes marcadores no mundo real sem magia negra.
Linux: ARToolKit: Criando aplicativos de Realidade Aumentada.
Para tudo isto funcionar (a biblioteca ARToolKit) primeiramente é preciso transformar o quadro capturado no vídeo ao vivo em uma imagem com valores binários (P&B). Em seguida ele examina essa imagem para encontrar regiões quadradas. Ao encontrar um quadrado, a imagem no seu interior é capturada e comparada com algumas imagens pré-cadastradas. Encontrando alguma similaridade com a imagem pré-cadastrada, a biblioteca utiliza o tamanho conhecido do quadrado e a orientação do padrão encontrado para calcular a posição real da câmera em relação à posição real do marcador.
Linux: ARToolKit: Criando aplicativos de Realidade Aumentada.
    Próxima página

Páginas do artigo
   1. Introdução: O que é Realidade Aumentada e ARToolKit
   2. Download e instalação
   3. Calibração e utilização
Outros artigos deste autor

DJVU o formato que pode ameaçar o reinado do PDF

Dia: O Editor de diagrama (Microsoft Visio) para Linux

Acessibilidade: Movimentos do mouse com a face (eViacam)

Biblioteca VBMcgi: Crie aplicações Web CGI em C++ com acesso ao banco Interbase/Firebird sem mistério

SANE: Compartilhe seu scanner na rede

Leitura recomendada

Blender para todos! - Parte II

Existe design além do Corel Draw?

Instalando Compiz Fusion no Debian/Ubuntu

Instalando Xgl + Compiz com uma pitada de Cgwd no Ubuntu Dapper Drake

Publicidade? Linux? Como?!

  
Comentários
[1] Comentário enviado por wizard.slack em 08/09/2009 - 15:59h

Show de bola!
estava esperando esse artigo ser publicado. já vai para os favoritos!!
Parabéns Cabelo.

[2] Comentário enviado por markintux em 08/09/2009 - 16:19h

Mais um excelente artigo!

Uma dúvida: Existe algum site que mostra quais as webcams compativeis com v4l1 e v4l2? Esses softwares que você mostra, por exemplo o eviacam é compativel com qual driver? 1 ou 2? Se alguem souber agradeço!

Abraços e Parabéns Cabelo!

[3] Comentário enviado por removido em 08/09/2009 - 17:53h

Ótimo artigo.

[4] Comentário enviado por slipky em 09/09/2009 - 12:18h

Estava atrás disso, mas ainda não consegui fazer funcionar aqui, pode me ajudar? minha cam funciona apenas com o V4L2, e não esta compilando após aplicar o patch...

eis o que está acontecedo: http://pastebin.com/m28fb0655

[5] Comentário enviado por cleysinhonv em 09/09/2009 - 13:22h

Olá Cabelo,

Há bastante tempo tenho buscado ler os seus artigos, são ótimos bem escritos e autênticos, estava precisando de uma documentação dessa por que estou pretendendo fazer um trabalho de conclusão de curso envolvendo Realidade Aumentada e Sistemas de Informação Geográfica. Bom espero que eu tenha um bom êxito, usando essa documentação.

Parabéns!

[6] Comentário enviado por root_dog em 12/09/2009 - 16:17h

massa... ja configurei no ruindows agora vou tentar no linux...

[7] Comentário enviado por slipky em 13/09/2009 - 16:55h

comentei a linha no código onde estava dando erro ao compilar, e foi, porem ainda não esta rodando: http://pastebin.com/m2dfc45c7

[8] Comentário enviado por anonymous em 23/12/2009 - 15:26h

Artigo show de bola!!!!!!!!!!!!!!!

[9] Comentário enviado por cesar em 06/02/2010 - 23:13h

Show de bola...

Vou testar!

[]'s

[10] Comentário enviado por laercio.avelino em 12/04/2010 - 22:49h

Olá, eu adorei o tutorial, mas achei que as pessoas tiveram poucos problemas. Assim que ainda que outros tenham contribuído na sequencia, ainda não fui contemplado. Assim eu pergunto, qndo esses procedimentos não dão certo? :p

Vejamos:

1. Quando eu descompactei o Artoolkit, entrei no diretório e tentei executar o ./configure. Não foi possível, mas consegui o mesmo procedimento com ./Configure.

2. Color conversion should use x86 assembly (choose 'n' for 64bit systems)?
Enter : n

[eu não uso sistema 64bits, selecionei "Y".] »»Terei vacilado nesta parte?««

3. $ export ARTOOLKIT_CONFIG="-dev=/dev/video0 -palette=YUV420P -width=640 -height=480"
criei essa variável ambiental e como não me deu retorno algum, supus ter dado tudo ok! Até o próximo ponto:

4. $ cd bin/
$ ./videoTest
usuário@usuário:~/Downloads/artoolkit/ARToolKit/bin$ ./videoTest
bash: ./videoTest: Arquivo ou diretório não encontrado


»»» Foi aí que percebi que 1. não deu certo pq não segui os procedimentos; ou 2. ainda assim não seria possível pq não uso sistema 64bits. «««

De todas maneiras sou grato por sua ajuda, estamos em contato.

[11] Comentário enviado por igortx em 07/07/2010 - 09:49h

me encontrei no mesmo problema do rapaz acima... a variavel nao gera nada e nao consegui encontrar o videotest em bin... na verdade nao achei nada la :(

[12] Comentário enviado por rondinele_prado em 27/10/2010 - 23:23h

Olá, tem um bom tempo que estou tentando compilar a ARToolKit no linux, mas ainda não consegui, o videoTest não está na pasta bin, e quando uso uma outra versão ele diz:
No protocol specified
No protocol specified
freeglut (./simpleTest2): failed to open display ':0.0'

Gostaria de saber o motivo do erro.

[13] Comentário enviado por ShadowFox em 29/03/2011 - 22:26h

Pessoal... Será que não faltou um make && make install?

hehehe...

[14] Comentário enviado por charleskgb em 13/05/2011 - 11:55h

É necessario executar o make pra vc ter o videoTest na pasta bin. Se o make der erro durante a execucao, so vai instalando os pacotes do GStreamer que faltam e mais algumas coisinhas que o erro do make especifica.... usa o synaptic que ja empurra um bocado de pacotes necessarios.
Compila o make sem erros que o videoTest fica disponivel.

[15] Comentário enviado por wup4la1 em 01/03/2012 - 21:52h

Olá estou tentando configurar aqui fiz todos os passos ate a hora de executar o MAKE mas esta gerando um erro, alguém conhece esse tal erro:

make[2]: Entrando no diretório `/home/nome/ARToolKit/util/videoTest'
cc -o ../../bin/videoTest videoTest.o -L/usr/X11R6/lib -L../../lib -lARgsub -lARvideo -lAR -lglut -lGLU -lGL -lXi -lXmu -lX11 -lm -ljpeg
../../lib/libARvideo.a(video.o): In function `ar2VideoGetImage':
video.c:(.text+0x1b26): undefined reference to `ccvt_yuyv_rgb24'
collect2: ld returned 1 exit status
make[2]: ** [../../bin/videoTest] Erro 1
make[2]: Saindo do diretório `/home/nome/ARToolKit/util/videoTest'
make[1]: ** [all] Erro 2
make[1]: Saindo do diretório `/home/nome/ARToolKit/util'
make: ** [all] Erro 2



Obrigado

[16] Comentário enviado por Magrela_ em 19/06/2012 - 15:09h

Ollá Cabelo, estou tentando calibrar minha câmera para o artoolkit. segui os passos da instalação que vc postou com a ajuda de um amigo. Porém para os passos desse tópico quando eu clico na imagem da câmera com o direito ou com o esquerdo não acontece nada. o que será ue está acontecendo.

Detalhes: instalei o artoolkit em uma pasta nomeada Artoolkit 2.72.1 e ela aparece no menu LOCAIS, porém para abrir a pasta usei o comando:
# cd Artoolkit\ 2.72.1/

mas esse comando retorna isso como resposta: bash: cd: Artoolkit: Arquivo ou diretório não encontrado

eu só consigo abri a pasta e o vídeo teste com a pasta que eu descompatei em Documentos sempre seguindo os caminho:
$ cd Documentos
$cd Artolkit\ 2.72.1/
$cd bin
$./videoTest

Dessa forma abre mas nao consigo congelar a imagem da câmera como ensinado no seu tópico.


Fico grata se me responder com máximo de urgência!

OBS: querendo desenhevolver minha monografia com reliadade aumentada usando artoolkit!

[17] Comentário enviado por Magrela_ em 19/06/2012 - 16:28h

onde eu encontro e como executo pela LC o programa calib_dist? Deve ser essse o meu problema com a câmera conforme mencionei no post anterior logo acima.

[18] Comentário enviado por Magrela_ em 03/07/2012 - 00:24h

Gente eu pensei que podia ter executado algum passo erroneamente, então resolvi remover a pasta descompactada na minha pasta pessoal e reiniciar o processo , daí deu tudo certim, o nome da pasta ao abrir o diretório deve ser observando os caracteres maiúsculos e munúculos no nome do diretório salvo auomáticamente quando a gente baixa o artoolkit pelo $ wget . daí foi só começar o proximo passo de calibração.

é só seguir direitinho os passos do tutorial 1 que dá tudo certo. Acho que eu tava executando alguma coisa erroneamente na hora de congelar a imagem, mas depois que reinstalei deu tudo certim!

Agora é só alegria e estudar como desenvolver os prograaminhas. no proprio artoolkit tem um diretório que traz uns exemplos nao sei informar agora a localização dos mesmos.

dê uma olhada no artigo do segunto tópico dessa pesquisa:

http://www.google.com.br/#hl=pt-BR&output=search&sclient=psy-ab&q=como+desenvolver+aplica%C3%A7%C3%B...

Abraços!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor HostGator.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Viva o Android

Tópicos

Top 10 do mês

Scripts