Animation with Motion Capture: Applications, Development and Distribution of a Real-Time System and Open Source.
Animação com Captura de Movimento: Aplicações, Desenvolvimento e Distribuição de um Sistema em Tempo Real e de Código Aberto.
Introdução às Funções 9º ano: Diagrama de flexas, Valor numérico de uma funçã...
Artigo coloquio 2013
1. ANIMAÇÃO COM CAPTURA DE MOVIMENTO: APLICAÇÕES,
DESENVOLVIMENTO E DISTRIBUIÇÃO DE UM SISTEMA EM TEMPO REAL E DE
CÓDIGO ABERTO
Coordenador da pesquisa: João Victor Boechat Gomide (professor, jvictor@fumec.br)
Membros da equipe:
Marcelo Tannure (professor, mtannure@fumec.br)
Hudson Ludgero Ribeiro (professor, hudson.ribeiro@fumec.br)
Raoni Aldrich Dorim (professor, raoni.dorim@fumec.br)
Rafael Miranda Guimarães (bolsista de mestrado, garfanha@gmail.com)
Bruno Pereira Lima (aluno-bolsista, limapb@hotmail.com)
Camila Maria Piastrelli Bolina (aluna-bolsista, camilapiastrelli@gmail.com)
Glauber Ferreira da Silva (aluno-bolsista, gal_guit2@hotmail.com)
Renê Silva Ferreira (aluno-bolsista, rene123@gmail.com)
Thales Piassi Nunes (aluno-bolsista, thales.piassi.nunes@gmail.com)
Financiamento e apoio
Fapemig, edital universal, processo n. APQ-02239-10;
CNPq, editais universais 2010 e 2012, processos números 477168/2010-8 e 483267/2012-0;
Fundo Estadual de Cultura, projeto 125/01/2010/FEC;
ProPIC/FUMEC, edital 2012;
Faculdade de Ciências Empresariais da Universidade FUMEC (FACE/FUMEC).
Resumo
Este artigo relata os trabalhos desenvolvidos dentro da proposta aprovada pelo
ProPIC/FUMEC para o período agosto/2012 a julho/2013. A proposta dá continuidade ao
projeto de desenvolvimento e divulgação da técnica de captura de movimento para animação
de personagens. Com esse objetivo, foi lançado o portal da web sobre animação e realidade
aumentada com a captura de movimento. Esse portal busca atrair colaboradores para
ajudarem no aprimoramento do software de código aberto desenvolvido no projeto, e para
disseminar o debate e o uso da técnica. Um curta metragem e quatro jogos digitais foram
desenvolvidos durante a vigência do projeto do ProPIC, gerando expertise para os alunos e
professores envolvidos nos trabalhos.
Palavras-chave
Animação de personagens. Captura de movimento. Jogos Digitais. Realidade aumentada.
2. 1. Introdução
Esta proposta está dentro do contexto de um projeto maior, de desenvolvimento
e divulgação da captura de movimento para animação de personagens e a realidade
aumentada. A captura de movimento é raramente utilizada em produções que
envolvem animação no nosso país. Apenas a TV Globo, que não utiliza seu
equipamento desde 2002, e a produtora RPM disponibilizam dessa técnica hoje no
Brasil. A TV Globo vai voltar a utilizar a captura de movimento em aplicações que
envolvem animação e realidade aumentada em partidas de futebol, para a Copa do
Mundo de 2014. A RPM se autodenomina o único bureau da América Latina a fornecer
dados de captura de movimento para animar personagens.
Esse cenário deve mudar com novas soluções de baixo custo, principalmente
com a utilização do sensor Kinect, da Microsoft. No entanto, essas soluções existem
desde o final de 2010 e não impactaram na produção nacional. Praticamente todos os
jogos digitais de sucesso utilizam essa tecnologia para animar personagens. Filmes
como Avatar (2009), As Aventuras de Tintin (2011) e Hobbit (2012) são exemplos
recentes dentre inúmeras produções que empregam a técnica intensamente.
Esse projeto permitiu adquirir expertise na tecnologia, desenvolver uma solução
própria, de código aberto e de forma colaborativa, aplicar a captura de movimento em
produções de curtas metragens e jogos digitais e formar pessoas qualificadas na área.
A solução que foi desenvolvida desde 2008, o OpenMoCap, atualmente realiza todo o
fluxo de trabalho e é usado em estudos acadêmicos. Dentro desta proposta do ProPIC,
foi lançado um portal da web sobre captura de movimento, onde se busca a
contribuição de outros desenvolvedores para aprimorar o sistema. O objetivo final é
permitir que qualquer pessoa baixe o programa, acople suas câmeras ao computador e
faça a captura de movimento onde estiver.
Os objetivos principais dessa proposta foram alcançados. O portal da web foi
lançado em julho de 2013 no endereço oficial www.openmocap.org. A adaptação do
software para operar com o sensor Kinect está em curso, o que deve torna-lo mais
versátil. A aquisição de um novo sistema de captura de movimento comercial com 12
câmeras de alta definição, com verbas da Fapemig e da Faculdade de Ciências
Empresariais da Universidade FUMEC (FACE/FUMEC), viabilizou a realização de um
curta metragem de animação e de quatro jogos digitais desenvolvidos por alunos, com
apoio dos professores.
3. O projeto completo, com todas as suas etapas, foi um dos três finalistas do
Prêmio Santander Ciência e Inovação de 2012, na modalidade Tecnologia da
Informação, Comunicação e Educação.
2. Objetivos
Os objetivos principais dessa proposta eram:
• Disponibilizar o código fonte e o software OpenMoCap para download, para
atrair colaborações para o dar continuidade ao desenvolvimento do sistema de
captura de movimento para a animação de personagens.
• Desenvolver produtos audiovisuais animando com a técnica da captura de
movimento.
Para isso, as seguintes etapas deveriam ser concluídas, a partir do que já tinha
sido feito:
2.1. Disponibilização do software para download no portal para animação e
realidade aumentada com a captura de movimento no endereço oficial
www.openmocap.org.
Atualmente
o
portal
se
encontra
em
http://code.google.com/p/openmocap/.
2.2. Aprimoramento da interface do software.
2.3. Otimização do algoritmo de rastreamento de pontos.
3.4. Melhoria na velocidade dos processos nas diversas etapas:
2.4.1. Testar e implementar modificações no hardware das câmeras para que elas
forneçam diretamente os dados da posição dos marcadores.
2.4.2. Testar e implementar o processamento paralelo do sinal com vários
computadores em rede.
2.5. Realizar três projetos de animação, com o Grupo Teatral Galpão, com o Grupo
de Marionetes Giramundo e em um programa de extensão para o desenvolvimento
do jogo digital.
Todas as etapas foram cumpridas. As etapas 2.4 e 5.5 tiveram algumas
alterações, para que a proposta se adaptasse a novas condições, mas o resultado final
é totalmente equivalente ao que foi proposto inicialmente, como veremos nas próximas
seções.
4. 3. Metodologia
O sistema de código aberto está sendo desenvolvido seguindo as melhores
práticas para desenvolvimento e engenharia de software. O código está sendo escrito
com a linguagem C++, utilizando a biblioteca OpenCV, para o tratamento do sinal, e a
biblioteca QT para a construção da interface gráfica. O código-fonte pode ser acessado
em http://code.google.com/p/openmocap/ e em www.openmoca.org.
A opção por desenvolver o programa em código aberto possibilita intervenções e
colaborações de programadores do mundo inteiro para contribuir com melhorias para o
software, além de fornecer o aplicativo gratuitamente. Este é o mesmo modelo trilhado
pelo sistema operacional Linux e pelo programa de modelagem Blender. O código
aberto expande as possibilidades de aplicações para o público em geral, além de
minimizar o custo de produção.
O programa fornece ferramentas gratuitas para
usuários e artistas e deverá gerar novas discussões e demandas para a técnica. Os
ajustes e melhorias do sistema de captura serão realizados à medida que surgirem
novas necessidades e houver contribuições de desenvolvedores conectados pela
internet, em qualquer lugar do mundo.
O software OpenMoCap é autônomo, ou seja, ele inclui todos os componentes
para processar o sinal, e a sua arquitetura é flexível e extensível, pois é possível
modificar e adicionar módulos específicos para adaptar o fluxo de trabalho às diversas
aplicações. Dessa maneira, extensões que permitam fazer captura de movimento sem
marcadores ou ampliar as suas aplicações podem ser facilmente implementadas,
utilizando os módulos já existentes. No presente momento, o OpenMoCap faz a
captura óptica em todas as suas etapas, com diversas câmeras, e os dados são
gerados no formato adequado para os softwares de modelagem 3D. Com a sua
distribuição no portal da web, se pode avançar a tecnologia para que um dia qualquer
usuário possa acoplar as suas câmeras ao computador e fazer a captura de movimento
para suas produções, seja onde estiver. O software utiliza a interface DirectShow para
receber os dados das câmeras. Esta é a interface mais utilizada por câmeras e
filmadoras.
O portal da web se estrutura nos temas relacionados à animação e à realidade
aumentada utilizando a captura digital de movimento [GOMIDE et al 2011]. No portal
está disponibilizado o software e o código do OpenMoCap. Ele também está disponível
para
download
e
para
acesso
ao
código-fonte
no
endereço
http://code.google.com/p/openmocap/. O portal também fomenta discussões sobre as
suas aplicações em animação de personagens e na realidade aumentada. Em suas
5. diversas seções, se pode entrar em fóruns de discussão e existe uma galeria de
trabalhos realizados com o software e com a técnica da captura de movimento,
permitindo o aprimoramento das produções culturais realizadas com a captura de
movimento. Uma das seções do portal é voltada para desenvolvedores, na busca de
obter novas contribuições para tornar o software uma solução competitiva, diante da
imensa carência para produtos desse tipo, ainda mais sendo ele de código aberto e
gratuito. O portal também conta com uma página para a oferta de serviços e trabalhos
na área de produção cultural relacionada à captura de movimento. No imagem 1 está
representado o mapa do site e a navegabilidade entre as diversas seções.
Página
Principal
Apresentação
do
Projeto
OpenMoCap
e
do
portal
sobre
a
arte
da
animação
e
a
captura
de
movimento
Artigos
educativos
e
novidades
sobre
o
tema
Galeria
de
vídeos
e
projetos
Fóruns
e
chats
de
discussão
Fale
conosco
Ofertas
de
trabalhos
e
serviços
para
projetos
Desenvolvimen
to
e
treinamento
Imagem 1: diagrama da estrutura do portal.
Os produtos audiovisuais estão sendo desenvolvidos utilizando o software
Motive e doze câmeras Flex13, com resolução de HDTV. Os personagens podem ser
criados em diversos programas de modelagem 3D, como o Blender e o Maya. Esses
programas possuem plug-ins, que recebem os dados gerados no processo de captura
de movimento, e os aplicam em pontos pré-determinados, equivalentes às posições
dos marcadores no ator. Nesse projeto, um arquivo de saída do software de captura é
gerado no formato BVH, que é convertido pelo software de modelagem 3D em
coordenadas espaciais das articulações do personagem virtual [BAERLE 2000,
PARENT 2002].
6. 4. Resultados
O portal da web foi desenvolvido dentro dessa proposta e está no ar desde julho
de 2013 no seu endereço oficial, www.openmocap.org. O público-alvo para o qual o
conteúdo do portal é dedicado compreende todos os indivíduos no mundo que se
interessam e/ou estão envolvidos com a arte da animação e a captura de movimento e
suas aplicações no cinema, na televisão, nas novas mídias, em jogos digitais e na
realidade aumentada. Esse público envolve animadores, artistas gráficos, produtores
culturais, roteiristas, desenvolvedores de softwares, estudantes e interessados nesses
temas.
A interface do software foi melhorada, com a atualização das bibliotecas
OpenCV [WILLOW GARAGE 2013] e Qt [QT 2013]. A otimização dos filtros para
rastreamento de pontos foi testada em [QUEIROZ et al 2012]. A melhoria dos
processos de aquisição de dados está sendo implementada. Está sendo feita a
interface do OpenMoCap com o ambiente de desenvolvimento do sensor Kinect, da
Microsoft. Com isso, espera-se ampliar a utilização do software e do sensor para fazer
captura de movimento sem marcadores, gerando o esqueleto e os dados das
articulações com o OpenMoCap, utilizando o módulo do software específico para isso
[GOMIDE 2011]. Esta é uma mudança que foi introduzida recentemente, diante da
melhoria da interface do Kinect e da disponibilização do ambiente de desenvolvimento
do sensor pela [MICROSOFT 2013].
Os projetos de animação que estão em fase de finalização envolvem a
realização de um curta metragem e de quatro jogos digitais. Os jogos digitais foram
criados pelos alunos, com apoio dos professores do curso de Jogos Digitais da
Universidade FUMEC. Os alunos desenvolveram o Game Design Document (GDD) de
cada jogo, em três equipes distintas, documento que contém o roteiro, os conceitos
artísticos dos personagens e cenários, os mundos e níveis do jogo e a sua mecânica,
com sistemas de pontuação e regras. A partir do GDD, planejaram o desenvolvimento
e prepararam o cronograma de produção. Foram então modelados todos os cenários e
personagens e preparada a programação dos jogos, com o motor (engine) [UNITY
2013]. As seções de captura de movimento foram planejadas e realizadas pelos
alunos. Atualmente, um dos jogos obteve a permissão da Lei Rouanet [MINC 2013]
para captar recursos através da renúncia fiscal. A captação de recursos está em
andamento e um nível do jogo já foi concluído. Um segundo jogo tem previsão de
conclusão em novembro de 2013 e o terceiro deve ser lançado em junho de 2014. O
7. quarto jogo fez as seções de captura de movimento em setembro e tem previsão de
conclusão em junho de 2014.
O curta metragem de animação está sendo realizado em colaboração com o
Grupo Teatral Galpão e com apoio financeiro do Fundo Estadual de Cultura da
Secretaria de Cultura de Minas Gerais. É um roteiro adaptado pelo diretor do Galpão
Eduardo Moreira. O curta A Primeira Perda da Minha Vida é sobre a história do
encontro do escritor Franz Kafka com uma menina que tinha perdido a sua boneca. A
história se passa em Berlim poucos meses antes da morte do escritor. O curta
metragem está em fase de finalização, com todos os personagens e cenários prontos e
as seções de captura de movimento já feitas com os atores do Galpão.
Na imagem 2 está o personagem principal, na imagem 3, um dos personagens
secundários, que é um boneco de Olinda, e, na imagem 4, um dos cenários.
Imagem 2: o escritor em frente ao cenário do parque em Berlim, o Jardim Botânico
8.
Imagem 3: pré-visualização do bonecão de Olinda em frente ao cenário da cidade
Imagem 4: sala de aula
5. Conclusão
O projeto cumpriu seus objetivos e realizou os trabalhos propostos. Essa proposta tem
permitido formar pessoal qualificado em computação gráfica e na captura de movimento, por
9. meio da participação em projetos de nível profissional e das aulas do curso de Jogos Digitais
da Universidade FUMEC.
A atualização do Laboratório de Captura de Movimento da FACE/FUMEC permite que
os trabalhos ali desenvolvidos elevem a sua qualidade e forneça o que há de melhor na área.
Esse laboratório não teria sido viabilizado se não fosse os aportes financeiros dotados pela
entidades listadas no item Financiamento e Apoio.
As perspectivas de continuidade do trabalho são promissoras com o portal da web, o
laboratório e a participação colaborativa de toda a equipe envolvida nesse projeto.
Agradecimentos
A equipe agradece ao CNPq, à FAPEMIG, à Secretaria de Cultura do Estado de Minas Gerais,
ao ProPIC/FUMEC e à FACE/FUMEC pelo apoio financeiro para a realização do projeto.
10. Referências bibliográficas
BAERLE, S. V. and THINGVOLD, (2000) J. Motion capture file format review. disponível
através de acesso ao link http://www.gdconf.com/archives/2000/vanbaerle.doc, acessado em
19/09/2013.
GOMIDE, J.V.B, FLAM, D.L., e ARAÚJO, A. de A. (2011) Recent improvements to OpenMoCap
and its release to download and to development as free open source software. Artigo convidado
da II International Conference Cinema Art, Technology, Communication, Avanca - Portugal.
Edições Cine Clube de Avanca, pg. 1317 a 1324.
MICROSOFT (2013). Ambiente de desenvolvimento do Kinect em http://www.microsoft.com/enus/kinectforwindows/develop/, acessado em 19/09/2013.
MINC (2013). Página do portal do Ministério da Cultura sobre a Lei Rouanet em
http://www2.cultura.gov.br/site/?cat=440, acessado em 19/09/2013.
PARENT, R. (2002) Computer animation: algorithms and techniques. San Francisco: Morgan
Kaufmann.
QUEIROZ, D.P., GOMIDE, J.V.B., ARAÚJO A. de A. (2012) Evaluation of Real Time Tracking
Methods for an Open Source Motion Capture System, Workshop of Thesis and Dissertations,
XXV SIBGRAPI, Conference on Graphics, Patterns and Images, Ouro Preto, 2012.
QT (2013). Portal de desenvolvimento da biblioteca Qt, em http://qt.digia.com, acessado em
19/09/2013.
UNITY (2013). Portal do motor de jogos (game engine) Unity em http://unity3d.com, acessado
em 19/09/2013.
WILLOW
GARAGE,
(2013).
OpenCV
-
Wiki.
Documento
http://pr.willowgarage.com/wiki/OpenCV, acessado em 19/09/2013.
eletrônico
disponível
em