um sistema de rastreamento Óptico baseado em marcadores · utilização de inúmeros refletores....

11
Um Sistema de Rastreamento Óptico baseado em Marcadores Antonio Carlos Sementille 1,2 , José Remo Ferreira Brega 1,2 , Luís Escaramuzzi Lourenço 1 , Ildeberto Aparecido Rodello 1 1 Programa de Pós-Graduação em Ciência da Computação - PPG-CC Centro Universitário Eurípides de Marília – UNIVEM - Av. Hygino Muzzi Filho, 529 Caixa Postal 2041 - CEP 17.525-901 Marília – SP – Brasil 2 Laboratório de Sistemas de Tempo Real – Departamento de Computação Universidade Estadual Paulista – UNESP Caixa Postal 473 - CEP 17.033-360 Bauru - SP – Brasil {semente,remo,rodello} @fundanet.br, [email protected] Abstract. This article describes an marker-based optical tracking system using a single camera for the determination of the positioning and orientation of the body joints. In this implementation was used ARToolkit library, as well as an approach to increasing the reliability of a motion capture system by using a simplified anatomical human model. Resumo. Este artigo descreve um sistema de rastreamento óptico baseado em marcadores usando uma única câmera para a determinação do posicionamento e orientação das juntas do corpo. Nesta implementação utilizou-se a biblioteca ARToolkit, bem como uma abordagem para aumentar a confiabilidade do sistema de captura de movimento através da utilização de um modelo anatômico humano simplificado. 1. Introdução A utilização da captura óptica de movimentos (motion capture) tem se tornado muito útil nos últimos anos, principalmente em aplicações que envolvem a animação de movimentos corporais e, até mesmo, para prover informações valiosas no estudo de patologias ortopédicas. Porém, os sistemas disponíveis comercialmente, apesar de apresentarem uma boa qualidade de resposta, possuem, em sua maioria, um custo proibitivo. Em contrapartida, encontra-se disponível gratuitamente, a biblioteca ARToolkit desenvolvida pelo Laboratório de Tecnologia em Interface Humana da Universidade de Washington (Kato e Billinghurst (1999)), a qual foi projetada para oferecer recursos para o rápido desenvolvimento de aplicações de Realidade Aumentada (RA). Ela utiliza técnicas de visão computacional para calcular a posição e orientação da câmera com relação a cartões com marcações previamente treinadas, sobre os quais objetos virtuais podem ser precisamente renderizados. Neste trabalho, é apresentada a construção de um sistema óptico de rastreamento para movimentos corporais baseado na detecção de marcadores, utilizando-se o ARToolkit. O sistema se baseia na utilização de apenas uma câmera digital para a aquisição de imagens. Para compensar a perda de dados proveniente da oclusão dos marcadores, utiliza-se a técnica de rastreamento baseado no modelo esqueleto-e-marcador (Herda et al. (2001)).

Upload: letram

Post on 24-Dec-2018

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Um Sistema de Rastreamento Óptico baseado em Marcadores · utilização de inúmeros refletores. Com relação as desvantagens, encontram-se a oclusão Com relação as desvantagens,

Um Sistema de Rastreamento Óptico baseado em Marcadores

Antonio Carlos Sementille1,2, José Remo Ferreira Brega1,2, Luís Escaramuzzi Lourenço1, Ildeberto Aparecido Rodello1

1Programa de Pós-Graduação em Ciência da Computação - PPG-CC Centro Universitário Eurípides de Marília – UNIVEM - Av. Hygino Muzzi Filho, 529 Caixa Postal

2041 - CEP 17.525-901 Marília – SP – Brasil 2Laboratório de Sistemas de Tempo Real – Departamento de Computação

Universidade Estadual Paulista – UNESP Caixa Postal 473 - CEP 17.033-360 Bauru - SP – Brasil

{semente,remo,rodello} @fundanet.br, [email protected]

Abstract. This article describes an marker-based optical tracking system using a single camera for the determination of the positioning and orientation of the body joints. In this implementation was used ARToolkit library, as well as an approach to increasing the reliability of a motion capture system by using a simplified anatomical human model.

Resumo. Este artigo descreve um sistema de rastreamento óptico baseado em marcadores usando uma única câmera para a determinação do posicionamento e orientação das juntas do corpo. Nesta implementação utilizou-se a biblioteca ARToolkit, bem como uma abordagem para aumentar a confiabilidade do sistema de captura de movimento através da utilização de um modelo anatômico humano simplificado.

1. Introdução A utilização da captura óptica de movimentos (motion capture) tem se tornado muito útil nos últimos anos, principalmente em aplicações que envolvem a animação de movimentos corporais e, até mesmo, para prover informações valiosas no estudo de patologias ortopédicas. Porém, os sistemas disponíveis comercialmente, apesar de apresentarem uma boa qualidade de resposta, possuem, em sua maioria, um custo proibitivo.

Em contrapartida, encontra-se disponível gratuitamente, a biblioteca ARToolkit desenvolvida pelo Laboratório de Tecnologia em Interface Humana da Universidade de Washington (Kato e Billinghurst (1999)), a qual foi projetada para oferecer recursos para o rápido desenvolvimento de aplicações de Realidade Aumentada (RA). Ela utiliza técnicas de visão computacional para calcular a posição e orientação da câmera com relação a cartões com marcações previamente treinadas, sobre os quais objetos virtuais podem ser precisamente renderizados.

Neste trabalho, é apresentada a construção de um sistema óptico de rastreamento para movimentos corporais baseado na detecção de marcadores, utilizando-se o ARToolkit. O sistema se baseia na utilização de apenas uma câmera digital para a aquisição de imagens. Para compensar a perda de dados proveniente da oclusão dos marcadores, utiliza-se a técnica de rastreamento baseado no modelo esqueleto-e-marcador (Herda et al. (2001)).

Page 2: Um Sistema de Rastreamento Óptico baseado em Marcadores · utilização de inúmeros refletores. Com relação as desvantagens, encontram-se a oclusão Com relação as desvantagens,

2. Captura de Movimentos Por definição, sistemas de captura de movimentos geram informações que representam as medidas físicas do movimento capturado (Hodgins et al. (1999), Bodenheimer et al. (1997)). Tais sistemas são, normalmente, divididos em quatro categorias: acústicos, mecânicos, ópticos e magnéticos (Silva (1997), Silva (1998) e Welsh e Foxlin (2002)). Resumidamente, tem-se, a seguir, as características principais de cada uma destas categorias.

x Sistemas Acústicos: nestes sistemas, um conjunto de emissores sonoros é colocado nas principais articulações do ator, enquanto que receptores sensíveis são posicionados no local de captura. Os transmissores são seqüencialmente acionados para produzir um ruído característico, que será captado pelos receptores, que então calcularão as posições no espaço. Estes sistemas apresentam uma série de problemas, tais como: a dificuldade de obtenção de uma descrição correta de dados em um momento desejado, a restrição dos movimentos devido aos incômodos cabos, o número reduzido de transmissores que podem ser usados simultaneamente, reflexões do som e ruídos externos também podem afetar o processo de captura. Como vantagens tem-se: não possuem problemas de oclusão e de interferência de objetos metálicos.

x Sistemas Mecânicos: são compostos de potenciômetros e/ou slides que, colocados nas articulações desejadas, fornecem suas posições e orientações em altas taxas de amostragem. São equipamentos de medida absoluta, não sendo afetados por campos magnéticos ou reflexões indesejadas. Porém, geralmente são bastante obstrusivos.

x Sistemas Ópticos: necessitam que o ator vista uma roupa especial coberta com refletores (em geral LEDs) posicionados nas suas principais articulações. Então, câmeras especiais são colocadas estrategicamente para fazerem o rastreamento desses refletores durante o movimento do ator. Cada câmera gera as coordenadas 2D para cada refletor (obtidas via processo de segmentação). O conjunto dos dados 2D capturados pelas câmeras independentes é analisado, gerando-se as coordenadas 3D dos refletores. Entre as principais vantagens deste tipo de sistema tem-se: a alta taxa de amostragem, a liberdade de movimentos e a possibilidade de utilização de inúmeros refletores. Com relação as desvantagens, encontram-se a oclusão (obstrução) de um ou mais marcadores durante o processo de captura, e a necessidade de processamento, via software, dos dados obtidos pela câmera, o que reduz a interatividade.

x Sistemas Magnéticos: são caracterizados pela velocidade de processamento dos dados capturados. Utilizam um conjunto de receptores que são posicionados nas articulações do ator, os quais medem a posição 3D e orientações das mesmas, em relação a uma antena emissora, que emite um sinal de pulso. Cada receptor necessita de um cabo para se conectar à antena. Suas principais vantagens são: o baixo custo computacional para o processamento dos dados, inexistência da oclusão (gerando uma maior precisão dos dados) e baixo custo do equipamento. Suas principais desvantagens são: a necessidade do uso de diversos cabos e a interferência causada por objetos de metal próximos ao local de captura.

A Tabela I apresenta o custo de alguns destes rastreadores.

Page 3: Um Sistema de Rastreamento Óptico baseado em Marcadores · utilização de inúmeros refletores. Com relação as desvantagens, encontram-se a oclusão Com relação as desvantagens,

Tabela I – Custo de alguns rastreadores comerciais.

Produto Tecnologia Preço Sensores

IS-300 (Intersense (2003)) Sem referencial US $ 1,500.00 Até 4 sensores

StarTrack (Polhemus (2003)) Magnético US $ 78,000.00 Até 16 sensores

IS-600 Mark 2 Plus (Intersense (2003))

Acústico US $ 18,000.00 Até 4 sensores

Reactor (Ascension (2003)) Óptico US $ 105,000.00 540 sensores digitais

3. A Biblioteca ARToolkit Como mencionado anteriormente, este trabalho utilizou as funções da biblioteca ARToolkit (Kato et al. (2000)). Esta biblioteca é escrita em linguagem C e permite o desenvolvimento facilitado de aplicações de RA. Uma das partes mais difíceis das aplicações de RA é o cálculo preciso do ponto de visão do usuário em tempo real, pois só assim as imagens virtuais são exatamente alinhadas com o a visão do mundo real. O ARToolkit utiliza cartões com marcações, as quais são reconhecidas utilizando-se técnicas de visão computacional. A partir do reconhecimento destes marcadores, a posição e orientação da câmera real pode ser calculada e objetos virtuais podem ser renderizados sobre os mesmos.

Descrevendo-se mais detalhadamente o processo, primeiramente a imagem de vídeo ao vivo é convertida para preto e branco, baseada em um valor de binarização (threshold). Esta imagem é, então, pesquisada procurando-se identificar regiões quadradas (formato dos marcadores). O ARToolkit encontra todos os quadrados na imagem binária, muitos dos quais não se relacionam com as marcações de rastreamento. Para cada quadrado, captura-se o padrão localizado em seu interior, o qual é comparado com os padrões previamente treinados. Se ocorrer uma correspondência, então o ARToolkit encontrou um dos marcadores de rastreamento de RA. O ARToolkit então utiliza as dimensões conhecidas do quadrado e a orientação do padrão para calcular a posição da câmera de vídeo real relativa ao marcador físico. Uma matriz 3X4 é preenchida com as coordenadas da câmera de vídeo no mundo real relativa ao cartão. Esta matriz é usada para configurar a posição das coordenadas da câmera virtual. Uma vez que as coordenadas da câmera virtual e real são as mesmas, o computador pode renderizar o objeto virtual precisamente sobre o marcador real. A API OpenGL é usada para configurar as coordenadas da câmera virtual e desenhar as imagens virtuais. Além de aplicações OpenGL, pode-se utilizar a linguagem VRML, a qual é extremamente útil pois pode ser gerada por diversos pacotes de software 3D, além de possuir animações e scripts simples para interação com os objetos. Como o VRML utiliza o formato texto, pode-se facilmente gerar mundos VRML de diversas maneiras.

Quando um programa ARToolkit é executado, pode-se associar cada marcador pré-definido com seu próprio arquivo VRML. O ARToolkit inclui um programa para criar novos marcadores, os quais podem ser associados com arquivos VRML.

Atualmente, além da linguagem C, existe disponível uma implementação chamada JARToolkit, a qual permite a utilização de aplicações em Java usando o ARToolkit. O JARToolkit usa o Java Native Interface (JNI) para acessar as funções do ARToolkit (Geiger et al (2002)).

O ARToolkit está sendo alvo de intensa utilização na criação de aplicações de RA, devido a sua boa precisão e ao fato de estar disponível para utilização livre para fins não comerciais e acadêmicos. Como exemplo de aplicações que o utilizam, pode-se citar:

