Camera Kombat: Mortal Kombat ao vivo com WebCam

Camera Kombat é um projeto que utiliza recursos da biblioteca OpenCV, utilizada em aplicações de visão computacional. Com o processamento do vídeo ao vivo os movimentos realizados pelos jogadores são interpretados e convertidos em ação no jogo. Neste artigo veremos como funciona o projeto como um todo.

[ Hits: 50.395 ]

Por: Alessandro de Oliveira Faria (A.K.A. CABELO) em 13/11/2006 | Blog: http://assuntonerd.com.br


Introdução (como funciona)




Em primeiro lugar parabenizo os autores do projeto Fábio R. de Miranda, Luis Roberto Pereira de Paula e Renato Bonini Neto. O trabalho e a idéia foram excelentes, estou desenvolvendo pesquisas sobre visão computacional e pensava em desenvolver algo similar se um dia tivesse tempo disponível.

O trabalho de tratamento de imagens deste projeto ficou sobre responsabilidade das funções da biblioteca OpenCV. Para quem não sabe, OpenCV ou Open Source Computer Vision é uma biblioteca com mais de 500 funções de geração e manipulação de imagens, que ajuda os pesquisadores a desenvolverem aplicações de visão computacional, como o reconhecimento de face, de gestos, de formas ou objetos e atualmente o reconhecimento audiovisual. Desde o seu lançamento em 2000, a OpenCV presenciou mais de 500.000 downloads de código e atraiu mais de 5.000 membros inscritos para seu grupo de usuários.

Tentarei descrever um resumo de como funciona o projeto. Quando uma seqüencia dos movimentos com os braços são identificados, um objeto virtual (o poder) é disparado contra o adversário. O adversário deve se desviar deste objeto (poder) que caminha em sua direção.


As imagens são capturas de uma webcam, analisadas, processadas e exibidas no monitor. Na inicialização o sistema captura uma imagem para processar os elementos e/ou objetos estáticos presente na cena.


Depois de definido o fundo capturado inicialmente pela webcam, o processo de subtração acontece pixel a pixel com os quadros extraídos do vídeo ao vivo. Logo após são localizados as regiões cabeça, mãos, pés e centro de massa.


Ao detectar todos os pontos, os gestos devem ser identificados. Para isto verifica-se o ângulo formado pela abertura do braço e distância da altura da mão comparado a cabeça. Na figura abaixo, reparem que os braços ligeiramente abertos não caracterizam socos, já com o braço inteiramente aberto é reconhecido como um soco.


Agora chega de historinha e vamos descer o dedo para o teclado ;-)

    Próxima página

Páginas do artigo
   1. Introdução (como funciona)
   2. Download e instalação da biblioteca OpenCV
   3. Download e compilação do Camera Kombat
Outros artigos deste autor

Android NDK: Desmistificando o acesso a códigos nativos em C

Impressione seus amigos com o Tux bonitinho no login modo console

Fim da era PC: Transformando o seu celular em computador de mesa!

Testamos: Visual Basic 8 .NET no Linux. Vejam o resultado!

Transmitindo dados para relógios Timex Datalink no GNU/Linux

Leitura recomendada

Por que existem mais games para Windows do que para Linux?

Estratégias para expansão dos jogos em Linux

Duke Nukem online com hDuke, Linux Mint e YANG

Como jogar a versão para PC de "The Legend of Zelda: Ocarina of Time" no sistema operacional GNU/Linux com melhorias gráficas

Medalha de Honra emulado com o Wine

  
Comentários
[1] Comentário enviado por fabio em 13/11/2006 - 08:33h

hahaha.. muito bom cabelo! Agora só falta aparecer um maluco aqui em casa pra testar o jogo.

Bom, aqui em casa faltou a seguinte dependência pra compilar o camera-kombat:

apt-get install freeglut3-dev

Um abraço e meus parabéns pelo artigo!

[2] Comentário enviado por leoberbert em 13/11/2006 - 09:04h

Porra que coisa hein? hahhahaha Daki uns dias vai ter gente querendo tirar foto pra colocar no Jogo heheheh. Artigo muito bom.. Ainda mais pra q2uem é amante do mortal combat, só uma coisa... vc tb edita os FATALITS? hehehehe

