Objectivos • Criação de um sistema de animação facial – Interface gráfica para configuração e prévisualização dos modelos virtuais • Integração no Sistema de Diálogo – Nova forma de comunicação entre o utilizador e a máquina (apoio à fala) Animação Facial • Face humana como canal de transmissão de informação – Estados de espírito – Pensamentos – Emoções • Tipos base de animação – Interpolação • Atribuição de expressões faciais a tramas-chave (key-frames) e depois calcular as tramas intermédias de modo automático – Baseada em Desempenho • Medição de acções realizadas por humanos – Baseada em Músculos • Modelos matemáticos simulando as principais características dos músculos faciais e tecidos Músculos • Definidos 4 tipos: – Músculos baseados nos modelos propostos por Waters: • Linear • Esfíncter – Músculos para a zona dos olhos: • Extensão ao modelo esfíncter de Waters – Rotação do maxilar inferior • Emulação do comportamento da pele na zona do queixo. Músculos - Linear • Quando actuado, V2 é contraído na direcção de V1, dando origem ao deslocamento de todos os pontos dentro da região pertencente ao musculo. Músculos - Esfíncter • Quando actuado, este tipo de músculo actua sobre os pontos pertencentes à região, aproximando-os do centro, e empurrando-os simultaneamente para fora Músculo do tipo esfincter Extensão ao músculo do tipo esfíncter Rotação do Maxilar Inferior • Simula o deslocamento da pele devido à rotação do maxilar inferior Outros tipos de Deformações • Criados de forma a tornar mais natural e realista as animações geradas: – Piscar dos olhos – Movimento dos olhos – Movimento da cabeça Expressões Faciais • Dois tipos de expressões faciais (grupos de músculos) – Visemas • Configuração da boca (lábios, língua e dentes) que está visualmente correlacionada com a produção de um ou mais fonemas. • Estão normalmente associados aos músculos na zona da boca – Emoções • Seis emoções base: – – – – – – Triste (Sadness) Irritado (Anger) Contente (Happiness) Medo (Fear) Chateado (Disgust) Surpreso (Surprise) • Associadas a qualquer músculo presente na face Animação • Baseada em interpolações – Acções musculares associadas a key-frames. – Cálculo das tramas intermédias realizado através da interpolação das intensidades associadas ao músculos – Deformação da malha através da aplicação ao músculos das intensidades resultantes do cálculo da interpolação I I 2 I1 t 2 t1 slope t I1 slope • Sincronização – É realizada a sincronização do áudio gerado pelo TTS (Text To Speech) com o movimento dos lábios Persistencia • Armazenamento de animações – VHML (Virtual Human Markup Language) • Baseada em sub linguagens (EML, GML, SML, FAML, BAML, XHTML, DMML) • Demasiado extensa para o que se pretendia • Adaptada a situação • Exemplo <vhml> <p> <emotion=‘joy’ slope='1.0' intensity=‘60‘> <headmovement name='headlook@' xintensity='20' yintensity='15' slope='1'> <break duration=‘2’/> Olá, isto é um exemplo vhml. <headmovement name='eyeblink' duration='.5' nblink='2' slope='.1'/> </headmovement> </emotion> </p> </vhml> Integração • Integração no Sistema de Diálogo Sistema de Diálogo IOM A F S M FACE TTS S F M D S A P HUB ASR SOS EOS TIMEOUT ΔT Sleep Speech DTW TIMEOUT SOS ΔT SOS SDTALK Wait RESULT SDTALK SDSTOP/ TIMEOUT Talk Command SDTALK SDSTOP / TIMEOUT SDSTOP / TIMEOUT DTWWord • Geração de animações que reflictam o estado do sistema de diálogo. – Máquina de Estados Interface Gráfica de Configuração • Desenvolvida no âmbito de facilitar toda a configuração – Parametrização de emoções, Visemas, músculos – Criação de animações – Permitir a avaliação dos resultados de modo instantâneo Conclusões • A face humana é sem dúvida uma das partes mais complexas de reproduzir • Um dos pontos mais importantes na animação facial passa pela captura de dados com vista à obtenção de resultados mais reais. • Incremento qualitativo da interacção com o utilizador (integração no sistema de diálogo) Aplicações Futuras • Animação do corpo • Modelação de rugas • Aplicação de variações na cor da pele para uma melhor exteriorização dos estados de espírito • Criação de um módulo para geração de emoções contextualizadas com o curso do diálogo Resultados Resultados