- a combinação de RA, computação móvel e trabalho colaborativo suportado por computador (Billinghurst e Kato (1999); Billinghurst et al. (2000); Reitmayr e Schmalstieg (2001));

Page 4: Um Sistema de Rastreamento Óptico baseado em Marcadores · utilização de inúmeros refletores. Com relação as desvantagens, encontram-se a oclusão Com relação as desvantagens,

- novos tipos de entradas para ambientes virtuais, através, por exemplo, do uso intensivo de gestos (Veigl et al. (2002)); e

- novos modos de visualização da informação (Slay et al. (2001), Bobrich e Otto (2002)), entre outros.

4. O Sistema de Rastreamento O sistema baseia-se na utilização de marcadores com padrões, os quais servem como pontos de referência para a aquisição das coordenadas das articulações do ator. A detecção e identificação destes marcadores, através das funções do ARToolkit, permite o cálculo do posicionamento e orientação das juntas, auxiliado pelo uso de um esqueleto virtual estilizado para o aumento da confiabilidade dos dados obtidos.

A Figura 1 mostra a estrutura geral do sistema de rastreamento de movimentos corporais. O mesmo é composto por quatro módulos principais, os quais são descritos nas próximas seções.

Figura 1. Estrutura Geral do Sistema.

4.1 Módulo de Detecção e Identificação dos Marcadores das Juntas Este módulo tem como objetivo detectar os marcadores e seus respectivos padrões pré-treinados associados às juntas e retornar, em uma estrutura de dados, a identificação de cada um deles, bem como suas coordenadas e orientação. A Figura 2 ilustra os componentes deste módulo.

Page 5: Um Sistema de Rastreamento Óptico baseado em Marcadores · utilização de inúmeros refletores. Com relação as desvantagens, encontram-se a oclusão Com relação as desvantagens,

Figura 2. Estrutura do Módulo de Detecção e Identificação dos Marcadores das Juntas.

Em uma primeira etapa é necessário definir-se os padrões a serem utilizados. A Figura 3(a) mostra uma marcação em branco, utilizada como base para a confecção das marcações de rastreamento. As Figuras 3(b)-(d) mostram alguns dos padrões usados.

(a)

(b)

(c)

(d)

Figura 3. (a) Marcação em branco; (b),(c) e (d) Exemplos de padrões utilizados. O ARToolkit oferece uma função para salvamento do arquivo bitmap do padrão do marcador a ser treinado. Esta operação é executada em uma fase de inicialização (função init()), na qual são carregados, também, os parâmetros de configuração iniciais da câmera e o tamanho escolhido para a imagem de vídeo capturada (Figura 4).

... /* Dados do Objeto */ char *nome_modelo= "Data/vrml_data"; ObjectData_T *objeto; int num_objeto; ... static void init( void ) { int i; ARParam wparam; ... /* Carrega os marcadores treinados e os arquivos bitmap associados */ if( (objeto=read_VRMLdata(nome_modelo, &num_objeto)) == NULL) exit(0); ... }

Figura 4. Trecho de código mostrando o carregamento dos padrões.

Page 6: Um Sistema de Rastreamento Óptico baseado em Marcadores · utilização de inúmeros refletores. Com relação as desvantagens, encontram-se a oclusão Com relação as desvantagens,

As outras fases que compõe este módulo, a saber, a detecção dos marcadores, a obtenção da posição e orientação 3D dos marcadores e a identificação dos marcadores são apresentados no trecho de código da Figura 5.

... /* Captura um frame de vídeo*/ camera.GrabFrame(); if( (dataPtr = (ARUint8 *)camera.GetBuffer()) == NULL ) { arUtilSleep(2); return; } ... /* Detecta os marcadores no frame de vídeo */ if( arDetectMarker(dataPtr,thresh,&marker_info,&marker_num) < 0 ){ cleanup(); exit(0); } /* Checa a visibilidade do objeto*/ for( i = 0; i < num_objeto; i++ ) { k = -1; for( j = 0; j < marker_num; j++ ) { if( objeto[i].id == marker_info[j].id ) { if( k == -1 ) k = j; else {if(marker_info[k].cf< marker_info[j].cf ) k = j;} } } if( k == -1 ) { objeto[i].visible = 0; continue; } /* Calcula a matriz de transformação entre o marcador detectado */ /* e a câmera real */ if( objeto[i].visible == 0 ) { arGetTransMat(&marker_info[k], objeto[i].marker_center,objeto[i].marker_width,objeto[i].trans);} else {arGetTransMatCont(&marker_info[k], objeto[i].trans, objeto[i].marker_center, objeto[i].marker_width, objeto[i].trans);} objeto[i].visible = 1; } ...