Abraço!!!

[3] Comentário enviado por moskito em 13/11/2006 - 12:14h

Nunca imaginei que poderia fazer isso aqui em casa!
Tem como dar chute também?

[4] Comentário enviado por removido em 13/11/2006 - 15:36h

Que coisa de louco! Só podia ser do cabelo!!
Acho que foi um dos artigos mais pirados que eu já li na vida. Vou testar, que coisa incrível! Abraços, cabelo...

[5] Comentário enviado por removido em 13/11/2006 - 17:21h

omg!!!! i love you!

[6] Comentário enviado por balani em 13/11/2006 - 20:42h

Cara, eu te admiro cada vez mais, vc faz justo ao linux.

[7] Comentário enviado por calaff2 em 14/11/2006 - 11:15h

Vc eh o CARA!!!

[8] Comentário enviado por JefersonLopes em 14/11/2006 - 11:23h

Esse Cabelo é treta mesmo, heim! rsrsrs...


Show de bola (digo, de porrada)... hehehehe


Eu já me imaginei como personagem de Mortal Kombat. Agora vejo que isso é possível. Muito legal!


FINISH HIM


FATALITY

[9] Comentário enviado por mirwox em 14/11/2006 - 11:42h

Olá Cabelo

Sou o Fábio Miranda, que foi orientador do trabalho (o Luís e o Renato desenvolveram tudo).

Escrevi para agradecer pela divulgação do projeto e pelas instruções muito bacanas de compilação e execução! Ficou melhor que uma outra versão que a gente tinha para uso interno, agora vou passar seu tutorial para quem quiser saber como executar o projeto :)

Só mais uma coisa: tem uns vídeos aqui caso alguém queira saber como é antes de baixar:
http://www.youtube.com/watch?v=YpmrWqWESRw
http://video.google.com/videoplay?docid=7304722607321096780&hl=pt.



[]s

[10] Comentário enviado por luiznassau em 14/11/2006 - 12:00h

cara gostaria de saber se ja tem versão do Linux que de para jogar
Desde ja agradeço

[11] Comentário enviado por ftonello em 14/11/2006 - 12:01h

Caramba!!! gostei muito.. vou fazer download concerteza e testar.. pena que não tenho camera de video mas concerteza vou pegar de alguem hehehe

abraços

[12] Comentário enviado por Kurtgodel em 02/03/2007 - 00:08h

Ola, sou novo por aqui, mas por dica de um professor de meu curso vim conferir este artigo sobre o Camera Kombat.
Bom, tenho como intensão, ainda não conclusa, de continuar este projeto, transformando-o em um produto final, valorizando significativamente a parte visual dete, como também propor uma tentativa para melhorias deste projeto, em parte de desempenho e ajustes.
Gostaria de saber de você Alessandro de Oliveira Faria, o que acha dessa minha intensão? É viável? Posso colocar a mão na massa? Para mais detalhes, me mande um email: erickcpgomes@gmail.com
Obrigado pela atenção.

[13] Comentário enviado por GilsonDeElt em 18/11/2007 - 21:04h

cara, d+ esse artigo!
num futuro próximo (já que num tenho webcam) eu instalo esse trem aqui
ah!, isso roda num Celeron D 2.26 GHz com 768 de Ram (por enquanto tá 256, mas logo isso aumenta, hehe)
mas o artigo ficou massa, tá muito bem explicado
cê tem a manha de escrever artigos, Cabelo!
flwsz

[14] Comentário enviado por gflkdovs em 03/01/2008 - 15:54h

hsuahsuhus

mto loko mesmo esse artigo cara
ta de parabens

vo testa agora
flws

[15] Comentário enviado por anunakin em 22/12/2008 - 10:14h

Testei aqui com a openCV 1.1.0 e não funcionou... creio que não é compatível... vou ver com a 1.0.0 mesmo ...

[16] Comentário enviado por fernandoguedes em 19/06/2010 - 11:44h

Essa imagem ficou sinistra cabelo.

uaehaeuaeuae


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts