<!DOCTYPE article PUBLIC "-//NLM//DTD JATS (Z39.96) Journal Archiving and Interchange DTD v1.0 20120330//EN" "JATS-archivearticle1.dtd">
<article xmlns:xlink="http://www.w3.org/1999/xlink">
  <front>
    <journal-meta />
    <article-meta>
      <title-group>
        <article-title>Um Sistema de Captura de Movimentos de Baixo Custo para Animac¸ a˜ o de Personagens</article-title>
      </title-group>
      <contrib-group>
        <contrib contrib-type="author">
          <string-name>Matheus Pereira</string-name>
          <email>matheus.petrovich@gmail.com</email>
        </contrib>
        <contrib contrib-type="author">
          <string-name>Agostinho Ju´ nior</string-name>
        </contrib>
      </contrib-group>
      <fpage>24</fpage>
      <lpage>32</lpage>
      <abstract>
        <p>This article describes the development of low cost and portable motion capture system to aid with the process of character animation. Such systems reduces the time spent by the animator and gives more realism to the final animation. The system is based on image processing using a camera fixed to a helmet that remains stable in relation to the actor's face. The system can successfully track 13 markers around the mouth and eyebrows and even the actor's pupils.</p>
      </abstract>
    </article-meta>
  </front>
  <body>
    <sec id="sec-1">
      <title>-</title>
      <p>
        O me´todo de animac¸ a˜o por keyframe pode ser trabalhoso e demorado, podendo
exigir mais de um dia para um animador completar 10 segundos do rascunho de animac¸a˜o
chamado de blocking. O uso de me´todos baseados em captura de movimento pode reduzir
esse tempo em aproximadamente 7 vezes. Autores como Shiratori, da Disney Research,
reforc¸am que a agilidade no processo de blocking da animac¸a˜o e´ importante uma vez que
nessa etapa de criac¸a˜o, a agilidade e´ essencial para que os animadores possam concretizar
a cena que teˆm em mente. Essa economia de tempo ainda permite que eles explorem e
experimentem muito mais possibilidades com menos esforc¸o, construindo uma base de
movimentos que podem ser aprovados pelos diretores e enta˜o refinados para uma versa˜o
final[Shiratori
        <xref ref-type="bibr" rid="ref2">et al. 2013</xref>
        ].
      </p>
      <p>
        Existem diversas te´cnicas de captura de movimentos, com sensoriamento baseado
em fibras o´pticas, sensores eletromagne´ticos, potencioˆmetros embarcados em uma roupa
apropriada e processamento de imagem. Essas tecnologias podem ser separadas em duas
grandes classes: com marcadores e sem marcadores, sendo a primeira a mais evidente no
mercado atualmente [
        <xref ref-type="bibr" rid="ref7">Sigal and Koltun 2012</xref>
        ]. Atualmente, sistemas de mocap baseados
em processamento de imagem esta˜o se tornando cada vez mais comuns dada a evoluc¸a˜o
dos trabalhos cient´ıficos na a´rea.
      </p>
      <p>Me´todos baseados em marcadores passivos sa˜o mais largamente utilizados na
indu´stria pelo fato de ser mais simples rastrear regio˜es de cor ou formato conhecido
(marcador), e permitir maior flexibilidade ao ator. Em contrapartida, me´todos que dispensam o
uso de marcadores tendem a apresentar limitac¸o˜es no rastreio em tempo real e uma maior
margem de erro [Vicon ].</p>
      <p>Dentre os sistemas de rastreio de movimento, os de detec¸a˜o de espresso˜es
faciais esta˜o entre os mais dif´ıcieis de serem concebidos, posto que devem ter a precisa˜o
para captar as pequenas nuances de expresso˜es faciais. Essas nuances sa˜o as principais
responsa´veis pelo realismo de um personagem, especialmente o movimento dos olhos.</p>
      <p>Bons sistemas de rastreio de caracter´ısticas faciais sa˜o caros e normalmente devem
