• Nenhum resultado encontrado

Rastreamento de marcadores planares através de padrões elípticos

N/A
N/A
Protected

Academic year: 2021

Share "Rastreamento de marcadores planares através de padrões elípticos"

Copied!
5
0
0

Texto

(1)

Rastreamento de marcadores planares através de padrões elípticos

João Marcelo X. N. Teixeira, Bernardo Reis, Vítor H. A. de Melo, Judith Kelner Grupo de Pesquisa em Realidade Virtual e Multimídia

Universidade Federal de Pernambuco Recife, Brasil

{jmxnt, bfrs, vham, jk}@cin.ufpe.br Abstract—Augmented reality applications that provide

interaction through tangible interfaces often make use of markers inserted into the user’s context. The popularization of visual markers is due to the fact that they are of low cost and easy manipulation. This work proposes a tracking alternative to planar markers, using elliptical patterns instead of conventional rectangular ones. The concept is validated using a well known card game, Uno®. The results achieved validate the work and point the next steps on the development of a more complete Augmented Reality system.

Keywords: markers, tracking, Hough transform for ellipses Resumo—Aplicações de Realidade Aumentada que

proporcionam interação através de interfaces tangíveis geralmente utilizam marcadores inseridos no contexto do usuário. A popularização dos marcadores visuais deve-se ao fato dos mesmos serem de baixo custo e de fácil manipulação. Este trabalho propõe uma alternativa de rastreamento aos marcadores planares, usando padrões elípticos ao invés dos retangulares convencionais. A ideia é validada utilizando-se um conhecido jogo de cartas, o Uno®. Os resultados alcançados validam a proposta e apontam os próximos passos do desenvolvimento de um sistema mais completo de RA.

Palavras-chave: marcadores, rastreamento, transformada de Hough para elipses

I. INTRODUÇÃO

O ser humano vem interagindo cada vez mais com os sistemas computacionais. Essa necessidade crescente de interação homem-máquina aumenta à medida que mais informações estão disponíveis no meio digital. A Realidade Aumentada (RA) se encaixa nesse cenário por fornecer o link entre realidade e informação. A principal vantagem da RA é tornar a interação o mais natural possível, diminuindo assim a curva de aprendizagem requerida pela aplicação.

Em RA, a sobreposição das informações virtuais no mundo real é realizada através de uma tarefa chamada de registro. Nesse passo as informações são alinhadas aos objetos reais (transformadas de coordenada de mundo para coordenada de tela), de forma que sejam exibidas coerentemente. No princípio, a atividade de registro era extremamente dependente do hardware utilizado, como sensores magnéticos, ultrassônicos ou a laser. Com o passar dos anos, passou-se a adotar webcams como sensor

de baixo custo, reconhecendo os padrões visuais por meio de software.

Por serem bastante difundidos na comunidade, existem diversos tipos de marcadores que podem ser utilizados. Dentre os mais comuns, pode-se citar o Fiducial, o Baseado em ID, o DataMatrix, o Split e o Frame [1]. A Figura 1 ilustra os marcadores mencionados anteriormente. Uma característica comum que se pode observar em todos eles é sua estrutura retangular. Ela facilita a detecção, pois a partir do momento em que a borda retangular é detectada, o conteúdo interno é facilmente decodificado.

Figura 1. Diferentes tipos de marcadores planares: a) Fiducial; b) Baseado em ID; c) DataMatrix; d) Frame; e) Split.

Este trabalho introduz o conceito de marcadores elípticos, de maneira que a forma retangular dos marcadores não seja mais um requisito. Similarmente ao que ocorre nos marcadores fiduciais, a região da elipse é detectada e seu padrão interno é analisado. Uma vez que a

(2)

análise é realizada pela estrutura (formato) elíptica, qualquer objeto da cena pode se tornar um marcador, desde que o mesmo apresente o formato em questão. Esta abordagem é exemplificada com um estudo de caso baseado no jogo de cartas Uno®.

As demais seções deste artigo estão organizadas conforme descrito a seguir. A seção 2 lista diferentes trabalhos relacionados ao tema proposto. A seção 3 apresenta o estudo de caso utilizado para validar o novo esquema de marcadores proposto, baseado em um jogo de cartas conhecido, o Uno®. A seção 4 descreve a implementação do estudo de caso, e estrutura o processamento da aplicação desde a captura de imagem até a definição da carta reconhecida. A seção 5 faz algumas considerações sobre o que foi alcançado com o trabalho proposto e sugere direcionamentos e melhorias para trabalhos futuros.

II. RECONHECIMENTO DE ELIPSES

