Rogério Willians Chaves da Silva. Modelagem de animação procedural para expressividade facial de Atores Digitais Autônomos

Tamanho: px
Começar a partir da página:

Download "Rogério Willians Chaves da Silva. Modelagem de animação procedural para expressividade facial de Atores Digitais Autônomos"

Transcrição

1 Rogério Willians Chaves da Silva Modelagem de animação procedural para expressividade facial de Atores Digitais Autônomos Joinville 2013

2 Rogério Willians Chaves da Silva Modelagem de animação procedural para expressividade facial de Atores Digitais Autônomos Relatório Final de Trabalho de Conclusão de Curso (TCC) apresentado ao Curso de Graduação em Ciência da Computação, da Universidade do Estado de Santa Catarina (UDESC), como requisito parcial da disciplina de Trabalho de Conclusão de Curso. Orientador: Prof o Rogério Eduardo da Silva Joinville 2013

3 Rogério Willians Chaves da Silva Modelagem de animação procedural para expressividade facial de Atores Digitais Autônomos Relatório Final de Trabalho de Conclusão de Curso (TCC) apresentado ao Curso de Ciência da Computação da UDESC, como requisito parcial para a obtenção do grau de BACHAREL em Ciência da Computação. Aprovado em BANCA EXAMINADORA Prof o Rogério Eduardo da Silva Prof o André Tavares da Silva Prof o Claudio Cesar de Sá

4 Resumo Este trabalho apresenta um modelo para construção de animações procedurais das faces de Atores Digitais Autônomos, cujo objetivo é animar a expressão de emoções, visualização da fala, piscar de olhos e direcionamento de olhar para a face de personagens. A partir do embasamento teórico descrito neste trabalho, foi criado um modelo, composto por 4 módulos. Estes módulos são responsáveis pela entrada de um arquivo com a descrição de uma linha de tempo, tradução desta linha do tempo em uma linguagem de comandos de animação, nomeada BML, finalizando com interpretação e geração da animação facial pela ferramenta de animação. A solução proposta por este modelo é particularmente importante para o módulo de expressividade do projeto D.R.A.M.A.. A implementação foi realizada como um plugin para Autodesk Maya TM, que lê um arquivo de entrada e gera a animação facial. Como verificação, utilizou-se um experimento com comandos de animação, considerando todas as funcionalidades desenvolvidas. O plugin desenvolvido foi capaz de gerar resultados que condizem com o arquivo de entrada. Foi observado que o modelo permite a adição de novas emoções e visemas, assim como a execução em outros personagens. Palavras-chave: atores digitais autônomos, expressão facial, animação procedural

5 Abstract This paper presents a model for building procedural animation of Autonomous Digital Actors faces, which goal is to animate emotions expressions, speech visualization, eye blink and eye gaze for characters face. From the theoretical foundation described in this paper, a model was created, composed of four modules. These modules are responsible for the entry of a file with the description of a timeline, translation from this timeline into an animation command language named BML, ending with interpretation and generation of facial animation by the animation tool. The solution proposed by this model is particularly important for the expressiveness module at D.R.A.M.A. project. The implementation was performed as a plugin to Autodesk Maya TM, which reads an input file and generates facial animation. As verification, an experiment was used with animation commands, consisting of all the features developed. The developed plugin was capable of generating results that are consistent with the input file. It was observed that the model allows the addition of new emotions and visemes, as well executing into other characters. Keywords: Autonomous Digital Actors, facial expression, procedural animation

6 Sumário Lista de Tabelas 6 Lista de Figuras 8 Lista de Algoritmos 9 Lista de Abreviaturas 10 1 Introdução 11 2 Atores Digitais Autônomos Narrativa Digital Humanos Virtuais Atores Virtuais Atores Digitais Autônomos Animação Procedural Animação Facial Introdução Anatomia Facial Técnicas de animação facial Manipulação Geométrica Dirigida por desempenho Representação Visual da Fala Direcionamento do Olhar Piscar de olhos

7 3.7 Representação Facial de Emoções Fisiologia das Emoções Facial Action Coding System Emoções Básicas Expressão Emocional Falsa Posicionamento da Cabeça Behavior Markup Language Modelo Proposto Módulo de Entrada Módulo de Tradução Módulo de Saída Módulo de Animação Desenvolvimento Ferramentas utilizadas Refinamento do modelo Desenvolvimento Banco de Emoções Módulo de Entrada Módulo de Tradução Módulo de Saída Módulo de Animação Experimentação e Análise dos Resultados Experimento Análise dos Resultados Validação

8 7 Conclusões 94 Referências Bibliográficas 96 A Apêndice 107 A.1 Arquivo de entrada utilizado para Experimentação A.2 Código-fonte do plugin desenvolvido

9 Lista de Tabelas 3.1 Grupos de FAPs Visemas e respectivas representações visuais Unidades de Ação (Action Units - AU ) Elementos de Comportamento BML Comportamento: demonstrar emoção Comportamento: olhar Comportamento: falar Comportamento: piscar Comportamento: mover a cabeça Valores extremos dos controladores por emoção

10 Lista de Figuras 1.1 Módulo de expressividade no projeto D.R.A.M.A Ossos do crânio Músculos da face Músculos em ação na expressão facial Primeiros modelos de face desenvolvidos por Park Face aprimorada por Parke utilizando técnicas de renderização Interpolação das poses A e B, gerando A+B Pontos característicos do MPEG Marcadores na face de Tom Hanks para captura de movimentos Animação baseada em desempenho em tempo real Personagem renderizado em tempo real Visemas da língua inglesa Movimentos básicos da boca Posições básicas das pálpebras Partes do cérebro Unidades de ação Expressão facial da tristeza Expressão facial da raiva Expressão facial de medo Expressão facial da surpresa Expressão facial da aversão Expressão facial de desprezo

11 3.22 Expressão facial da felicidade Exemplo de um bloco BML Pontos de sincronização Sincronização de gesto, movimento da cabeça e olhar direcionado Módulos do modelo proposto Taxonomia do módulo de entrada Gráfico de movimentação da boca Tira da Turma da Mônica para exemplificar o módulo de saída Modelo de Personagem Blake Controladores da face Controladores customizados da face Script Editor Emoções desenvolvidas Intensidades da emoção Felicidade Trax Editor Ações de fala, olhar um objeto e demonstrar emoções Movimentos com os olhos e com a cabeça Aceno e inclinação da cabeça, e piscar de olhos Emoções e combinações Pescoço contorcido A.1 Arquitetura do projeto D.R.A.M.A

12 Lista de Algoritmos 4.1 Exemplo de arquivo XML de entrada Exemplo de arquivo BML de saída Utilização da linguagem mel no código python Exemplo de arquivo XML de entrada Exemplo de arquivo BML de saída A.1 Arquivo de entrada utilizado para Experimentação A.2 Código-fonte do plugin desenvolvido

13 10 Lista de Abreviaturas ADA AU BML D.R.A.M.A. FACS FAP FDP FFD FP XML Autonomous Digital Actor Action Units Behavior Markup Language Developing Rational Agents to Mimic Actors Facial Action Coding System Facial Animation Parameters Face Definition Parameters Free Form Deformation Feature Point extensible Markup Language

14 11 1 Introdução A face é a primeira parte do corpo utilizada para reconhecimento e comunicação interpessoal (PARKE; WATERS, 2008). Desde os primeiros anos de vida, até a vida adulta, a capacidade de interpretar e identificar as emoções pela expressão facial é aperfeiçoada. A quantidade de micro expressões e detalhes na expressão facial, torna a produção de animações faciais um grande desafio (MARTINO, 2005). Para animar fenômenos difíceis de especificar explicitamente, como a expressão facial, pode-se utilizar técnicas de animação procedural (MAY et al., 1996). Esta técnica é bem aproveitada quando é possível descrever a ação em forma de algoritmo (MAGNENAT- THALMANN; THALMANN, 2004). O uso de animação procedural permite criar cenas mais complexas a partir de poucos detalhes de descrição funcional (HOETZLEIN, 2011). Em considerável parte dos sistemas de animação, a qualidade da animação dos personagens 3D depende diretamente da equipe responsável por animar isoladamente cada ação e movimento realizado. Personagens sintéticos podem ser utilizados como alternativa a este processo de animação. Estes buscam simular com maior precisão um ator humano, o qual se comporta de forma autônoma e inteligente em ambientes dinâmicos a partir de um roteiro dado. Porém, em contraste ao avanço tecnológico da aparência e das funcionalidades realistas dos personagens, a maior parte dos projetos de personagens sintéticos apresenta pouca complexidade de comportamento (TORRES et al., 2002). Personagens sintéticos tem grande utilidade em atuação de narrativas, construção de filmes de animação e desenvolvimento de jogos. Podem ser utilizados tanto em sistemas de narrativa (story-based), onde o roteiro designa ações, locais e tempos, quanto em sistemas baseados em personagem (character-based), onde o personagem tem maior autonomia para selecionar suas ações e interagir com o mundo virtual (CAVAZZA et al., 2002). O processo de construir animação de personagens está se tornando cada vez mais complexo, ao exigir grande quantidade de profissionais, com conhecimentos especializados, resultando em gastos demasiados. Uma provável alternativa para redução de custos é a utilização de Atores Digitais Autônomos (ADA). Ao invés de animar o personagem

15 1 Introdução 12 separadamente para cada sequência de movimento, o animador tem a possibilidade de utilizar softwares especializados, para treinar um ADA, capacitando-o de empregar movimentos, linguagem corporal, emoção e tomada de decisões (PERLIN; SEIDMAN, 2008). Conforme Martino (2005), além da fala, a compreensão da mensagem depende também da expressividade facial. Para simular a animação facial, é necessário considerar os vários movimentos realizados por esta: posicionamento da cabeça (direção), articulação da boca ao falar, representada por visemas (unidades básicas visuais da boca ao reproduzir a fala), expressão de emoções (tristeza, alegria, raiva...) e fisiológicos (piscar dos olhos). O objetivo deste trabalho é descrever um modelo para construção de animações procedurais para Atores Digitais Autônomos. Os objetivos específicos são desenvolver uma aplicação conforme o modelo proposto e criar animações procedurais com ADAs para demonstração de resultado. Para que sejam alcançados os objetivos deste trabalho, a metodologia escolhida foi Design Based Research. Tal metodologia é utilizada quando um artefato do mundo real necessita ser desenvolvido, dado um propósito definido. Deve-se então adquirir conhecimento deste artefato para cumprir o propósito, criar um design, desenvolver a partir deste, fazer a verificação e análise dos resultados e, caso necessário, a partir da análise, refinar o design e o desenvolvimento (BARAB; SQUIRE, 2004). Este trabalho está inserido no projeto D.R.A.M.A. (Developing Rational Agents to Mimic Actors), que tem como objetivo a pesquisa de personagens virtuais, inspirados na atuação de atores reais, afim de aplicá-la no desenvolvimento de atores virtuais que possam atuar de forma autônoma (SILVA, 2012). A arquitetura completa do projeto D.R.A.M.A pode ser vista na figura A.1 do apêndice. Este trabalho de conclusão de curso contribui com um modelo implementado para a criação da animação procedural de ADA, no escopo de expressividade facial, representação de emoções, movimentação da cabeça, representação visual da fala, e direcionamento do olhar, representado na Figura 1.1.

16 1 Introdução 13 Figura 1.1: Módulo de expressividade no projeto D.R.A.M.A. Fonte: Projeto D.R.A.M.A. O resultado obtido pela implementação do modelo proposto foi um plugin para a ferramenta Autodesk Maya TM. A entrada para este plugin é um arquivo XML, que é interpretado, e uma animação facial é gerada a partir dos comandos presentes neste arquivo. Para testes do modelo proposto, foi utilizado um arquivo de entrada, com todas funcionalidades implementadas. Para verificação, foram analisados se os resultados são coerentes com os comandos do arquivo de entrada. Organização do Trabalho Os fundamentos utilizados para o desenvolvimento do modelo são apresentados no Capítulo 2 Atores Digitais Autônomos e no Capítulo 3 Animação Facial. Após, é apresentado o Capítulo 4 - Modelo Proposto. A implementação do sistema é descrita no Capítulo 5 - Desenvolvimento, e os resultados no Capítulo 6 - Experimentação e Análise dos Resultados. O trabalho é finalizado pelo Capítulo 7 - Conclusões.

17 14 2 Atores Digitais Autônomos Esta seção destina-se ao estudo de atores digitais autônomos. Inicialmente é apresentada a narrativa digital, para entendimento do contexto de utilização de atores digitais autônomos. A seguir, são apresentados os conceitos de humanos virtuais, atores virtuais e atores digitais autônomos, de forma a distingui-los, apresentando qual melhor se adapta à arquitetura do projeto D.R.A.M.A.. Por fim, é apresentado um estudo sobre animação procedural. 2.1 Narrativa Digital A indústria de entretenimento utiliza narrativas em diversas aplicações, como treinamento, marketing, educação, simulação, cinema e jogos (EL-NASR; WEI, 2008). Segundo Louchart e Aylett (2007), no escopo da computação gráfica e inteligência artificial, a narrativa se divide em dois grupos principais: narrativas baseadas em personagens e as baseadas em enredo. As narrativas baseadas em enredo seguem um roteiro, que designa a cada ator as ações corretas a serem tomadas no local, ordem e tempo corretos. O personagem somente tem autonomia em como expressar suas ações, já definidas (LOUCHART; AYLETT, 2007). Já em narrativas baseadas em personagens, não existe o conhecimento explícito do roteiro. O personagem então é fortemente autônomo, selecionando suas ações, baseadas na maneira em que este interage com o mundo virtual (CAVAZZA et al., 2002). Torres et al. (2002) afirmam que, para ambos grupos de narrativas, personagens sintéticos tem grande utilidade para atuarem tanto na construção de filmes (narrativa baseada em enredo) quanto no desenvolvimento de jogos (narrativa baseada em personagem). Tais personagens tem a utilidade de imitar o comportamento de um ator humano, agindo de maneira inteligente em ambientes dinâmicos, tendo autonomia em suas ações ou na forma de expressá-las, conforme a narrativa. Spierling (2005) cita as duas vertentes da narração digital: linear e interativa. As narrações lineares tem como base a tradicional forma de contar histórias em ordem

18 2.2 Humanos Virtuais 15 cronológica. A narrativa segue um roteiro, com início, clímax e fim, como utilizado em vários filmes animados por computador. Em contraste, as narrações interativas permitem que a audiência influencie e altere o rumo da história. São facilmente identificadas em grande parte dos jogos de computadores, onde o jogador participa como o personagem da história, fazendo escolhas que podem alterar o rumo da história. Para este trabalho, a abordagem narrativa utilizada é baseada em enredo, seguindo um roteiro fornecido para o sistema e linear, possuindo uma ordem cronológica. Utiliza-se esta abordagem, pela necessidade de gerar uma animação de computador a partir de um roteiro, presente no escopo do projeto D.R.A.M.A.. Nos próximos tópicos são descritos os tipos de personagens sintéticos existentes, com intuito de definir o tipo de personagem mais adequado no uso da narrativa. 2.2 Humanos Virtuais Humanos virtuais são modelos computacionais de pessoas, usados tanto como substitutos para pessoas reais em avaliações ergonômicas de projetos baseados em computador, quanto para embutir, em tempo real, representações de participantes reais em ambientes virtuais. (TORRES et al., 2002) Os humanos virtuais são utilizados quando deseja-se imitar o comportamento de humanos reais. Suas principais aplicações atualmente são em jogos e animações de computador (SEVIN; THALMANN, 2005). Para medir a credibilidade de um humano virtual, é preciso que este se comporte de forma inteligente e autônoma, que perceba e esteja em sincronia com o ambiente que o rodeia, que entenda e seja capaz de gerar diálogos e de reagir a mudanças, assim como interagir com outros agentes (MAGNENAT-THALMANN; THALMANN, 2004). Algumas dimensões podem ser consideradas para caracterizar o grau de similaridade a um humano real. Os modelos de humanos virtuais podem ter sua fisionomia semelhante a um ser humano, assim como restrições funcionais de movimentos e ações, imitando as limitações humanas. Podem ser capazes de comportar-se com autonomia em suas ações, e executá-las de forma inteligente, tomando suas próprias decisões em ambientes dinâmicos (BADLER, 1997).

19 2.3 Atores Virtuais 16 Conforme Magnenat-Thalmann e Thalmann (2004), a credibilidade do humano virtual está em seu comportamento. Para que um nível satisfatório de credibilidade seja atingido, o comportamento do humano virtual deve ser similar ao comportamento humano, gerando assim, grande grau de complexidade. Elementos como tomadas de decisões, comportamento social, percepção do ambiente e ainda aspecto gráfico realista (pele, cabelo, roupa) são requisitos de humanos virtuais. A arquitetura do projeto D.R.A.M.A. não se restringe ao uso de personagens que imitam o ser humano, podendo ter diversos tipos de personagens fictícios e de movimentos exagerados. Desta maneira, o modelo aqui proposto de humanos virtuais não é o mais adequado, pois o projeto não permite flexibilidade e autonomia na escolha das ações do ator, o qual deve seguir um roteiro específico. É importante salientar que o projeto tem a necessidade de personagens que sigam um roteiro, porém com autonomia na forma de expressar as suas ações. 2.3 Atores Virtuais Iurgel e Marcos (2007) definem atores virtuais como uma analogia a um ator real, o qual de forma autônoma, e pela sua interpretação independente da situação, pode representar o seu papel de acordo com um roteiro dado, como parte de uma história.. Enquanto humanos virtuais são altamente autônomos, escolhendo suas ações em resposta a percepção do mundo virtual, atores virtuais restringem-se à reprodução da narrativa, executando ações particulares em uma ordem definida. Portanto, a autonomia de um ator virtual é menor que a autonomia de um humano virtual, sendo esta utilizada principalmente para escolher a melhor forma de um ator expressar as suas ações (LOUCHART; AYLETT, 2007). A utilização de atores virtuais contribui na redução de custos de produção e facilita o processo de criação. Assim como um ator humano, o ator virtual deve ser capaz de seguir comandos abstratos de um diretor, por meio de um script, que irá orientá-lo com ações a serem tomadas (IURGEL, 2008).

20 2.4 Atores Digitais Autônomos Atores Digitais Autônomos Um Ator Digital Autônomo (Autonomous Digital Actor - ADA) é um ator virtual, treinado por ferramentas de software para criação de animações, capaz de empregar vários estilos de movimento, linguagem corporal, técnicas para transmitir emoções, realizar escolhas de atuação e outras habilidades gerais de desempenho. traduzido de Perlin e Seidman (2008). Com estas propriedades, um ADA treinado pode ser dirigido por animadores sem conhecimentos específicos, podendo o ADA possuir autonomia, humor, personalidade e intenções, interativamente alterados pelo animador. Desta forma, não é mais necessário animar cada sequência de movimento realizada por um personagem separadamente (PERLIN; SEIDMAN, 2008). Iurgel et al. (2010) afirmam que, com esta abordagem, é capaz de acelerar a criação de filmes de animação povoados com atores digitais autônomos. O animador necessita menos esforço e tempo para criar uma animação, quando transfere para o personagem a responsabilidade de decidir grande parte do desempenho da atuação. Thume e Silva (2012) propõem alguns requisitos para implementação de atores digitais autônomos: Estado mental: estados internos do agente, como desejos, intenções e emoções; Percepção e Ação: percepção por sensores e atuação por atuadores; Autonomia: dispensa especificar cada passo da atuação; Aprendizagem: melhoria em atuações futuras; Memória: armazena dados para consultar posteriormente; Tomada de decisão: escolher a maneira de atuar; Planejamento: define os passos para alcançar um objetivo proposto. Atores digitais autônomos são utilizados pelo projeto D.R.A.M.A.. Com a flexibilidade e autonomia destes, é possível transferir ao personagem a responsabilidade de decidir a melhor maneira de atuar, dentro das ações de um roteiro específico, fornecido pelo animador. Desta forma, o animador irá assumir o papel de diretor.

21 2.5 Animação Procedural Animação Procedural A modelagem e geração de animações sofisticada para personagens, cenários e objetos, tem tornado o processo de animação custoso e demorado. Com os avanços da inteligência artificial e computação gráfica, procura-se criar personagens e animações cada vez mais realistas. Para simplificar a necessidade de especificar detalhadamente uma animação, é possível a utilização de técnicas procedurais (MAY et al., 1996). O termo procedural, quando utilizado na Ciência da Computação, significa que uma entidade é descrita por códigos de programa, e não simplesmente por estrutura da dados (EBERT, 2003). A modelagem procedural permite gerar cenas e modelos geométricos complexos a partir de uma especificação funcional compacta, sem que todos os elementos e ações sejam detalhadamente especificados (HOETZLEIN, 2011). A utilização de modelagem procedural na animação tem uma gama extensa de aplicações. Nos primórdios do mapeamento de textura, diversos pesquisadores utilizaram modelos sintéticos de textura para gerar imagens, ao invés de escanear ou pintar estas imagens (EBERT, 2003). A modelagem procedural pode ser utilizada sempre que uma ação, ou forma geométrica puder ser descrita em um algoritmo, autômato ou fórmula como, por exemplo, o ciclo de um relógio ou a sequência de passos ao caminhar (MAGNENAT- THALMANN; THALMANN, 2004). Conforme May et al. (1996), inicialmente, esta técnica possuía seu principal uso na criação de cenários, corpos elásticos, colisões e outros. Com o crescimento da complexidade dos objetos, que se tornaram mais sofisticados, modelos de pessoas, animais e objetos de menor porte, também tem utilizado tal técnica. Um exemplo de animação procedural é a ação de pegar um objeto. Utilizando uma ferramenta de software, um animador define, em linguagem de alto nível, que um determinado personagem sentado pegue um objeto em uma mesa. A ferramenta calcula os movimentos necessários para execução da tarefa. Caso o objeto esteja ao alcance do personagem, a ação deste é somente esticar o braço. Caso não esteja ao alcance, há a necessidade do personagem levantar-se e deslocar-se para mais próximo do objeto. A utilização da técnica de animação procedural se aplica à proposta deste trabalho, que tem como objetivo gerar uma animação facial, a partir do fornecimento de uma emoção, ou uma fala de um personagem.

22 19 3 Animação Facial Este capítulo introduz os principais conceitos da animação facial. Inicialmente é apresentada a anatomia facial, para compreensão da ação muscular na realização de expressões faciais. A seguir, são apresentadas as principais técnicas e abordagens da animação facial. A representação visual da fala, o direcionamento do olhar, o piscar de olhos e a representação facial de emoções são também apresentados neste capítulo. A seção 3.8 trata a linguagem BML (Behavior Markup Language), que descreve o comportamento humano, independentemente do método de animação utilizado. O conteúdo deste capítulo é utilizado como base para a criação de um modelo de expressividade facial. 3.1 Introdução A face é a primeira parte do corpo utilizada para reconhecimento e comunicação interpessoal. Nas animações em três dimensões geradas por computador, a preocupação em comunicar-se corretamente utilizando a face, principalmente ao exibir emoções, têm resultado no aumento dos estudos sobre animação facial (PARKE; WATERS, 2008). O uso de computadores na animação facial já se estende a mais de 30 anos (COSTA; CLUA, 2007). Porém, conforme Chung (2009), ainda existem algumas dificuldades encontradas para animar a face de um personagem, relacionadas a três problemas principais: 1. O modelo de representação facial, pela dificuldade em modelar uma face com geometria detalhada e real; 2. O controle das expressões faciais, por envolverem psicologia, fisiologia e interações entre os músculos para criação de animações reais; 3. A percepção dos espectadores, por serem bastantes sensíveis a detalhes das expressões faciais, estando atentos e interpretando cada mudança da face.

23 3.2 Anatomia Facial 20 Parke e Waters (2008) afirmam que não é somente na indústria de animação digital que a animação facial de personagens pode ser utilizada. Na indústria de jogos, com o alto poder de processamento atual, expressões faciais e sincronização com a fala podem ser executadas em tempo real. Na medicina, a animação facial pode ser utilizada para simulação cirúrgica de tecido facial e planejamento cirúrgico. Em teleconferências de vídeo, para auxiliar no processo do compressão de vídeo. E também pode ser utilizada na robótica para simulação de expressões faciais. Atualmente, os principais objetivos ao desenvolver sistemas para animação facial, conforme Deng e Noh (2007), são criar animações realistas, não somente a nível de semelhança ao mundo real, mas dando aparência de vida e perfeição nas expressões e movimentos faciais dos personagens; animar em tempo real, facilitando a visualização dos resultados; tornar o processo mais autônomo possível, diminuindo o processo manual de animação; e criar sistemas que se adaptem facilmente a qualquer particularidade facial do personagem. Martino (2005) agrupa os movimentos reais da face em 5 categorias: 1. Articulatórios: movimentos articulatórios exibidos na face em sincronia com a fala; 2. Emocionais: movimentos responsáveis por expressar as emoções (por exemplo, alegria, tristeza, medo); 3. Conversacionais: movimentos que acompanham o discurso, enfatizando palavras e auxiliando na transmissão da mensagem; 4. Fisiológicos: movimentos necessários fisiologicamente, como o piscar dos olhos; 5. Contorcidos: movimentos não usuais na face (caretas). Este trabalho aborda os movimentos articulatórios, emocionais e fisiológicos. 3.2 Anatomia Facial O crânio tem papel primordial na anatomia facial. Nele músculos e a pele estão anexados. O crânio é quem molda o formato da face, e tem papel importante

