Nome | Matrícula | Curso | ||
---|---|---|---|---|
Daniel Pacheco de Queiroz | pacheco@dcc.ufmg.br | 2004041140 | Ciência da Computação | |
Eduardo Diego Silva | edudiego@dcc.ufmg.br | 20040471174 | Ciência da Computação |
Real Time Light Saber Fight Simulator (ReTiLiSFiS)
Este trabalho consiste em criar um simulador de lutas de sabre de luz em tempo real, o que seria feito com uma webcam que filmaria os lutadores com bastões de cores conhecidas e, no computador, seriam inseridos os efeitos visuais e sonoros que dariam realismo à cena.
Nossa trabalho, a priori, será realizado seguindo as etapas de tratamento das imagens definidas a seguir: Primeiramente faremos a conversão do espaço de cor de RGB para YCbCr, cuja estrutura se assemelha mais à do sistema visual humano e é mais robusta à variação de cor. Depois disso faremos uma segmentação da imagem baseada na cor do sabre (agora definida pelos 3 parâmetros Y, Cb e Cr), mantendo na imagem apenas os sabres, que têm uma cor definida. Após está etapa, será utilizado um dos métodos de rastreamento pesquisados na revisão bibliográfica ou outro que se adéqüe melhor à nossa situação. Tendo-se as coordenadas de localização do sabre, será inserido o efeito de cor característico dos sabres de luz. Também através destas coordenadas, serão detectados movimentos mais rápidos dos objetos para que efeitos sonoros possam ser inseridos. Finalmente, iremos implementar métodos de detecção do choque entre os sabres, para inserção de efeitos sonoros e visuais. Isto deve ser feito através da detecção da interseção dos dois sabres e de variações bruscas na velocidade dos mesmos.
REINALDO A. C. BIANCHI, ANNA H. REALI-COSTA, O Sistema De Visão Computacional Do Time Futepoli De Futebol De Robôs, Anais do Congresso Brasileiro De Automática, CBA 2000.
Neste trabalho é proposto um método para encontrar centros de figuras geométricas de uma mesma cor, o que poderá ser útil no nosso trabalho, pois precisamos encontrar o centro do sabre (que deverá ter uma cor definida na cena real), para podermos inserir a computação gráfica sobre o real. O método proposto consiste em percorrer a imagem e, ao detectar um pixel da cor especificada, começa a traçar segmentos internos para os pixels da mesma cor na horizontal e na vertical, sendo que o segmento vertical cruza o meio do horizontal. Para percorrer a imagem de maneira eficiente, o sistema salta alguns pixels. Esse processo de gerar segmentos na horizontal e na vertical é chamado de processamento em cruz. Esse processo em cruz é feito diversas vezes para cada objeto, visto que percorrer a imagem de saltos em saltos permite que esta varredura de pixel caia em vários lugares de um mesmo objeto. Cada processamento em cruz gera um centro provisório do objeto, vários centros provisórios permitem encontrar o centro estimado mais provável do objeto com maior precisão. Entre os pontos fortes deste método estão a não dependência das imagens anteriores, como ocorre em algumas formas de rastreamento, sua rapidez, gastando aproximadamente 25ms para o processamento, o que permitiria encontrar em tempo real os centros em todas as imagens de um filme de 30 quadros por segundo (33ms de permanência de cada quadro). O outro ponto forte é que ele funciona bem mesmo em imagens degradadas. O ponto fraco é que ele não encontra o centro exato, mas apenas um centro aproximado.
M. ISARD, J. MACCORMICK, BraMBLe: A Bayesian Multiple-Blob Tracker, Proceedings of IEEE International Conference on Computer Vision, 2001.
O BraMBLe é um conhecido rastreador de blobs (objetos com tamanho e cor conhecidos), baseado na teoria matemática da correlação Bayesiana. Foi a primeira implementação com a qual o número de objetos rastreados pode variar durante o processo de rastreamento. Além disso, esse rastreador se apresentou bastante robusto nos testes, mantendo a identificação de objetos mesmo se cruzando, embora falhe em alguns casos. Outro ponto positivo do método é sua baixa utilização da capacidade total de processamento de um computador pessoal.
S.S. INTILLE, J.W. DAVIS, A.F. BOBICK, Real-Time Closed-World Tracking, Proceedings of the IEEE Computer Society Conference on Computer Vision and Pattern Recognition, pp. 697-703, 1997.
O algoritmo para rastramento de mundo fechado em tempo real usa um sistema de informação contextual para rastrear objetos não-rígidos dentro de um limite determinado. Ele usa uma tabela de características que é formada pela tentativa de casamento de cada objeto da cena com uma área da imagem para definir qual é o melhor casamento que contempla todos os objetos ao mesmo tempo. Essas características incluem cor, velocidade e direção dos objetos, bem como o comportamento anterior desse objeto. Eles usam como modelo um quarto de brinquedos de crianças filmado por cima e tentam acompanhar o movimento das crianças e dos objetos no quarto, incluindo entradas e saídas de novos corpos. O casamento é avaliado de forma a minimizar a chance de erros e otimizar a performance do sistema descartando tentativas impossíveis o quanto antes.
RICHARD Y. D. XU, JOHN G. ALLEN, JESSE S. JIN, Robust Real-Time Tracking of Non-rigid Objects, School of Information Technologies, University of Sydney, NSW 2006, Australia.
Esse artigo revisa um conjutno de abordagens para rastreamento de objetos em tempo real e a presenta uma nova abordagem baseada em threshold por cor. O artigo explica por que o espaço de cores RGB, comum aos formatos de representação digital, não é apropriado para rastreamento de cores pois é muito sensível à variações de iluminação ambiente. Para esse tipo de aplicação é melhor usar os espaços de cores HSI ou YUV, onde a o componente da intensidade é tratado em separado da crominância. Como a conversão RGB para HSI é cara em software, eles propõe a conversão do OpenCV de RGB para YUV, que tira proveito do conjunto de instruções MMX dos processadores Intel pra fazer a conversão mais rapidamente. Feita a seleção do objeto a ser rastreado, uma função objetivo dá valores positivos altos ao núcleo da área e negativos baixos à periferia. Isso gera uma máscara de extração do primeiro plano que é aplicada quadro a quadro pelo threshold YUV. Na verdade o espaço equivalente ao YUV no OpenCV é o YCbCr, fato que não é explicitado no artigo, muito provavelmente para não acrescentar informação desnecessária aos leitores. O método apresentado no artigo se mostrou altamente robusto e eficiente, e está de acordo com a idéia prévia do nosso trabalho de filtrar o objeto por threshold de cor (embora o artigo acrescente métodos para ganho de performance) e será de fundamental importância no desenvolvimento do nosso trabalho.