ser adaptados a cada tipo de ambiente. Ale´m disso, necessitam de aparato especial a ser
colocado no ator para que o rastreio da face possa ser feito in loco enquanto esta atua no
espac¸o de gravac¸o˜es.</p>
      <p>Sistemas de baixo custo podem ser interessantes para pequenos estu´dios que na˜o
dispo˜em de muitos recursos mas necessitam de usar mocap para animar personagens em
filmes ou jogos digitais.</p>
      <p>Esse trabalho visa contribuir apresentando uma proposta de um sistema de
captura de movimento de baixo custo para faces usando marcadores passivos. O sistema e´
composto por um dispositivo de captura ao qual esta´ acoplada a caˆmera, e um software de
processamento de imagens que recebe e trata o stream de v´ıdeo em tempo real para uso
na animac¸a˜o de personagens.</p>
      <p>O presente artigo e´ organizado nas seguintes sec¸ o˜es. A sec¸a˜o 2 descreve o modelo
de aparato desenvolvido para realizar a captura e as te´cnicas de captura de movimento
que foram empregadas. A sec¸a˜o 3 descreve como se da´ o processo de rastreio das regio˜es
das sombrancelhas e da boca. A sec¸a˜o 4 mostra o processo usado no rastreio das pupilas.
A sec¸a˜o 5 conclui o trabalho, apresentando perspectivas de aprimoramento e expansa˜o da
utilidade da ferramenta1.</p>
      <p>1Algumas imagens no trabalho foram premeditadamente modificadas na versa˜o de apreciac¸a˜o pelos</p>
    </sec>
    <sec id="sec-2">
      <title>Modelo do sistema de captura</title>
      <p>O aparato de captura e´ composto de um capacete em resina de polie´ster reforc¸ada com
fibra de vidro e uma caˆmera afixada em um brac¸o de alum´ınio. O capacete deve ser
confeccionado a partir de um molde da cabec¸a do usua´rio, obtido em um processo de
moldagem com ataduras de gesso. Normalmente, a moldagem e´ necessa´ria para o
capacete fique bem firme na cabec¸a do seu utilizador, minimizando vibrac¸o˜es da caˆmera que
sera´ colocada em frente ao rosto.</p>
      <p>Sobre o modelo foram laminadas camadas de resina de poliester pigmentada
reforc¸adas com manta de fibra de vidro. Cortes foram feitos na parte traseira do
capacete para permitir flexibilidade e uma tira de velcro foi afixada para ajuste, de modo que o
capacete fique justo na cabec¸a do usua´rio. No interior do capacete foram colados pedac¸os
de feltro para melhorar o conforto e ajudar a deixar o capacete mais fixo, para que a
caˆmera estivesse sempre esta´tica em relac¸a˜o ao rosto do usua´rio. A estrutura do capacete
e´ mostrado na Figura 1.</p>
      <p>Figura 1. Aparato de captura completo.</p>
      <p>Dois parafusos foram usados para afixar o brac¸o de alum´ınio ao capacete. A barra
de alum´ınio necessita ser medida e moldada de forma a permitir que a caˆmera tenha uma
visa˜o completa da face do usua´rio. Na ponta do brac¸o de alum´ınio e´ presa uma caˆmera
USB que fara´ a captura da imagem da face do usua´rio.</p>
      <p>A fim de na˜o limitar a mobilidade do ator durante a captura, o software foi
embarcado em um Raspberry Pi afixado a` parte traseira do capacete. Atrave´s de uma conexa˜o
a` internet o sistema pode ser remotamente configurado e acompanhado. As imagens
sa˜o capturadas na resoluc¸a˜o de 480 pontos horizontais por 640 pontos verticais. Nesta
resoluc¸a˜o, o hardware do Raspberry consegue capturar imagens com velocidade em torno
20 quadros por segundo de uma caˆmera USB e processa´-las.
revisores de modo a na˜o permitir a identificac¸a˜o dos autores</p>
    </sec>
    <sec id="sec-3">
      <title>Rastreio de marcadores</title>
      <p>Os marcadores utilizados neste trabalho devem ser confeccionados bolas de isopor
revestidas com pintura tinta amarela e colados na face do ator utilizando o adesivo Pros-Aid R .
Este adesivo e´ produzido pela ADM Tronics R e utilizado largamente na indu´stria de
entretenimento em maquiagem e efeitos especiais [ADMTronics ]. Um exemplo de imagem
com os marcadores colados na face do usua´rio e´ mostrada na Figura 2.</p>
      <p>Figura 2. Marcadores Passivos Colados no Rosto do Usua´ rio</p>
      <p>Foram realizados testes com bolas isopor em cor natural branca e tingidas com
tintas azul, vermelha e verde. Entretanto, a cor amarela foi a que produziu melhores
condic¸ o˜es de separac¸a˜o do restante dos elementos da imagem.</p>
      <p>A segmentac¸a˜o das imagens para extrac¸a˜o dos marcadores e´ feito no espac¸o de
cores HSV, utilizando a componente de matiz (H). A selec¸a˜o da faixa de matizes
adequada para o marcador amarelo deve ser feita conforme as condic¸ o˜es de iluminac¸a˜o
estabelecidas para o ambiente de captura. Uma ferramenta permite ao utilizador escolher
os limiares inferior e superior de limitam a regia˜o de matizes amarelas dos marcadores.
O uso do model HSV e´ importante para desvincular a informac¸ a˜o da cor das condic¸ o˜es
de iluminac¸ a˜o da cena. Para diversos testes realizados em ambientes com condic¸o˜es de
iluminac¸a˜o variada, a faixa H0 2 [90; 110], considerando uma faixa de varredura para
H 2 [0; 180], mostrou os melhores resultados para separar os marcadores do restante da
cena. A Figura 3 mostra um exemplo de imagem segmentada com os marcadores
isolados.</p>
      <p>
        Os marcadores sa˜o fixados em pontos estrate´gicos com a´reas de maior
movimentac¸a˜o e expressividade e maior relevaˆncia para a percepc¸ a˜o de emoc¸o˜es como
a boca e sombrancelhas [
        <xref ref-type="bibr" rid="ref5">Neth and Martinez 2009</xref>
        ]. Para acompanhamento ao longo da
captura, cada marcador recebe um ro´tulo identificador. A quantidade e posic¸a˜o dos
marcadores devem seguir a distribuic¸a˜o vista na Figura 2.
      </p>
      <p>A imagem segmentada e´ enta˜o varrida, buscando pelas regio˜es brancas. Quando
uma regia˜o e´ encontrada, assume-se que ali existe um c´ırculo e seu diaˆmetro e´ medido.
Para evitar a influeˆncia do ru´ıdo que naturalmente ocorrem durante a segmentac¸ a˜o da
cena, uma regia˜o so´ sera´ considerada uma regia˜o de marcador se tiver diaˆmetro maior que
7 pixels (valor estabelecido experimentalmente). Caso a regia˜o seja aceita, as coordenadas
Figura 3. Exemplo de imagem segmentada mostrando os marcadores isolados
do restante da cena.
do seu centro de massa sera˜o rotuladas e guardadas para rastreio. A regia˜o e´ removida
para que na˜o seja encontrada mu´ltiplas vezes na mesma cena.</p>
      <p>A identificac¸a˜o dos pontos e sua associac¸ a˜o com os ro´tulos e´ feita considerando-se
tanto sua posic¸a˜o na imagem, quanto seu posicionamento em relac¸a˜o aos demais pontos.
Para facilitar essa identificac¸a˜o, os pontos da regia˜o da boca e os da sombrancelha sa˜o
separados em conjuntos distintos, de forma que sejam comparados apenas com os demais
pontos de sua pro´pria regia˜o. Uma vez que a varredura seja finalizada, os pontos sa˜o
ordenados conforme a ordem crescente de suas coordenadas horizontais. Caso seja a
primeira varredura da imagem, os pontos de refereˆncia tera˜o de ser criados, caso contra´rio,
eles recebera˜o apenas a informac¸a˜o do deslocamento. Em ambos os casos, a identificac¸ a˜o
dos ro´tulos e´ feita usando esse mesmo algoritmo.</p>
    </sec>
    <sec id="sec-4">
      <title>Rastreio das sombrancelhas</title>
      <p>A distribuic¸ a˜o dos marcadores na regia˜o das sobrancelhas e´ sempre realizado conforme