24 3.2 Anatomia Facial 21 Figura 3.1: Ossos do crânio Fonte: Adaptada de (PARKE; WATERS, 2008) na proteção do cérebro. Dentre os ossos da cabeça (representados na Figura 3.1), a mandíbula, responsável pelo abrir e fechar da boca, é o único osso articulado do crânio. Já os dentes, encravados na mandíbula, são a única estrutura óssea visível. Os demais ossos, são conectados por suturas rígidas, permitindo pouco movimento entre os ossos (PARKE; WATERS, 2008). Ping e Abdullah (2013) afirmam que os músculos faciais representados na Figura 3.2), cuja função principal é coordenar as expressões faciais, estão em sua maioria anexados a um osso em uma extremidade e, na outra extremidade, anexados à pele, produzindo as expressões por meio de contrações que puxam a pele. (PARKE; WATERS, 2008) acrescentam que, além das expressões faciais, os músculos da face também são responsáveis por mover a bochecha e os lábios na mastigação, por engolir, pela fala e pelos movimentos das pálpebras. Moore e Dalley (2006) agrupam os músculos da face de acordo com sua região de atuação e funcionalidades: Músculos da testa: possuem a função de elevar as pálpebras e sobrancelhas, assim como enrugar a testa (occipitofrontal);

25 3.2 Anatomia Facial 22 Figura 3.2: Músculos da face Fonte: Adaptada de (MOORE; DALLEY, 2006) Músculos da boca: são vários os músculos responsáveis por alterar o formato da boca e dos lábios. O músculo orbicular é responsável pelo fechamento dos lábios e contração destes. O músculo levantador do lábio superior eleva o nariz e o lábio superior. O músculo bucinador é utilizado na mastigação para pressionar as bochechas contra os dentes e ao soprar, comprimindo as bochechas. O músculo abaixador do ângulo da boca é o responsável por fazer o formato da boca de U invertido. Os músculos zigomático maior e risório são utilizados para sorrir; Músculos dos olhos: são responsáveis por proteger o olho contra lesões e luz excessiva, pelo fechamento das pálpebras, realizado pelo músculo orbicular do olho. Há também o músculo corrugador do supercílio que controla o movimento das sobrancelhas e o enrugamento da testa; Músculos do nariz: possuem a função de dilatar ou contrair a abertura nasal e puxar a narina para baixo (músculo nasal), enrugar o dorso do nariz e franzir as sobrancelhas (prócero) ; -

26 3.3 Técnicas de animação facial 23 Músculos da mandíbula: realizam a abertura (digástrico) e fechamento (masseter) da boca, mastigação e demais os movimentos para frente (pterigoideo) e para trás (temporal); Músculos da língua: responsáveis pela fala e movimentos da língua. Os músculos extrínsecos (fora da língua) abaixam, retraem, elevam e puxam a língua para cima, enquanto os intrínsecos (confinados à língua) enrolam, encurtam, engrossam, achatam, alongam, estreitam e projetam a língua para frente ou para fora da boca; Músculos do pescoço: executam os movimentos de rotação da cabeça (platisma, esternocleidomastoideo e trapézio). As ações de alguns músculos da face podem ser vistas na Figura 3.3. Figura 3.3: Músculos em ação na expressão facial Fonte: Adaptada de (MOORE; DALLEY, 2006) 3.3 Técnicas de animação facial Frederick Ira Parke foi o pioneiro da animação facial por computador, no ano de 1971, com a criação da primeira face gerada por computador (representada na Figura

27 3.3 Técnicas de animação facial ), criada a partir de polígonos, possuindo somente a capacidade de fechar e abrir boca e olhos (PARKE; WATERS, 2008). Figura 3.4: Primeiros modelos de face desenvolvidos por Park Fonte: Adaptada de (PARKE; WATERS, 2008) Parke (1972), posteriormente, utilizou técnicas de renderização de Henri Gouraud, para criar uma face com maior perfeição (representada na Figura 3.5). Com essa face, algumas animações faciais mais realistas foram produzidas, utilizando técnicas de interpolação entre poses, que tem intuito de gerar quadros de transição entre diferentes expressões faciais. Figura 3.5: Face aprimorada por Parke utilizando técnicas de renderização Fonte: Adaptada de (PARKE, 1972) Conforme Parent (2001), a interpolação de valores é a base da maioria das animações. A utilização de quadros-chave (key-frames) é comum entre os animadores para definir uma sequência de acontecimentos de uma cena. Esses quadros-chave possuem diversos quadros entre eles, que devem ser gerados, pelo processo chamado interpolação. A interpolação pode ser tanto da posição do objeto, quanto de outros atributos, como a transparência, ângulo, etc. Em 1974, Parke também criou o primeiro modelo parametrizado da face, em três dimensões (PARKE; WATERS, 2008). Com o uso das técnicas de interpolação e de

28 3.3 Técnicas de animação facial 25 parametrização, Parke (1982) segmentou as animações faciais em duas abordagens distintas. A primeira abordagem utiliza interpolação de quadros-chave, onde o computador gera imagens intermediárias entre posições distintas da face. A segunda, utiliza modelos faciais parametrizados, onde o animador especifica valores para criar qualquer imagem da face. A técnica de quadros-chave tem melhor resultados para animações em duas dimensões, utilizada geralmente em desenhos (cartoons) (MAGNENAT-THALMANN et al., 1988). Parke (1972) pôde verificar a falta de eficiência desta técnica em modelos 3D, devido à grande quantidade de quadros que deveriam ser gerados. Porém, a partir do trabalho inicial de Parke, outros pesquisadores iniciaram estudos com o intuito de superar as limitações dos trabalhos anteriores (COSTA; CLUA, 2007). Platt e Badler (1981) criaram um modelo baseado em estrutura de pontos, espalhados pela pele da face. Waters (1987) desenvolveu um modelo para criar animação realista de expressões faciais, baseado na musculatura facial. Magnenat-Thalmann et al. (1988) criaram um modelo para sincronização da fala e expressões, baseando-se na ação dos pseudo-músculos da face (regiões visivelmente influenciadas pelos músculos). Outros modelos para animação de expressões faciais e sincronização da fala foram criados posteriormente, sempre melhorando os modelos anteriores, (WATERS, 1987) (HILL et al., 1988), (LUCERO; MUNHALL, 1999). A seguir são apresentadas as principais técnicas de animação facial, agrupadas conforme Chung (2009), em manipulações geométricas e dirigida por desempenho Manipulação Geométrica Chung (2009) conceitua interpolação como um processo, onde valores são definidos para produzir uma transição entre vizinhos. Esta técnica é frequentemente utilizada na animação facial para especificar transições suaves entre expressões faciais diferentes em um intervalo de tempo. A interpolação de poses (blend shapes) utiliza quadros-chave, criando poses intermediárias entre estes. Assim, é possível definir as modificações na face entre as poseschave, formando uma animação (COSTA; CLUA, 2007). Conforme Martino (2005), esta técnica pode ser utilizada em mais de duas poses-chave simultaneamente, porém isso a

29 3.3 Técnicas de animação facial 26 torna menos intuitiva, considerando que um ponto forte da interpolação é a simplicidade. Conforme Deng e Noh (2007), quando existem 4 quadros-chave, é possível a utilização de interpolação bilinear, para criar uma grande variedade de expressões faciais. A interpolação pode ser geométrica, atualizando diretamente a posição dos vértices da malha facial, ou paramétrica, utilizando funções que movem indiretamente os vértices. Na Figura 3.6 é possível visualizar (na imagem do centro) um exemplo de interpolação de formas, entre uma forma neutra (imagem à esquerda) e uma forma com a boca bem aberta (imagem à direita). Figura 3.6: Interpolação das poses A e B, gerando A+B Fonte: Adaptada de (DENG; NOH, 2007) A parametrização geométrica utiliza valores, passados por parâmetro, para controlar os movimentos da face, por meio de transformações geométricas na face virtual (COSTA; CLUA, 2007). Deng e Noh (2007) afirmam que algumas restrições da interpolação podem ser superadas com o uso de parametrização. Quando bem implementada, permite ao usuário especificar qualquer expressão facial, alterando o valor dos parâmetros, com pouco custo computacional. Conforme Martino (2005), a parametrização geométrica permite manipular a face, por mecanismos geométricos, sem considerar os mecanismos biomecânicos e fisiológicos. Cada conjunto de parâmetros é responsável por realizar uma determinada movimentação da face virtual. É possível utilizar esta técnica para controlar movimentos específicos, movimentos articulatórios mais complexos e inclusive expressões de emoções. Deng e Noh (2007) definem o padrão ISO MPEG-4 como um modelo bem conceituado de parametrização geométrica. Este é um padrão baseado em objetos para compressão de multimídia, que trata tanto de áudio e vídeo capturados no mundo real,

30 3.3 Técnicas de animação facial 27 quanto animações virtuais. No MPEG-4, a face é definida por 84 pontos característicos (Feature Point - FP), representados na Figura 3.7. Possui parâmetros de definição da face (Face Definition Parameters - FDP), responsáveis por definir a geometria da face. Possui também 68 parâmetros de animação da face (Facial Animation Parameters - FAP), responsáveis pela movimentação de pontos ao longo do tempo, que definem a rotação da cabeça, posição da mandíbula, etc. (PARENT, 2001). Figura 3.7: Pontos característicos do MPEG-4 Fonte: Adaptada de (PARENT, 2001) Os FAPs são categorizados em grupos. A maior parte pertence ao grupo de baixo nível, sendo utilizados somente para definir o quanto um FP deve deslocar-se em uma direção. Os demais parâmetros são de alto nível, responsáveis por expressões faciais e visemas. Os grupos e as respectivas quantidades de FAPs estão representados na tabela 3.1. Deng e Noh (2007) acrescentam que a limitação da parametrização está na criação de movimentos, pois não há uma maneira prática de gerenciar os conflitos entre parâmetros ou a mistura de expressões que utilizam os mesmos vértices. Portanto, os

31 3.3 Técnicas de animação facial 28 Tabela 3.1: Grupos de FAPs Grupo Número de FAPs Visemas e expressões 2 Lábios, queixo e mandíbula 26 Olhos (considerando também pupilas e pálpebras) 12 Sobrancelhas 8 Bochechas 4 Língua 5 Movimentos da cabeça 3 Nariz 4 Orelhas 4 Fonte: Adaptada de (DENG; NOH, 2007) parâmetros devem ser modelados para afetar somente regiões faciais específicas, de forma a não existir conflito. A modelagem muscular baseada em física é dividida em duas categorias: baseada em músculos, cujos parâmetros são os músculos e o tecido facial, buscando imitar os músculos da face e as propriedades elásticas da pele humana; e baseada em pseudomúsculos, utilizando poucos parâmetros que deformam a malha do modelo, imitando a ação muscular, considerando as restrições biomecânicas da face (COSTA; CLUA, 2007). Como exemplo de modelagem pseudo-muscular, pode-se citar o modelo proposto por Kalra et al. (1992), que utiliza a técnica FFD (Free Form Deformation). Esta técnica define vértices de controle que deformam a face virtual. Tais vértices são definidos a partir de regiões superficiais da face, as quais são influenciadas pelos principais músculos. Existem também vários modelos propostos baseados em músculos. Pode-se citar o modelo criado por Lee et al. (1995), que imita profundamente a fisiologia e características do tecido facial e possui grande complexidade computacional. Neste modelo, limitações de movimento foram utilizados, para impedir expressões impossíveis na face real. As camadas do tecido facial, desde o osso até a pele, são representadas por três camadas distintas, interligadas e com a utilização de forças elásticas. Tal abordagem pos-

32 3.3 Técnicas de animação facial 29 sibilita a criação de rugas e dobras na pele. Parâmetros extras também estão disponíveis, como as características de elasticidade do tecido, e espessura das camadas Dirigida por desempenho O princípio da animação facial dirigida por desempenho é capturar movimentos detalhados da face gerando, por meio destes, novos movimentos de acordo com a vontade do animador. O objetivo desta técnica é diminuir a dificuldade em criar expressões faciais complexas, aumentar a realidade das animações e reduzir o tempo e trabalho necessários ao criar manualmente a animação. Existem várias abordagens de animação dirigida por desempenho, sendo que a maioria se baseia em marcadores colocados na face de um ator real, os quais geram dados das posições dos pontos (em duas ou três dimensões) no decorrer do tempo, para captura de movimento (motion capture) (CHUNG, 2009). Animações dirigidas por desempenho facilitam a captura de expressões faciais complexas, gerando animações com maior realidade e detalhe. Várias animações atualmente utilizam esta técnica, permitindo que um ator virtual possa expressar naturalmente suas emoções, pois imitam as expressões de um ator real. Ping e Abdullah (2013) classificam as animações dirigidas por desempenho de acordo com a tecnologia utilizada, podendo se basear no uso (ou ausência) de marcadores. Marcadores são dispositivos de entrada, cujos dados são capturados por câmeras de vídeo, sendo utilizados para capturar o movimento de um ator e transfere estes movimentos para formato digital. Williams (1990) foi quem introduziu o uso de marcadores e câmeras de vídeo, para capturar os movimentos da face, utilizando a textura de uma única imagem estática de uma face real, e rastreamento da posição dos pontos somente em duas dimensões. Outros modelos surgiram para incrementar a técnica de marcadores, como (KOUADIO et al., 1998), que criou um sistema para animar personagens em tempo real, a partir de expressões faciais pré-modeladas associados com os marcadores. Alguns sistemas mais complicados e caros de desenvolver, que capturam dados emitidos por marcadores, também tem sido utilizados na indústria de animação. Tais sistemas utilizam várias câmeras de vídeo, que reconstroem a posição (em três dimensões) dos marcadores da face e do corpo, para utilizar estes dados na criação de animações por

33 3.3 Técnicas de animação facial 30 Figura 3.8: Marcadores na face de Tom Hanks para captura de movimentos Fonte: Adaptada de (BREDOW et al., 2005). computador (DENG; NOH, 2007). Um exemplo de um sistema que utiliza esta tecnologia de marcadores pode ser observado na animação The Polar Express da Warner Bros. Os movimentos da face foram capturados por câmeras que recebem os sinais emitidos por aproximadamente 151 marcadores, com 2,4 milímetros de diâmetro, colocados na face de Tom Hanks (conforme Figura 3.8). Utilizando esta técnica, Tom Hanks pôde interpretar a expressão facial e os movimentos corporais simultaneamente de vários personagens (BREDOW et al., 2005). Outras abordagens também foram desenvolvidas, sem o uso de marcadores, com o uso de visão computacional. Inicialmente, havia a necessidade da utilização de pinturas na face, de forma a realçar contornos da boca, olhos ou criação de alguns pontos (CHUNG, 2009). Kass et al. (1988) foram os pioneiros, utilizando o sistema snakes (cobras), assim nomeado, por se basear em linhas deformáveis. Tais linhas são geradas a partir do contorno dos atributos da face analisando, com o menor esforço possível, as cores e bordas da imagem de um rosto. Outros trabalhos foram desenvolvidos a partir do modelo de snakes. Thalmann et al. (1993) utilizaram tal modelo, junto com técnicas de processamento de imagens, para adquirir, analisar os movimentos da face humana, gerando uma animação em tempo real. Já no modelo de (GUENTER et al., 1998), são geradas animações realistas a partir de

34 3.3 Técnicas de animação facial 31 movimentos retirados de vídeos previamente gravados, considerando a geometria tridimensional, cor e sombras da expressão facial. Outras técnicas que evitam a necessidade de marcas intencionais no rosto também foram desenvolvidas, como o modelo de fluxo óptico de (HORN; SCHUNCK, 1981) e o modelo de medições da correlação normalizada espaço-temporal de (DARRELL; PENTLAND, 1993). Weise et al. (2011) também desenvolveram uma técnica para controlar personagens virtuais, em tempo real, a partir da captura por imagem de vídeo, adquiridas pelo Kinect da Microsoft, capaz de capturar imagens coloridas em duas dimensões e também mapear a profundidade em três dimensões. Desta forma, o modelo considera tanto a geometria quanto a textura da face. O resultado pode ser visto na imagem 3.9. Figura 3.9: Animação baseada em desempenho em tempo real Fonte: Adaptada de (WEISE et al., 2011). Em 2013 a Nvidea R, em parceria com o Instituto de Tecnologia Criativa do sul da Califórnia, criou o sistema nomeado Face Works. Neste sistema, um ser humano é fotografado dentro de uma esfera gigante, com 6500 lampadas, a partir de 253 posições distintas, gerando um objeto 3D com detalhes profundos de geometria, textura, pele, e com expressões faciais, que também são capturadas, sem a necessidade de marcadores ou maquiagem e câmeras especiais. Conforme demonstrado na figura 3.10, após renderizado, o objeto pode ser utilizado para gerar animação hiper-realista em tempo real, simulando movimentos, fala e expressões faciais (HUANG, 2013).

35 3.4 Representação Visual da Fala 32 Figura 3.10: Personagem renderizado em tempo real Fonte: Adaptada de (HUANG, 2013). 3.4 Representação Visual da Fala A fala, juntamente com as expressões faciais, formam os principais elementos de comunicação do ser humano. Permite os seres humanos de compartilharem seus pensamentos e interagirem uns com os outros. A fala pode ser decomposta em fonemas, os quais são sons distintos, reproduzidos pela voz, para compor as palavras. Cada idioma possui fonemas próprios (RODRIGUES et al., 2003). Um fenômeno que torna a sincronização labial mais complexa é a coarticulação. Este fenômeno estabelece que o movimento dos lábios depende, além do fonema a ser pronunciado, do fonema anterior e posterior a este (PING; ABDULLAH, 2013). Deng e Noh (2007) definem duas abordagens principais de animação visual da fala: baseada em dados e baseada em visemas. A abordagem baseada em dados utiliza movimentos gravados anteriormente, geralmente de um ator real, para gerar animações. A partir de uma base de gravação, para gerar animação das falas de personagens, há tanto sistemas treinados utilizando inteligência artificial, para aprender a sintetizar os dados em falas, quanto sistemas que somente reorganizam e processam os dados. Visemas são as unidades básicas visíveis da boca, correspondentes a fonemas. Nem todos fonemas possuem um visema equivalente distinto, pois há sons diferentes, re-

36 3.4 Representação Visual da Fala 33 Figura 3.11: Visemas da língua inglesa Fonte: Adaptada de (PARKE, 1972). produzidos pela voz, que correspondem à mesma posição labial (PARKE, 1972). Alguns visemas da língua inglesa estão ilustrados na Figura Na abordagem baseada em visemas, além de mapear os visemas, o animador necessita criar as funções de co-articulação, para sintetizar corretamente as falas (DENG; NOH, 2007). Osipa (2010) simplificou a utilização de visemas. A técnica utilizada, descrita nos próximos parágrafos, simplifica a representação facial da fala em dois movimentos básicos: A boca aberta/fechada (open/closed) e a boca larga/estreita (wide/narrow), ilustrados na Figura Com a combinação destes movimentos, é possível criar a impressão visual da fala. Alguns formatos específicos podem ser tratados pontualmente, como a pose de reprodução da letra F, onde o lábio inferior encosta na arcada superior de dentes, ou L, onde a língua encosta no céu da boca. Utilizando os dois movimentos básicos há a impressão de reprodução da letra F. O movimento específico da letra F pode ser substituído por um formato de boca meio fechada. Na reprodução da animação, é difícil notar a falta de um formato mais específico para poses mais complexas, geralmente só sendo reparado se o vídeo for pausado no momento exato da reprodução do fonema.

37 3.4 Representação Visual da Fala 34 Figura 3.12: Movimentos básicos da boca Fonte: Adaptada de (OSIPA, 2010). Alguns visemas são definidos, utilizando-se a técnica dos dois movimentos básicos. Os visemas que estão representados na tabela 3.2, que foi desenvolvida utilizando como base o estudo realizado por Osipa (2010), podem representar tanto formas absolutas quanto relativas. Tabela 3.2: Visemas e respectivas representações visuais Fonte: Adaptada de (OSIPA, 2010) Quando absolutas, tratam dos movimentos que se repetem sempre que um mesmo visema é utilizado, como o caso de B, representado pelo fechamento da boca. Quando relativas, se baseiam em outras formas em torno do visema, apenas alterando a direção (intensidade) de abertura ou largura da boca, como o caso de "R, T e S".

38 3.5 Direcionamento do Olhar Direcionamento do Olhar A comunicação não verbal auxilia no entendimento da mensagem que um discurso deseja transmitir, utilizando sinais como o tom de voz, gesticulação, direção do olhar e expressões faciais. O direcionamento do olhar (eye gaze) tem papel importante em uma conversação. Durante um tempo considerável em uma conversa, a atenção dos olhares está voltada para a pessoa a quem se escuta ou a quem se direciona o discurso. Os ouvintes tendem a olhar para quem está falando por maior tempo, levando em conta o tempo que um orador olha para seus ouvintes (VERTEGAAL et al., 2001). A direção de um olhar é determinada tanto pela orientação da face, quanto pela orientação do olho. A face irá determinar uma posição global da direção do olhar, enquanto o olho determina a direção local. Desta forma, se um objeto de interesse não está no campo da visão de uma pessoa, ela deve virar o pescoço, para que seja capaz de enxergar este objeto (ZHU; JI, 2004). Conforme Kendon (1967), o direcionamento do olhar auxilia na concentração da conversa, tendo o intuito de limitar a quantidade de informações recebidas pela visão. Tem também papéis importantes na comunicação de emoções, regulagem do fluxo da conversa e resposta (feedback) à outra pessoa. Há também a tendência de desviar o olhar de uma pessoa quando inicia-se um diálogo com ela, para concentrar-se no que será falado. Porém, quando o fim de uma fala está sendo alcançado, existe também a tendência de olhar com mais frequência para o ouvinte, informando-o que está cessando a fala e que ainda tem sua atenção. Argyle (1976) estimou que, em uma conversa, existe troca de olhares durante aproximadamente 60% do tempo, variando de acordo com o papel da pessoa (ouvinte, ou orador), e de acordo com diferenças culturais e individuais, como a inibição, por exemplo. Se a pessoa está falando, aproximadamente 41% do tempo será utilizando olhando para outra pessoa e, quando ouvindo, 75% do tempo é utilizado. Outras estimativas também foram realizadas por Argyle e Dean (1965). Existe maior troca de olhares quando a conversa trata de assuntos não pessoais. Mulheres utilizam mais contato com os olhos que os homens. Existe maior troca de olhares entre pessoas que se gostam ou estão cooperando entre si, enquanto há menor troca se estas pessoas estão competindo, ou caso haja tensão entre elas. A direção de um olhar, conforme

39 3.6 Piscar de olhos 36 Zhu e Ji (2004), também serve para indicar o interesse de uma pessoa, em um objeto ou em outra pessoa. 3.6 Piscar de olhos O piscar dos olhos é caracterizado pelo rápido fechamento e abertura das pálpebras (TRUTOIU et al., 2011). Bacher e Smotherman (2004) distinguiram o piscar de olhos de acordo com sua duração, contexto e amplitude, categorizando-o em três tipos: espontâneo, quando se trata de um movimento involuntário (como o piscar automático do olho para hidratação); reflexivo, quando é causado por um impulso repentino (geralmente como forma de defesa do organismo em resposta a detecção de algum perigo ao olho) e voluntário, quando há a intenção de piscar o olho. O piscar de olhos é composto tanto pelo abaixar das pálpebras superiores, quanto da elevação das pálpebras inferiores, porém em proporções diferentes. As pálpebras superiores devem se mover quase inteiramente para baixo, enquanto as inferiores elevam-se muito pouco (OSIPA, 2010). O comportamento de um piscar, conforme Trutoiu et al. (2011), é assimétrico durante o tempo. O primeiro momento, onde a pálpebra superior é abaixada (e a inferior é levemente elevada), é curto e possui rápida aceleração e velocidade. Já o segundo momento, onde os olhos são abertos pela elevação da pálpebra superior, tem maior duração e desacelera lentamente. Outras estimativas foram feitas a partir do comportamento do piscar de olhos. Conforme Osipa (2010), o piscar dos olhos é utilizado também para informar, em um diálogo, que uma sentença chegou ao fim e o orador está passando a vez para o ouvinte falar. Também é utilizado durante transições entre expressões faciais diferentes. Uma piscada demorada se encaixa bem à um grande exalar, dando a impressão de alívio. Caffier et al. (2003) ainda associam a piscada longa, à presença de sonolência, assim como o aumento da frequência do piscar de olhos. Conforme Trutoiu et al. (2011), tanto a frequência, quanto a duração do piscar estão associadas com estados emocionais, podendo inclusive demonstrar se uma pessoa está, ou não, contando a verdade, ou mascarando emoções verdadeiras. Pessoas têm a tendência de diminuir a frequência de piscar de olhos enquanto mentem, aumentando-a

40 3.7 Representação Facial de Emoções 37 após o término da mentira (LEAL; VRIJ, 2008). Osipa (2010) utiliza 5 posições básicas das pálpebras, para representar o piscar de olhos: fechadas, pálpebra superior para cima, pálpebra inferior para cima, pálpebra superior para baixo e pálpebra inferior para baixo. Estas posições podem ser vistas, em respectiva ordem, na Figura Figura 3.13: Posições básicas das pálpebras Fonte: Adaptada de (OSIPA, 2010). Trutoiu et al. (2011) afirmam que um piscar de olhos, quando representado em uma animação de computador de 30 quadros por segundo, deve ter a duração de 7 a 13 quadros. Conforme (TAKASHIMA et al., 2008) a frequência do piscar de olhos, para dar sensação de realismo, em um estado neutro de emoção, deve ser de aproximadamente 18 vezes por minuto, com intervalos não constantes. Durante ansiedade, stress, raiva, tensão ou exaltação, a frequência de piscar é aumentada, enquanto em situações de atenção e tranquilidade, a frequência diminui. 3.7 Representação Facial de Emoções Psicólogos e neurologistas definem a emoção como uma série de mudanças adaptativas em vários sistemas fisiológicos, em resposta a um estímulo (ADOLPHS, 2002). Ekman (2007) acrescenta que as emoções determinam a qualidade de vida de um ser humano. Emoções estão presentes em todos os relacionamentos vivenciados, alterando a maneira de agir em cada situação. Para cada estímulo, existe uma emoção que apresenta características únicas na fisionomia. A emoção e as mudanças corporais decorrentes destas, são induzidas por ter-

41 3.7 Representação Facial de Emoções 38 minais de células nervosas, as quais são controladas por um sistema cerebral dedicado. O sistema responde a estímulos de pensamentos, a respeito de uma entidade ou evento. Desta forma, emoções combinam processos psicológicos e fisiológicos (DAMASIO, 1994). Humanos utilizam fortemente expressões faciais para demonstrar o seu estado emocional (POLLAK; SINHA, 2002). A natureza de uma expressão facial pode ser tanto uma resposta à uma emoção sentida, quanto comunicação social. Na maior parte das situações, estas naturezas ocorrem simultaneamente, em diferente intensidades, para formar uma expressão facial (ADOLPHS, 2002) Fisiologia das Emoções Quando nos encontramos no domínio de uma emoção, uma cascata de mudanças ocorre em frações de segundos, sem a nossa escolha ou consciência imediata: Os sinais emocionais no rosto e voz; as ações pré-definidas; ações aprendidas; a atividade do sistema nervoso autônomo que regula nosso corpo; os padrões regulatórios que continuamente modificam nosso comportamento; a recuperação de memórias relevantes e expectativas e a maneira que interpretamos o que está acontecendo dentro de nós e no mundo. traduzido de (EKMAN, 2007) Vários níveis do cérebro são atingidos pela organização neural das emoções humanas. Nestes níveis existem aplicações para experiência e expressão de emoção, assim como motivação efetiva de comportamento (TUCKER et al., 2000). Os músculos faciais são controlados por dois sistemas distintos do cérebro. As expressões voluntárias são controladas pelo sistema cortical, enquanto o sistema subcortical é responsável palas expressões que são geradas por emoções que estão sendo sentidas. (RINN, 1984). Conforme Tucker et al. (2000), no sistema subcortical, subsistemas neurofisiológicos especializados controlam o processamento motor, autônomo e sensorial. Tais subsistemas são coordenados pelas seguintes estruturas de maior nível que produzem estados emocionais: Subsistemas componentes do tronco encefálico: o tronco encefálico, ilustrado na Figura 3.14, contém grupo de células que controlam alguns comportamentos

42 3.7 Representação Facial de Emoções 39 específicos. Dentro deles, podem-se citar expressões faciais, movimentos dos olhos e locomoção e regulagem dos reflexos autônomos; Mecanismos integrantes do tronco encefálico: tais mecanismos possuem colunas de células responsáveis por comportamentos motivacionais específicos. Pode-se citar o comportamento defensivo, que aumenta a frequência cardíaca e o fluxo sanguíneo para o rosto e membros, e diminui o sentimento de dor. Também há o comportamento em resposta à dor profunda, que diminui a atividade motora, a frequência cardíaca, a pressão sanguínea, e o sentimento de dor; Influências integrantes límbicas: o sistema límbico, ilustrado na Figura 3.14, é responsável por providenciar controle de alto nível sobre o tronco encefálico. Tendências agressivas são reprimidas por esse sistema, auxiliando o comportamento social, confiança e afeição. Também regulam o medo, quando há proximidade de ameaça física e urgente, como a aproximação inesperada de um predador com pouco tempo para reagir; Funções antecipatórias límbicas: baseando-se nas propriedades contextuais do ambiente, tais funções são responsáveis por prover informação contextual ao cérebro, antes deste enviar sinais para outros membros. Desta forma, não serão levados em consideração somente objetos isolados para reagir a um estímulo. Figura 3.14: Partes do cérebro Fonte: Adaptada de (FISIOBLOG, 2012)

43 3.7 Representação Facial de Emoções 40 A hipótese de Marcadores Somáticos foi criada por Damasio (1994), onde o termo marcador somático foi escolhido por se referenciar a uma sensação corporal ( soma significa corpo em grego) que marca uma imagem ou pressentimento. Os marcadores somáticos têm o papel de auxiliar automaticamente na tomada de decisão, funcionando como uma intuição e dando destaques positivos ou negativos à algumas opções, antes mesmo que estas sejam raciocinadas (SCHNEIDER, 2004). Damasio (1994) afirma que os marcadores somáticos, quando negativos, são responsáveis por alertar possíveis resultados negativos de uma ação, induzindo o indivíduo a rejeitar certas escolhas e procurar outras alternativas, antes mesmo de analisar as premissas. Quando positivos, os marcadores somáticos incentivam uma determinada escolha. As emoções básicas, disparadas por determinados estímulos, são a base de aprendizado dos marcadores somáticos. Durante o processos de socialização e educação, situações são associadas a sensações desagradáveis e agradáveis. Quando é necessário fazer uma nova escolha, as emoções vividas são acessadas pela mente, influenciando na decisão de acordo com a emoção sentida. Durante o decorrer da vida, escolhas que levem a emoções negativas ou positivas, continuarão criando novas assimilações para o sistema de marcadores somáticos. A parte do cérebro responsável pela assimilação dos marcadores somáticos é o córtex pré-frontal, ilustrado na Figura Esta parte categoriza as reações do organismo perante as situações vividas; recebe sinais de sensores responsáveis por formar imagens de pensamentos e sinais de vários setores regulatórios do cérebro (responsáveis pela liberação de hormônios); e está conectada diretamente à resposta química e motora do cérebro Facial Action Coding System Em 1978, juntamente com sua equipe, Paul Ekman desenvolveu o sistema de codificação da ação facial (Facial Action Coding System - FACS). Tal sistema foi desenvolvido com o intuito de medir os movimentos musculares de cada expressão e detectar micro expressões, com durações menores que um quinto de segundo. Utilizando este sistema, Ekman pode distinguir mais de 55 mil expressões faciais (TERZOPOULOS; WATERS, 1990). Os estímulos emocionais também puderam ser detalhadamente estudados, com melhorias na análise das características de emoções exibidas nas expressões faciais (EKMAN, 2007).

44 3.7 Representação Facial de Emoções 41 Figura 3.15: Unidades de ação Fonte: Adaptada de (EKMAN et al., 2002) O objetivo principal de Ekman et al. (2002) era desenvolver um sistema compreensível que fosse capaz de distinguir todos movimentos faciais visíveis, resultantes da ação muscular. Portanto, FACS lida somente com movimentos visíveis da face, não considerando mudanças invisíveis, de difícil distinção ou de movimentos involuntários. Seu objetivo é descrever o movimento, sem interpretar seu significado (PARKE; WATERS, 2008). Utilizando o conceito de que cada movimento facial é resultado da contração de um ou mais músculos na face, a abordagem para o desenvolvimento do sistema foi analisar anatomicamente as ações mínimas necessárias de cada movimento facial distinto (EKMAN et al., 2002). Tais ações mínimas foram nomeadas de unidades de ação (Action Units - AU ) e servem como base do sistema desenvolvido por Ekman. As unidades de ação, combinadas ou não, são capazes de representar todas expressões faciais possíveis, com respectivas intensidade, simetria e duração (OLIVEIRA, 2008). Conforme Oliveira (2008), inicialmente FACS foi concebido com 44 unidades de ação (representadas na tabela 3.3), divididas entre parte superior (sobrancelha, testa, olhos, pálpebras) e inferior (boca, nariz, bochechas, queixo). Além destas, foram considerados outros movimentos, como mastigar, engolir, posicionamento da cabeça e olhos, etc. (EKMAN et al., 2002). Alguns exemplos de representação facial das AUs são apresentados na Figura As unidades de ação podem também variar em intensidade, definidas pelas

45 3.7 Representação Facial de Emoções 42 Tabela 3.3: Unidades de Ação (Action Units - AU ) AU Descrição AU Descrição 1 Levantar interior da sobrancelha 23 Enrugar lábios 2 Levantar exterior da sobrancelha 24 Pressionar lábios 3 Apertar mandíbula 25 Separar lábios 4 Abaixar sobrancelha 26 Deixar cair o queixo 5 Levantar a pálpebra superior 27 Esticar a boca 6 Levantar a bochecha 28 Sugar os lábios 7 Apertar as pálpebras 29 Projetar mandíbula para frente 8 Direcionar um lábio ao outro 30 Projetar mandíbula na lateral 9 Enrugar o nariz 31 Projetar mandíbula para cima 10 Levantar o lábio superior 32 Morder o lábio 11 Afundar sulco labial 33 Inflar a bochecha com lábios abertos 12 Puxar canto dos lábios 34 Inflar a bochecha com lábios fechados 13 Arredondar a bochecha 35 Sugar a bochecha 14 Relaxar a Bochecha 36 Deixar a língua protuberante 15 Baixar canto dos 37 Esfregar os lábios 16 Baixar lábio inferior 38 Dilatar Narinas 17 Levantar o queixo 39 Comprimir narinas 18 Projetar lábios em forma de disco 40 Farejar com o nariz 19 Projetar língua para fora 41 Relaxar pálpebras 20 Esticar lábios 42 Juntar sobrancelhas 21 Enrijecer o pescoço 43 Fechar os olhos 22 Afunilar os lábios 44 Olhar vesgo Fonte: Adaptada de (EKMAN et al., 2002)

46 3.7 Representação Facial de Emoções 43 letras do alfabeto A, B, C, D, E, representando respectivamente os níveis da intensidade: somente traços; leve; acentuada; severa; extrema e máxima. Também podem ser combinadas, formando expressões faciais, que podem ser utilizadas para demonstrar emoções. Para melhor estudo das expressões faciais, é realizado o processo de pontuação (scoring) FACS. Tal processo é realizado tanto em imagens estáticas quanto em movimento, com intuito de medir a ação facial. A partir da medição é possível, por exemplo, aprender todos os sinais faciais das emoções, quando verdadeiras ou falsas; verificar marcadores faciais que dão ênfase ao discurso; verificar as características visíveis da mentira na face; etc. FACS, apesar de não ter sido desenvolvido especificadamente para utilização em animação por computador, tem auxiliado animadores em diversos sistemas, ao interpretarem e construírem expressões faciais realistas. Também pode ser utilizada na modelagem, especificando os controles das possíveis ações da face virtual (PARKE; WA- TERS, 2008) Emoções Básicas A origem das emoções é tratada por duas principais perspectivas. Uma afirma que as emoções são produto de seleção natural, tendo uma base biológica. Outra afirma que emoções são aprendidas construídas socialmente, variando pelas diferentes culturas. Ambas as perspectivas possuem evidências, e vários estudiosos acreditam que ambas estão corretas. As emoções que tem base biológica são nomeadas como básicas por vários autores (PRINZ, 2004). Darwin (1872) foi um dos primeiros pesquisadores a afirmar que expressões faciais de emoção partem de uma base biológica. Existem várias teorias a respeito de emoções e suas formas de expressão na literatura, que afirmam que o ser humano é provido de emoções básicas, não dependendo do aprendizado de como demonstrar estas emoções por meio de observação ou outras maneiras. A seguir são citadas algumas dessas teorias. No núcleo biológico do sistema de emoção humano existem módulos de emoções herdados, os quais são chamados por McDougall (1921) de instintos. Sua teoria afirma que cada módulo de emoção básica é um programa de reação, que responde a uma informação

47 3.7 Representação Facial de Emoções 44 sensorial recebida. Quando um módulo é ativado psicologicamente, o corpo e a mente disparam impulsos que seguem um padrão de comportamento, de forma que tais impulsos é que fazem sentir e expressar emoções. McDougall propôs inicialmente as seguintes emoções básicas: raiva, desgosto, exaltação, medo, fraqueza e admiração. Arnold (1960) descreve emoção como uma tendência intuitivamente sentida a partir de um estímulo ou impulso. Algumas emoções não são aprendidas, pois pertencem à herança humana. Da mesma forma que uma pessoa nasce com a habilidade de ver e sentir dor, também nasce com a capacidade de sentir e expressar emoções, como o medo que é uma resposta automática a um estímulo negativo. As expressões emocionais representadas na face geralmente são nativas e reconhecidas de forma intuitiva. Ekman (2007) publicou em seu livro os resultados de um estudo, iniciado em 1965, a respeito de demonstrações de expressões faciais em diferentes nações: Chile, Argentina, Brasil, Japão, Estados Unidos e uma tribo isolada da Papua-Nova Guine. Com este estudo, Ekman foi capaz de concluir que existem algumas expressões faciais que são universais e biológicas, as quais ele chama de emoções básicas. Além destas, Ekman confirma também a existência de expressões culturalmente variáveis, que são aprendidas a partir de observação. Para provar a existência de expressões faciais universais, alguns estudos com pessoas cegas de nascença foram desenvolvidos. Tais estudos tiveram o intuito de demonstrar que as expressões básicas pertencem à biologia do ser humano, não sendo adquiridas por observação. Matsumoto e Willingham (2009) fotografaram a reação de atletas cegos de nascença, ao receberem os resultados e medalhas nas paraolimpíadas de Atenas em Maury-Rouan et al. (2005) realizaram um estudo em crianças cegas de nascença, observando a elevação das sobrancelhas enquanto discursavam ou enquanto demonstravam o sentimento de surpresa. Galati et al. (2003) também realizaram estudo com crianças nascidas cegas, comparando suas expressões faciais de emoção com crianças que enxergavam. O resultado obtido nos estudos dos autores citados foi: algumas expressões faciais espontâneas em pessoas cegas de nascença, são as mesmas exibidas em pessoas que enxergam normalmente, reforçando a existência de universalidade em expressões emocionais. Paul Ekman (1992) utilizou nove características como critérios para distinguir

48 3.7 Representação Facial de Emoções 45 as emoções básicas: 1. Sinais universais distintos: expressões faciais são essenciais para distinguir as emoções. Devem existir limites bem definidos entre diferentes emoções, resultando em distinção quando tais emoções são exibidas por meio de expressões faciais; 2. Presença em outros primatas: conforme alguns estudos realizados, existem evidencias de similaridade nas expressões faciais de outros primatas para emoções de medo, raiva, tristeza e felicidade, provando que a biologia tem papel essencial nestas emoções (CHEVALIER-SKOLNIKOFF, 1973); 3. Fisiologia distintiva: existem padrões distintos de atividades do sistema nervoso autônomo (ANS) para diferentes emoções, como raiva, medo, desgosto e tristeza (LEVENSON et al., 1990); 4. Eventos universais antecedentes: elementos similares são encontrados em contextos onde cada emoção distinta ocorre. Como exemplo pode-se citar o medo que é característico em contextos onde perigo de se ferir ou risco de morte são encontrados, ou a tristeza no contexto da perda de um ente querido; 5. Coerência entre a resposta emocional: existem coerência e relações sistemáticas entre a resposta emocional e as expressões faciais para as diferentes emoções básicas; 6. Breve início: emoções podem ocorrer antes que a pessoa esteja consciente que estas aconteceram, assim como as expressões faciais podem começar em milissegundos após um estímulo emocional; 7. Duração curta: a resposta de um estímulo emocional dura alguns segundos, ao menos que este estímulo seja realizado novamente, estendendo a duração de uma emoção. Deve-se, neste caso, distinguir emoção (estado, com curta duração) de humor e personalidade, que possuem maior duração. 8. Avaliação automática: um mecanismo de avaliação automática deve existir para decidir qual emoção será disparada a partir de um estímulo. Tal sistema de avaliação deve acontecer com grande velocidade, considerando o curto intervalo entre um estímulo e sua resposta emocional;

49 3.7 Representação Facial de Emoções Ocorrência espontânea: uma pessoa não pode escolher qual emoção sentir, pois as emoções são respostas automáticas e involuntárias a determinados estímulos. As emoções básicas definias por Ekman (2007) são sete: tristeza, raiva, surpresa, medo, nojo, desprezo e felicidade. Cada emoção básica é uma família de emoções. Pode-se utilizar como exemplo a raiva, que varia em intensidade (de um incômodo até ódio) e tipo (irritante, ressentida, fria ou indigna). Para o propósito deste trabalho, acredita-se que a teoria de emoções básicas é adequada aos objetivos do projeto D.R.A.M.A. Utilizando o sistema FACS, que automatiza o processo de expressão facial, é possível mapear as emoções em comportamentos, por intermédio de uma função. A partir das expressões faciais de emoções básicas, outras expressões podem ser facilmente originadas sem muitas modificações. Nos próximos tópicos, são abordadas as características, demonstradas pela expressão facial, das emoções básicas definias por Ekman (2007): tristeza, raiva, surpresa, medo, nojo, desprezo e felicidade. Tristeza A tristeza é uma emoção negativa, estimulada por perdas, fracassos, decepções e separações. Pode variar em intensidade, desde nostalgia e desencorajamento, até desespero (SANTOS, 2009). Geralmente, a tristeza motiva o ser humano a buscar ajuda e dividir o sentimento com os outros, procurando voltar ao estado anterior ao sentimento de tristeza (SILVEIRA; MELO, 2010). Na fisiologia humana, a tristeza resulta em sentir o corpo e coração pesados, também dando sensação de vazio e cansaço físico ou mental (QUEIROS, 1997). As características visuais da face, ilustradas na Figura 3.16, geradas pela tristeza são:

50 3.7 Representação Facial de Emoções 47 Figura 3.16: Expressão facial da tristeza Fonte: Adaptada de (KUMAR, 2009) Boca aberta quando tristeza é intensa (EKMAN, 2007) ou fechada quando é menos intensa (SANTOS, 2009); Narinas contraídas com movimento descendente (SANTOS, 2009); Pálpebras superiores decaídas (SILVEIRA; MELO, 2010) e inferiores contraídas, com olhar desfocado ou para baixo (EKMAN, 2009); Sobrancelhas decaídas e juntas (SANTOS, 2009); Lábios arqueados com cantos externos curvados para baixo (PIMENTEL et al., 2008). Raiva A raiva é uma emoção conflituosa, estimulada por comportamentos agressivos, que acontecem na convivência social (SANTOS, 2009). Conforme Zimprich e Mascherek (2012), a raiva possui diversas causas como: crenças diferentes, rejeição amorosa, agressão física ou psicológica, etc. Possui um papel adaptativo, capacitando ao indivíduo a enfrentar perigos e desafios, podendo também conduzi-lo à agressão física ou verbal (QUEIROS, 1997). A intensidade da raiva pode passar por vários estágios: aborrecimento, frustração, fúria, ódio, ameaça de perigo (EKMAN, 2007). Na fisiologia humana, a raiva resulta

51 3.7 Representação Facial de Emoções 48 no aumento da pressão sanguínea, vermelhidão da face, aumento dos batimentos cardíacos e aumento da frequência de respiração (LARKIN; ZAYFERT, 2004). são: As características visuais da face, ilustradas na Figura 3.17, geradas pela raiva Figura 3.17: Expressão facial da raiva Fonte: Adaptada de (KUMAR, 2009) Lábios inferiores e superiores pressionados com força um contra o outro (MARSH et al., 2005); Músculos da mandíbula enrijecidos ou mandíbula deslocada para frente (MCKAY et al., 2003); Partes internas das sobrancelhas apontando para baixo (em direção ao nariz) e sobrancelhas juntas (SADR et al., 2003); Olhos com abertura estreita e pálpebras superiores empurrando as sobrancelhas abaixadas (MATSUMOTO, 1989). Medo O medo é uma emoção disparada por situações interpretadas pelo cérebro como ameaçadoras ou perigosas. Na fisiologia humana, o medo resulta no tremer do corpo, aumento dos batimentos cardíacos e da frequência de respiração e rosto pálido, podendo até causar desmaios (SILVEIRA; MELO, 2010).

52 3.7 Representação Facial de Emoções 49 Quando uma pessoa percebe perigo, o medo a faz reagir de diferentes formas: congelar momentaneamente, esconder-se, fugir, ou enfrentar a ameaça. O medo pode ser distinguido em três fatores: intensidade (nível de perigo da ameaça), tempo (próximo a acontecer ou urgente) e reação (possibilidade de enfrentar a ameaça) (EKMAN, 2007). são: As características visuais da face, ilustradas na Figura 3.18, geradas pelo medo Figura 3.18: Expressão facial de medo Fonte: Adaptada de (KUMAR, 2009) Olhos arregalados (MATSUMOTO, 1989); Sobrancelhas arqueadas, levantadas e juntas (SUSSKIND et al., 2008); Pálpebras superiores extremamente levantadas e inferiores tensas (MATSUMOTO, 1989); Boca aberta, puxando os lábios horizontalmente para trás. (MARSH et al., 2005). Surpresa A surpresa é uma emoção caracterizada pela ocorrência de uma situação súbita e inesperada (SANTOS, 2009). Esta emoção é rápida e intensa, tendo a menor duração entre as outras emoções. O sentimento de surpresa leva pouco tempo para passar, podendo desencadear outra emoção, assim que o cérebro processa o que aconteceu. (EKMAN, 2007).

53 3.7 Representação Facial de Emoções 50 Na fisiologia humana, a surpresa é responsável por limpar o sistema nervoso e pausar momentaneamente os processos cognitivos, para o cérebro processar e reagir adequadamente à situação inesperada (QUEIROS, 1997). As características visuais da face, ilustradas na Figura 3.19, geradas pela surpresa são: Figura 3.19: Expressão facial da surpresa Fonte: Adaptada de (KUMAR, 2009) Sobrancelhas levantadas (JOOSTEN et al., 2012); Olhos bem abertos (SILVEIRA; MELO, 2010); Pálpebras levantadas (PIMENTEL et al., 2008); Queixo elevado (SANTOS, 2009); Boca aberta, com mandíbula caída (SILVEIRA; MELO, 2010). Aversão Aversão é uma emoção relacionada a preferencias pessoais, disparada por situações repulsivas para o organismo, muitas vezes expressada como se o indivíduo fosse vomitar (SILVEIRA; MELO, 2010). Está ligada ao nível físico, quando rejeita-se algo contaminado, ao nível psicológico, quando rejeita-se aquilo que é desagradável, ou ao nível moral, quando há rejeição social (SANTOS, 2009).

54 3.7 Representação Facial de Emoções 51 Aversão está ligada experiências que não agradam o ser humano. Por exemplo, o paladar ao ingerir um alimento que não agrada, um som estridente um cheiro desagradável, aparência ou ação de uma pessoa, ou até a lembrança de qualquer um destes eventos (EKMAN, 2007). As características visuais da face, ilustradas na Figura 3.20, geradas pela aversão são: Figura 3.20: Expressão facial da aversão Fonte: Adaptada de (KUMAR, 2009) Sobrancelhas com a parte interna apontando para baixo (SUSSKIND et al., 2008); Nariz com as asas levantadas e enrugado (EKMAN, 2007); Bochechas levantadas (SUSSKIND et al., 2008); Olhar longe ou distante (EKMAN, 2009); Boca com o formato da letra U invertido, com o lábio superior levantado o quanto possível e o inferior também levantado e um pouco saliente (EKMAN, 2007). Desprezo Desprezo é uma emoção disparada quando um indivíduo sente-se mais forte, superior, civilizado ou inteligente que outros. Pode ser sentida tanto por se achar superior a alguém, quando por aqueles em uma posição subordinada, que se sentem melhores que

55 3.7 Representação Facial de Emoções 52 o seu superior (SANTOS, 2009). Um indivíduo pode também sentir desprezo a si próprio, como arrependimento de um ato (QUEIROS, 1997). Desprezo ocorre quando há aversão à uma pessoa ou sua atitude e há o sentimento moral de superioridade. Sua expressão facial é semelhante à de aversão, sendo geralmente exibida somente em um lado da face (EKMAN, 2007). As características visuais da face, ilustradas na Figura 3.21, geradas pelo desprezo são: Figura 3.21: Expressão facial de desprezo Fonte: Adaptada de (KUMAR, 2009) Parte interna das sobrancelhas apontando para baixo (EKMAN, 2007); Queixo elevado (SANTOS, 2009); Bochecha levemente levantada (somente de um lado) (EKMAN, 2007); Levantamento unilateral do lábio superior, juntamente com o lábio inferior (ROSEN- BERG et al., 1998). Felicidade A felicidade é uma emoção relacionada à sentimentos agradáveis como superação, satisfação de necessidades, sucesso, realização de desejos e competência, etc. Sua

56 3.7 Representação Facial de Emoções 53 característica principal é o sorriso (SILVEIRA; MELO, 2010), e pode ser gerada por diversas situações, como recordações, sucesso, visualização de imagens agradáveis, ao sentir-se amado, etc. (SANTOS, 2009). Na fisiologia humana, a felicidade resulta no aumento do ritmo cardíaco, irregularidade da respiração e atividade muscular na face (QUEIROS, 1997). É gerada pela liberação de substâncias químicas, como dopamina e noradrenalina, e pode até proteger o sistema imunológico quando presente, ou afetar a saúde física, quando ausente (SANTOS, 2009). As características visuais da face, ilustradas na Figura 3.22, geradas pela felicidade são: Figura 3.22: Expressão facial da felicidade Fonte: Adaptada de (KUMAR, 2009) Músculos dos olhos contraídos, principalmente na parte inferior (SILVEIRA; MELO, 2010); Cantos dos olhos franzidos (EKMAN, 2007); Boca aberta, com cantos puxados para trás e cima (SILVEIRA; MELO, 2010); Bochechas empurradas para cima (SILVEIRA; MELO, 2010); Sobrancelhas levemente rebaixadas (SILVEIRA; MELO, 2010); Olhos com brilho e semicerrados, com pálpebras inferiores para cima (SANTOS, 2009);

57 3.7 Representação Facial de Emoções 54 Franzir horizontal de todo o rosto (SANTOS, 2009) Expressão Emocional Falsa As expressões emocionais falsas são produzidas por movimentos voluntário da face. Quando uma expressão é verdadeira, os músculos da face são controlados de maneira involuntária, sem a intenção ou raciocínio desta movimentação. Já nas expressões falsas, existe a intenção de gerenciar a expressão, no esforço de enganar ao demonstrar a emoção que está sendo sentida (EKMAN, 2009). A alegria é uma das emoções exibidas desonestamente com maior frequência. Enquanto no sorriso verdadeiro toda a face demonstra a alegria, no sorriso simulado há menor brilho nos olhos, assimetria facial, e geralmente ocorre somente a nível da boca (QUEIROS, 1997). Quando um sorriso falso é bem treinado, pode apresentar rugas em volta do rosto e bochechas levantadas (sinais de sorriso genuíno). Porém, quando a expressão é autêntica, a parte que cobre o olho (localizada entre a sobrancelha e a pálpebra) move-se para baixo e as extremidades das sobrancelhas levemente afundam (PEASE; PEASE, 2009). Lovas (2009) categoriza as faces desonestas por quatro elementos: olhos, sobrancelhas, lábios e simetria: Olhos: quando estão olhando para uma direção, diferente da qual a face está direcionada, indica que alguma informação está sendo retida; Sobrancelhas: se uma sobrancelha está mais alta que a outra, indica que o indivíduo está crítico, julgando algo, ou achando-se superior; Lábios: caso estejam fechados e bem pressionados, indica que a pessoa está escondendo algo; Simetria: quando há assimetria exagerada, faltando harmonia na expressão, indica que não é uma expressão emocional verdadeira. No estudo de Ekman (2009) sobre as micro-expressões, foi possível perceber que, em algumas expressões falsas, há sinais de outras emoções verdadeiras, que são involuntariamente exibidas com rapidez (durante um quinquagésimo de segundo). Alguns

58 3.7 Representação Facial de Emoções 55 músculos faciais (nomeados confiáveis) dificilmente são controlados voluntariamente, facilitando a detecção de expressões emocionais falsas, pela ausência de movimentos nestes músculos. Outras pistas de emoções falsas, além das já citadas, são listadas por Ekman (2009). O constante piscar de olhos; o lacrimejar; a dilatação das pupilas; erros no tempo de resposta e duração ao demonstrar uma emoção; vermelhidão ou branquidão da face, são características que auxiliam a detectar informações ocultas, a tentativa de esconder algo ou, simplesmente, a falsidade da emoção Posicionamento da Cabeça O posicionamento da cabeça tem grande importância, servindo como complemento da expressão facial. Dependendo do movimento da cabeça e sua frequência, o sentido da emoção pode ser modificado. Pode-se citar de exemplo o sorriso que, acompanhado do balançar da cabeça, não significa necessariamente felicidade (ZHAO, 2012). Algumas emoções demonstram também maior intensidade com o movimento da cabeça, como a tristeza, quando a cabeça é inclinada sobre o peito (SILVEIRA; MELO, 2010). Pease e Pease (2009) definem algumas posições e movimentos básicos da cabeça: Aceno com a cabeça: além de tradicionalmente representar que concorda com uma afirmação, acenos lentos da cabeça representam o interesse no que se está ouvindo, enquanto acenos rápidos representam o desejo de que a conversa termine, ou que seja passada a vez de falar; Cabeça virando de um lado para outro: demonstra negação ou discórdia com algo que está sendo falado ou perguntado; Cabeça para cima: significa que a pessoa se sente neutra em relação ao assunto da conversa ou, quando levantada bem alto com o queixo para frente, representa superioridade ou arrogância; Inclinação da cabeça: inclinar a cabeça para um lado significa submissão, dando o parecer de pescoço vulnerável;

59 3.8 Behavior Markup Language 56 Cabeça para baixo: cabeça para baixo revela atitudes negativas, como discordância, avaliação crítica, rejeição, agressividade ou tristeza; Encolher da cabeça: geralmente acompanhado do erguer dos ombros, é utilizado tanto para situações com receio e medo, como forma de proteger o pescoço a danos, quanto em contexto pessoal o profissional é utilizado para parecer menor, como pedido de desculpa ou transmitir a intenção de não ofender alguém. 3.8 Behavior Markup Language Behavior Markup Language - BML é uma linguagem baseada na extensible Markup Language - XML e criada por Kopp et al. (2006), que descreve o comportamento humano verbal e não verbal, de forma independente do método de realização da animação utilizado. Pode ser incorporada em um documento XML, com a iniciação e término de um bloco <bml> </bml>. Neste bloco, serão preenchidos os comportamentos que deverão ser realizados por um personagem (VILHJALMSSON et al., 2007). Cada comportamento possui parâmetros (gerais ou específicos de um comportamento) que terão valores atribuídos. A maior parte dos parâmetros são opcionais, e devem possuir valores padrões que serão utilizados, quando houver ausência no preenchimento destes. Um exemplo simples de um bloco com comportamentos pode ser visto na Figura 3.23, onde os comportamentos head e face recebem valores para os parâmetros id, type e amount (KOPP et al., 2006). Figura 3.23: Exemplo de um bloco BML Fonte: Adaptada de (KOPP et al., 2006). A sincronização de comportamentos é feita por dois tipos de parâmetros temporais. O primeiro tipo é um identificador (id) único de cada comportamento. É utilizado para que outros comportamentos possam referenciar tal comportamento, com o intuito de executarem simultaneamente. O segundo tipo é composto por pontos de sincronização, que alinha as fases da realização de um comportamento (KOPP et al., 2006). Por exemplo,

60 3.8 Behavior Markup Language 57 um aperto de mão possui as fases de estender o braço, apertar a mão, levantar e abaixar o braço, soltar a mão, e retornar a mão para uma posição. Cada comportamento específico é dividido em sete pontos de sincronização: Start, Ready, Stroke-start, Stroke, Stroke-end, Relax (traduzidos para Início, Prontidão, Início do Golpe, Golpe, Fim do Golpe, Relaxamento e Fim), representados na Figura Um comportamento não necessita ter todas os pontos definidos, como o caso do comportamento olhar, que necessita somente dos pontos Ready e Relax. Comportamentos podem ser sincronizados, alinhando algum ponto de sincronização de um comportamento com o ponto de outro (VILHJALMSSON et al., 2007).. Figura 3.24: Pontos de sincronização Fonte: Adaptada de (KOPP et al., 2006). Um exemplo de bloco BML com sincronização de comportamentos, retirado de Kopp et al. (2006), pode ser visto na Figura Neste exemplo, dado um gesto (gesture) com identificador g1, a cabeça (head) do personagem irá iniciar a execução do seu ponto de sincronização Stroke, assim que o gesto realizar esta mesma função (pelo comando stroke= g1:stroke ). O olhar direcionado (gaze) terá início juntamente com o ponto de sincronização Ready do gesto (pelo comando start= g1:ready ), e término com o ponto de sincronização Relax do gesto (pelo comando end= g1:relax ). Figura 3.25: Sincronização de gesto, movimento da cabeça e olhar direcionado Fonte: Adaptada de (KOPP et al., 2006).

61 3.8 Behavior Markup Language 58 Dentro dos blocos BML, ações são coordenadas para os seguintes elementos: fala, gesto, olhar direcionado, cabeça, corpo, torso, face, pernas e lábios (VILHJALMSSON et al., 2007). o olhar direcionado e os movimentos da cabeça foram separados para permitir ao personagem que seus olhos apontem para uma direção diferente da cabeça, caso assim for preciso. Assim como o torso foi separado do corpo, para que movimentos mais específicos da espinha e ombros possam ser independentes da postura corporal. Cada elemento contém atributos de aparência visual e dinâmica de movimento de um comportamento. Na tabela 3.4, podem ser observadas as descrições dos elementos faciais, que tem relação com este trabalho. Tabela 3.4: Elementos de Comportamento BML Elemento BML Cabeça <head> Face <face> Olhar direcionado <gaze> Discurso - <speech> Lábios <lips> Descrição Movimentos da cabeça, independentes dos olhos. Tipos: acenando, sacudindo, orientada a um ângulo determinado. Movimentos dos músculos faciais para formação de expressões. - Tipos: sobrancelha, pálpebras, movimentos expressivos da boca. Movimento coordenado dos olhos, nariz e direção da cabeça, indicando onde o personagem está olhando. Comportamento verbal, recebendo palavras que devem ser pronunciadas. Controle do formato dos lábios, incluindo a visualização de fonemas. Fonte: Adaptada de (KOPP et al., 2006)

62 59 4 Modelo Proposto O modelo proposto, conforme os requisitos do projeto D.R.A.M.A., se baseia em quatro módulos principais, representados na Figura 4.1. O primeiro módulo (de entrada) utiliza um arquivo em formato XML, com atributos e valores genéricos, que serão recebidos pelo sistema, com a descrição em alto nível do que deve ser feito pela animação facial. Posteriormente, no módulo de tradução, são aplicadas regras, que utilizam bases de dados de visemas e emoções, para adaptar o arquivo de entrada, ao tipo de arquivo utilizado pelo módulo de saída. O módulo de saída é composto por um arquivo em formato BML, com comandos de mais baixo nível de abstração, que serão recebidos pelo módulo de animação. O módulo de animação é composto por um plugin para um software de animação (como o Autodesk Maya TM ou Blender), responsável por ler o arquivo BML e interpretálo, gerando então, a animação facial. A animação facial será realizada em um modelo de face, o qual utiliza a estrutura de esqueleto para realização de movimentos e expressões faciais. A definição de tempo de início e fim das ações é sempre dada em milissegundos. Figura 4.1: Módulos do modelo proposto Fonte: do autor 4.1 Módulo de Entrada O módulo de entrada descreve a linguagem utilizada pelo sistema para receber comandos de outros módulos do projeto D.R.A.M.A.. É utilizado um arquivo XML, com comandos de alto nível de abstração, com o intuito de simplificar a entrada, tirando a

63 4.1 Módulo de Entrada 60 necessidade de detalhes específicos da animação facial. O módulo é iniciado por um bloco de cena, dividido em blocos de ADAs, os quais possuem blocos de ações, com tempo de início e fim. Dentro de cada ação são definidos os comportamentos e seus respectivos atributos. A taxonomia do módulo de entrada pode ser vista na Figura 4.2. Figura 4.2: Taxonomia do módulo de entrada Fonte: do autor Comportamento: demonstrar emoção O comportamento demonstrar emoção tem o objetivo de demonstrar uma emoção específica, ou uma mistura de emoções. A partir das emoções básicas, com combinações, pode-se chegar a demonstrações de várias outras emoções mais específicas. Por isso, dentro do comportamento emoção, os atributos tipo, intensidade podem se repetir, quando deseja-se mesclar emoções.

64 4.1 Módulo de Entrada 61 Tabela 4.1: Comportamento: demonstrar emoção Atributos Tipo Intensidade Início / Fim Descrição Define a emoção que deseja-se representar, podendo ser qualquer uma das emoções básicas (tristeza, raiva, medo, surpresa, aversão, desprezo e felicidade). É um número, de 0.0 a 1.0, variando apenas na primeira casa decimal, representando a intensidade da expressão desta emoção. Define o momento de início e fim da expressão desta emoção, dentro do período da ação. Pode ser tanto um tempo específico dentro da ação, ou igualar ao início ou fim da ação. Quando não definidos, são atribuídos automaticamente o início e fim da ação. Caso o fim da emoção seja antes do término da ação, retorna-se para o estado neutro de emoção. Fonte: do autor Comportamento: olhar O comportamento olhar é responsável por direcionar a visão do personagem para um objeto ou coordenada. Caso não esteja no seu campo de visão, há a necessidade de acrescentar a movimentação da cabeça para que o objeto em questão possa ser visualizado. Tabela 4.2: Comportamento: olhar Atributos Alvo Velocidade Início / Fim Descrição Posição a qual destina-se o olhar, podendo ser tanto uma coordenada espacial, quanto um objeto. Indica a velocidade com que o personagem irá movimentar seus olhos até o alvo. Os valores atribuídos podem ser baixa, média ou alta velocidade. Define o momento de início e fim do olhar, dentro do período da ação. Pode ser tanto um tempo específico dentro da ação, quanto o início e fim da ação. Quando não definidos, são atribuídos automaticamente o início e fim da ação. Caso o fim do olhar seja antes do término da ação, retorna-se para a posição anterior do olhar. Fonte: do autor

65 4.1 Módulo de Entrada 62 Comportamento: falar O comportamento falar é responsável por reproduzir visivelmente os formatos da boca ao falar o texto desejado. A reprodução é feita por visemas, que serão traduzidos a partir das palavras. A tradução automática de palavras em visemas é uma tarefa complexa, que será realizada em um trabalho futuro. Tabela 4.3: Comportamento: falar Atributos Frase Velocidade Início Descrição Define a frase que o personagem deverá reproduzir visualmente Indica a velocidade com que o personagem irá realizar a fala. Os valores atribuídos podem ser baixa, média ou alta velocidade. Indica o momento de início da fala, dentro do período da ação. Pode ser tanto um tempo específico dentro da ação, quanto o início desta. Quando não definido, é atribuído automaticamente o início da ação. Fonte: do autor Comportamento: piscar O comportamento piscar tem objetivo de escolher momentos específicos para piscar os olhos do personagem. O piscar natural dos olhos é gerado automaticamente, após definidos estes momentos específicos de piscar. Leva-se em consideração as emoções da ação para definir os momentos de piscadas naturais. Tabela 4.4: Comportamento: piscar Atributos Velocidade Início Descrição Indica a velocidade com que o personagem irá realizar o piscar de olhos. Os valores atribuídos podem ser baixa, média ou alta velocidade. Define o momento do piscar de olhos, dentro do período da ação. Fonte: do autor

66 4.2 Módulo de Tradução 63 Comportamento: mover a cabeça O comportamento mover a cabeça é responsável por direcionar a cabeça para pontos específicos, e realizar ações como inclinar e acenar a cabeça. Tabela 4.5: Comportamento: mover a cabeça Atributos Ação Alvo Orientação Vezes Ângulo Velocidade Descrição Indica o tipo de movimento que a cabeça está realizando. As ações possíveis são: acenar, inclinar e olhar (direcionar a cabeça à um ponto). É a posição a qual deseja-se direcionar a cabeça, quando a ação é olhar. A posição pode ser tanto uma coordenada especial, quanto um objeto. Define a orientação da ação realizada, para as ações acenar e inclinar. Quando a ação é acenar, pode assumir valor positivo, quando o aceno é na vertical e negativo, quando o aceno é na horizontal. Quando a ação é inclinar, o tipo indica para qual lado é a inclinação, podendo ser para cima, baixo, esquerda e direita. O angulo de inclinação é em relação à cabeça na posição padrão, sem nenhum tipo de rotação, e não em relação à rotação atual desta. Ao final da ação, a cabeça volta à inclinação original. Quando a ação é acenar, define a quantidade de vezes que a cabeça irá acenar. Atributo que deve ser utilizado somente quando a ação for inclinar. Indica o grau de inclinação da cabeça. Indica a velocidade que a ação escolhida será executada. Os valores atribuídos podem ser baixa, média ou alta velocidade. Fonte: do autor 4.2 Módulo de Tradução O módulo de tradução é composto por procedimentos. Procedimentos são funções, utilizadas para traduzir a entrada de alto nível, do módulo de entrada em comandos de animação de baixo nível do módulo de saída, em função dos comportamentos e atributos sugeridos por este trabalho. Para isso, além das regras, são utilizadas as bases de dados de visemas e emoções. Para cada ação e comportamento, um rótulo (id) é definido, para que seja possível referenciar atributos de uma ação ou comportamento específico.

67 4.2 Módulo de Tradução 64 A base de dados de visemas possui os visemas e suas respectivas características de representação na boca. A base de dados de emoções possui, inicialmente, as emoções básicas, suas características e frequência de piscadas por minuto. Nesta base podem ser adicionadas, em trabalhos futuras, outras emoções mais específicas com suas respectivas características. Procedimento: traduzir emoção Este procedimento é responsável por traduzir os atributos do comportamento demonstrar emoção em atributos do comportamento emotion no módulo de saída. Para isso, é utilizada a base de dados de emoções, que contém as características específicas de cada emoção. Desta forma, além de traduzir o atributo intensidade para o atributo intensity do módulo de saída, a emoção é decomposta em movimentos de componentes da face, utilizados para demonstrar emoções. Os componentes da face foram definidos baseando-se nos principais músculos da face. Os músculos são utilizados para movimentar diferentes partes do rosto, a fim de formar uma expressão facial. A partir do estudo realizado de emoções básicas, foi possível definir as características destas emoções e os componentes do rosto utilizados para demonstrar estas emoções. Desta maneira, os movimentos destes componentes são resultado da atuação de músculos que coordenam as expressões faciais. Os componentes utilizados são: pálpebra superior (UpEyelids); pálpebra inferior (downeyelids); sobrancelha interna (inbrow); sobrancelha externa (outbrow); nariz (nose); narinas (nosewings); mandíbula (jaw); lábio superior (uplip); lábio inferior (downlip); lábio canto esquerdo (leftlip); lábio canto direito (rightlip); queixo (chin); bochecha direita (rightcheek); e bochecha esquerda (leftcheek). Estes componentes podem assumir os valores cima (up); baixo (down); direita (right); e esquerda (left). A mandíbula ainda pode assumir os valores de frente (front) e trás (back). Pode-se citar o exemplo da emoção raiva. Considera-se a intensidade do movimento igual à intensidade da emoção. Os componentes traduzidos seriam: lábios inferiores para baixo, lábios superiores para cima, mandíbula para frente, sobrancelhas internas para baixo e para esquerda (o movimento para esquerda junta as sobrancelhas, enquanto para direita as separa), pálpebras superiores para cima, pálpebras inferiores para cima. Caso haja mais de uma emoção, a mistura de emoções é realizada pela própria ferramenta de

68 4.2 Módulo de Tradução 65 animação. Procedimento: traduzir cabeca Este procedimento traduz os atributos do comportamento mover a cabeça em atributos do comportamento head no módulo de saída. O atributo ação é traduzido para action e pode assumir os valores acenar, inclinar e olhar, traduzidas respectivamente para shake, tilt, look. O atributo velocidade, que indica a velocidade de execução da ação escolhida, é traduzido para speed, podendo assumir os valores low, medium, high. Quando o valor do atributo ação é olhar, pode-se definir o atributo alvo, traduzido para at, utilizado para apontar o direcionamento da cabeça. Este atributo pode ser sobrescrito, conforme descrito no procedimento traduzir olhar, caso deseje-se olhar um objeto que não esteja no campo de visão. Quando o valor do atributo ação é acenar ou inclinar, deve-se definir também o atributo tipo, traduzido para type, que assume os valores positive / negative quando acenar e o lado de inclinação ( up, down, left, right ), quando inclinar. Também é traduzido o atributo ângulo para angle, quando inclinar. Procedimento: traduzir olhar Este procedimento traduz os atributos do comportamento olhar em atributos do comportamento gaze no módulo de saída. O atributo alvo é traduzido para at, mantendo o nome do objeto, ou a coordenada. O atributo velocidade e seus valores são traduzidos para speed e seus respectivos valores. Também traduz os atributos início e fim, acrescentando o rótulo da ação ou do comportamento, caso o tempo não seja fornecido em milissegundos. O procedimento traduzir olhar deve ser executada somente após a finalização do procedimento traduzir cabeça. Desta forma, é possível verificar se o direcionamento da cabeça permite que o objeto (ou coordenada) que deseja-se olhar, esteja dentro do campo de visão dos olhos. Caso não esteja, o direcionamento da cabeça será sobrescrito (caso tenha sido definido) por uma posição que permita o objeto de ser observado.

69 4.2 Módulo de Tradução 66 Procedimento: traduzir falar Este procedimento tem o objetivo de traduzir os atributos do comportamento falar em atributos do comportamento speak no módulo de saída. A entrada é uma frase, a velocidade de reprodução e o início. Os atributos velocidade e início, do módulo de entrada, são respectivamente traduzidos para os atributos velocity e start do módulo de saída. Considerando que a tradução de palavras em visemas, assim como a definição da duração de um visema e das pausas é uma tarefa complexa, esta tradução será realizada em um trabalho futuro. Portanto, este procedimento tem por objetivo traduzir os visemas já definidos em posições da boca. Para isso, a abordagem utilizada será similar ao sistema de representação visual de Osipa (2010), representado na tabela 3.2 (página 34). Cada visema tem uma respectiva representação visual. Esta representação visual, neste trabalho, é descrita por um gráfico bidimensional, que considera o movimento de abertura e fechamento da boca no eixo vertical, e o estreitamento ou alargamento no eixo horizontal. Conforme gráfico representado na Figura 4.3, com escala de 1 a 5, com os pontos neste gráfico é possível representar os movimentos que criam impressão visual da fala. Figura 4.3: Gráfico de movimentação da boca Fonte: do autor A abordagem utilizada facilita a criação de variabilidade na fala dos persona-

70 4.3 Módulo de Saída 67 gens. É possível escolher um valor aleatório, dentro de uma faixa de valores, em torno do ponto que define o visema, ilustrado na Figura 4.3. Desta forma, sempre que um visema se repetir, o personagem irá reproduzi-lo levemente diferente das vezes anteriores. Os valores demonstrados na imagem 4.3, são dos visemas OO e IH, utilizados, por exemplo, para reproduzir a palavra oi. Portanto, além dos atributos start e velocity, são gerados duplas de atributos viseme e duration, onde o viseme é uma posição (x,y) referente ao gráfico de movimentação da boca. Procedimento: traduzir piscar Este procedimento traduz os atributos do comportamento piscar em atributos do comportamento blink no módulo de saída. O atributo velocidade é traduzido para o atributo speed e o atributo início, é traduzido para o atributo start. Inicialmente, o procedimento considera os momentos em que foram explicitamente definidos os piscares de olhos, pelo comportamento piscar. Posteriormente, o procedimento calcula os demais momentos em que o personagem deverá piscar os olhos, utilizando algumas regras. Primeiro, leva-se em consideração a emoção que está sendo demonstrada na cena. Caso seja uma mistura de emoções, considera-se a de maior intensidade. Na base de dados da emoção consta, em cada emoção, a quantidade de piscadas por minuto. É buscado então, na base de emoções, qual é a taxa de piscadas por minuto desta emoção, para definir aleatoriamente os tempos de piscar na ação. 4.3 Módulo de Saída O módulo de saída é composto de um arquivo BML que, assim como no módulo de entrada, é iniciado por um bloco cena (scene), dividido em blocos de ADAS, que possuem blocos ações (actions), com tempo de início e fim, assim como um rótulo (id) que possibilita referenciar a ação. O arquivo BML é gerado pelos procedimentos do módulo de tradução, assim como descrito anteriormente. Considerando que os componentes do arquivo de saída já foram explicados no módulo de tradução, para melhor entendimento do módulo de saída, um exemplo de tradução é ilustrado e explicado, a partir de uma tira

