Linux slogan
Visite também: Segurança Linux · BR-Linux.org · Dicas-L · Doode · NoticiasLinux · SoftwareLivre.org · UnderLinux



» Screenshot
Linux: Tron
Por gartz
» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha



Artigo

ARToolKit: Criando aplicativos de Realidade Aumentada
Linux user
cabelo
08/09/2009
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.
Por: Alessandro de Oliveira Faria (A.K.A. CABELO) | Blog: http://cabelovivaolinux.wordpress.com/
[ Hits: 30841 ]
Conceito: 10.0   3 voto(s)3 voto(s)3 voto(s)3 voto(s)3 voto(s) + quero dar nota ao artigo

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

Leitura recomendada

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 ilsahec 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.


Contribuir com comentário


  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Conteúdo distribuído sob licença GNU FDL
Site hospedado por:

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.