mostra a Figura 4. A distribuic¸a˜o dos marcadores nessa regia˜o e´ feita em quatro colunas
com dois marcadores cada. Dessa forma havera´ 4 pares de pontos (dois em cada coluna),
onde cada par possui valores pro´ximos para suas coordenadas horizontais. Dessa forma,
ordenando os pontos conforme a ordem crescente de suas coordenadas horizontais, os
pares de pontos de cada coluna sera˜o sempre subsequentes nesse conjunto ordenado.</p>
      <p>Cada par de pontos sera´ comparado quanto a`s suas coordenadas verticais. O ponto
mais pro´ximo ao topo da imagem sera´ classificado como ponto superior e o mais pro´ximo
ao rodape´ sera´ classificado como ponto inferior. A Figura 5 ilustra a rotulac¸ a˜o realizada,
destancando os pontos superiores s1s, s2s, s3s e s4s e os pontos inferiores s1i, s2i, s3i
e s4i. O resultado da segmentac¸a˜o e´ mostrado na Figura 5.</p>
    </sec>
    <sec id="sec-5">
      <title>Rastreio da boca</title>
      <p>Apesar da auseˆncia da uniformidade vista na regia˜o da sombrancelha, os marcadores da
boca sa˜o identificados de forma similar. O ponto mais pro´ximo a` lateral esquerda e´
denominado canto 1. Os dois pontos seguintes sera˜o comparados usando sua posic¸a˜o vertical.
Aquele situado mais pro´ximo a` regia˜o superior do conjunto sera´ sera´ o ponto superior. O</p>
      <p>Figura 4. Rastreio dos marcadores na sombrancelhas.</p>
      <p>Figura 5. Resultado da segmenta c¸a˜ o dos pontos na regia˜ o das sombrancelhas
mais pr o´ximo a` regia˜o inferior do conjunto sera´ o ponto inferior. Em seguida, sera˜o
comparados 3 pontos, que se encontra mais abaixo sera´ o ponto do queixo, o que se encontra
mais acima sera´ o superior e o outro ponto, sera´ o ponto inferior da boca. Os pr o´ximos
dois sa˜o comparados de forma semelhante ao primeiro par. O u´ltimo ponto sera´ sempre o
canto 2.</p>
      <p>A Figura 6 ilustra o processo de marcac¸ a˜o automa´tica dos pontos da boca em duas
situac¸o˜ es distintas.</p>
    </sec>
    <sec id="sec-6">
      <title>Rastreio dos olhos</title>
      <p>O rastreio dos olhos do usua´rio e´ semi-assistido. Requer m´ınima intervenc¸a˜o do usua´rio
apenas para criar uma marcac¸a˜o inicial a pupila de cada olho em uma imagem capturada
no sistema interativo desenvolvido. Uma vez marcada a pupila aparecera˜o retaˆngulos
sobre os olhos indicando a regia˜o processada para o rastreio, como pode ser visto na
Figura 7. Como o aparato mante´m a caˆmera esta´tica em relac¸a˜o ao rosto, a posic¸ a˜o dos
retaˆngulos na˜o precisa ser corrigida no decorrer da captura.</p>
      <p>O rastreio se da´ em duas fases: primeiramente encontra-se a posic¸a˜o horizontal da
pupila e enta˜o a posic¸a˜o vertical. Cada olho e´ isolado em uma nova imagem de dimenso˜ es
iguais a 60 pixels verticais por 110 Pixels horizontais. As imagens sa˜o obtidas em tons
de cinza a partir do isolamento de um dos canais de cor da imagem original em RGB. Em
seguida, as imagens sa˜o limiarizadas, assumindo para os pixels valor zero (preto) se for
Figura 6. Rastreio dos marcadores na Boca</p>
      <p>Figura 7. Regi o˜es de rastreio dos olhos
