Upload
octavio-aparicio
View
216
Download
1
Embed Size (px)
Citation preview
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
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
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
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.
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.
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.
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.
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ó.
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.
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.
Aplicações de Teste
• Algumas aplicações de teste foram:• Pintor 3D.• Braço robô.• ROV.
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
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
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.
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
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)
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
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