introducción a animación facial en mpeg-4

Post on 09-Jan-2016

40 Views

Category:

Documents

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

Introducción a Animación Facial en MPEG-4. David Escudero Mancebo Universidad de Valladolid. Índice. Introducción Especificación y animación de las caras Modelado de caras en estado neutro Parámetros de animación facial Especificación del modelo de la cara - PowerPoint PPT Presentation

TRANSCRIPT

Introducción a Animación Facial en MPEG-4David Escudero Mancebo

Universidad de Valladolid

Índice

Introducción Especificación y animación de las caras

Modelado de caras en estado neutroParámetros de animación facialEspecificación del modelo de la cara

Integración de Face animation y text-to-speech

Integración en sistemas MPEG-4

Índice

Introducción Especificación y animación de las caras

Modelado de caras en estado neutroParámetros de animación facialEspecificación del modelo de la cara

Integración de Face animation y text-to-speech

Integración en sistemas MPEG-4

Introducción MPEG-4 FA es la primera propuesta de

parametrización de animación facial (FA) en ser estandarizada.

FA se alimenta del mundo de los creativos 3D y de la ingeniería TIC.

MPEG es vídeo¡¡¡ No sólo. MPEG-4 se preocupa de las extensiones: Synthetic Natual Hybrid Coding activity SNHC: cómo

integrar grafismos 2D y 3D en vídeo. Face and Body Animation (FBA) subgrupo.

Introducción Taxonomía de Facial Animation

High-level utiliza los parámetros low-level.

IntroducciónBeneficios de MPEG-4

Rango de posibles caras o expresiones: Los Facial Definition Paremters (FDP) son escalables y permiten la

modificación de la cara enviando feature points (FPs), nuevas texturas o la malla completa.

Los Facial Animation Parameters (FAPs) cubren las principales articulaciones.

Existen Facial Animation Tables (FATs) que permiten la especificación precisa de los movimientos de los vértices asignado a cada FAP.

Fácil de usar Es muy de bajo nivel y no es fácil de emplear. Sin embargo los FAPs son fácilmente interpretables. También hay FAPs de alto nivel como visemas y expresiones.

IntroducciónBeneficios de MPEG-4

Reproduce variaciones de cara sutiles Permite un amplio abanico de gestos

Ortogonal Los FAPs son ortogonales porque cada uno se refiere a un gesto Sin embargo diferentes FAPs pueden afectar a los mismos puntos

de la maya y es necesario combinar. Portabilidad

Los FAPs están normalizados con respecto a la cara.

Introducción Historia de la animación facial

Se solía hacer ad hoc. FACS Facial Action Conding System es un sistema para evaluar

las expresiones faciales codificándolas en 46 Action Units (AU). Parametrización Parke: parámetros de expresión (abrir

párpados, arquear cejas, ancho de la boca….) y parámetros de coformidad (alto de la nariz, largo de las cejas…).

Abstract Muscle Actions AMA con pseudomúsculos que definen el movimiento. Cierra el labio superior, parpado izquierdo… Proyecta los AUS en una serie de AMAs.

Minimal Perceptible Actions (MPAs). Describe los efectos visibles de uno o más músculos y los combina en expresiones de más alto nivel: levanta el párpado, mueve el ojo en vertical…

Índice

Introducción Especificación y animación de las caras

Modelado de caras en estado neutroParámetros de animación facialEspecificación del modelo de la cara

Integración de Face animation y text-to-speech

Integración en sistemas MPEG-4

Especificación y animación de caras MPEG-4 especifica:

El modelo de la cara en su estado neutro con un número de FPs (face parameters) en el estado neutro como puntos de referencia y

un conjunto de FAPs cada uno se corresponde con una acción particular que debe realizar la cara.

La secuencia animada se genera deformando la cara de acuerdo a los valores de los FAPs a lo largo del tiempo.

El valor de cada FAP es la magnitud de la acción correspondiente. Para que un terminal MPEG-4 pueda interpretar los FAPs en su

modelo de cara, tiene que tener definidas una serie de reglas para producir la animación correspondiente.

El terminal puede usar sus propias reglas o descargar el modelo de cara y las FAT (face animation tables) asociadas para realizar el movimiento.

Índice

Introducción Especificación y animación de las caras

Modelado de caras en estado neutroParámetros de animación facialEspecificación del modelo de la cara

Integración de Face animation y text-to-speech

Integración en sistemas MPEG-4

Modelado de caras en estado neutro Todos los músculos de la cara

están relajados. Los párpados están tangentes

al iris. La pupila está a 1/3 del iris. Los labios están en contacto.

La línea de contacto es horizontal de la misma longitud que la distancia entre comisuras.

La boca está cerrada y los dientes de arriba y de abajo se tocan.

La lengua es plana, horizontal con el pico tocando el cierre de los dientes.

Modelado de caras en estado neutro

FAPU (Face animation parameters units) Para definir FAPs para cualquier cara. Son fracciones de distancias entre puntos clave en la

cara neutral.

Modelado de caras en estado neutroFeatures Points (FPs) MPEG-4 especifica 84 FPs en la cara

neutral. Son referencias espaciales para los

FAPs. Algunos FPs no se ven afectados por

los FAPs (ej. La linea del pelo). Se requiren para definir la forma de la cara.

Se ordenan en grupos: ojos, boca… La posición de los FPs debe ser

conocida por el modelo de cara compatible MPEG

Hay recomendaciones para posicionar (gráfico y tabla de restricciones)

Índice

Introducción Especificación y animación de las caras

Modelado de caras en estado neutroParámetros de animación facialEspecificación del modelo de la cara

Integración de Face animation y text-to-speech

Integración en sistemas MPEG-4

Parámetros de animación facial Los FAPs (Face Animation Parameters)

se basan en el estudio de las acciones mínimas perceptibles y tienen que ver con las acciones de los músculos.

Los 68 parámetros se categorizan en 10 grupos relacionados con las partes de la cara.

Representan un conjunto de acciones faciales básicas como movimientos de cabeza, de lengua, de ojos…

Para cada FAP, el estándar define las FAPU que hay que emplear, el FAP group, La dirección positiva del movimiento Si el movimiento del FP es

unidireccional o bidireccional. FAPs de bajo nivel 2-10. Especifica

cuanto se mueve el FP con una magnitud dada.

FAPs de alto nivel: visemas y expresiones.

Parámetros de animación facialFAP 1 Visemas

Un visema es un correlato con un fonema.

El estándar incluye 14 visemas estáticos.

Las articulaciones se consiguen combinando el fonema actual con el anterior y el siguiente.

Las transiciones se hacen mezclando visemas con un factor de peso.

Parámetros de animación facialFAP 2 Expresión facial Seis expresiones básicas. Se

pueden combinar. Las expresiones se animan

con un valor de excitación [0-64] para cada emoción.

Parámetros de animación facial

El uso de los parámetros FAP1 y 2 junto con el resto de FAPS bajo nivel puede causar efectos inesperado:Todos actúan sobre los mismos elementos de

la cara.Los de bajo nivel tienen prioridad.

Parámetros de animación facial

Índice

Introducción Especificación y animación de las caras

Modelado de caras en estado neutroParámetros de animación facialEspecificación del modelo de la cara

Integración de Face animation y text-to-speech

Integración en sistemas MPEG-4

Especificación del modelo de cara Los terminales compatibles con MPEG-4

Tienen que ser capaces de decodificar un stream de FAPs Aportar un modelo de cara compatible que animan. El decodificador no permite ver el modelo de cara.

Un nodo FDP permite al decodificador especificar el modelo de cara que tiene que animar. Definición de la geometría estática. Propiedades superficiales Reglas de animación con una FAT para especificar cómo se

deforma el modelo de acuerdo a las FAPs. Como alternativa el nodo FDP puede ser usado para