menor ou igual ao limiar estabelecido, e 255 (branco) caso seja maior que tal limiar. O
limiar adequado e´ definido por meio do software de captura e deve ser ajustado conforme
as condic¸o˜es de iluminac¸a˜o da cena.</p>
      <p>As regio˜es escuras dos c´ılios provocam o aparecimento de ru´ıdos nas laterais dos
olhos pro´ximas ao lado externo da face. Para evitar o processamento desnecessa´rio desse
ru´ıdo, optou-se por realizar a busca pela pupila do centro da imagem em direc¸a˜o a`s laterais
da face, coluna apo´s coluna.</p>
      <p>Para cada pixel em uma linha de uma coluna, procura-se pela primeira sequeˆncia
cont´ınua de cinco pixels pretos que ocorrem na direc¸a˜o vertical. Quando esse evento
ocorre, o contorno externo da pupila e´ encontrado. Para chegar a` coordenada horizontal
do centro da pupila, caminha-se um total de 10 pixels em direc¸a˜o a` lateral da face.</p>
      <p>Para determinar a coordenada vertical do centro, caminha-se da borda inferior
da janela em direc¸ a˜o a` superior. A posic¸a˜o do contorno externo e´ encontrada quando
um conjunto consecutivo de 5 pixels pretos e´ percorrido. O primeiro pixel determina a
posica˜o do contorno. Caminha-se um total de 10 pixels em direc¸a˜o a` borda superior da
imagem e ficam assim determinadas as coordenadas horizontal e vertical do centro da</p>
      <p>Figura 8. Regio˜ es de rastreio dos olhos segmentadas
pupila.</p>
      <p>A decisa˜o por caminhar de baixo para cima em busca da coordenada vertical do
centro evita a presenc¸a incoˆmoda dos c´ılios nessa etapa de reconhecimento.</p>
      <p>A contagem de cinco pontos mostrou-se eficiente para eliminar ru´ıdo proveniente
da etapa de segmentac¸ a˜o e encontrar a pupila com sucesso. Como o diaˆmetro da pupila e´
constante, um pequeno offset de 10 pixels foi suficiente para determinar as coordenadas
dos centros. Esses paraˆmetros podem ser facilmente ajustados para imagens tomadas em
resoluc¸o˜es alternativas.</p>
      <p>Figura 9. Rastreio das pupilas</p>
    </sec>
    <sec id="sec-7">
      <title>Considerac¸ o˜es Finais</title>
      <p>O presente trabalho apresentou um sistema para captura de movimento de pontos da face
usando hardware de baixo custo. Foram mostrados os procedimentos para preparac¸a˜o do
sistema de captura e como se da´ o rastreio de pontos estrate´gicos na face e nos olhos do
usua´rio.</p>
      <p>E´ importante notar que os algoritmos utilizados sa˜o todos de baixo custo
computacional, posto que executam em equipamentos com capacidade de computac¸a˜o limitada.
Todos os algoritmos utilizados baseiam-se em estrate´gias simples, tais como verificar
faixas de valores para componentes de cor e rotular de pixels em regio˜es pre´-determinadas.</p>
      <p>A configurac¸ a˜o do sistema e´ feita utilizando uma aplicac¸ a˜o que pode ser acess´ıvel
diretamente no Raspberry Pi. Uma vez configurada, podera´ guardar o arquivo de captura
de movimento para uso posterior em algum processo de animac¸a˜o.</p>
      <p>A documentac¸ a˜o completa do sistema e a disponibilizac¸a˜o dos co´digos-fonte
desenvolvidos esta˜o sendo realizadas sob licenc¸a de co´digo livre para a comunidade.</p>
      <p>O sistema esta´ sendo aperfeic¸oado para que toda a configurac¸ a˜o se deˆ de forma
remota usando tecnologias de baixo custo computacional. Verso˜es futuras do sistema
tambe´m tera˜o incorporados modelos computacionais usando ferramentas de animac¸a˜o de
co´digo livre como o Blender para facilitar a tarefa da equipe de animac¸a˜o.</p>
      <p>O suporte para animac¸ a˜o baseada em roboˆs animatroˆnicos tambe´m esta´ em fase
de testes com o sistema criado. Verso˜es futuras dessa plataforma devera˜o contemplar
tambe´m o processo de construc¸a˜o de um animatroˆnico.</p>
    </sec>
  </body>
  <back>
    <ref-list>
      <ref id="ref1">
        <mixed-citation>
          ADMTronics.
          <article-title>Pros-aide adhesive</article-title>
          . http://www.pros-aide.com/original. html. Accessed:
          <fpage>2016</fpage>
          -09-28.
        </mixed-citation>
      </ref>
      <ref id="ref2">
        <mixed-citation>
          et al.,
          <string-name>
            <surname>A. H. B.</surname>
          </string-name>
          (
          <year>2013</year>
          ).
          <article-title>Facial performance enhancement using dynamic shape space analysis</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref3">
        <mixed-citation>
          <string-name>
            <given-names>Fatih</given-names>
            <surname>Erol</surname>
          </string-name>
          ,
          <string-name>
            <surname>U. G.</surname>
          </string-name>
          (
          <year>2007</year>
          ).
          <article-title>An interactive facial animation system</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref4">
        <mixed-citation>
          <string-name>
            <surname>Moeslund</surname>
            ,
            <given-names>T. B.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Granum</surname>
            ,
            <given-names>E.</given-names>
          </string-name>
          (
          <year>2001</year>
          ).
          <article-title>A Survey of Computer Vision-Based Human Motion Capture</article-title>
          .
          <source>Computer Vision</source>
          and Image Understanding,
          <volume>81</volume>
          (
          <issue>3</issue>
          ):
          <fpage>231</fpage>
          -
          <lpage>268</lpage>
          .
        </mixed-citation>
      </ref>
      <ref id="ref5">
        <mixed-citation>
          <string-name>
            <surname>Neth</surname>
            ,
            <given-names>D.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Martinez</surname>
            ,
            <given-names>A.</given-names>
          </string-name>
          (
          <year>2009</year>
          ).
          <article-title>Emotion perception in emotionless face images suggests a norm-based representation</article-title>
          .
          <source>Journal of Vision.</source>
        </mixed-citation>
      </ref>
      <ref id="ref6">
        <mixed-citation>
          <string-name>
            <surname>Shiratori</surname>
            ,
            <given-names>T.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Mahler</surname>
            ,
            <given-names>M.</given-names>
          </string-name>
          ,
          <string-name>
            <surname>Trezevant</surname>
            ,
            <given-names>W.</given-names>
          </string-name>
          , and
          <string-name>
            <surname>Hodgins</surname>
            ,
            <given-names>J. K.</given-names>
          </string-name>
          (
          <year>2013</year>
          ).
          <article-title>Expressing animated performances through puppeteering</article-title>
          .
        </mixed-citation>
      </ref>
      <ref id="ref7">
        <mixed-citation>
          <string-name>
            <surname>Sigal</surname>
            ,
            <given-names>L.</given-names>
          </string-name>
          and
          <string-name>
            <surname>Koltun</surname>
            ,
            <given-names>V.</given-names>
          </string-name>
          (
          <year>2012</year>
          ).
          <article-title>(marker-based) motion capture</article-title>
          . University Lecture.
        </mixed-citation>
      </ref>
      <ref id="ref8">
        <mixed-citation>
          <string-name>
            <surname>Vicon</surname>
          </string-name>
          .
          <article-title>What is motion capture</article-title>
          . https://www.vicon.
          <article-title>com/ what-is-motion-capture</article-title>
          .
          <source>Accessed: 2016-10-15.</source>
        </mixed-citation>
      </ref>
    </ref-list>
  </back>
</article>