Escolar Documentos
Profissional Documentos
Cultura Documentos
Cap 5 ARToolKit LivroTecno PDF
Cap 5 ARToolKit LivroTecno PDF
Captulo
5
ARToolKit: Biblioteca para Desenvolvimento de
Aplicaes de Realidade Aumentada
Rafael Santin e Claudio Kirner
Curso de Mestrado em Cincia da Computao
Universidade Metodista de Piracicaba - UNIMEP
Rodovia do Acar, Km 156, 13400-911 Piracicaba SP, Brasil
{rafael, ckirner}@unimep.br
Abstract
ARToolKit is a free and open library used in the development of augmented reality applications.
The augmented environment is obtained by mixing video with registered virtual objects, showed on
head mounted display or monitor. This chapter presents the concepts, structure and behavior of
ARToolKit, as well as configuration examples and programming of functions.
Resumo
ARToolKit uma biblioteca gratuita e aberta usada para o desenvolvimento de aplicaes de
realidade aumentada. O ambiente aumentado obtido pela mistura de vdeo com objetos virtuais,
sendo mostrado em capacete ou monitor. Este captulo apresenta conceitos, estrutura e
funcionamento do ARToolKit e exemplos de configurao e programao de funcionalidades.
Como o ARToolKit extrai da imagem de vdeo limiarizada (em preto e branco) as bordas do
quadrado em preto, utiliza-se uma moldura em branco antecedendo esse quadrado para promover o
contraste no prprio marcador, viabilizando o seu reconhecimento sobre superfcies de cores
escuras. A Figura 6.2a demonstra dois marcadores dispostos sobre uma superfcie escura. A
diferena entre os marcadores consiste no fato do marcador com o smbolo RA no possuir a
moldura em branco e outro conter essa moldura. O marcador com o smbolo RA no pode ser
identificado sobre a superfcie escura, pois no possvel extrair as suas bordas na imagem
limiarizada (Figura 6.2b).
(a)
(b)
R12
R22
R32
0
R13 T1 Xm
Xm
Ym
R23 T2 Ym
=
Zm
R33 T3 Zm
0
1 1
1
Funo
Init
ArVideoGetImage
ArDetectMarker
ArGetTransMat
Draw
Cleanup
Tabela 6.1 Passos e as funes implementadas num exemplo de aplicao distribuda com
o ARToolKit .
(a)
(b)
(c)
DSVideoLib-0.0.8b-win32
GLUT
No caso dessa verso 2.72.1 na plataforma Windows, necessrio seguir os seguintes passos
para compilar os seus projetos:
1. Instalar um dos compiladores da Microsoft (Visual Studio .NET 2003 ou Visual Studio
6) ou o CygWin.
2. Baixar e descompactar a biblioteca DSVideoLib-0.0.8b-win32 [DSVideoLib 2007]
dentro do diretrio raiz {ARToolKit}, certificando-se que o diretrio seja denominado
DSVL. Copiar os arquivos DSVL.dll e DSVLd.dll para a pasta bin do
ARToolKit ({ARToolKit}\bin) .
3. Baixar o GLUT [GLUT 2007], descompactar e copiar o arquivo glut32.dll para pasta
system do Windows, copiar o arquivo glut32.lib para a pasta lib do ARToolkit
({ARToolKit}\lib) e criar uma pasta GL no diretrio include do ARToolKit
({ARToolKit}\include \GL), copiando para essa nova pasta o arquivo glut.h.
4. Executar
o
script
Configure.win32.bat
que
{ARToolKit}\Configure.win32.bat
para
criar
{ARToolKit}\include\AR\config.h.
est
o
em
arquivo
Baixar a biblioteca OpenVRML (OpenVRML-0.16.1-bin-win32 ou OpenVRML0.14.3-win32 [OpenVRML 2007]) e descompact-la no diretrio raiz do ARToolKit.
O programa exibir uma janela com a imagem do vdeo. Enquadre o marcador nessa
imagem, de modo a aparecer um retngulo com lados vermelhos, esquerda e acima, e verdes,
direita e abaixo, nas bordas do marcador, como mostra Figura 6.9.
Pressione o boto esquerdo no mouse e ser pedida a entrada de um nome para o arquivo.
Realizado esse passo, um arquivo ser criado na pasta bin. Como os arquivos, com dados de
configuraes das aplicaes, geralmente esto localizados na pasta Data, deve-se transferir o
arquivo gerado para esta pasta.
Os programas calib_camera2, calib_cparam e calib_distortion so responsveis pela
calibrao de cmera. As etapas relacionadas calibrao de cmera so detalhadas em [Consularo
et al 2004].
O utilitrio graphicTest exibe uma janela com um objeto 3D desenhado em seu interior,
enquanto o videoTest mostra a uma janela com a imagem capturada pela cmera. Os resultados
dos testes que esses programas realizam so as prprias execues. Caso ocorra algum erro durante
a execuo de um desses utilitrios, provavelmente ocorrer o mesmo erro na execuo dos outros
programas fornecidos pela biblioteca.
6.3.2.Exemplo de aplicaes de RA
As aplicaes de RA fornecidas junto ao ARToolKit so exemplos que no s viabilizam o
entendimento no funcionamento das funes do ARToolKit, mas tambm servem como modelo
para a produo de novas aplicaes.
Os exemplos executveis contidos na pasta bin so: collide, exview, loadmultiple,
modetest, multi, optical, paddle, paddledemo, paddleinteraction, range, relation, simple, simple2,
simplelite, simplevrml e twoview. Cada exemplo disponibiliza diferentes funes relacionadas
interao da aplicao, servindo como base aos usurios que desejem implementar novas
funcionalidades em suas aplicaes. Os cdigos desses programas esto localizado em
{ARToolKit}\examples. A prxima seo demonstrar algumas funcionalidades desses
exemplos.
6.3.2.1.Teste de Coliso
A aplicao collideTest possui como caracterstica principal a verificao de coliso entre dois
marcadores. A funo responsvel em verificar a coliso denominada checkCollisions. Essa
funo recebe as estruturas relacionadas s informaes de cada um dos dois marcadores, alm e
um nmero representante do fator de coliso. O retorno dessa funo um nmero inteiro 1, caso
os marcadores esteja em coliso e 0, caso contrrio. A Figura 6.10 mostra a aplicao em
execuo, quando a distncia entre os marcadores supera o limite do fator de coliso, sendo
desenhado um cubo sobre os marcadores, conforme a Figura 6.10a. Quando a distncia entre os
marcadores for inferior ao limite, ser desenhada uma esfera sobre os marcadores, conforme a
Figura 6.10b.
(a)
(b)
10
6.3.2.3. SimpleVRML
O simpleVRML um programa que possibilita visualizar objetos virtuais, escritos na linguagem
VRML, sobrepostos aos marcadores. Esse exemplo utiliza a biblioteca OpenVRML para a
renderizao dos objetos VRML. A figura 6.12 exibe o resultado da execuo do simpleVRML.
(a)
(b)
6.5. Concluses
O desenvolvimento de novas formas de interaes em sistemas computacionais busca fornecer
mecanismos adaptativos dinmicos s necessidades dos usurios, aproximando as tcnicas de
manipulao do computador intuio sensorial humana [ Kirner e Tori 2006]. Nesse contexto, est
a Realidade Aumentada que promove a visualizao e a manipulao de objetos modelados por
computador no mundo real. Assim, possvel desenvolver aplicaes altamente interativas e
estimulantes associadas ao sentido visual do usurio.
O ARToolKit uma biblioteca de desenvolvimento de aplicaes de Realidade
Aumentada, bastante popular na comunidade de RA. Isto acontece pelo fato da biblioteca fornecer
solues de rastreamento 3D, em tempo real, com baixo custo computacional [Lepetit Fua 2005].
Alm disso, o ARToolKit amplamente utilizado por ser distribudo livremente para fins no
comerciais, incentivando a liberdade para os usurios executarem, estudarem e modificarem os
cdigos disponveis na biblioteca de acordo com as suas necessidades.
Este captulo apresentou uma abordagem sobre o ARToolKit, ressaltando os aspectos
relacionados a seu funcionamento interno e detalhes para a sua instalao e configurao. Foram
discutidos tambm, alguns exemplos inclusos nas verses mais recentes, que no s contribuem
com o conhecimento prtico de funes do ARToolKit, mas tambm, como modelo de partida para
os usurios desenvolverem as suas prprias aplicaes. Para finalizar, foram apresentados outros
Softwares de RA, incluindo variaes da biblioteca ARToolKit.
Referncias
Abdullah, J.; Martinez, K. (2002) Camera Self-Calibration for the ARToolkit. In Proceedings of
First International Augmented Reality Toolkit Workshop, pp. 84-88, Darmstadt, Germany.
ARToolKit. Human Interface Technology Laboratory < http://www.hitl.washington.edu/artoolkit/>
acesso em fev, 2007.
12
Platform.
13