calibrar el modelo propietario del decoder. MPEG-4 no dice cómo calibrar.

Especificación del modelo de caraModelo de cara propietario: Para que un modelo de cara sea compatible con MPEG-

4 debe ejecutar todos los FAPs posibles. Al menos tantos vértices como FPs: 50 vértices. Para generar una cara agradable, se estima necesario al

menos 500 vértices. 4 pasos:

Construir la forma de la cara para posicionar los FPs. Para cada FAP hay de determinar cómo se mueven los FPs. Se define cómo afecta el movimiento de cada FP en los

vértices. Se suelen emplear FATs, modelos basados en deformación de músculos o clones de modelos.

Para las expresiones el estándar sólo da consejos cualitativos. Los visemas asignando una posición a los labios.

Especificación del modelo de caraAdaptación o calibrado del modelo de la cara: El encoder puede especificar la posición de los FPs. El decoder deberá adaptar su cara a las nuevas

posiciones. (no hay garantías de calidad). Pensado para enviar diferentes texturas al modelo de

cara. Se envían las coordenadas de mapeo de la textura. Se especifica la posición de cada FP en el mapa de textura.

Especificación del modelo de caraModelado de la cara usando un grafo de escena Para pasar un modelo de cara al decoder, se espefica

un modelo de cabeza con un grafo de escena usando MPEG-4 BIFS.

Mismos nodos que VRML: Groups, Transforms, IndexedFaceSet (Geometrías), Texturas

Especificación del modelo de caraDefinición de reglas de animación empleando una FAT La FAT define cómo se deforma el modelo en función de

la amplitud de los FAPs. Se emplean 3 nodos BIFS:

FaceDefTable, FaceDefTransform, FaceDefMesh Son parte del modelo de la cara. El FaceDefTable, especifica para cada FAP los nodos del grafo

de escena que se modifican y cómo usando FaceDefTransform y FaceDefMesh

Especificación del modelo de caraDefinición de reglas de animación empleando una FAT Definición de la animación para un nodo transform:

Si el FAP provoca una rotación, trasladado o escala, un nodo Transform describe la animación.

El FaceDefTable especifica un FaceDefTransform node que define el tipo de transformación y el factor de escala para la correspondiente transformación.

Durante la animación, el valor del FAP recibido, el FAPU y el factor de escala determina el valor real para transformar el modelo.

Especificación del modelo de caraDefinición de reglas de animación empleando una FAT Definición de la animación para un nodo

IndexedFaceSet: Cuando un FAP causa una deformación en el modelo de la

cara, el FaceDefTable usa el nodo FaceDefMesh para definir las deformaciones en el IndexedFaceSet.

Las deformaciones flexibles del IndexedFaceSet se consiguen aplicando una función lineal a intervalos sobre los vértices con valores de amplitud de las FAP.

El FaceDefMesh define para cada vértice afectado su prorpia función lineal a intervalos especificando los intervalos sobre la magnitud de las FAP y los desplazamientos 3D correspondientes. El movimiento de cada vértice se limita a una recta.

Especificación del modelo de cara

Definición de reglas de animación empleando una FAT

Especificación del modelo de cara

Ejemplo

Especificación del modelo de cara

Definición de reglas de animación empleando una FAT Algoritmo de reposicionamiento del vértice Pm, con

desplazamiento Dm,k con k intervalos.1. Determinar el intervalo listado en el FaceDefMesh en el que recae el valor del FAP

recibido.

2. Si se recibe un FAP en el intervalo j = [Ij,Ij+1] con 0=Ik<=Ij

3. Si FAP > Imax, Pm se calcula con la fórmula anterior haciendo j=max-1

4. Si el FAP está en [Ij,Ij+1] y Ij+1<=Ik =0

5. Si FAP <I1 ecuación 4 con j=1

6. Si sólo hay un intervalo