O uso de elipses para o registro entre o mundo real e o virtual não é uma técnica bastante explorada, havendo somente alguns poucos sistemas de marcadores baseados em formatos circulares, como o TRIPTag [2], o Fourier Tag [3] e o EAR [4] (marcador elíptico baseado em código para RA). Esses sistemas levam em consideração que, apesar de buscarem por formatos elípticos no mundo real, o formato original do marcador é circular, restringindo assim uma dimensão no espaço de busca e facilitando o processo de extração de pose da câmera.

Contudo, estes padrões circulares nem sempre podem ser utilizados, quando, por exemplo, se deseja propriamente detectar elipses. Além disso, a identificação única dos marcadores é realizada através de padrões artificiais codificados no próprio marcador, inserindo na cena artefatos comumente indesejados. O TRIPTag apresenta setores radiais binários para realizar a identificação única, enquanto o Fourier Tag possui um padrão codificado no domínio da frequência através da transformada de Fourier, obtendo assim uma robustez maior à escala. O EAR, por sua vez, permite que o interior do marcador seja preenchido por um conteúdo qualquer, no entanto, ainda apresenta os padrões artificiais indesejados. A abordagem proposta visa garantir a possibilidade do uso de elipses já presentes no ambiente como marcadores, sem a necessidade de introduzir artefatos artificiais na mesma.

Para que os marcadores elípticos possibilitem a remoção da distorção de perspectiva e posterior reconhecimento do padrão embutido na elipse, é necessário que sejam primeiramente identificados formatos elípticos na cena. Esses formatos se apresentam como candidatos a marcadores válidos. O processo de reconhecimento de elipses pode ser feito de diversas maneiras, como, por exemplo, através da transformada de Hough para elipses [5] e do algoritmo de Fitzgibbon para encaixe de cônicas (tradução livre de conic fitting) [2]. O algoritmo de Fitzgibbon tenta, dado um conjunto de pontos, identificar qual a cônica que apresenta a menor distância para tais pontos. A biblioteca de visão

computacional OpenCV [7] utiliza a abordagem de Fitzgibbon aplicada a segmentos de contornos para o reconhecimento de elipses em uma imagem. Esta abordagem, apesar de bastante eficiente computacionalmente, não garante que o dado conjunto de pontos realmente caracteriza uma elipse, apenas retornando a elipse que melhor se encaixa sobre os dados de entrada. A abordagem através da transformada de Hough tenta encontrar elipses transformando pontos do espaço euclidiano para o espaço paramétrico, conforme descrito em [5]. As formas candidatas a elipses consideradas válidas são aquelas mais votadas no espaço paramétrico. Uma comparação entre as duas abordagens é ilustrada na Figura 2, onde é possível visualizar a maior robustez da abordagem utilizando a transformada de Hough.

Figura 2. Comparação entre a detecção de elipses utilizando a biblioteca OpenCV (centro) e a abordagem proposta (abaixo): o OpenCV tenta encontrar a melhor elipse que mais se aproxima dos pontos de entrada (baseada em contornos), enquanto a abordagem implementada é robusta a outliers (baseada em Hough).

III. ESTUDO DE CASO

Como objetivo maior desse trabalho, pretende-se desenvolver futuramente um sistema de RA completo que auxilie jogadores durante uma partida de Uno®, indicando qual deve ser a próxima pessoa a jogar, qual a probabilidade das cartas restantes na mesa, etc. O jogo

(3)

Uno® foi escolhido como estudo de caso do sistema de rastreamento elíptico proposto principalmente devido ao formato e conteúdo das suas cartas. Todas seguem um padrão retangular que contém em seu interior uma elipse rotacionada, conforme ilustrado na Figura 2. Informações adicionais sobre a carta são posicionadas nos cantos superior esquerdo e inferior direito das cartas, enquanto o conteúdo principal das mesmas está inserido na elipse central.

A não utilização de algoritmos baseados em features para realizar o rastreamento das cartas deve-se ao fato delas apresentarem pouca informação que pode ser rastreada por algoritmos conhecidos, como FERNS [8], SURF [9] e SIFT [10]. Sendo assim, outras abordagens de detecção foram adotadas, como análise de forma e cor (mais detalhes serão discutidos na próxima seção).

IV. IMPLEMENTAÇÃO

O fluxo de processamento do marcador elíptico foi implementado usando a biblioteca OpenCV e pode ser dividido em quatro etapas, conforme ilustrado na Figura 3. Cada uma dessas etapas será detalhada a seguir.

A primeira etapa de processamento de aplicações de RA baseadas em marcadores visuais consiste na aquisição dos mesmos através de um dispositivo de captura. Além de ler a imagem de entrada, o primeiro passo de processamento, também chamado de Detecção de Bordas, é responsável por ressaltar as bordas da imagem para que as estruturas elípticas presentes na mesma estejam visíveis. Através de testes realizados, percebeu-se que a função padrão de binarização disponível no OpenCV não deveria ser utilizada, principalmente quando cartas amarelas eram processadas. Devido à baixa diferença de contraste entre as cores branca e amarela, a elipse central não se destaca na detecção de bordas, conforme ilustrado na Figura 4. A solução encontrada dividiu-se em três etapas: conversão da cor no formato RGB para o formato HSV; posterior conversão da cor para escala de cinza; e binarização utilizando a técnica de Otsu [11].

Antes de iniciar todo o processo, a cor preta precisou ser substituída por outra menos comum (por exemplo, a cor roxa). Isso se deve ao fato de que, quando as três etapas eram executadas, não havia distinção entre as cores branca e preta, já que a única diferença entre elas é o canal correspondente à luminosidade. Uma outra vantagem decorrente da abordagem de binarização utilizada foi a qualidade das bordas geradas. Conforme ilustrado na Figura 4, é possível perceber que a detecção de bordas com a binarização padrão do OpenCV gera mais pixels de borda, enquanto a abordagem adotada acaba por filtrar pixels que iriam interferir na detecção da elipse.

Figura 3. Fluxo do processamento proposto, desde a aquisição da imagem até o reconhecimento do padrão interno à elipse detectada.

(4)

Figura 4. Resultado da detecção de bordas referente à imagem (acima) usando a binarização padrão do OpenCV (centro) apresenta mais pixels de borda genéricos enquanto o resultado da abordagem utilizada (abaixo), além de distinguir os pixels de borda da elipse, filtra outros pixels da cena.

A segunda etapa de processamento consiste na fase da detecção das elipses na cena a partir dos pontos de borda já encontrados. Uma vez que a quantidade de outliers (pixels não pertencentes à elipse central) é grande, foi necessário utilizar uma abordagem mais robusta. Como consequência, foi utilizada uma abordagem baseada na transformada de Hough, conforme descrito em [5]. Ao fim dessa etapa, tem-se para cada elipse encontrada os parâmetros , , , e que correspondem respectivamente às coordenadas e do centro da elipse, ao tamanho do eixo principal ( ) e secundário ( ) e ao ângulo de inclinação da elipse ( ). A Figura 3 destaca a elipse encontrada na cor verde.

A terceira etapa, também chamada de Correção de Distorção, é responsável por obter uma transformação que mapeie a carta do espaço de coordenadas de imagem para o espaço de coordenadas das imagens na base. A transformação escolhida para realizar esse mapeamento foi uma homografia, e a mesma é calculada através do fornecimento de quatro pares de pontos 2D. Os pontos selecionados correspondem aos pontos que delimitam os eixos da elipse. A partir dos parâmetros da elipse encontrada, as correspondências para os quatro pontos são

encontradas utilizando as fórmulas (1) e (2). Para obter os quatro pontos, deve-se iterar o valor de de a .

(1)

(2)

Uma vez corrigida a distorção da elipse, dá-se início à última fase do processamento, a qual consiste no casamento do padrão interno à elipse com aqueles existentes na base de cartas. Esse processamento é realizado em duas etapas. A primeira delas consiste em obter o esqueleto do símbolo interno à elipse, uma vez que verificou-se ser mais robusto compará-los com a base.

Quando o esqueleto é extraído, todos os pontos pertencentes ao mesmo são comparados com um mapa de distância de cada carta na base. Tal mapa de distância indica quão próximo aquele pixel está de um pixel de borda. Quanto menor a distância total, considerando a soma de todos os pixels do esqueleto, mais próximo se estará da carta. Sendo assim, itera-se por todas as cartas armazenadas na base e aquela com o menor valor de distância é a candidata à correspondência correta. Em seguida, a partir da imagem original, as cores da carta são quantizadas e um histograma é gerado. A partir de uma comparação de histogramas usando distância euclidiana, as cores predominantes da carta são determinadas e finaliza-se o processo de detecção.

V. CONCLUSÕES E TRABALHOS FUTUROS Este trabalho abordou o problema de rastreamento de marcadores para uso em aplicações de RA de maneira alternativa, através do reconhecimento de elipses na cena. Utilizou-se a transformada de Hough para detectá-las, apesar de apresentar um alto custo de processamento . A aplicação responsável pela detecção foi implementada utilizando a linguagem C++ e a biblioteca OpenCV. Através da utilização de diretivas de compilação relacionadas ao OpenMP [12], foi possível reduzir o tempo de processamento para aproximadamente um quarto do tempo original, considerando que se trabalhava com um processador de 4 núcleos. Espera-se atingir um tempo de processamento mais satisfatório através de implementação em GPU, uma vez que a maior parte dos cálculos realizados é independente e pode acontecer de forma paralela.

O sistema de reconhecimento do padrão interno necessita de melhorias, pois devido ao grande número de pixels pertencente ao resultado da esqueletização de algumas cartas, falsos positivos podem ocorrer. De 13 cartas distintas de uma mesma cor, 2 apresentaram problema na detecção (carta “9” e carta “reverso”), o que representa uma taxa de acerto de 85%.

Como trabalhos futuros, após a finalização e testes por completo do módulo de rastreamento, serão implementados os módulos de recuperação da pose da câmera, lógica do jogo e visualização das informações sobrepostas aos elementos reais. Por fim, será realizada

(5)

uma avaliação com usuários para verificar o aumento de experiência a partir da inserção de RA em um jogo tradicional de cartas.

REFERÊNCIAS

[1] R. A. Roberto, J. M. X. N. Teixeira, J. P. S. M. Lima, M. M. O. Silva, E. Albuquerque, D. Alves, V. Teichrieb, J. Kelner, “Jogos Educacionais Baseados em Realidade Aumentada e Interfaces Tangíveis”, 2011. (Curso de curta duração ministrado/Extensão). [2] D. López de Ipiña, P. R. S. Mendonça, and Andy Hopper. “TRIP:

A Low-Cost Vision-Based Location System for Ubiquitous Computing,” Personal Ubiquitous Comput, vol. 6, n. 3, (January 2002), pp. 206-219. DOI=10.1007/s007790200020

[3] A. Xu and G. Dudek, "Fourier Tag: A Smoothly Degradable Fiducial Marker System with Configurable Payload Capacity," 2011 Canadian Conference on Computer and Robot Vision (CRV), pp.40-47, 25-27 May 2011. doi: 10.1109/CRV.2011.13

[4] Prizatech. “Elliptical Augmented Reality Code Marker”, http://www.prizatech.com/services.html. Acessed on October, 10th, 2012.

[5] A. Y. S. Chia, M. K. H. Leung, E. How-Lung, S. Rahardja, "Ellipse Detection with Hough Transform in One Dimensional

Parametric Space," Image Processing, 2007. ICIP 2007. IEEE International Conference on , vol.5, pp.333-336, Sept. 16 2007-Oct. 19, 2007. doi: 10.1109/ICIP.2007.4379833

[6] A. W. Fitzgibbon, R. B. Fisher. “A Buyer’s Guide to Conic Fitting,” Proc. 5th British Machine Vision Conference, Birmingham, pp. 513-522, 1995.

[7] OpenCV library, http://code.opencv.org. Accessed on: October, 10th, 2012.

[8] M. Özuysal, P. Fua, and V. Lepetit, "Fast Keypoint Recognition in Ten Lines of Code," Computer Vision and Pattern Recognition, 2007. CVPR '07. IEEE Conference on , pp.1-8, 17-22 June 2007. doi: 10.1109/CVPR.2007.383123

[9] H. Bay, A. Ess, T. Tuytelaars, and L. V. Gool, “Speeded-Up Robust Features (SURF),” Comput. Vis. Image Underst., vol. 110, no. 3, pp. 346-359, June 2008. doi: 10.1016/j.cviu.2007.09.014 [10] D. G. Lowe, “Distinctive Image Features from Scale-Invariant

Keypoints,” Int. J. Comput. Vision, vol. 60, no. 2, pp. 91-110, November 2004. doi: 10.1023/B:VISI.0000029664.99615.94 [11] N. Otsu, "A threshold selection method from gray-level

histograms". IEEE Trans. Sys., Man., Cyber. 9 (1): pp. 62–66, 1979. doi:10.1109/TSMC.1979.4310076

[12] OpenMP library,http://www.openmp.org. Accessed on: October, 10th, 2012.

Referências

Documentos relacionados

Neste presente estudo foi aplicado um questionário sobre a aceitação de um dos seus detergentes comparado a dois concorrentes utilizando a escala ideal , além

Detectadas as baixas condições socioeconômicas e sanitárias do Município de Cuité, bem como a carência de informação por parte da população de como prevenir

O mar profundo é uma vasta região que recobre aproximadamente 70% da superfície da terra, sendo considerado ainda uma vastidão a ser explorada e estudada pelo homem. A coleção

•   O  material  a  seguir  consiste  de  adaptações  e  extensões  dos  originais  gentilmente  cedidos  pelo 

Os dados experimentais de temperatura na secagem da pêra em estufa a 40 o C estão apresentados na Figura 6, assim como os valores calculados pelo modelo

A história deste dia prende-se com a do bispo Valentim que lutou contra as ordens do imperador Cláudio II, que havia proibido o casamento durante as guerras, acreditando que

libras ou pedagogia com especialização e proficiência em libras 40h 3 Imediato 0821FLET03 FLET Curso de Letras - Língua e Literatura Portuguesa. Estudos literários

Apesar da longa distância dos grandes centros urbanos do país, Bonito destaca- se, regionalmente, como uma área promissora dentro do Estado de Mato Grosso do Sul. Bonito,