Figura 5. Trecho de código mostrando as principais fases do Módulo de Detecção.

4.2 Módulo de Visualização Direta Com base na identificação e nas informações de posicionamento e orientação recebidos do Módulo de Detecção, o Módulo de Visualização Direta exibe em uma janela, as imagens capturadas em tempo real, combinadas com a representação das juntas (Figura 6). Na verdade, a representação utilizada para as juntas foi a de esferas, cuja geometria é fornecida através de arquivos VRML, as quais devem ser sobrepostas precisamente aos marcadores detectados.

Figura 6. Estrutura do Módulo de Visualização Direta.

Page 7: Um Sistema de Rastreamento Óptico baseado em Marcadores · utilização de inúmeros refletores. Com relação as desvantagens, encontram-se a oclusão Com relação as desvantagens,

Este módulo tem como função a visualização direta para fins controle de iluminação e teste de visibilidade dos marcadores, os quais têm grande impacto sobre a qualidade e confiabilidade dos dados capturados (Figura 7).

(a) (b)

Figura 7. Saída gerada pelo Módulo de Visualização Direta. (a) detalhe do corpo de um ator com marcadores; (b) esferas virtuais marcando o posicionamento das juntas.

4.3 Módulo de Combinação do Esqueleto Genérico Este módulo provê maior confiabilidade aos dados capturados, uma vez que implementa as seguintes técnicas: o rastreamento baseado em janela deslizante de quatro frames, a verificação através de reconstrução monocular e da predição de marcadores. Os componentes principais deste módulo podem ser visualizados na Figura 8.

Figura 8 – Módulo de Combinação do Esqueleto Genérico.

A fim de extrair-se a animação 3D de um esqueleto através de uma variedade de movimentos pelo mesmo ator usando os mesmos marcadores, é necessário primeiro derivar o modelo esqueleto-e-marcador (Herda et al. (2001)). Este modelo é, na verdade, um esqueleto escalado para as proporções do corpo do ator e as localizações estimadas dos marcadores com respeito às juntas. Nos experimentos

Page 8: Um Sistema de Rastreamento Óptico baseado em Marcadores · utilização de inúmeros refletores. Com relação as desvantagens, encontram-se a oclusão Com relação as desvantagens,

em questão, foram utilizadas 15 marcações correspondentes as principais articulações do corpo humano. Este processo é mostrado na Figura 9.

Figura 9. Modelo Esqueleto-Marcador. (a) ator com as marcações; (b) posicionamento dos marcadores; (c)-(d) o modelo genérico é escalado de acordo com a anatomia do ator;(e) cada marcador é associado a uma junta e pode mover a esfera centrada naquela junta.

O rastreamento 3D propaga a informação associada a cada marcador no primeiro frame até o final da calibração do movimento, para que muitos marcadores possam ser identificados em todos os frames. Uma ligação interrompida na trajetória de um marcador implicará na perda de sua identidade e uma conseqüente intervenção do usuário. Para computar a trajetória de um marcador de um frame [f] até um frame [f+1], é necessário observar o deslocamento do marcador sobre uma janela deslizante de quatro frames, como descrito em Malik et al. (1993).

A suposição básica é que o deslocamento é mínimo de um frame para o seguinte, e a idéia é predizer e confirmar a posição de um marcador no próximo frame. O deslocamento de um marcador [f-1] para [f] prediz a posição em [f+1]. A atual posição em [f+1] e a projeção do movimento em [f+2] confirmará a hipótese feita previamente através da eliminação das ambigüidades. Em outras palavras, segue-se o deslocamento dos marcadores sobre uma janela deslizante de quatro frames.

Porém, se o número de marcações reconstruídas é menor que o número atual de marcadores no ator, é possível, ainda utilizar-se a reconstrução monocular (Herda et al. (2001)). Esta técnica consiste em traçar uma linha reta que parte do centro óptico da câmera até que o ponto de imagem do marcador i (no espaço do mundo) intercepte a esfera que circunda a junta associada a aquele marcador. Existem dois pontos de intersecção, o escolhido é aquele cuja posição é a mais próxima da posição do marcador no frame anterior (Figura 10).