No es necesario limitarlo a caras.

]*)(...]*)0[(* ,,1 jmjkmkmm DIFAPDIFAPUPP

]*)0(...]*)[(* 1,1,1 kmkjmjmm DIDFAPIFAPUPP

1,** mmm DFAPFAPUPP

Especificación del modelo de cara

Definición de reglas de animación empleando una FAT

Ejemplo FAP 6 estira una comisura del labio.

IndexedFaceSet llamado Face Tres intervalos: [-1000,0][0,500][500,1000] Se dan desplazamientos para los vértices 50 y 51 Para el 50:

P’50=P50+500(0.9 0 0)T+100(1.5 0 4)T=P50+(600 0 400) T

FAP 13 rotación horizontal del párpado. El eje de rotación es el (0,-1,0) El FAP determina el ángulo

Especificación del modelo de caraAhorro de tiempo en la construcción de FAT Un generador de FaceDefTable calcula estas tablas a partir de

un conjunto de modelos de caras. El modelador maneja modelos de caras y diseña las diferentes

configuraciones. El Generador de FaceDefTables compara los modelos

confeccionados con el modelo básico. Comparando los vértices se identifican los vértices implicados en

el movimiento. El renderer accede al modelo básico y a las deformaciones.

Índice

Introducción Especificación y animación de las caras

Modelado de caras en estado neutroParámetros de animación facialEspecificación del modelo de la cara

Integración de Face animation y text-to-speech

Integración en sistemas MPEG-4

Integración con síntesis de habla

Integración con síntesis de habla El problema clave es la sincronización. Sólo puede haber sincronización si se envía prosodia y

timing information. El stream TTS genera texto y prosodia El MPEG-4 TTSI decoder decodifica la información para

dársela al TTS propietario. El TTS crea las muestras de audio. El compositor presenta audio y video al usuario. El TTS envía los fonemas y las duraciones e instante inicial de

los fonemas al phoneme/Bookmark-to-FAP-Converter. El converter trasforma la información en FAPs.

Integración con síntesis de habla La sincronización precisa de bookmarks

en el texto.El TTS envía el bookmark al

Phoneme/Bookmark-to-FAP converter a la vez que genera el primer fonema.

El bookmark define el tiempo de comienzo y la duración de la transición a la nueva amplitud del FAP.

La consecuencia es que no se acumulan retrasos.

Índice

Introducción Especificación y animación de las caras

Modelado de caras en estado neutroParámetros de animación facialEspecificación del modelo de la cara

Integración de Face animation y text-to-speech

Integración en sistemas MPEG-4

Integración con sistemas MPEG-4

Un grafo de escena BIFS tiene que ser transmitido al terminal MPEG-4.

Integración con sistemas MPEG-4

Un nodo FAP recibe el stream de FAPs. Este nodo habilita al encoder para realizar los movimientos.

Integración con sistemas MPEG-4

Un nodo AudioSource es controlado por el TTS.

Integración con sistemas MPEG-4

Si se descargan los modelos de la cara hace falta un nodo FDP. Contiene la posición de los FPs, y los gráficos

Integración con sistemas MPEG-4

MPEG-4 puede incluir time stamps en los streams para sincronizar.

Demos EPTAMEDIA

http://www.eptamedia.com/faceanim/en-doc/en-demo-c-netnews.htm ALTER EGO

http://www.studiopendulum.com/alterego/clients_and_projects.html Hannover University

http://www.tnt.uni-hannover.de/project/facialanimation/demo/index.html  Tsinghua University

http://hcsi.cs.tsinghua.edu.cn/english/demoavatar.htm  Taiwan University

http://www.cmlab.csie.ntu.edu.tw/~keico/jcst/edm.html Terniske University

http://www2.imm.dtu.dk/~aam/ http://www.youtube.com/watch?v=eSS4GFIH94w

XFACE

Referencias

La referencia principal de esta presentación es el artículo “Face and 2-D mesh animation in MPEG-4”, Signal processing: Image Communication, Vol 15, 2000, pp. 387-421

Introducción a Animación Facial en MPEG-4David Escudero Mancebo

Universidad de Valladolid

top related