Sistemas de Rastreamento de Baixo Custo para Desktops Tecgraf (Grupo de Tecnologia em Computação...

18
Sistemas de Rastreamento de Baixo Custo para Desktops Tecgraf (Grupo de Tecnologia em Computação Gráfica) Depto. de Informática, PUC-Rio Alberto Raposo, Manuel Loaiza, Gustavo Wagner e Thiago Bastos Julho, 2005

Transcript of Sistemas de Rastreamento de Baixo Custo para Desktops Tecgraf (Grupo de Tecnologia em Computação...

Page 1: Sistemas de Rastreamento de Baixo Custo para Desktops Tecgraf (Grupo de Tecnologia em Computação Gráfica) Depto. de Informática, PUC-Rio Alberto Raposo,

Sistemas de Rastreamento de Baixo Custo para Desktops

Tecgraf (Grupo de Tecnologia em Computação Gráfica) Depto. de Informática, PUC-Rio

Alberto Raposo, Manuel Loaiza, Gustavo Wagner e Thiago BastosJulho, 2005

Page 2: Sistemas de Rastreamento de Baixo Custo para Desktops Tecgraf (Grupo de Tecnologia em Computação Gráfica) Depto. de Informática, PUC-Rio Alberto Raposo,

Dispositivo de Rastreamento Óptico

• O usuário movimenta o conjunto de marcadores no ambiente de trabalho.

• A movimentação dos marcadores é rastreada, para isto se faz a reconstrução 3D de cada marcador individualmente.

Imagem do Dispositivo

Page 3: Sistemas de Rastreamento de Baixo Custo para Desktops Tecgraf (Grupo de Tecnologia em Computação Gráfica) Depto. de Informática, PUC-Rio Alberto Raposo,

Dispositivo de Rastreamento Óptico

• O rastreamento também pode ser feitos com os marcadores colocados na mão do usuário.

• A caixa esta desenhada para poder suportar a movimentação livre da mão do usuário.

Modo de uso do Dispositivo

Page 4: Sistemas de Rastreamento de Baixo Custo para Desktops Tecgraf (Grupo de Tecnologia em Computação Gráfica) Depto. de Informática, PUC-Rio Alberto Raposo,

Processo de Rastreamento

• O processo de rastreamento segue os seguintes passos:

1. Extração de um ponto 2D representando a cada marcador nas imagens.

2. Calibração das câmeras utilizadas.3. Correlação dos pontos 2D que ficam em cada imagem.4. Reconstrução da posição 3D para cada marcador.5. Adaptação de eventos em base a extração dos 6DOF da

movimentação do conjunto de marcadores.

Page 5: Sistemas de Rastreamento de Baixo Custo para Desktops Tecgraf (Grupo de Tecnologia em Computação Gráfica) Depto. de Informática, PUC-Rio Alberto Raposo,

Extração dos pontos 2D representando aos marcadores (1)

• O contraste entre os marcadores e o fundo ajuda a identificar eles no ambiente de trabalho.

• Se binariza a imagem e logo para cada área circular se extrai o centro de cada área para ser o ponto 2D que utilizaremos no processo para representar ele.

Page 6: Sistemas de Rastreamento de Baixo Custo para Desktops Tecgraf (Grupo de Tecnologia em Computação Gráfica) Depto. de Informática, PUC-Rio Alberto Raposo,

Calibração das câmeras (2)

• Captura do padrão de calibração.

• Processo de calibração para cada câmera utilizando o mesmo padrão de pontos.

• A calibração foi feita utilizando o método TSai - não planar.

Page 7: Sistemas de Rastreamento de Baixo Custo para Desktops Tecgraf (Grupo de Tecnologia em Computação Gráfica) Depto. de Informática, PUC-Rio Alberto Raposo,

Correlação dos pontos 2D (3)

• Uma vez identificados os pontos 2D que representam os marcadores temos que correlacionar eles.

• Para cada ponto na câmera pivô identificar o mesmo ponto nas outras imagens.

• Para a correlação se utiliza algumas características da geometria epipolar como método de correlação.

Page 8: Sistemas de Rastreamento de Baixo Custo para Desktops Tecgraf (Grupo de Tecnologia em Computação Gráfica) Depto. de Informática, PUC-Rio Alberto Raposo,

Reconstrução da posição 3D para cada marcador (4)

• Com os pontos 2D correlacionados se implementa o processo de reconstrução 3D para cada marcador.

• Para a reconstrução se utiliza como referencia características geométricas definidas pelo conjunto de marcadores como um objeto só.

Page 9: Sistemas de Rastreamento de Baixo Custo para Desktops Tecgraf (Grupo de Tecnologia em Computação Gráfica) Depto. de Informática, PUC-Rio Alberto Raposo,

Reconstrução da posição 3D para cada marcador (4)

• Uma vez reconstruídos os pontos podemos analisar eles como um objeto só rastrear sua movimentação podendo extrair os 6 DOF que estão definidos pelos movimentos de translação e rotação que realizam no ambiente de trabalho.

Page 10: Sistemas de Rastreamento de Baixo Custo para Desktops Tecgraf (Grupo de Tecnologia em Computação Gráfica) Depto. de Informática, PUC-Rio Alberto Raposo,

Adaptação de eventos (5)

• Finalmente em base a extração dos 6DOF, da movimentação do conjunto de marcadores, se pode adaptar eventos que nos permitam controlar, navegar ou selecionar objetos dentro de uma aplicação gráfica.

Page 11: Sistemas de Rastreamento de Baixo Custo para Desktops Tecgraf (Grupo de Tecnologia em Computação Gráfica) Depto. de Informática, PUC-Rio Alberto Raposo,

Aplicações de Teste

• Algumas aplicações de teste foram:• Pintor 3D.• Braço robô.• ROV.

Page 12: Sistemas de Rastreamento de Baixo Custo para Desktops Tecgraf (Grupo de Tecnologia em Computação Gráfica) Depto. de Informática, PUC-Rio Alberto Raposo,

Dispositivo de Câmera Livre

• O usuário movimenta a câmera como se ela fosse o objeto virtual

• A movimentação é gerada a partir da captura de imagens de padrões posicionados no ambiente de trabalho

Imagem do ROV

Page 13: Sistemas de Rastreamento de Baixo Custo para Desktops Tecgraf (Grupo de Tecnologia em Computação Gráfica) Depto. de Informática, PUC-Rio Alberto Raposo,

Processo de Rastreamento

• O processo de rastreamento segue os seguintes passos:

1. Identificar os padrões na imagem capturada2. Calcular a posição da câmera a partir das coordenadas

capturadas de cada padrão3. Filtrar a posição capturada para remover ruído4. Enviar a movimentação realizada para a aplicação

Page 14: Sistemas de Rastreamento de Baixo Custo para Desktops Tecgraf (Grupo de Tecnologia em Computação Gráfica) Depto. de Informática, PUC-Rio Alberto Raposo,

Identificando os Padrões na Imagem Capturada (1)

• A imagem é binarizada, com um filtro de Threshold.

• Quadriláteros são procurados nas bordas de cada uma das regiões encontradas.

Page 15: Sistemas de Rastreamento de Baixo Custo para Desktops Tecgraf (Grupo de Tecnologia em Computação Gráfica) Depto. de Informática, PUC-Rio Alberto Raposo,

Identificando os Padrões na Imagem Capturada (2)

• Todos os quadriláteros da cena são escolhidos como possíveis padrões

• A identificação dos padrões reais é feita pela comparação de pixels da imagem capturada com imagens pré-armazenadas de cada padrão

• Além de permitir distinguir entre vários padrões, esse método também nos dá a orientação de cada um deles

Comparação pixel-a-pixel

Page 16: Sistemas de Rastreamento de Baixo Custo para Desktops Tecgraf (Grupo de Tecnologia em Computação Gráfica) Depto. de Informática, PUC-Rio Alberto Raposo,

Calculando a Posição da Câmera

• A posição da câmera com relação a cada padrão encontrado pode ser calculada usando-se o método TSAI coplanar

• Esse método trabalha em cima de um mínimo de 8 pontos de calibração, posicionados num mesmo plano

• Foram testadas 3 métodos para gerar mais que 8 pontos de calibração:

– Usar todos os pontos da imagem, 16 no total (os pontos em cinza são as interseções dos segmentos formados pelos outros pontos)

– Usar os 8 pontos extraídos dos 2 quadrados encontrados (pontos em verde e amarelo)

– Usar apenas os 4 pontos da borda (em verde) e gerar mais pontos artificialmente, através de uma matriz de homografia (esse método apresentou os melhores resultados, provavelmente devido a ruído na captura)

Page 17: Sistemas de Rastreamento de Baixo Custo para Desktops Tecgraf (Grupo de Tecnologia em Computação Gráfica) Depto. de Informática, PUC-Rio Alberto Raposo,

Filtrando a Posição da Câmera

• A posição encontrada é filtrada antes de ser enviada para a aplicação com um filtro de Kalman, para eliminar as imprecisões geradas no processo de captura

Page 18: Sistemas de Rastreamento de Baixo Custo para Desktops Tecgraf (Grupo de Tecnologia em Computação Gráfica) Depto. de Informática, PUC-Rio Alberto Raposo,

Enviando a Movimentação para a Aplicação

• A movimentação gerada é enviada a aplicação, que está sendo gerenciada pelo ViRAL

• Ao invés de enviarmos posições absolutas relativas ao padrão, enviamos incrementos, de acordo com a movimentação da câmera

• Isso permite que, obstruindo-se a sua lente, a câmera seja movimentada de volta ao meio da área de trabalho, sem gerar movimentos na tela