Page 9: Um Sistema de Rastreamento Óptico baseado em Marcadores · utilização de inúmeros refletores. Com relação as desvantagens, encontram-se a oclusão Com relação as desvantagens,

Figura 10. Reconstrução Monocular.

4.4 Módulo de Geração do Avatar Humanóide Este módulo tem como função a geração do avatar humanóide a partir dos dados obtidos do Módulo de Combinação do Esqueleto Genérico. Para esta tarefa utilizou-se as funções do WorldToolkit (Sense8 (1998)), o qual pode ser entendido como um ambiente de desenvolvimento de aplicações gráficas 3D de tempo real, de alto desempenho. Possui uma biblioteca de mais de 1000 funções escritas em linguagem C que permitem ao programador desenvolver aplicações de realidade virtual de qualidade. Suas funções são orientadas a objeto e estão organizadas em mais de 20 classes. Estas classes incluem: Universe, Lights, Sensors, Paths, Motion Links, e outras. Para a modelagem propriamente dita das geometrias dos objetos envolvidos, utilizou-se o WorldUp Modeler da Sense8.

Uma aplicação WorldToolkit baseia-se na execução de um laço de simulação, dentro do qual uma série de operações pré-determinadas são executadas, a cada frame. Estas operações são as seguintes: a leitura de sensores, a execução da função de ação do universo, a atualização dos objetos baseados nas entradas dos sensores, a execução de funções associadas aos objetos, a execução de animações e, finalmente, a renderização da cena.

Como os módulos anteriores precisam atuar a cada frame, implementou-se a chamada de seus serviços dentro da função de ação do universo, a qual é chamada uma vez por iteração dentro do laço de simulação do Worldtoolkit. Um exemplo da saída obtida deste módulo é ilustrada pela Figura 11.

Figura 11. Visualização do Avatar Humanóide.

Page 10: Um Sistema de Rastreamento Óptico baseado em Marcadores · utilização de inúmeros refletores. Com relação as desvantagens, encontram-se a oclusão Com relação as desvantagens,

5. Ambiente Experimental O sistema descrito foi implementado utilizando-se as bibliotecas do Visual C++ 6.0, ARToolkit versão 2.52 para Windows 2000 com suporte para VRML, Microsoft Vision SDK (versão 1.2), DirectShow (DirectX versão 9), OpenVRML versão 0.11.1 e WorldToolkit versão 8.

O ambiente de hardware foi um Pentium III 700Mhz, com 256MB de RAM e placa aceleradora gráfica GEForce II. A câmera usada nos experimentos foi uma Creative PC-CAM 750 USB.

6. Conclusões e Perspectivas Futuras Os resultados obtidos foram bastante satisfatórios, principalmente por ter sido utilizada apenas uma câmera. Os principais fatores detectados que afetam o desempenho da aplicação são:

x as condições de iluminação; x o marcador não estar visível na imagem da câmera (oclusão); x o resolução da câmera; e x as dimensões do marcador (quando é muito pequeno) ou sua distância.

Estes aspectos são discutidos em Ledermann e Schmalstieg (2002), e quanto a precisão do ARToolkit, o trabalho de Malbezin et al. (2002) apresenta um estudo bastante minucioso. Dentre os fatores levantados, o mais importante é o da oclusão. Pretende-se, para minimizá-lo, aperfeiçoar o sistema usando-se uma segunda câmera. Naturalmente a utilização de um maior número de câmeras acarretará um aumento no tempo de processamento para a UCP, durante o rastreamento dos marcadores. Porém, pretende-se utilizar a reconstrução binocular, além da monocular já descrita, para facilitar a combinação estereoscópica.

7. Referências Bibliográficas Ascension Technologies Corporation, (2003). Disponível em: http://www.ascension-tech.com/ (julho

de 2003).

Billighurst, M., Poupyrev, I., Kato, H., May, R. (2000). “Mixing Realities in Shared Space: An Augmented Reality Interface for Collaborative Computing”, ICME 2000, pp. 1641-1644.