71 4.3 Módulo de Saída 68 da Turma da Mônica, apresentada na Figura 4.4. Figura 4.4: Tira da Turma da Mônica para exemplificar o módulo de saída Fonte: Souza (2013) Exemplo de código de entrada Neste exemplo, a cena possui duas ações (quadrinhos). a primeira cena, define que o personagem (Mônica) está com a cabeça inclinada para baixo, demonstrando surpresa, olhando para o baixo e falando a frase Ai um rato!. Na segunda ação, o personagem olha para o rato, demonstrando aversão. Este comportamento citado é descrito no arquivo de entrada a seguir.

72 4.3 Módulo de Saída 69 1 <cena> 2 <ada nome= monica > 3 <acao nome= acao1 inicio= 0 fim= 423 > 4 <cabea 5 acao= inclinar tipo= baixo angulo= 20 6 velocidade= alta inicio= acao1 > 7 </cabeca> 8 <emocao tipo= surpresa intensidade= 1.0 ></emocao> 9 <olhar 10 alvo= (1,5,6) velocidade= alta inicio= acao1 fim= acao1 > 11 </olhar> 12 <falar frase= Ai um rato inicio= acao1 velocidade= normal ></falar> 13 </acao> 14 <acao nome= acao2 inicio= 424 fim= 976 > 15 <cabea 16 acao= olhar alvo= rato velocidade= alta inicio= acao2 > 17 </cabeca> 18 <emocao tipo= averso intensidade= 0.8 ></emocao> 19 <olhar 20 alvo= rato velocidade= alta inicio= acao2 fim= acao2 > 21 </olhar> 22 </acao> 23 </ada> 24 </cena> Algoritmo 4.1: Exemplo de arquivo XML de entrada Exemplo de código de saída O código a seguir, formatado conforme o módulo de saída, foi traduzido a partir do código de entrada. Pode-se perceber que, além dos atributos que foram traduzidos diretamente, no bloco de emoção (emotion), a demonstração foi decomposta em componentes da face e, no bloco de fala (speak), a frase falada foi decomposta em visemas. Desta forma, um código BML com comandos de animação é gerado dentro do módulo de saída.

73 4.4 Módulo de Animação 70 1 <scene> 2 <ada id= monica > 3 <action id= a1 start= 0 end= 423 > 4 <head id= h1 5 acao= tilt type= down angle= 20 speed= high start= a1.start > 6 </head> 7 <emotion id= e1 intensity= inbrow= up outbrow= up 9 upeyelids= up downeyelids= down 10 chin= up 11 jaw= down > 12 </emotion> 13 <gaze id= g1 14 at= (1,5,6) speed= high start= a1.start end= a1.end > 15 </gaze> 16 <speak id= s1 start= a1.start 17 viseme= (2,4) duration= viseme= (3,1) duration= viseme= (-2,-2) duration= viseme= (2,3,) duration= viseme= (-2,-1) duration= 10 > 22 </speak> 23 </action> 24 <action id= a2 start= 424 end= 976 > 25 <head id= h2 26 action= look at= rato speed= high start= a2.start > 27 </head> 28 <emotion id= e2 intensity= inbrow= down 30 nose= up nosewings= right 31 cheeks= up 32 uplip= up > 33 </emotion> 34 <gaze id= g2 35 at= rato speed= high start= a2.start fim= a2.end > 36 </gaze> 37 </action> 38 </ada> 39 </scene> Algoritmo 4.2: Exemplo de arquivo BML de saída 4.4 Módulo de Animação O módulo de animação é o módulo responsável por receber um arquivo do módulo de saída, com comandos de animação, e interpretar estes comandos. A partir desta interpretação, é possível então, gerar uma animação. Para geração da animação, neste trabalho foi definida a execução deste módulo em um programa de animação. A arquitetura do módulo de animação permite que haja a liberdade de escolher uma ferramenta que melhor se adeque ao projeto. Desta forma, a partir de um arquivo de saída, é possível

74 4.4 Módulo de Animação 71 utilizar ferramentas diferentes para a interpretação dos comandos e criação da animação. A ferramenta escolhida para este trabalho é o software de animação 3D Autodesk Maya TM. Sua licença é paga, porém possui versão gratuita para acadêmicos. Oferece um conjunto completo de recursos para animação computadorizada 3D, modelagem, simulação, renderização e composição, sobre uma plataforma de produção com alta capacidade de expansão (MAYA, 2013). Esta ferramenta foi escolhida por permitir a utilização de animação procedural, onde é possível controlar o modelo do personagem por código de programação.

75 72 5 Desenvolvimento Neste capítulo é apresentado o desenvolvimento do modelo proposto no Capítulo 4. Primeiramente, são descritos o modelo de personagem, a ferramenta, e a linguagem utilizada. Posteriormente, apresenta-se a implementação do sistema. 5.1 Ferramentas utilizadas A ferramenta escolhida para este trabalho é o software de animação 3D Autodesk Maya TM A licença utilizada é a versão para acadêmicos que, apesar de gratuita, é completa (AUTODESK, 2013). Esta ferramenta aceita scripts na linguagem python e mel (Maya Embedded Language). Linguagem A linguagem utilizada na implementação do modelo foi python, juntamente com as bibliotecas random, para geração de valores aleatórios na criação de variabilidade das animações e ElementTree para manipulação de XML, ambas bibliotecas nativas. Esta linguagem foi escolhida pela possibilidade de reaproveitamento do código para utilização em outras ferramentas, como o Blender, que também utiliza scripts em python. Apesar de grande parte dos comandos de animação da linguagem mel possuírem um comando respectivo em python, houve a necessidade de utilizar alguns comandos mel dentro do script python. Para isto, é necessária a utilização do seguinte código fonte: 1 # Importa Biblioteca 2 import maya.mel as mel 3 selection = cmds.ls( sl=true ) 4 5 # Executar comando mel 6 mel.eval( clipschedule -name + nome_clipe) Algoritmo 5.1: Utilização da linguagem mel no código python

76 5.1 Ferramentas utilizadas 73 Modelo de Personagem O modelo de personagem escolhido foi o Blake, criado por Baskin (2013), disponível no site creativecrash.com, representado na figura 5.1. Sua licença é gratuita para uso não comercial. Este modelo já possui controladores da face e do corpo, sendo também possível mudar algumas características da aparência, como cor dos olhos, cabelo e roupa. Figura 5.1: Modelo de Personagem Blake Fonte: (BASKIN, 2013) Cada controlador pode variar em valores de 0 a 1 nos eixos X e Y, onde cada eixo controla diferentes ações da face. Os controladores da face, representados na figura 5.2 e utilizados para implementação do sistema foram: Mouth emotion: controla cantos da boca, fazendo o formato de U para cima ou para baixo, podendo definir maior intensidade no lado esquerdo ou direito da face; Sync: controla a boca aberta/fechada e larga/estreita; Upper lip: controla movimentos diagonais e horizontais do lábio superior; Lower lip: controla movimentos diagonais e horizontais do lábio inferior; Brow emotion: controla a altura e o proximidade da parte interior das sobrancelhas, podendo definir maior intensidade no lado esquerdo ou direito da face; Eyebrows: controla altura da parte exterior das sobrancelhas, podendo definir maior intensidade no lado esquerdo ou direito da face; Upper lids: controla movimentos das pálpebras superiores;

77 5.1 Ferramentas utilizadas 74 Lower lids: controla movimentos das pálpebras inferiores; Sneer: controla contração/relaxamento do nariz, podendo definir maior intensidade no lado esquerdo ou direito da face. Figura 5.2: Controladores da face Fonte: do autor Para adaptar o modelo de personagem às necessidades do projeto, houve a necessidade de acrescentar controladores customizados em forma de constraints (restrições), representados na figura 5.3. Uma constraint pode assumir diferentes tipos de controle, como apontar, mirar, orientar e escala (respectivamente point, aim, orient e scale). Em uma hierarquia, a constraint se torna pai do objeto que ela irá controlar. Portanto, na criação de uma constraint que controla o alvo de um olho, seleciona-se primeiramente o filho (olho) e posteriormente o objeto que será utilizado para controle (podendo ser um círculo ou quadrado, por exemplo). Por fim, no menu constraint, dentro do módulo de animação, é possível escolher o tipo de constraint desejada (aim, para este exemplo). Para criar somente a paternidade entre dois objetos, utiliza-se o menu edit, no módulo de animação. Primeiramente é selecionado o filho e posteriormente o pai, aplicando a opção parent do menu. Os controladores criados foram:

78 5.2 Refinamento do modelo 75 Left Eye Control: constraint do tipo aim, controla o alvo para qual o olho esquerdo aponta; Right Eye Control: constraint do tipo aim, controla o alvo para qual o olho direito aponta; Eye Target: pai dos controladres Left Eye e Right Eye, controlando ambos olhos ao mesmo tempo; Head Target: pai do controlador Eye Target, e constraint do tipo aim para toda a cabeça do personagem; Near Head: filho da cabeça do personagem, fica à frente da face como referência para onde face está virada. É utilizado para realizar o movimento de inclinação da cabeça. Figura 5.3: Controladores customizados da face Fonte: do autor 5.2 Refinamento do modelo Durante a implementação do sistema, houve a necessidade de mudanças no modelo proposto, a fim de aperfeiçoar o fluxo entre os módulos, ou contornar algumas limitações da ferramenta utilizada.

79 5.2 Refinamento do modelo 76 A primeira decisão foi utilizar a técnica pose-to-pose para criação das emoções, ao invés de fazer proceduralmente. A técnica pose-to-pose é utilizada quando poses são criadas em forma de quadros-chave da animação. O sistema foi inicialmente modelado para que no banco de emoções constasse a emoção e suas características em forma de valores posteriormente aplicados em controladores. Considerando que, para gerar esses valores, é necessário criar uma pose, foi preferível criar cada pose na ferramenta de animação e já nomeá-la como uma emoção. Este procedimento dispensa o processo de criar uma pose, salvar seus atributos, e depois carregá-los e criar novamente a mesma pose. Portanto, o banco de emoções e de visemas são bancos de poses no Autodesk Maya TM No modelo, isso implica em uma alteração no módulo de tradução. Ao invés do arquivo bml possuir valores para cada componente da face, este possuirá somente o nome da pose desejada. Os valores serão aplicados nos componentes na própria ferramenta de animação, utilizando o banco de poses. Para criar uma pose utiliza-se o menu animate, do módulo de animação da ferramenta. Após selecionar os componentes desejados, cria-se a pose com a opção create pose. As poses estão listadas na ferramenta de animação, acessando o menu window, do módulo de animação, escolhendo a categoria general editors e a opção visor. Ao abrir a janela do visor, na aba Character Poses, estarão listadas as poses e visemas criados, com seus respectivos nomes. Considerando a brevidade nas mudanças de emoção, foi decidido não mais utilizar uma frequência específica de piscar de olhos para cada emoção, pois essa frequência seria alterada constantemente, inclusive antes de um próximo piscar de olho. Foi preferível utilizar valores aleatórios, dentro de uma faixa de tempo, para geração de momentos de piscadas naturais do olho. A verificação se o alvo está ou não no campo de visão do personagem, foi transferida para o módulo de animação, pois somente na ferramenta que é possível fazer essa verificação. O tempo pode ser fornecido tanto por frames, quanto por segundos. Para utilizar frames, adicionar somente o número no arquivo de entrada. para utilizar segundos, deve ser adicionado o termo sec após o número de segundos.

80 5.3 Desenvolvimento 77 Cada comportamento do arquivo de entrada pode ser traduzido para mais de um comportamento mais específico no arquivo de saída, pois podem ser referir a chamadas diferente no módulo de animação. Por exemplo, o comportamento emoção. Quando é escolhida somente uma emoção, é uma função que executa esse comando no módulo de animação. Quando é mais do que uma emoção, outra função é utilizada. Essa verificação da quantidade de emoções é feita no módulo de tradução, que irá tratar qual chamada de função fazer, utilizando diferentes tags no arquivo de saída. O mesmo se aplica aos movimentos da cabeça onde, para cada tipo de ação (acenar, inclinar ou olhar) há uma tag diferente no arquivo de saída. Inicialmente, para testar o funcionamento do sistema, foi criado um novo bloco de fala para ser utilizado no arquivo de entrada e saída. Este bloco contém visemas e o tempo de execuções do sistema, que são interpretados e executados no módulo de animação. O bloco original da fala permanece conforme modelado. Conforme citado no capítulo 4, a tarefa de traduzir uma frase em visemas e definir o tempo de reprodução e duração será tratada em um trabalho futuro. 5.3 Desenvolvimento A implementação deste trabalho de conclusão de curso foi dividida em etapas, utilizando-se da abordagem bottom-up (iniciando no módulo de animação, finalizando com o módulo de entrada). Esta abordagem foi utilizada, pois o foco do sistema é a animação, possibilitando assim refinamento nos modelos de maior alto-nível de abstração, para se adequarem as necessidades do módulo de animação. A primeira etapa foi o desenvolvimento do banco de emoções. As etapas subsequentes foram desenvolver os módulos de animação, saída, tradução e entrada, respectivamente. Ao término do desenvolvimento de cada módulo, os modelos eram revistos para realização de refinamentos, caso necessário. A própria ferramenta é responsável por interpretar o código python, por meio do Script Editor, acessado pelo menu window, do módulo de animação, escolhendo ao categoria general editors e a opção Script Editor, representado na figura 5.4.

81 5.3 Desenvolvimento 78 Figura 5.4: Script Editor Fonte: do autor Nas próximas seções, são detalhadas as implementações de cada módulo e da criação do banco de emoções Banco de Emoções Para o desenvolvimento do banco de emoções, foram utilizadas as emoções detalhadas na seção Emoções básicas, definias por Ekman (2007): tristeza, raiva, surpresa, medo, nojo, desprezo e felicidade. Inicialmente, somente as emoções descritas neste trabalho (neutra, tristeza, raiva, medo, surpresa, aversão, desprezo e felicidade) foram criadas. Demais emoções podem ser atingidas pela criação destas como poses no banco de emoções, ou pela combinação de uma ou mais emoções e suas respectivas intensidades. Cada emoção foi criada em modo de pose na ferramenta. Uma pose é um conjunto de valores atribuídos a controladores e salvos com um respectivo nome para esta pose. Após possuir os valores definidos, cria-se a pose, selecionando os controladores necessários e utilizando o menu animate, do módulo de animação, clicando ao quadrado ao lado da opção create pose. Define-se um nome à pose desejada, e então a pose é criada com o botão create pose. Os valores utilizados para criação das emoções estão listados na

82 5.3 Desenvolvimento 79 tabela 5.1. Tabela 5.1: Valores extremos dos controladores por emoção Controlador Triste Raiva Medo Surpresa Aversão Desprezo Felicidade Mouth Emotion X Mouth Emotion Y , Sync X 0 0,5-0, Sync Y -0,5 0,6-0, ,5 Sneer X Sneer Y 1 1 0, ,5 Lower Lids X Lower Lids Y 0,3 0, ,5 0,4 Upper Lids X Upper Lids Y 0,7 0, ,5 0,4 Eye Brows X Eye Brows Y -1 0, ,3 0,2-0,5 Brow Emotion X Brow Emotion Y ,5 Upper Lip X Upper Lip Y -0,9 1 0, ,5 0 Lower Lip X Lower Lip Y -0, ,5 0,3 0,6-1 Fonte: do autor As poses estão listadas na ferramenta de animação, acessando o menu window, do módulo de animação, escolhendo ao categoria general editors e a opção visor, representado na figura 5.5. Ao abrir a janela do visor, na aba Character Poses, estarão listadas as poses e visemas criados, com seus respectivos nomes. As poses podem ser aplicadas clicando em cima do seu respectivo nome com o botão direito do mouse e indo até a opção apply pose.

83 5.3 Desenvolvimento 80 Figura 5.5: Emoções desenvolvidas Fonte: do autor Módulo de Entrada Este módulo é composto por um arquivo XML de entrada, que deverá ser nomeado como: animation.xml, e possuir seu caminho definido no código fonte, na variável global file_path. Este arquivo deve seguir o padrão modelado no capítulo 4.1. Exemplo de arquivo de entrada: 1 <scene start="1" end="880"> 2 <ator nome="brad"> 3 <acao nome="acao1" inicio="1" fim="120"> 4 <emocao inicio="acao1" fim="2"> 5 <intensidade>1</intensidade> 6 <nome>medo</nome> 7 </emocao> 8 <emocao inicio="101" fim="acao2"> 9 <intensidade>0.1</intensidade> 10 <nome>felicidade</nome> 11 <intensidade>0.3</intensidade> 12 <nome>surpreso</nome> 13 </emocao> 14 <cabeca movimento="olhar" inicio="1" fim="30"> 15 <alvo>0,25,15</alvo> 16 <velocidade>media</velocidade> 17 </cabeca> 18 <cabeca movimento="olhar" inicio="25" fim="60"> 19 <alvo>metalfly_v1_0:metalfly_global</alvo> 20 </cabeca> 21 <cabeca movimento="acenar" inicio="50"> 22 <vezes>4</vezes> 23 <orientacao>positivo</orientacao> 24 <velocidade>media</velocidade> 25 </cabeca> 26 <cabeca movimento="inclinar" inicio="80" fim="120"> 27 <orientacao>cima</orientacao> 28 <angulo>30</angulo> 29 <velocidade>baixa</velocidade> 30 </cabeca> 31 <piscar inicio="60" velocidade="baixa" />

84 5.3 Desenvolvimento <falar> 33 <visema> 34 <tempo>220</tempo> 35 <x>0</x> 36 <y>0</y> 37 </visema> 38 <visema> 39 <tempo>225</tempo> 40 <banco>banco</banco> 41 <vis>visema_oo</vis> 42 </visema> 43 </falar> 44 </acao> 45 <acao nome="acao2" inicio="1" fim="102" /> 46 </ator> 47 </scene> Algoritmo 5.2: Exemplo de arquivo XML de entrada Módulo de Tradução Este módulo é responsável por interpretar o arquivo XML de entrada, e traduzilo para um arquivo BML de saída. Este processo é feito lendo cada elemento (comando) do arquivo de entrada, e processando-o por regras que resultarão em um novo elemento equivalente a uma função do módulo de animação. Emoções no arquivo de entrada são representadas em um elemento somente, mesmo quando há combinação de emoções. No módulo de tradução é verificada a quantidade de emoções e, caso seja somente uma, é criado um elemento emotion. Caso haja mais de uma, o elemento criado é emotion_blend. Em ambos casos, os demais atributos são acrescentados ao elemento. Os movimentos da cabeça no arquivo de entrada são também representados em um elemento somente. o que difere um elemento de outro é o atributo movimento, que indica se a ação é acenar, olhar ou inclinar. Para cada tipo de movimento, um novo elemento é criado no arquivo de saída, com seus respectivos atributos acrescentados ao elemento. Os piscares de olhos automáticos também são definidos no módulo de Tradução. Após criar elementos para os piscares definidos explicitamente, a cena é percorrida criando piscares em pontos aleatórios gerados dentro de um intervalo de 2 a 10 segundos.

85 5.3 Desenvolvimento Módulo de Saída Este módulo é composto por um arquivo BML de saída, gerado pelo módulo de tradução. O arquivo é gerado no mesmo caminho do arquivo de entrada, com o nome output.bml. Este arquivo segue o padrão modelado no capítulo 4.3. Este arquivo não possui indentação, tendo somente uma linha, por uma limitação da biblioteca ElementTree. Porém, é possível utilizar ferramentas externas que formatam XML, para formatar este arquivo, caso seja preciso para sua visualização e entendimento. Exemplo de arquivo de saída, gerado após processamento do arquivo de entrada exibido no capítulo 5.3.2: 1 <scene end="880" start="1"> 2 <ada id="brad"> 3 <action end="120" id="acao1" start="1"> 4 <emotion end="2" start="1"> 5 <intensity>1</intensity> 6 <name>medo</name> 7 </emotion> 8 <emotion_blend end="102" start="101"> 9 <intensity>0.1</intensity> 10 <name>felicidade</name> 11 <intensity>0.3</intensity> 12 <name>surpreso</name> 13 </emotion_blend> 14 <head_coordinate end="30" start="1"> 15 <coordinate>0,25,15</coordinate> 16 <speed>media</speed> 17 </head_coordinate> 18 <head_object end="60" start="25"> 19 <target>metalfly_v1_0:metalfly_global</target> 20 </head_object> 21 <head_shake start="50"> 22 <repete>4</repete> 23 <orientation>positivo</orientation> 24 <speed>media</speed> 25 </head_shake> 26 <head_tilt end="120" start="80"> 27 <angle>30</angle> 28 <orientation>cima</orientation> 29 <speed>baixa</speed> 30 </head_tilt> 31 <speak> 32 <viseme> 33 <time>220</time> 34 <x>0</x> 35 <y>0</y> 36 </viseme> 37 <viseme> 38 <time>225</time> 39 <database>banco</database> 40 <vis>visema_oo</vis>

86 5.3 Desenvolvimento </viseme> 42 </speak> 43 </action> 44 <blink speed="baixa" start="60" /> 45 <action end="102" id="acao2" start="1" /> 46 <blink speed="alta" start="224" /> 47 <blink speed="alta" start="296" /> 48 <blink speed="alta" start="449" /> 49 <blink speed="alta" start="620" /> 50 <blink speed="alta" start="800" /> 51 </ada> 52 </scene> Algoritmo 5.3: Exemplo de arquivo BML de saída Módulo de Animação O módulo de animação inicia com a abertura do arquivo bml. A interpretação deste arquivo é realizada pela da biblioteca ElementTree, por possuir estrutura idêntica a um xml. O módulo é composto por funções, responsáveis por ler os comandos e valores do arquivo e traduzir em ações de animação. Após o término de cada função, é impresso em um log, que fica registrado no script editor da ferramenta, que a função foi executada, com seus respectivos parâmetros. Função emotion Função responsável por reproduzir emoções, quando somente uma emoção é desejada. Recebe como parâmetros: início, fim, intensidade, emoção e personagem. As emoções sempre começam 5 frames após o início e terminam 5 frames após o fim, possuindo esse intervalo a mais, para realizar a transição entre emoções. O primeiro passo é aplicar a emoção desejada no tempo inicial. São então percorridos todos os controladores, declarados em uma lista, que manipulam as emoções, aplicando a intensidade desejada para esta emoção. A intensidade da emoção varia em uma casa decimal, de 0.0 a 1.0. A intensidade máxima (1.0) é a própria pose, conforme definida no banco de poses, enquanto a intensidade mínima (0.0) é a pose neutra, conforme representado na figura 5.6. As demais intensidades são calculadas utilizando o valor passado como parâmetro.

87 5.3 Desenvolvimento 84 Figura 5.6: Intensidades da emoção Felicidade Fonte: do autor Depois de calculada a intensidade da emoção, o quadro-chave é gravado. Para que a emoção possa ser interpolada com outras emoções, é necessária a criação de um clipe. Desta maneira, quando uma emoção possui um trecho em comum com outra emoção, esse trecho será interpolado. Primeiramente é definido um nome para este clipe. É então criada uma instância dele no agendador (schedule) do Trax Editor. Trax Editor, referenciado na figura 5.7, é uma linha de tempo responsável por manipular clipes, podendo alterar o tempo de início e duração destes. Figura 5.7: Trax Editor Fonte: do autor Cada clipe possui um identificador (index) específico. Com este identificador e o tempo de início e fim do clipe, os demais clipes são percorridos, buscando algum que esteja dentro do intervalo do clipe que está sendo criado. Caso seja encontrado, é criada a interpolação (blend) destes clipes, no período de tempo comum a ambos, realizando assim, a transição entre as emoções.

88 5.3 Desenvolvimento 85 Função emotion blend Possui funcionamento similar à função emotion. Por se tratar de mais de uma emoção, a primeira emoção também tem sua pose, plicada no quadro inicial, com sua respectiva intensidade. As demais emoções possuem poses e intensidades aplicadas nos quadros subsequentes. Após aplicar todas as emoções, é realizado a interpolação (blend) destas com a primeira emoção, e só então é gerado o clipe. Função cabeça coordenada Função responsável por reproduzir o movimento do olhar, movendo a cabeça, ou os olhos, para uma coordenada específica. Recebe como parâmetros: início, fim, x, y, z, velocidade e personagem. A velocidade, que pode ser baixa, média ou alta, define a quantidade de quadros (pulo) necessária para levar a cabeça até a coordenada desejada. Uma verificação inicial é realizada, para definir se o movimento do olhar será da cabeça ou dos olhos. Inicialmente é realizado o movimento de um olho, verificando pela rotação se o olho ainda está dentro do campo da visão do personagem. Se estiver, é chamada a função olhos coordenada. Caso não esteja, é realizado o movimento da cabeça, movendo a cabeça e os olhos para a coordenada desejada, definindo quadros-chave no início (acrescido do pulo) e fim da ação. Função cabeça objeto Possui funcionamento similar à função cabeça coordenada. Ao invés de receber uma coordenada, recebe um objeto por parâmetro. A cada quadro, busca a posição do objeto e redefine o olhar para esta posição. Função cabeça aceno Função responsável por reproduzir o aceno da cabeça. Recebe como parâmetros: início, vezes, orientação, velocidade e personagem. A orientação do aceno define se este é um aceno positivo (cabeça movimenta-se para baixo e para cima) ou negativo (cabeça movimenta-se de um lado para o outro). O parâmetro vezes indica quantas vezes a cabeça realiza o aceno.

89 5.3 Desenvolvimento 86 A velocidade do aceno pode ser baixa, média ou alta, resultando na alteração nos intervalos de cada movimento do aceno. Após definida a velocidade e orientação, a função realiza os movimentos da cabeça, repetindo-os a quantidade de vezes parametrizada. Os olhos se mantém no foco, enquanto somente a cabeça realiza o aceno. No término do aceno, a cabeça retorna à posição inicial. Função cabeça inclinada Função responsável por reproduzir a inclinação da cabeça. Recebe como parâmetros: início, fim, orientação, angulo, velocidade e personagem. A orientação pode ser para cima, baixo, direita e esquerda, indicando o sentido em que a cabeça deverá inclinar. A velocidade pode ser baixa, média ou alta e o angulo, de 0 a 90, define a rotação da cabeça. Considerando que o controlador do alvo da cabeça realiza sua ação alterando os valores de rotação desta, algumas dificuldades foram encontradas para definir a rotação desejada da cabeça, pois o controlador do alvo sobrescreve o controlador da rotação da cabeça. Para contornar a situação descrita, a função busca a rotação atual da cabeça e altera o valor do alvo da cabeça, na direção da orientação, até chegar ao ângulo solicitado, aonde grava o quadro chave. No tempo final, a inclinação inicial é então restaurada. Função olhos coordenada Função responsável por reproduzir o movimento dos olhos em um olhar para uma coordenada definida. Recebe como parâmetros: início, fim, x, y, z, velocidade e personagem. A velocidade baixa, média, ou alta, define o intervalo aonde os olhos irão se deslocar até a coordenada desejada. O alvo que controla os alvos é levado à coordenada, e ao término da função, o alvo dos olhos volta a acompanhar o alvo da cabeça. Função olhos objeto Possui funcionamento similar à função olhos coordenada. Ao invés de receber uma coordenada, recebe um objeto por parâmetro. A cada quadro, busca a posição do objeto e redefine o alvo dos olhos para esta posição.

90 5.3 Desenvolvimento 87 Função piscar olhos Função responsável por reproduzir o piscar de olhos. Recebe como parâmetros: início, velocidade e personagem. A velocidade pode ser baixa, média ou alta. Inicialmente a função busca a abertura atual, realiza o fechamento e abertura das pálpebras, com intervalos que variam de acordo com a velocidade e por fim, volta à abertura inicial. Função frase Função responsável por reproduzir em um personagem um conjunto de visemas, em tempos específicos, recebidos por parâmetros. Os visemas e respectivos tempos são tuplas passadas por parâmetro, em um vetor com tamanho variável. Os visemas podem utilizar tanto o sistema do gráfico bidimensional (conforme descrito no procedimento traduzir falar, no capítulo 4.2), quanto aqueles criados no banco de visemas. Após verificado o tipo de visema, são chamadas funções específicas (visema banco ou visema coordenada) para criação do visema. Tendo todos visemas criados como quadros chave, é então gerado um clipe responsável por reproduzir a frase por completo. Função visema coordenada Função responsável por reproduzir um visema passado no formato de coordenada. Recebe como parâmetros o tempo de reprodução, X, Y e personagem. Os visemas possuem variabilidade, pois possuem seu X e Y somados a um valor aleatório, dentro de um intervalo. O visema é aplicado no personagem e salvo como um quadro chave. Função visema banco Possui funcionamento similar à função visema coordenada. Ao invés de receber uma coordenada, recebe um visema do banco por parâmetro, que é aplicado no personagem e salvo como um quadro chave.

91 5.3 Desenvolvimento 88 Função reseta Função que recebe somente o personagem como parâmetro, sendo necessária para redefinir as configurações do personagem, apagar quadros-chave e clipes criados, aplicar a pose neutra e posicionar os alvos de cabeça e olhos em um mesmo ponto. Esta função deve ser a primeira executada, para que cada vez que rodar o script, uma nova animação seja gerada, sem haver vestígios de execuções anteriores.

92 89 6 Experimentação e Análise dos Resultados Nesse capítulo são apresentados os experimentos realizados para validação dos resultados, assim como a análise dos resultados para um caso para estudo. 6.1 Experimento O experimento objetiva validar todas as funcionalidades desenvolvidas no sistema. Tal experimento é composto por um arquivo de entrada (presente no apêndice), criado para demonstrar todos os comportamentos implementados. Para demonstração dos resultados obtidos, a seguir estão descritos os comportamentos presentes no arquivo, assim como o processo de execução do arquivo no plugin desenvolvido para a ferramenta. O arquivo de entrada criado inicia com a realização de uma fala, aonde o personagem reproduz visualmente uma frase, ao mesmo tempo em que realiza um olhar, acompanhando um objeto. Durante esta ação, o personagem passa da emoção neutra para a emoção surpreso, na sequência raiva e por último, felicidade. No final, este volta a olhar para o centro. O resultado pode ser visto na figura 6.1. Figura 6.1: Ações de fala, olhar um objeto e demonstrar emoções Fonte: do autor Na sequência, são realizados alguns olhares, com diferentes velocidades. A movimentação inicia com alvos próximos, para haver movimentação somente dos olhos. Posteriormente, movimentos mais distantes e inclusive detrás do personagem, são execu-

93 6.1 Experimento 90 tados, havendo a necessidade de mover toda a cabeça. Resultado pode ser visto na figura 6.2. Figura 6.2: Movimentos com os olhos e com a cabeça Fonte: do autor O próximo passo é a realização de acenos positivos e negativos com a cabeça, com velocidades média e alta, respectivamente. Também é realizada a inclinação da cabeça para frente e para trás. Na sequência foram definidos 2 momentos para cada tipo de piscada (de velocidades baixa, média e alta). Resultado pode ser visto na figura 6.3. Figura 6.3: Aceno e inclinação da cabeça, e piscar de olhos Fonte: do autor Por último, são reproduzidas todas as emoções presentes no banco (aversão, desprezo, felicidade, medo, raiva, surpreso e triste) e a combinação das emoções, com suas respectivas intensidades, medo e desprezo. Resultado pode ser visto na figura 6.4.

94 6.2 Análise dos Resultados 91 Figura 6.4: Emoções e combinações Fonte: do autor A animação possui a duração de 53 segundos, e sua geração levou 6 minutos para ser concluída, desde a interpretação do arquivo de entrada, até a criação da animação. Um arquivo de saída BML foi gerado, podendo ser aberto para validações. 6.2 Análise dos Resultados O plugin criado foi capaz de interpretar corretamente o arquivo de entrada fornecido, quando gerado de acordo com os padrões do modelo proposto. Este arquivo, com alto-nível de abstração, foi convertido para comandos mais específicos, gerando corretamente um novo arquivo de saída, que foi interpretado corretamente pelo módulo de animação. Pela visualização da animação, disponível em é possível visualizar que aproximadamente todos os requisitos foram cumpridos, conforme o modelo proposto. Alguns requisitos que foram parcialmente alcançados, ou que necessitam de melhorias são: A inclinação da cabeça não é realizada para o lados esquerdo ou direito, somente para cima e para baixo. Isto ocorre devido à necessidade de utilizar um controlador de alvo da cabeça, para realizar sua inclinação, pois tal controlador é quem controla a rotação da cabeça, sobrescrevendo qualquer rotação realizada nesta. Porém, utilizando este controlador, não é possível realizar a inclinação para os lados; Nos últimos quadros da transição entre uma emoção e outra, há movimentos bruscos dos componentes da face, não ocorrendo suavemente, como deveria ser a transição.

95 6.3 Validação 92 Estas transições são geradas automaticamente pela ferramenta, quando é feita a junção de dois clipes; A criação de uma animação leva aproximadamente 6 vezes o tempo de reprodução desta, variando de acordo com o nível de detalhe, que faz necessários mais comandos. Para grandes animações, este tempo pode ser considerado demorado, mesmo para um computador potente. Os testes foram realizados em uma máquina com processador Intel R i7, com 8 Gb de memória RAM DDR3, e placa de vídeo GeForce R GTX770. O gargalo está na criação de emoções e visemas, que requer criação de clipes, os quais levam maior tempo para geração; Quando a cabeça se vira para o lado esquerdo do personagem, o pescoço deste fica contorcido, conforme representado na figura 6.5. Isto ocorre devido o controlador de alvo da cabeça manipular o controlador de rotação desta. Figura 6.5: Pescoço contorcido Fonte: do autor 6.3 Validação Os requisitos utilizados para validação deste trabalho de conclusão de curso, conforme caregorias definidas por (CARVALHO, 2012), foram:

96 6.3 Validação 93 Análise de sucesso do conhecimento produzido: Utilidade: o plugin desenvolvido mostrou-se útil na criação de animações faciais. Apesar de necessitar de melhorias, para se apresentar utilizável em um contexto real, já possui a base para criação de animações mais complexas. Eficácia: com a análise dos resultados foi percebido que o modelo é capaz de gerar resultados plausíveis. A sua implementação foi capaz de gerar animações coerentes. Eficiência: apesar do processo de geração da animação levar aproximadamente 6 vezes a duração da animação criada, ainda é relativamente mais rápido que a geração manual da mesma animação. Generalização: o modelo criado permite a utilização dos seus conceitos, e inclusive parte do código-fonte, na implementação de um plugin em outra ferramenta de animação, alcançando assim a generalização. Inovação: esse trabalho apresenta um plugin para uma ferramenta de animação, que gera animações faciais a partir de um arquivo XML de entrada.

97 94 7 Conclusões Atores Digitais Autônomos, uma analogia a atores reais, utilizam a face como parte do corpo de maior importância para reconhecimento e comunicação interpessoal. A percepção dos espectadores é sensível a detalhes das expressões faciais tornando imprescindível, na animação por computador, comunicar-se corretamente utilizando a face. A credibilidade na expressividade facial é alcançada, quando cada componente da animação facial: representação da fala, direcionamento do olhar, piscar de olhos e representação facial de emoções, dá aparência de vida e perfeição ao personagem. A partir do estudo da anatomia facial, técnicas de animação e dos componentes citados, foi possível identificar os requisitos necessários para o desenvolvimento do modelo de animação procedural para expressividade facial de atores virtuais. Neste contexto, Behavior Markup Language surge como instrumento para descrever comportamentos verbais e não verbais da face, independentemente do método da realização da animação utilizado. Com base nos fundamentos teóricos, sugeriu-se um modelo computacional que cria, a partir de um arquivo XML de alto-nível, um arquivo BML de saída, capaz de ser interpretado por uma ferramenta de animação, para gerar a animação facial de ADAs. A implementação deste modelo foi realizada na forma de um plugin para a ferramenta de animação Autodesk Maya TM, utilizando a linguagem python. Um experimento, utilizando as funcionalidades desenvolvidas, foi realizado e mostrou-se adequado aos requisitos modelados. Um modelo de personagem com controladores já definidos foi utilizado, acrescentando novos controladores. Para criação de novos ADAS, o mesmo padrão de controladores deve ser seguido, com a mesma nomenclatura, para que haja compatibilidade com a ferramenta. Apesar da limitação inicial na quantidade de emoções e visemas, o sistema pode ser facilmente estendido com a criação de novas emoções e visemas no banco, além de possuir a capacidade de combinar emoções para geração de novas. Há ainda a necessidade de, em um trabalho futuro, desenvolver um módulo capaz de transformar frases em

98 7 Conclusões 95 visemas com tempos definidos para exibição, dentro de uma duração. A animação gerada se mostrou fiel ao arquivo de entrada, reproduzindo corretamente os comandos de animação. Porém, para aprimorar a aparência de vida do personagem ao espectador, sugere-se como trabalhos futuros: Criação de um algoritmo para transições mais suaves entre emoções, tirando da ferramenta de animação esta responsabilidade, que têm feito movimentos bruscos durante estas transições; Realização de um estudo mais aprofundado sobre foco de atenção visual, pois foi percebido que a maior parte do tempo o olhar está estático, não dando a impressão de vida ao personagem; Considerando que as emoções atuais são criadas a partir de poses da face do personagem, pode ser acrescentado um novo banco de emoções que variam de acordo com o tempo, como uma gargalhada, por exemplo, que não pode ser representada por somente uma pose; Testar o módulo de animação em outras ferramentas, buscando melhorar o desempenho do sistema, e uma ferramenta melhor preparada para utilização de scripts, considerando que Autodesk Maya TM carece de recursos como debug; Modificação nos controladores do personagem, de maneira a resolver os problemas do pescoço contorcido e a inclinação lateral da cabeça; Criação de um sistema dentro do módulo de Tradução, responsável por traduzir frases em visemas, com tempos definidos para reprodução.

99 Referências Bibliográficas ADOLPHS, R. Recognizing emotion from facial expressions: Psychological and neurological mechanisms. Behavioral and Cognitive Neuroscience Reviews, v. 1, n. 1, p , jan ISSN , Disponível em: < ARGYLE, M. Gaze and Mutual Gaze. [S.l.]: Cambridge University Press, ISBN ARGYLE, M.; DEAN, J. Eye-contact, distance and affiliation. Sociometry Journal, v. 28, n. 3, p , ISSN Disponível em: < rmk7/hc/hc Readings/Argyle.pdf>. ARNOLD, M. B. Emotion and personality. Vol. I. Psychological aspects. Oxford, England: Columbia Univer. Press, AUTODESK. Maya Student Software Disponível em: < BACHER, L. F.; SMOTHERMAN, W. P. Spontaneous eye blinking in human infants: a review. In: Developmental psychobiology. [S.l.: s.n.], v. 44, n. 2, p ISSN PMID: BADLER, N. Real-time virtual humans. In: The Fifth Pacific Conference on Computer Graphics and Applications, Proceedings. [s.n.], p Disponível em: < badler/papers/pg97.pdf>. BARAB, S.; SQUIRE, K. Design-based research: Putting a stake in the ground. In: Journal of the Learning Sciences. [S.l.: s.n.], v. 13, p BASKIN, J. Blake Free character rig for Maya Disponível em: < BREDOW, R.; SCHAUB, D.; ENGLE, R.; KRAMER, D.; HASTINGS, A. From mocap to movie: the making of the polar express. In: ACM SIGGRAPH 2005 Courses. New

100 REFERÊNCIAS BIBLIOGRÁFICAS 97 York, USA: ACM, (SIGGRAPH, 05). Disponível em: < CAFFIER, P. P.; ERDMANN, U.; ULLSPERGER, P. Experimental evaluation of eye-blink parameters as a drowsiness measure. In: European journal of applied physiology. [S.l.: s.n.], v. 89, n. 3-4, p ISSN PMID: CARVALHO, J. A. Validation criteria for the outcomes of design research. In: International Workshop on IT Artefact Design & Workpractice Intervention. [S.l.: s.n.], CAVAZZA, M.; CHARLES, F.; MEAD, S. J. Interacting with virtual characters in interactive storytelling. In: Proceedings of the first international joint conference on Autonomous agents and multiagent systems: part 1. New York, USA: ACM, (AAMAS, 02), p ISBN CHEVALIER-SKOLNIKOFF, S. Facial expression of emotion in hohhuman primates. In: Darwin and Facial Expression: A Century of Research in Review. New York: ISHK, p ISBN CHUNG, S.-K. Facial animation: A survey based on artistic expression control. In: Research Art Vol.2 No.1 (2009/04). [S.l.: s.n.], p COSTA, A. M.; CLUA, E. W. G. C. Animação facial usando xna. In: Proceedings of the 2007 Brazilian Symposium on Games and Digital Entertainment. [S.l.]: IEEE Computer Society, DAMASIO, A. Descartes error: emotion, reason, and the human brain. New York: G.P. Putnam, p. (A Grosset/Putnam book). ISBN DARRELL, T.; PENTLAND, A. Space-time gestures. In:, 1993 IEEE, Computer Society Conference on Computer Vision and Pattern Recognition, Proceedings CVPR, 93. [S.l.: s.n.], p DARWIN, C. The Expression of the Emotions in Man and Animals. [S.l.]: J. Murray, p. DENG, Z.; NOH, J. Computer facial animation: A survey. In: DENG, Z.; NEUMANN, U. (Ed.). Data-Driven 3D, Facial Animation. [S.l.]: Springer London, p ISBN ,

101 REFERÊNCIAS BIBLIOGRÁFICAS 98 EBERT, D. S. Texturing & Modeling: A Procedural Approach. [S.l.]: Morgan Kaufmann, ISBN EKMAN, P. An argument for basic emotions. Cognition & Emotion, v. 6, n. 3-4, p , maio EKMAN, P. Emotions Revealed, Second Edition: Recognizing Faces and Feelings to Improve Communication and Emotional Life. 2. ed. [S.l.]: Holt Paperbacks, ISBN EKMAN, P. Telling Lies: Clues to Deceit in the Marketplace, Politics, and Marriage. Revised edition. [S.l.]: W. W. Norton & Company, ISBN EKMAN, P.; FRIESEN, W. V.; HAGER, J. Facial Action Coding System (FACS): Manual and Investigator s Guide. [S.l.]: Consulting Psychologists Pr, ISBN EL-NASR, M. S.; WEI, H. Exploring non-verbal behavior models for believable characters. In: Proceedings of the 1st Joint International Conference on Interactive Digital Storytelling: Interactive Storytelling. Berlin, Heidelberg: Springer-Verlag, (ICIDS, 08), p ISBN FISIOBLOG. Tronco encefálico Disponível em: < GALATI, D.; SINI, B.; SCHMIDT, S.; TINTI, C. Spontaneous facial expressions in congenitally blind and sighted children aged Journal of Visual Impairment & Blindness, v. 97, n. 7, p , ISSN X. GUENTER, B.; GRIMM, C.; WOOD, D.; MALVAR, H.; PIGHIN, F. Making faces. In: Proceedings of the 25th annual conference on Computer graphics and interactive techniques. New York, USA,: ACM, (SIGGRAPH, 98), p ISBN Disponível em: < cmg/content/papers- /sig1998mf/sig1998mf.pdf>. HILL, D. R.; PEARCE, A.; WYVILL, B. Animating speech: an automated approach using speech synthesised by rules. The Visual Computer, v. 3, n. 5, p , mar ISSN ,

102 REFERÊNCIAS BIBLIOGRÁFICAS 99 HOETZLEIN, R. C. Imagination in Media Arts: Technological Constraints and Creative Freedom. Tese (Doutorado) University of Santa Barbara - California, fev HORN, B. K. P.; SCHUNCK, B. G. Determining optical flow. Cambridge, MA USA, v. 17, p , HUANG, J.-H. Jen-Hsun Huang at GTC Disponível em: < IURGEL, I. Virtual actor: Endowing virtual characters with a repertoire for acting. In: SPIERLING, U.; SZILAS, N. (Ed.). Interactive Storytelling. Erfurt, Germany: Springer Verlag, LNCS, 5334, p IURGEL, I.; SILVA, R. da; SANTOS, M. dos. Towards virtual actors for acting out stories. In: ZHANG, X.; ZHONG, S.; PAN, Z.; WONG, K.; YUN, R. (Ed.). Entertainment for Education. Digital Techniques and Systems. [S.l.]: Springer Berlin / Heidelberg, 2010, (Lecture Notes in Computer Science, v. 6249). p ISBN / _58. IURGEL, I. A.; MARCOS, A. F. Employing personality-rich virtual persons New, tools required. Computers & Graphics, v. 31, n. 6, p , dez ISSN Disponível em: < /S >. JOOSTEN, B.; POSTMA, E.; KRAHMER, E.; SWERS, M.; KIM, J. Automated measurement of spontaneous surprise. In: Proceedings of Measuring Behavior 2012 : 8th International Conference on Methods and Techniques in Behavioral Research. [S.l.]: The Netherlands, Noldus Information Technology, KALRA, P.; MANGILI, A.; THALMANN, N. M.; THALMANN, D. Simulation of facial muscle actions based on rational free form deformations. In: Computer Graphics Forum,. [S.l.: s.n.], v. 11, n. 3, p ISSN KASS, M.; WITKIN, A.; TERZOPOULOS, D. Snakes: Active contour models. In: International Journal of Computer Vision. [s.n.], v. 1, n. 4, p ISSN , Disponível em: < dt/papers/ijcv88- /ijcv88.pdf>.

103 REFERÊNCIAS BIBLIOGRÁFICAS 100 KENDON, A. Some functions of gaze-direction in social interaction. v. 26, n. 1, p , ISSN KOPP, S. et al. Towards a common framework for multimodal generation: The behavior markup language. In: Proceedings of the 6th international conference on Intelligent Virtual Agents. Berlin, Heidelberg: Springer Berlin Heidelberg, p ISBN , KOUADIO, C.; POULIN, P.; LACHAPELLE, P. Real-time facial animation based upon a bank of 3D, facial expressions. In: Computer Animation 98. Proceedings. Washington, USA: IEEE, Computer Society, (CA, 98), p ISBN Disponível em: < RTFA.pdf>. KUMAR, A. Understanding Facial Expressions and Microexpressions Disponível em: < LARKIN, K. T.; ZAYFERT, C. Anger expression and essential hypertension: Behavioral response to confrontation. Journal of Psychosomatic Research, v. 56, n. 1, p , ISSN LEAL, S.; VRIJ, A. Blinking during and after lying. In: Journal of Nonverbal Behavior. [s.n.], v. 32, n. 4, p ISSN , Disponível em: < LEE, Y.; TERZOPOULOS, D.; WATERS, K. Realistic modeling for facial animation. In: Proceedings of the 22nd annual conference on Computer graphics and interactive techniques. New York, USA: ACM, (SIGGRAPH, 95), p ISBN LEVENSON, R. W.; EKMAN, P.; FRIESEN, W. V. Voluntary facial action generates emotion-specific autonomic nervous system activity. Psychophysiology, v. 27, n. 4, p , jul ISSN PMID:, LOUCHART, S.; AYLETT, R. From synthetic characters to virtual actors. In: Artificial Intelligence and Interactive Digital Entertainment Conference. [S.l.: s.n.], p

104 REFERÊNCIAS BIBLIOGRÁFICAS 101 LOVAS, M. How to spot a dishonest face Disponível em: < LUCERO, J. C.; MUNHALL, K. G. A model of facial biomechanics for speech production. The Journal of the Acoustical Society of America, v. 106, p , nov ISSN MAGNENAT-THALMANN, N.; PRIMEAU, E.; THALMANN, D. Abstract muscle action procedures for human face animation. The Visual Computer, v. 3, n. 5, p , mar ISSN , MAGNENAT-THALMANN, N.; THALMANN, D. Handbook of virtual humans. England: John Wiley & Sons Inc, MARSH, A. A.; ADAMS, R. B.; KLECK, R. E. Why do fear and anger look the way they do? form and social function in facial expressions. Personality and Social Psychology Bulletin, v. 31, n. 1, p , jan ISSN , MARTINO, J. M. Animação facial sincronizada com a fala: visemas dependentes do contexto fonetico para o portugues do Brasil. Disserta (Tese de Doutorado) Universidade Estadual de Campinas, jul MATSUMOTO, D. Face, culture, and judgments of anger and fear: Do the eyes have it? Journal of Nonverbal Behavior, v. 13, n. 3, p , set ISSN , MATSUMOTO, D.; WILLINGHAM, B. Spontaneous facial expressions of emotion of congenitally and noncongenitally blind individuals. Journal of personality and social psychology, v. 96, n. 1, p. 1 10, jan ISSN MAURY-ROUAN, C.; HIRST, D.; FARACO, M. Eyebrow raisings and vocal pitch accent : the case of children blind from birth IEEE 8TH INTERNATIONAL CONFERENCE ON DEVELOPMENT AND LEARNING 1 Learning to Make Facial Expressions, p. 1 7, MAY, S. F.; CARLSON, W. E.; PHILLIPS, F.; SCHEEPERS. A language for procedural modeling and animation. Ohio, USA, p. 1 11, december Disponível em: < smay/al.pdf>.

105 REFERÊNCIAS BIBLIOGRÁFICAS 102 MAYA. Visão geral Autodesk Maya Disponível em: < McDougall, W. An Introduction to Social Psychology. [S.l.]: J.W., Luce & Company, MCKAY, M.; ROGERS, P. D.; MCKAY, J. When Anger Hurts: Quieting the Storm Within, 2nd Edition. Second edition. [S.l.]: New Harbinger Publications, ISBN MOORE, K. L.; DALLEY, A. F. Anatomia orientada para a clínica. 4. ed. [S.l.]: Guanabara Koogan, ISBN OLIVEIRA, E. Captura de expressões faciais para identificação de emoções básicas em humanos. Disserta (Bacharel) Universidade do Vale do Rio dos Sinos, OSIPA, J. Stop Staring: Facial Modeling and Animation Done Right. 3. ed. [S.l.]: John Wiley & Sons, ISBN PARENT, R. Computer Animation: Algorithms and Techniques. [S.l.]: Morgan Kaufmann, ISBN PARKE. Parameterized models for facial animation. Computer Graphics and Applications, v. 2, n. 9, p , nov ISSN PARKE, F. I. Computer generated animation of faces. 451 p. Disserta (Tese de Mestrado) Utah University, jun PARKE, F. I.; WATERS, K. Computer Facial Animation. 2. ed. [S.l.]: A K Peters/CRC, Press, ISBN PEASE, A.; PEASE, B. Linguagem Corporal Porque é que os Homens Coçam as Orelhas e As Mulheres Mexem na Aliança. 3a. ed. [S.l.]: Bizancio, p. ISBN PERLIN, K.; SEIDMAN, G. Autonomous digital actors. In: EGGES, A.; KAMPHUIS, A.; OVERMARS, M. (Ed.). Motion in Games. [S.l.]: Springer Berlin / Heidelberg, 2008, (Lecture Notes in Computer Science, v. 5277). p ISBN

106 REFERÊNCIAS BIBLIOGRÁFICAS 103 PIMENTEL, R. C.; MAGALHãES, L. P.; MARTINO, J. M. d. Sistema de animação facial biomecânica. Reverte - Revista de Estudos e Reflexões Tecnológicas da Faculdade de Indaiatuba, v. 0, n. 6, dec PING, H. Y.; ABDULLAH, L. N. Computer facial animation: A review. In: International Journal of Computer Theory and Engineering. [S.l.: s.n.], v. 5, n. 4, p PLATT, S. M.; BADLER, N. I. Animating facial expressions. SIGGRAPH, Comput. Graph., v. 15, n. 3, p , ago ISSN POLLAK, S. D.; SINHA, P. Effects of early experience on children s recognition of facial displays of emotion. Developmental Psychology, v. 38, n. 5, p , ISSN (Electronic); (Print). PRINZ, J. Which emotions are basic? In: Emotion, Evolution, and Rationality. [S.l.]: Oxford University Press, p ISBN QUEIROS, C. Emoções e comportamento desviante: um estudo na perspectiva da personalidade como sistema auto-organizador. Disserta (Doutorado) Universidade do Porto, RINN, W. The neurophysiology of facial expression: A review of the neurological and psychological mechanisms for producing facial expressions. In: Psychological Bulletin. [S.l.: s.n.], v. 95, p RODRIGUES, P. L.; FEIJO, B.; VELHO, L. : Expressive talking heads: uma ferramenta de animação com fala e expressão facial sincronizadas para o desenvolvimento de aplicações interativas. In: IX Simpósio Brasileiro de Sistemas Multimídia e Web. [s.n.], Disponível em: < / lucena webmidia.pdf>. ROSENBERG, E. L.; EKMAN, P.; BLUMENTHAL, J. A. Facial expression and the affective component of cynical hostility in male coronary heart disease patients. Health psychology: official journal of the Division of Health Psychology, American Psychological Association, v. 17, n. 4, p , jul ISSN PMID:, SADR, J.; JARUDI, I.; SINHA, P. The role of eyebrows in face recognition. Perception, v. 32, n. 3, p , ISSN PMID:,

107 REFERÊNCIAS BIBLIOGRÁFICAS 104 SANTOS, C. S. V. Psicofisiologia das emoções básicas: estudo empírico com toxicodependentes em tratamento. Disserta (Mestrado) Universidade Fernando Pessoa, SCHNEIDER, D. D. G. O desempenho de adultos jovens e idosos na tarefa do jogo : um estudo sobre tomada de decisão SEVIN, E. de; THALMANN, D. A motivational model of action selection for virtual humans. In: Proceedings of the Computer Graphics International Washington, USA: IEEE, Computer Society, (CGI, 05), p ISBN SILVA, R. E. d. D.r.a.m.a. - developing rational agents to mimic actors. In: SBC - Proceedings of SBGames Joinville, Brasil: SBGames, SILVEIRA, R. D.; MELO, W. V. Sintomas depressivos e o processamento emocional de expressões faciais. Disserta (Graduação) FACCAT, Disponível em: < /psicologia.faccat.br/moodle/pluginfile.php/197/course/section/101/rafaela.pdf>. SOUZA, M. Quadrinhos - Tira Disponível em: < /cookpage/cookpage.cgi?!pag=comics/tirinhas/tira331>. SPIERLING, U. Interactive digital storytelling: Towards a hybrid conceptual approach. In: International DiGRA, Conference. [S.l.: s.n.], SUSSKIND, J. M. et al. Expressing fear enhances sensory acquisition. Nature Neuroscience, v. 11, n. 7, p , jul ISSN TAKASHIMA, K. et al. Effects of avatar s blinking animation on person impressions. In: Proceedings of graphics interface Toronto, Ont., Canada, Canada: Canadian Information Processing Society, (GI 08), p ISBN Disponível em: < TERZOPOULOS, D.; WATERS, K. Physically-based facial modelling, analysis, and animation. In: Journal of Visualization and Computer Animation. [s.n.], v. 1, n. 2, p ISSN Disponível em: < r /paper/face/vca90.pdf>. THALMANN, N. M.; CAZEDEVALS, A.; THALMANN, D. Modelling facial communication between an animator and a synthetic actor in real time. In:

108 REFERÊNCIAS BIBLIOGRÁFICAS 105 FALCIDIENO, D. B.; KUNII, P. D. T. L. (Ed.). Modeling in Computer Graphics. Springer Berlin Heidelberg, 1993, (IFIP, Series on Computer Graphics). p ISBN , Disponível em: < /record/102432/files/magnenat Thalmann and al IFIP 93.pdf>. THUME, G. S.; SILVA, R. E. d. An extended EBDI, model applied to autonomous digital actors. In: XI, Brazilian Symposium on Games and Digital Entertainment. Brasilia, DF, Brazil: [s.n.], TORRES, J. A. R.; MACIEL, A.; NEDEL, L. P. Uma arquitetura para animação de humanos virtuais com raciocínio cognitivo. p. 12, TRUTOIU, L. C.; CARTER, E. J.; MATTHEWS, I.; HODGINS, J. K. Modeling and animating eye blinks. In: ACM Transactions on Applied Perception 8. [s.n.], v. 8, n. 3. ISSN Disponível em: < /apgv tap trutoiu preprint.pdf>. TUCKER, D. M.; DERRYBERRY, D.; LUU, P. Anatomy and physiology of human emotion: Vertical integration of brainstem, limbic, and cortical systems. In: The neuropsychology of emotion. New York, US: Oxford University Press, 2000, (Series in affective science.). p ISBN VERTEGAAL, R.; SLAGTER, R.; VEER, G. van der; NIJHOLT, A. Eye gaze patterns in conversations: there is more to conversational agents than meets the eyes. In: Proceedings of the SIGCHI, Conference on Human Factors in Computing Systems. New York, USA: ACM, (CHI, 01), p ISBN Disponível em: < /citeseerx.ist.psu.edu/viewdoc/download?doi= rep=rep1type=pdf>. VILHJALMSSON, H. et al. The behavior markup language: Recent developments and challenges. In: Proceedings of the 7th international conference on Intelligent Virtual Agents. Berlin, Heidelberg: Springer-Verlag, (IVA, 07), p ISBN Disponível em: < kipp/public archive- /BML IVA07 CameraReady.pdf>. WATERS, K. A muscle model for animation three-dimensional facial expression. SIGGRAPH, Comput. Graph., v. 21, n. 4, p , ago ISSN

109 REFERÊNCIAS BIBLIOGRÁFICAS 106 WEISE, T.; BOUAZIZ, S.; LI, H.; PAULY, M. Realtime performance-based facial animation. In: ACM SIGGRAPH 2011 papers. New York, USA: ACM, (SIGGRAPH, 11), p ISBN Disponível em: <lgg.epfl.ch- / bouaziz/pdf/rpbfa SIGGRAPH2011.pdf>. WILLIAMS, L. Performance-driven facial animation. In: SIGGRAPH 90 Proceedings of the 17th annual conference on Computer graphics and interactive techniques. [S.l.: s.n.], v. 24, n. 4, p ISSN ZHAO, Y. Human Emotion Recognition from Body Language of the Head using Soft Computing Techniques. Disserta (Doutorado) University of Ottawa, ZHU, Z.; JI, Q. Eye and gaze tracking for interactive graphic display. In: Machine Vision and Applications. [s.n.], v. 15, n. 3, p ISSN Disponível em: < ZIMPRICH, D.; MASCHEREK, A. Anger expression in swiss adolescents: establishing measurement invariance across gender in the AX, scales. Journal of adolescence, v. 35, n. 4, p , ago ISSN PMID:,

110 107 A Apêndice Figura A.1: Arquitetura do projeto D.R.A.M.A.

111 A.1 Arquivo de entrada utilizado para Experimentação 108 Fonte: Projeto D.R.A.M.A. A.1 Arquivo de entrada utilizado para Experimentação 1 <scene start="1" end="1260"> 2 <ator nome="brad"> 3 <acao nome="acao1" inicio="1" fim="120"> 4 <falar> 5 <visema> 6 <tempo>1</tempo> 7 <x>0</x> 8 <y>0</y> 9 </visema> 10 <visema> 11 <tempo>9</tempo>

UNIVERSIDADE FEDERAL DE SANTA CATARINA GRADUAÇÃO EM SISTEMAS DE INFORMAÇÃO DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA DATA MINING EM VÍDEOS

UNIVERSIDADE FEDERAL DE SANTA CATARINA GRADUAÇÃO EM SISTEMAS DE INFORMAÇÃO DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA DATA MINING EM VÍDEOS UNIVERSIDADE FEDERAL DE SANTA CATARINA GRADUAÇÃO EM SISTEMAS DE INFORMAÇÃO DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA DATA MINING EM VÍDEOS VINICIUS DA SILVEIRA SEGALIN FLORIANÓPOLIS OUTUBRO/2013 Sumário

Leia mais

Manual de implantação

Manual de implantação Manual de implantação O BioPass ID é um serviço online baseado em nuvem que fornece uma poderosa tecnologia multibiométrica (reconhecimento de impressões digitais e face) para os desenvolvedores de qualquer

Leia mais

Expressive Talking Heads: Um Estudo de Fala e Expressão Facial em Personagens Virtuais

Expressive Talking Heads: Um Estudo de Fala e Expressão Facial em Personagens Virtuais Expressive Talking Heads: Um Estudo de Fala e Expressão Facial em Personagens Virtuais Paula Salgado Lucena, Marcelo Gattass, Luiz Velho Departamento de Informática Pontifícia Universidade Católica do

Leia mais

Prof. Marcelo Henrique dos Santos

Prof. Marcelo Henrique dos Santos POR QUE ESTUDAR COMPUTAÇÃO GRÁFICA? Quem quiser trabalhar em áreas afins: Entretenimento Jogos e filmes Visualização Simulação de fenômenos físicos Arte computadorizada Educação e treinamento Processamento

Leia mais

ENGENHARIA DE SOFTWARE I

ENGENHARIA DE SOFTWARE I ENGENHARIA DE SOFTWARE I Prof. Cássio Huggentobler de Costa [cassio.costa@ulbra.br] Twitter: www.twitter.com/cassiocosta_ Agenda da Aula (002) Metodologias de Desenvolvimento de Softwares Métodos Ágeis

Leia mais

Resolução da lista de exercícios de casos de uso

Resolução da lista de exercícios de casos de uso Resolução da lista de exercícios de casos de uso 1. Explique quando são criados e utilizados os diagramas de casos de uso no processo de desenvolvimento incremental e iterativo. Na fase de concepção se

Leia mais

7.Conclusão e Trabalhos Futuros

7.Conclusão e Trabalhos Futuros 7.Conclusão e Trabalhos Futuros 158 7.Conclusão e Trabalhos Futuros 7.1 Conclusões Finais Neste trabalho, foram apresentados novos métodos para aceleração, otimização e gerenciamento do processo de renderização

Leia mais

Algoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br

Algoritmos e Programação (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br (Prática) Profa. Andreza Leite andreza.leite@univasf.edu.br Introdução O computador como ferramenta indispensável: Faz parte das nossas vidas; Por si só não faz nada de útil; Grande capacidade de resolução

Leia mais

Um Driver NDIS Para Interceptação de Datagramas IP

Um Driver NDIS Para Interceptação de Datagramas IP Um Driver NDIS Para Interceptação de Datagramas IP Paulo Fernando da Silva psilva@senior.com.br Sérgio Stringari stringari@furb.br Resumo. Este artigo apresenta o desenvolvimento de um driver NDIS 1 para

Leia mais

Universidade de Brasília Faculdade de Economia, Administração, Contabilidade e Ciência da Informação e Documentação Departamento de Ciência da

Universidade de Brasília Faculdade de Economia, Administração, Contabilidade e Ciência da Informação e Documentação Departamento de Ciência da Universidade de Brasília Faculdade de Economia, Administração, Contabilidade e Ciência da Informação e Documentação Departamento de Ciência da Informação e Documentação Disciplina: Planejamento e Gestão

Leia mais

Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Sistema Gerenciador de Banco de Dados

Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Sistema Gerenciador de Banco de Dados Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Um Sistema Gerenciador de Banco de Dados (SGBD) é constituído por um conjunto de dados associados a um conjunto de programas para acesso a esses

Leia mais

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO)

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Parte: 1 Prof. Cristóvão Cunha Objetivos de aprendizagem

Leia mais

Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi

Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi 5 Conclusão Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi permitir que scripts Lua instanciem e usem

Leia mais

Status. Barra de Título. Barra de Menu. Barra de. Ferramentas Padrão. Caixa de nomes. Barra de. Ferramentas de Formatação. Indicadores de Coluna

Status. Barra de Título. Barra de Menu. Barra de. Ferramentas Padrão. Caixa de nomes. Barra de. Ferramentas de Formatação. Indicadores de Coluna O que é uma planilha eletrônica? É um aplicativo que oferece recursos para manipular dados organizados em tabelas. A partir deles pode-se gerar gráficos facilitando a análise e interpretação dos dados

Leia mais

Interação Humana com Computador

Interação Humana com Computador Interação Humana com Computador Tecnologias de Computadores André Ferraz N.º24881 Jason Costa N.º25231 Ana Pereira N.º25709 IHC Estudo, planeamento e desenho de uma interação entre o utilizador e computadores.

Leia mais

15 Computador, projeto e manufatura

15 Computador, projeto e manufatura A U A UL LA Computador, projeto e manufatura Um problema Depois de pronto o desenho de uma peça ou objeto, de que maneira ele é utilizado na fabricação? Parte da resposta está na Aula 2, que aborda as

Leia mais

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo

Conteúdo. Disciplina: INF 02810 Engenharia de Software. Monalessa Perini Barcellos. Centro Tecnológico. Universidade Federal do Espírito Santo Universidade Federal do Espírito Santo Centro Tecnológico Departamento de Informática Disciplina: INF 02810 Prof.: (monalessa@inf.ufes.br) Conteúdo 1. Introdução 2. Processo de Software 3. Gerência de

Leia mais

Pós-Graduação em Gerenciamento de Projetos práticas do PMI

Pós-Graduação em Gerenciamento de Projetos práticas do PMI Pós-Graduação em Gerenciamento de Projetos práticas do PMI Planejamento do Gerenciamento das Comunicações (10) e das Partes Interessadas (13) PLANEJAMENTO 2 PLANEJAMENTO Sem 1 Sem 2 Sem 3 Sem 4 Sem 5 ABRIL

Leia mais

Pesquisa e organização de informação

Pesquisa e organização de informação Pesquisa e organização de informação Capítulo 3 A capacidade e a variedade de dispositivos de armazenamento que qualquer computador atual possui, tornam a pesquisa de informação um desafio cada vez maior

Leia mais

Gerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto

Gerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto Gerenciamento de Projetos Modulo II Ciclo de Vida e Organização do Projeto Prof. Walter Cunha falecomigo@waltercunha.com http://waltercunha.com PMBoK Organização do Projeto Os projetos e o gerenciamento

Leia mais

ALESSANDRO RODRIGO FRANCO FERNANDO MARTINS RAFAEL ALMEIDA DE OLIVEIRA

ALESSANDRO RODRIGO FRANCO FERNANDO MARTINS RAFAEL ALMEIDA DE OLIVEIRA ALESSANDRO RODRIGO FRANCO FERNANDO MARTINS RAFAEL ALMEIDA DE OLIVEIRA INTRODUÇÃO O projeto de um banco de dados é realizado sob um processo sistemático denominado metodologia de projeto. O processo do

Leia mais

Sua indústria. Seu show. Seu Futuro

Sua indústria. Seu show. Seu Futuro Sua indústria. Seu show. Seu Futuro Usinagem 5-Eixos para Moldes Sandro, Vero Software Vero Software está no topo do relatório de fornecedores de CAM da CIMData 2014 Com maior Market Share, crescimento

Leia mais

)HUUDPHQWDV &RPSXWDFLRQDLV SDUD 6LPXODomR

)HUUDPHQWDV &RPSXWDFLRQDLV SDUD 6LPXODomR 6LPXODomR GH6LVWHPDV )HUUDPHQWDV &RPSXWDFLRQDLV SDUD 6LPXODomR #5,6. Simulador voltado para análise de risco financeiro 3RQWRV IRUWHV Fácil de usar. Funciona integrado a ferramentas já bastante conhecidas,

Leia mais

Modelação de mãos, face, cabelo e roupas complementar e tão importante quanto a modelação do corpo Fundamental para garantir expressividade Mãos

Modelação de mãos, face, cabelo e roupas complementar e tão importante quanto a modelação do corpo Fundamental para garantir expressividade Mãos Modelação de mãos, face, cabelo e roupas complementar e tão importante quanto a modelação do corpo Fundamental para garantir expressividade Mãos Importante para grande quantidade de movimentos Fundamental

Leia mais

Design Web - Percepção. Elisa Maria Pivetta

Design Web - Percepção. Elisa Maria Pivetta Design Web - Percepção Elisa Maria Pivetta GESTALT Percepção Visual Elisa Maria Pivetta Percepção visual No sentido da psicologia e das ciências cognitivas é uma de várias formas de percepção associadas

Leia mais

Algoritmos: Lógica para desenvolvimento de programação de computadores. Autor: José Augusto Manzano. Capítulo 1 Abordagem Contextual

Algoritmos: Lógica para desenvolvimento de programação de computadores. Autor: José Augusto Manzano. Capítulo 1 Abordagem Contextual Algoritmos: Lógica para desenvolvimento de programação de computadores Autor: José Augusto Manzano Capítulo 1 Abordagem Contextual 1.1. Definições Básicas Raciocínio lógico depende de vários fatores para

Leia mais

COMPUTAÇÃO GRÁFICA O QUE É?

COMPUTAÇÃO GRÁFICA O QUE É? COMPUTAÇÃO GRÁFICA O QUE É? Curso: Tecnológico em Análise e Desenvolvimento de Sistemas Disciplina: COMPUTAÇÃO GRÁFICA 4º Semestre Prof. AFONSO MADEIRA SUMÁRIO O que é COMPUTAÇÃO GRÁFICA Áreas relacionadas

Leia mais

Universidade de Brasília Faculdade de Ciência da Informação Profa. Lillian Alvares

Universidade de Brasília Faculdade de Ciência da Informação Profa. Lillian Alvares Universidade de Brasília Faculdade de Ciência da Informação Profa. Lillian Alvares Existem três níveis distintos de planejamento: Planejamento Estratégico Planejamento Tático Planejamento Operacional Alcance

Leia mais

CONTROLE DE QUALIDADE e VALIDAÇÃO DE PRODUTO CARTOGRÁFICO

CONTROLE DE QUALIDADE e VALIDAÇÃO DE PRODUTO CARTOGRÁFICO CONTROLE DE QUALIDADE e VALIDAÇÃO DE PRODUTO CARTOGRÁFICO Editar dados em vários formatos e armazenar estas informações em diferentes sistemas é provavelmente uma das atividades mais comuns para os profissionais

Leia mais

DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES

DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES DESENVOLVENDO APLICAÇÃO UTILIZANDO JAVA SERVER FACES Alexandre Egleilton Araújo, Jaime Willian Dias Universidade Paranaense (Unipar) Paranavaí PR Brasil araujo.ale01@gmail.com, jaime@unipar.br Resumo.

Leia mais

Engenharia de Requisitos Estudo de Caso

Engenharia de Requisitos Estudo de Caso Engenharia de Requisitos Estudo de Caso Auxiliadora Freire Fonte: Engenharia de Software 8º Edição / Ian Sommerville 2007 Slide 1 Engenharia de Requisitos Exemplo 1 Reserva de Hotel 1. INTRODUÇÃO Este

Leia mais

MANUAL C R M ÍNDICE. Sobre o módulo de CRM... 2. 1 Definindo a Campanha... 3

MANUAL C R M ÍNDICE. Sobre o módulo de CRM... 2. 1 Definindo a Campanha... 3 ÍNDICE Sobre o módulo de CRM... 2 1 Definindo a Campanha... 3 1.1 Incluir uma campanha... 3 1.2 Alterar uma campanha... 4 1.3 Excluir... 4 1.4 Procurar... 4 2 Definindo os clientes para a campanha... 4

Leia mais

Projeto de Arquitetura

Projeto de Arquitetura Projeto de Arquitetura Ian Sommerville 2006 Engenharia de Software, 8ª. edição. Capítulo 11 Slide 1 Objetivos Apresentar projeto de arquitetura e discutir sua importância Explicar as decisões de projeto

Leia mais

Engenharia de Software III

Engenharia de Software III Engenharia de Software III Casos de uso http://dl.dropbox.com/u/3025380/es3/aula6.pdf (flavio.ceci@unisul.br) 09/09/2010 O que são casos de uso? Um caso de uso procura documentar as ações necessárias,

Leia mais

ANEXO 11. Framework é um conjunto de classes que colaboram para realizar uma responsabilidade para um domínio de um subsistema da aplicação.

ANEXO 11. Framework é um conjunto de classes que colaboram para realizar uma responsabilidade para um domínio de um subsistema da aplicação. ANEXO 11 O MATRIZ Para o desenvolvimento de sites, objeto deste edital, a empresa contratada obrigatoriamente utilizará o framework MATRIZ desenvolvido pela PROCERGS e disponibilizado no início do trabalho.

Leia mais

Metodologia de Gerenciamento de Projetos da Justiça Federal

Metodologia de Gerenciamento de Projetos da Justiça Federal Metodologia de Gerenciamento de Projetos da Justiça Federal Histórico de Revisões Data Versão Descrição 30/04/2010 1.0 Versão Inicial 2 Sumário 1. Introdução... 5 2. Público-alvo... 5 3. Conceitos básicos...

Leia mais

Virtual Welding. Treinamento do futuro

Virtual Welding. Treinamento do futuro Virtual Welding Treinamento do futuro Aprendizagem real via simulador 100% seguro Economia de recursos O pacote de sucesso GERAL O treinamento em soldagem tem agora um novo nome: Fronius Virtual Welding

Leia mais

UNOCHAPECÓ - ÁREA DE CIÊNCIAS EXATAS E AMBIENTAIS ENGENHARIA MECÂNICA - P.I. PROF. EDERSON MOREIRA PAZ

UNOCHAPECÓ - ÁREA DE CIÊNCIAS EXATAS E AMBIENTAIS ENGENHARIA MECÂNICA - P.I. PROF. EDERSON MOREIRA PAZ UNOCHAPECÓ - ÁREA DE CIÊNCIAS EXATAS E AMBIENTAIS ENGENHARIA MECÂNICA - P.I. PROF. EDERSON MOREIRA PAZ PESQUISA DE MERCADO Alguns fatores específicos e relevantes para a confecção de uma proposta. CONSUMIDORES

Leia mais

Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA

Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA Desenvolvendo uma Arquitetura de Componentes Orientada a Serviço SCA RESUMO Ricardo Della Libera Marzochi A introdução ao Service Component Architecture (SCA) diz respeito ao estudo dos principais fundamentos

Leia mais

Universidade Federal de Santa Maria UFSM Centro de Tecnologia CT. Power Point. Básico

Universidade Federal de Santa Maria UFSM Centro de Tecnologia CT. Power Point. Básico Universidade Federal de Santa Maria UFSM Centro de Tecnologia CT Power Point Básico Santa Maria, julho de 2006 O Power Point é um aplicativo do Microsoft Office direcionado à criação de apresentações.

Leia mais

Windowns Live Movie Maker

Windowns Live Movie Maker Windowns Live Movie Maker PROGRAMA CONECTIVIDADE AMBIENTE VIRTUAL PARA APRENDIZAGEM COLABORATIVA CURSO DE TECNOLOGIAS EM EDUCAÇÃO Diretoria de Educação Assessoria de Tecnologias Educacionais Gerência de

Leia mais

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação

UNIVERSIDADE FEDERAL DO PARANÁ UFPR Bacharelado em Ciência da Computação SOFT DISCIPLINA: Engenharia de Software AULA NÚMERO: 10 DATA: / / PROFESSOR: Andrey APRESENTAÇÃO O objetivo desta aula é apresentar e discutir os conceitos de coesão e acoplamento. DESENVOLVIMENTO Projetar

Leia mais

FACULDADE DE ENGENHARIA DE COMPUTAÇÃO. PROJETO FINAL I e II PLANO DE TRABALHO <NOME DO TRABALHO> <Nome do Aluno> <Nome do Orientador>

FACULDADE DE ENGENHARIA DE COMPUTAÇÃO. PROJETO FINAL I e II PLANO DE TRABALHO <NOME DO TRABALHO> <Nome do Aluno> <Nome do Orientador> FACULDADE DE ENGENHARIA DE COMPUTAÇÃO PROJETO FINAL I e II PLANO DE TRABALHO O Trabalho de Conclusão de Curso (TCC) a ser desenvolvido

Leia mais

MRP II. Planejamento e Controle da Produção 3 professor Muris Lage Junior

MRP II. Planejamento e Controle da Produção 3 professor Muris Lage Junior MRP II Introdução A lógica de cálculo das necessidades é conhecida há muito tempo Porém só pode ser utilizada na prática em situações mais complexas a partir dos anos 60 A partir de meados da década de

Leia mais

Sociedade da Informação

Sociedade da Informação Sociedade da Revolução Tecnológica Revolução industrial: ampliação dos músculos m dos homens em forma de equipamentos Mecanização ão. Responsável por mudanças as nas formas de produção existentes Revolução

Leia mais

DESENVOVIMENTO DE GAMES APRESENTAÇÃO. MARCELO HENRIQUE DOS SANTOS http://www.marcelohsantos.com marcelosantos@outlook.com

DESENVOVIMENTO DE GAMES APRESENTAÇÃO. MARCELO HENRIQUE DOS SANTOS http://www.marcelohsantos.com marcelosantos@outlook.com JOGOS DIGITAIS DESENVOVIMENTO DE GAMES APRESENTAÇÃO MARCELO HENRIQUE DOS SANTOS http://www.marcelohsantos.com marcelosantos@outlook.com Bacharel em Sistema de Informação Pós Graduado em Games : Produção

Leia mais

Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS)

Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS) Roteiro para a escrita do documento de Especificação de Requisitos de Software (ERS) Definição Geral: Disciplina de Compiladores Prof. Jorge Bidarra (UNIOESTE) A especificação de requisitos tem como objetivo

Leia mais

Desenvolvimento de uma Etapa

Desenvolvimento de uma Etapa Desenvolvimento de uma Etapa A Fase Evolutiva do desenvolvimento de um sistema compreende uma sucessão de etapas de trabalho. Cada etapa configura-se na forma de um mini-ciclo que abrange as atividades

Leia mais

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008 Tabela de Símbolos Análise Semântica A Tabela de Símbolos Fabiano Baldo Após a árvore de derivação, a tabela de símbolos é o principal atributo herdado em um compilador. É possível, mas não necessário,

Leia mais

Microsoft Office PowerPoint 2007

Microsoft Office PowerPoint 2007 INTRODUÇÃO AO MICROSOFT POWERPOINT 2007 O Microsoft Office PowerPoint 2007 é um programa destinado à criação de apresentação através de Slides. A apresentação é um conjunto de Sides que são exibidos em

Leia mais

Figura 5.1.Modelo não linear de um neurônio j da camada k+1. Fonte: HAYKIN, 2001

Figura 5.1.Modelo não linear de um neurônio j da camada k+1. Fonte: HAYKIN, 2001 47 5 Redes Neurais O trabalho em redes neurais artificiais, usualmente denominadas redes neurais ou RNA, tem sido motivado desde o começo pelo reconhecimento de que o cérebro humano processa informações

Leia mais

AUBR-83 Dicas e Truques. Objetivos:

AUBR-83 Dicas e Truques. Objetivos: [AUBR-83] BIM na Prática: Implementação de Revit em Escritórios de Arquitetura e Engenharia Paulo Henrique Giungi Galvão Revenda TECGRAF Consultor técnico Revit da Revenda TECGRAF AUBR-83 Dicas e Truques

Leia mais

Sistemas de Informação I

Sistemas de Informação I + Sistemas de Informação I Dimensões de análise dos SI Ricardo de Sousa Britto rbritto@ufpi.edu.br + Introdução n Os sistemas de informação são combinações das formas de trabalho, informações, pessoas

Leia mais

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia.

Na medida em que se cria um produto, o sistema de software, que será usado e mantido, nos aproximamos da engenharia. 1 Introdução aos Sistemas de Informação 2002 Aula 4 - Desenvolvimento de software e seus paradigmas Paradigmas de Desenvolvimento de Software Pode-se considerar 3 tipos de paradigmas que norteiam a atividade

Leia mais

UML - Unified Modeling Language

UML - Unified Modeling Language UML - Unified Modeling Language Casos de Uso Marcio E. F. Maia Disciplina: Engenharia de Software Professora: Rossana M. C. Andrade Curso: Ciências da Computação Universidade Federal do Ceará 24 de abril

Leia mais

Introdução Ciclo de vida tradicional de desenvolvimento Prototipagem Pacotes de software Desenvolvimento de 4ª geração Terceirização

Introdução Ciclo de vida tradicional de desenvolvimento Prototipagem Pacotes de software Desenvolvimento de 4ª geração Terceirização Prof. Ricardo José Pfitscher Material elaborado com base em: José Luiz Mendes Gerson Volney Lagemann Introdução Ciclo de vida tradicional de desenvolvimento Prototipagem Pacotes de software Desenvolvimento

Leia mais

O Gerenciamento de Documentos Analógico/Digital

O Gerenciamento de Documentos Analógico/Digital Tipos de GED: Document imaging Document management Document Imaging / Document Management O Gerenciamento de Documentos Analógico/Digital Mundo analógico Criação Revisão Processamento Arquivo Mundo digital

Leia mais

2 Diagrama de Caso de Uso

2 Diagrama de Caso de Uso Unified Modeling Language (UML) Universidade Federal do Maranhão UFMA Pós Graduação de Engenharia de Eletricidade Grupo de Computação Assunto: Diagrama de Caso de Uso (Use Case) Autoria:Aristófanes Corrêa

Leia mais

1.1. Aplicações de TVD dinâmicas

1.1. Aplicações de TVD dinâmicas 1 Introdução Uma aplicação de TV Digital (TVD) comumente é composta por um vídeo principal associado a outros objetos (aplicações, imagens, vídeos, textos etc.), que são transmitidos em conjunto possibilitando

Leia mais

GESTÃO DAS INFORMAÇÕES DAS ORGANIZAÇÕES MÓDULO 11

GESTÃO DAS INFORMAÇÕES DAS ORGANIZAÇÕES MÓDULO 11 GESTÃO DAS INFORMAÇÕES DAS ORGANIZAÇÕES MÓDULO 11 Índice 1. Importância do ERP para as organizações...3 2. ERP como fonte de vantagem competitiva...4 3. Desenvolvimento e implantação de sistema de informação...5

Leia mais

DEPARTAMENTO DE MATEMÁTICA E CIÊNCIAS EXPERIMENTAIS - Grupo 550 INFORMÁTICA Planificação Anual /Critérios de avaliação

DEPARTAMENTO DE MATEMÁTICA E CIÊNCIAS EXPERIMENTAIS - Grupo 550 INFORMÁTICA Planificação Anual /Critérios de avaliação DOMÍNIOS (Unidades) UNIDADE 1 INTRODUÇÃO À PROGRAMAÇÃO Introdução Conteúdos Objetivos Estratégias/ recursos Conceitos fundamentais Teste e controlo de erros em algoritmia Estruturas de controlo Arrays

Leia mais

Ptex e outras ferramentas para modelagem de animação

Ptex e outras ferramentas para modelagem de animação Ptex e outras ferramentas para modelagem de animação Savyo Nóbrega (savyo@dsc.ufcg.edu.br) Agenda Motivação Conceitos Gerais Modelagem Matemática Mapeamento de texturas Softwares e ferramentas para modelagem

Leia mais

ARQUITETURA DE SOFTWARE

ARQUITETURA DE SOFTWARE ARQUITETURA DE SOFTWARE Em seu livro, que constitui um referencial sobre o assunto, Shaw e Garlan discutem arquitetura de software da seguinte maneira: Desde quando o primeiro programa foi dividido em

Leia mais

Gerenciamento de Riscos do Projeto Eventos Adversos

Gerenciamento de Riscos do Projeto Eventos Adversos Gerenciamento de Riscos do Projeto Eventos Adversos 11. Gerenciamento de riscos do projeto PMBOK 2000 PMBOK 2004 11.1 Planejamento de gerenciamento de riscos 11.1 Planejamento de gerenciamento de riscos

Leia mais

WORKING PAPERS AVATAR EXPRESS: CREATE, EDIT, ANIMATE

WORKING PAPERS AVATAR EXPRESS: CREATE, EDIT, ANIMATE WORKING PAPERS AVATAR EXPRESS: CREATE, EDIT, ANIMATE Resumo Nos dias de hoje a forma como comunicamos e interagimos com o mundo passa, muitas vezes, por ecrãs. Televisão, computadores, telemóveis e tablets

Leia mais

O Rational Unified Process (RUP) é um processo de desenvolvimento de software inspirado no

O Rational Unified Process (RUP) é um processo de desenvolvimento de software inspirado no 1.1 RATIONAL UNIFIED PROCESS (RUP) O Rational Unified Process (RUP) é um processo de desenvolvimento de software inspirado no processo que atende pelo nome de Processo Unificado (ou UP do inglês Unified

Leia mais

Introdução ao Modelos de Duas Camadas Cliente Servidor

Introdução ao Modelos de Duas Camadas Cliente Servidor Introdução ao Modelos de Duas Camadas Cliente Servidor Desenvolvimento de Sistemas Cliente Servidor Prof. Esp. MBA Heuber G. F. Lima Aula 1 Ciclo de Vida Clássico Aonde estamos? Page 2 Análise O que fizemos

Leia mais

Engenharia de Sistemas Computacionais

Engenharia de Sistemas Computacionais Engenharia de Sistemas Detalhes no planejamento UNIVERSIDADE FEDERAL DE ALAGOAS Curso de Ciência da Computação Engenharia de Software I Prof. Rômulo Nunes de Oliveira Introdução Na aplicação de um sistema

Leia mais

ATIVIDADES PRÁTICAS SUPERVISIONADAS

ATIVIDADES PRÁTICAS SUPERVISIONADAS ATIVIDADES PRÁTICAS SUPERVISIONADAS CST em Análise e Desenvolvimento de Sistemas 5ª. Série Programação e Design para Web A atividade prática supervisionada (ATPS) é um procedimento metodológico de ensino-aprendizagem

Leia mais

Tópicos em Engenharia de Software (Optativa III) AULA 2. Prof. Andrêza Leite andreza.lba@gmail.com (81 )9801-6619

Tópicos em Engenharia de Software (Optativa III) AULA 2. Prof. Andrêza Leite andreza.lba@gmail.com (81 )9801-6619 Tópicos em Engenharia de Software (Optativa III) AULA 2 Prof. Andrêza Leite andreza.lba@gmail.com (81 )9801-6619 Engenharia de Software Objetivo da aula Depois desta aula você terá uma revisão sobre o

Leia mais

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software

PROCESSO DE DESENVOLVIMENTO DE SOFTWARE. Modelos de Processo de Desenvolvimento de Software PROCESSO DE DESENVOLVIMENTO DE SOFTWARE Introdução Modelos de Processo de Desenvolvimento de Software Os modelos de processos de desenvolvimento de software surgiram pela necessidade de dar resposta às

Leia mais

CURSOS OFERECIDOS. seus objetivos e metas. E também seus elementos fundamentais de Administração, como: PLANEJAMENTO, ORGANIZAÇÃO E CONTROLE.

CURSOS OFERECIDOS. seus objetivos e metas. E também seus elementos fundamentais de Administração, como: PLANEJAMENTO, ORGANIZAÇÃO E CONTROLE. CURSOS OFERECIDOS Access 2007 Aproximadamente 20 horas O aluno aprenderá criar Banco de Dados de forma inteligente, trabalhar com estoques, número de funcionários, clientes etc. Conhecerá ferramentas aprimoradas

Leia mais

Computação Gráfica. Introdução. Profª Alessandra Martins Coelho

Computação Gráfica. Introdução. Profª Alessandra Martins Coelho Computação Gráfica Introdução Profª Alessandra Martins Coelho março/2013 Introdução Computação gráfica (CG) é a utilização de computadores para gerar imagens (GUHA, 2013). Nos dias atuais, para não se

Leia mais

Capítulo 2 Introdução à ferramenta Flash

Capítulo 2 Introdução à ferramenta Flash Capítulo 2 Introdução à ferramenta Flash Índice 1. O uso da ferramenta Flash no projeto RIVED.... 1 2. História do Flash... 4 1. O uso da ferramenta Flash no projeto RIVED. É importante, antes de iniciarmos

Leia mais

Taxa de Gravação da Memória RAM (MegaBytes / segundo) G5 2.7 Ghz (Mac) Linux Kernel 2.6 2799 1575

Taxa de Gravação da Memória RAM (MegaBytes / segundo) G5 2.7 Ghz (Mac) Linux Kernel 2.6 2799 1575 21 4 Análise É necessária uma análise criteriosa, que busque retornar as questões primordiais sobre o que é realmente preciso para a aquisição de uma plataforma de produção gráfica digital profissional.

Leia mais

ANDRÉ APARECIDO DA SILVA APOSTILA BÁSICA SOBRE O POWERPOINT 2007

ANDRÉ APARECIDO DA SILVA APOSTILA BÁSICA SOBRE O POWERPOINT 2007 ANDRÉ APARECIDO DA SILVA APOSTILA BÁSICA SOBRE O POWERPOINT 2007 CURITIBA 2015 2 SUMÁRIO INTRODUÇÃO AO MICROSOFT POWERPOINT 2007... 3 JANELA PRINCIPAL... 3 1 - BOTÃO OFFICE... 4 2 - FERRAMENTAS DE ACESSO

Leia mais

DESENVOLVIMENTO WEB DENTRO DOS PARADIGMAS DO HTML5 E CSS3

DESENVOLVIMENTO WEB DENTRO DOS PARADIGMAS DO HTML5 E CSS3 DESENVOLVIMENTO WEB DENTRO DOS PARADIGMAS DO HTML5 E CSS3 Eduardo Laguna Rubai, Tiago Piperno Bonetti Universidade Paranaense (Unipar) Paranavaí PR- Brasil eduardorubay@gmail.com, bonetti@unipar.br Resumo.

Leia mais

Complemento III Noções Introdutórias em Lógica Nebulosa

Complemento III Noções Introdutórias em Lógica Nebulosa Complemento III Noções Introdutórias em Lógica Nebulosa Esse documento é parte integrante do material fornecido pela WEB para a 2ª edição do livro Data Mining: Conceitos, técnicas, algoritmos, orientações

Leia mais

Universidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1.

Universidade Federal de Santa Maria Curso de Arquivologia. Disciplina de Banco de Dados Aplicados à Arquivística. Versao 1. Universidade Federal de Santa Maria Curso de Arquivologia Disciplina de Banco de Dados Aplicados à Arquivística Prof. Andre Zanki Cordenonsi Versao 1.0 Março de 2008 Tópicos Abordados Conceitos sobre Banco

Leia mais

Apostila de PowerPoint 2013

Apostila de PowerPoint 2013 Iniciando o Power Point 2013...01 Nova apresentação baseada no modelo...01 Escolhendo o esquema de cores do fundo do slide manualmente...02 Modificando o layout do slide... 03 Inserindo textos no slide...

Leia mais

GERENCIAMENTO DO CONHECIMENTO NA EMPRESA DIGITAL

GERENCIAMENTO DO CONHECIMENTO NA EMPRESA DIGITAL Capítulo 10 GERENCIAMENTO DO CONHECIMENTO NA EMPRESA DIGITAL 10.1 2003 by Prentice Hall OBJETIVOS Por que hoje as empresas necessitam de programas de gestão do conhecimento e sistemas para gestão do conhecimento?

Leia mais

3 Arquitetura do Sistema

3 Arquitetura do Sistema 3 Arquitetura do Sistema Este capítulo irá descrever a arquitetura geral do sistema, justificando as decisões de implementação tomadas. Na primeira seção iremos considerar um conjunto de nós interagindo

Leia mais

Processos de gerenciamento de projetos em um projeto

Processos de gerenciamento de projetos em um projeto Processos de gerenciamento de projetos em um projeto O gerenciamento de projetos é a aplicação de conhecimentos, habilidades, ferramentas e técnicas às atividades do projeto a fim de cumprir seus requisitos.

Leia mais

SUMÁRIO TUTORIAL DO HQ. 2 DICAS PEDAGÓGICAS:. 2 DOWNLOAD DA INSTALAÇÃO. 2 PASSO 1 FORMULÁRIO PARA DOWNLOAD. 2 PASSO 2 ESCOLHENDO A VERSÃO.

SUMÁRIO TUTORIAL DO HQ. 2 DICAS PEDAGÓGICAS:. 2 DOWNLOAD DA INSTALAÇÃO. 2 PASSO 1 FORMULÁRIO PARA DOWNLOAD. 2 PASSO 2 ESCOLHENDO A VERSÃO. SUMÁRIO TUTORIAL DO HQ... 2 DICAS PEDAGÓGICAS:... 2 DOWNLOAD DA INSTALAÇÃO... 2 PASSO 1 FORMULÁRIO PARA DOWNLOAD... 2 PASSO 2 ESCOLHENDO A VERSÃO... 3 PASSO 3 INSTRUÇÕES DE INSTALAÇÃO... 4 CRIANDO NOVAS

Leia mais

Análise e Projeto Orientados por Objetos

Análise e Projeto Orientados por Objetos Análise e Projeto Orientados por Objetos Aula 02 Análise e Projeto OO Edirlei Soares de Lima Análise A análise modela o problema e consiste das atividades necessárias para entender

Leia mais

IW10. Rev.: 02. Especificações Técnicas

IW10. Rev.: 02. Especificações Técnicas IW10 Rev.: 02 Especificações Técnicas Sumário 1. INTRODUÇÃO... 1 2. COMPOSIÇÃO DO IW10... 2 2.1 Placa Principal... 2 2.2 Módulos de Sensores... 5 3. APLICAÇÕES... 6 3.1 Monitoramento Local... 7 3.2 Monitoramento

Leia mais

4 Cursos de nível superior no Brasil para formação de Designers de Games

4 Cursos de nível superior no Brasil para formação de Designers de Games 4 Cursos de nível superior no Brasil para formação de Designers de Games Este Capítulo apresenta o levantamento realizado dos cursos de nível superior no Brasil voltados para a formação de Designers de

Leia mais

Oficina de Multimédia B. ESEQ 12º i 2009/2010

Oficina de Multimédia B. ESEQ 12º i 2009/2010 Oficina de Multimédia B ESEQ 12º i 2009/2010 Conceitos gerais Multimédia Hipertexto Hipermédia Texto Tipografia Vídeo Áudio Animação Interface Interacção Multimédia: É uma tecnologia digital de comunicação,

Leia mais

ROTEIRO PARA TREINAMENTO DO SAGRES DIÁRIO Guia do Docente

ROTEIRO PARA TREINAMENTO DO SAGRES DIÁRIO Guia do Docente Conceito ROTEIRO PARA TREINAMENTO DO SAGRES DIÁRIO Guia do Docente O Sagres Diário é uma ferramenta que disponibiliza rotinas que facilitam a comunicação entre a comunidade Docente e Discente de uma instituição,

Leia mais

Guia de utilização da notação BPMN

Guia de utilização da notação BPMN 1 Guia de utilização da notação BPMN Agosto 2011 2 Sumário de Informações do Documento Documento: Guia_de_utilização_da_notação_BPMN.odt Número de páginas: 31 Versão Data Mudanças Autor 1.0 15/09/11 Criação

Leia mais

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP)

Hardware (Nível 0) Organização. Interface de Máquina (IM) Interface Interna de Microprogramação (IIMP) Hardware (Nível 0) Organização O AS/400 isola os usuários das características do hardware através de uma arquitetura de camadas. Vários modelos da família AS/400 de computadores de médio porte estão disponíveis,

Leia mais

Ao longo do presente capítulo será apresentada uma descrição introdutória da tecnologia FPGA e dos módulos básicos que a constitui.

Ao longo do presente capítulo será apresentada uma descrição introdutória da tecnologia FPGA e dos módulos básicos que a constitui. 3 Tecnologia FPGA Ao longo do presente capítulo será apresentada uma descrição introdutória da tecnologia FPGA e dos módulos básicos que a constitui. 3.1. FPGA: Histórico, linguagens e blocos Muitos dos

Leia mais

TRABALHO DE DIPLOMAÇÃO Regime Modular ORIENTAÇÕES SOBRE O ROTEIRO DO PROJETO FINAL DE SISTEMAS DE INFORMAÇÕES

TRABALHO DE DIPLOMAÇÃO Regime Modular ORIENTAÇÕES SOBRE O ROTEIRO DO PROJETO FINAL DE SISTEMAS DE INFORMAÇÕES TRABALHO DE DIPLOMAÇÃO Regime Modular ORIENTAÇÕES SOBRE O ROTEIRO DO PROJETO FINAL DE SISTEMAS DE INFORMAÇÕES [Observação: O template a seguir é utilizado como roteiro para projeto de sistemas orientado

Leia mais

Disciplina: Programas de Edição de Textos Professora: Érica Barcelos

Disciplina: Programas de Edição de Textos Professora: Érica Barcelos Disciplina: Programas de Edição de Textos Professora: Érica Barcelos CAPÍTULO 4 4. RECURSOS PARA ILUSTRAÇÕES Uma característica que difere os processadores de textos dos editores é a possibilidade de gerar

Leia mais

Funções & Especificações

Funções & Especificações Funções & Especificações A linha de produto do Autodesk Inventor oferece um amplo e integrado conjunto de aplicações de projeto e ferramentas de transição 2D para ajudar as empresas de fabricação a evoluir

Leia mais

Capítulo 3. Avaliação de Desempenho. 3.1 Definição de Desempenho

Capítulo 3. Avaliação de Desempenho. 3.1 Definição de Desempenho 20 Capítulo 3 Avaliação de Desempenho Este capítulo aborda como medir, informar e documentar aspectos relativos ao desempenho de um computador. Além disso, descreve os principais fatores que influenciam

Leia mais

PIXEL - DO DESENHO À PINTURA DIGITAL

PIXEL - DO DESENHO À PINTURA DIGITAL F PIXEL - DO DESENHO À PINTURA DIGITAL Carga Horária: 96 horas/aulas Módulo 01: Desenho de observação DESCRIÇÃO: Neste módulo o você irá praticar sua percepção de linhas e formas, bem como a relação entre

Leia mais

Criando Quiz com BrOffice.impress

Criando Quiz com BrOffice.impress Criando Quiz com BrOfficeimpress A ferramenta de apresentação possibilita o desenvolvimento de várias atividades interativas como: Sete erros Quiz (Perguntas/Respostas), Colocar em ordem objetos, alfabeto,

Leia mais