Billinghurst, M. and Kato, H. (1999). “Collaborative Mixed Reality”. In Proceedings of International Symposium on Mixed Reality (ISMR '99), Mixed Reality--Merging Real and Virtual Worlds, pp. 261-284.

Bobrich, J., Otto, S. (2002). “Augmented Maps”, IAPRS Vol. 34, Part 4, Geospatial Theory, Processing and Applications, Ottawa, Canada, 2002.

Bodenheimer, B., Rose, C., Rosenthal, S., and Pella, J., (1997). ``The Process of Motion Capture: Dealing with the Data'', Computer Animation and Simulation '97, Eurographics Animation Workshop, Sept. 1997, D. Thalmann and M. van de Panne, eds., Springer-Verlag, Wien, pp. 3-18.

Geiger, C., Reimann, C., Stöcklein, J., Paelke, V. (2002). “JARToolkit - Java Binding for AR Toolkit”. Proceedings of the First IEEE International Augmented Reality Toolkit Workshop, Darmstadt, Germany, September 2002.

Herda, L., Fua, P., Plänkers, R., Boulic, R., Thalmann., D. (2001). "Using skeleton-based tracking to increase the reliability of optical motion capture", Journal of Human Movement Science 20, pp.313-341.

Page 11: Um Sistema de Rastreamento Óptico baseado em Marcadores · utilização de inúmeros refletores. Com relação as desvantagens, encontram-se a oclusão Com relação as desvantagens,

Hodgins, J. K., O'Brien, J. F., and Bodenheimer, R. E., (1999). “Computer Animation'', in the Wiley Encyclopedia of Electrical and Electronics Enginering, John G. Webster, ed., v. 3, pp. 686-690, 1999.

Intersense, (2003). Disponível em: http://www.isense.com/ (julho 2003).

Kato, H., Billinghurst, M. (1999). “Marker Tracking and HMD Calibration for a Video-based Augmented Reality Conference System”, In 2nd IEEE and ACM International Workshop on Augmented Reality , San Francisco USA pp.85-94.

Kato, H., Billinghurst, M., Poupyrev, I. (2000). “ARToolKit version 2.33: A software library for Augmented Reality Applications”, 44p, Tutorial, november 2000.

Ledermann, F., Reitmayr, G., Schmalstieg, D. (2002). “Dynamically Shared Optical Tracking”, In: Proceedings of the IEEE First International Workshop on ARToolKit, 2002.

Malbezin, P., Piekarski, W., and Thomas, B. H. (2002). “Measuring ARToolKit Accuracy in Long Distance Tracking Experiments”, In 1st Int'l Augmented Reality Toolkit Workshop, Darmstadt, Germany, Sep 2002.

Malik N., Dracos, T., Papantoniou, D. (1993). “Particle Tracking in Three Dimensional Turbulent Flows – Part II: Particle Tracking”, Experiments in Fluids, 15:279-294.

Polhemus, (2003). Disponível em: http://www.polhemus.com/ (julho de 2003).

Reitmayr, G., Schmalstieg, D. (2001). “Mobile Collaborative Augmented Reality”, In Proc. ISAR 2001, New York, USA, Oct. 2001.

Sense8 Corporation. WorldToolkit Reference Manual – Release 7. Mill Valley, CA, 1998.

Silva, F. (1997). “Motion Capture - Introdução à Tecnologia”, Internal report (preprint), LCG - COPPE/SISTEMAS, UFRJ.

Silva, F. (1998). “Um Sistema de Animação Baseado em Movimento Capturado (A Motion Capture Based Animation System)”. M.Sc. Thesis, COPPE/Sistemas, Federal University of Rio de Janeiro (UFRJ).

Slay, H., Phillips, M., Vernik, R. and Thomas, B.H. (2001). “Interaction Modes for Augmented Reality Visualization”, In Proc. Australian Symposium on Information Visualisation, (invis.au 2001), Sydney, Australia. Conferences in Research and Practice in Information Technology, 9. Eades, P. and Pattison, T., Eds., ACS. 71-75.

Veigl, S., Kaltenbach, A., Ledermann, F., Reitmayr, G., Schmalstieg, D. (2002). “Two-Handed Direct Interaction with ARToolkit”, Poster paper in Proc. ART'02, Darmstadt, Germany, Sept. 29, 2002.

Welch, G., Foxlin, E. (2002). “Motion Tracking: No Silver Bullet, but a Respectable Arsenal”, IEEE Computer Graphics and Applications, special issue on “Tracking,” November/December 2002, 22(6): 24–38.