ES2230290T3 - Animacion de personajes. - Google Patents
Animacion de personajes.Info
- Publication number
- ES2230290T3 ES2230290T3 ES01919631T ES01919631T ES2230290T3 ES 2230290 T3 ES2230290 T3 ES 2230290T3 ES 01919631 T ES01919631 T ES 01919631T ES 01919631 T ES01919631 T ES 01919631T ES 2230290 T3 ES2230290 T3 ES 2230290T3
- Authority
- ES
- Spain
- Prior art keywords
- data
- presentation
- processor
- phoneme
- visema
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Processing of the speech or voice signal to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/06—Transformation of speech into a non-audible representation, e.g. speech visualisation or speech processing for tactile aids
- G10L21/10—Transforming into visible information
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/16—Sound input; Sound output
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T13/00—Animation
- G06T13/20—3D [Three Dimensional] animation
- G06T13/40—3D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/06—Elementary speech units used in speech synthesisers; Concatenation rules
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/08—Text analysis or generation of parameters for speech synthesis out of text, e.g. grapheme to phoneme translation, prosody generation or stress or intonation determination
- G10L13/10—Prosody rules derived from text; Stress or intonation
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Processing of the speech or voice signal to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/06—Transformation of speech into a non-audible representation, e.g. speech visualisation or speech processing for tactile aids
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
- G10L21/00—Processing of the speech or voice signal to produce another audible or non-audible signal, e.g. visual or tactile, in order to modify its quality or its intelligibility
- G10L21/06—Transformation of speech into a non-audible representation, e.g. speech visualisation or speech processing for tactile aids
- G10L21/10—Transforming into visible information
- G10L2021/105—Synthesis of the lips movements from speech, e.g. for talking heads
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Theoretical Computer Science (AREA)
- Computational Linguistics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Quality & Reliability (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Processing Or Creating Images (AREA)
- Table Devices Or Equipment (AREA)
- Developing Agents For Electrophotography (AREA)
- Details Of Garments (AREA)
- Surgical Instruments (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
Aparato para la generación de una representación animada de un personaje, comprendiendo el aparato un sistema de procesado provisto de: una entrada para recibir unos datos de entrada etiquetados que incluyen: i.unos datos de contenido que representan un discurso que ha de ser presentado; y, ii. unos datos de presentación que representan una presentación audiovisual que incluye el modo en el cual el discurso ha de ser presentado, un procesador acoplado a la entrada para la generación de datos de acuerdo con una base de tiempos definida, conteniendo los datos: i.unos datos de fonema generados de acuerdo con los datos de contenido; y, ii. unos datos de visema generados de acuerdo con los datos de fonema y los datos de presentación; estando el procesador adaptado además para: iii. modificar los datos de visema de acuerdo con los datos de presentación; iv. generar unos datos de sonido de acuerdo con los datos de fonema; v.generar unos datos de imagen de acuerdo con los datos de visema modificados y los datos de presentación; y, vi. sincronizar la emisión de los datos de sonido e imagen de acuerdo con la base de tiempos definida.
Description
Animación de personajes.
La presente invención se refiere a un método para
la generación de una representación animada de un personaje
utilizando un sistema de procesado y a un aparato para la generación
de una representación animada de un personaje. En particular, la
presente invención se refiere a un sistema que utiliza unos datos de
entrada que comprenden unos datos de contenido y unos datos de
presentación, para animar un personaje representativo de una
persona, tal como un lector de noticias, un anunciante, un
presentador o similares.
La animación de personajes se ha obtenido
previamente en una diversidad de maneras. El sistema más básico es
la animación estándar dibujada a mano, obtenida dibujando un número
de cuadros en secuencia y mostrando después los cuadros a alta
velocidad para generar la apariencia de movimiento del personaje.
Sin embargo, la producción de dichos cuadros requiere mucho tiempo y
requiere una gran habilidad para producir la apariencia deseada.
Más recientemente, la animación de personajes ha
sido obtenida utilizando sistemas basados en ordenador. Sin embargo,
en sistemas como éstos, de nuevo la animación está predeterminada
por un artista, requiriendo una gran habilidad y cantidad de trabajo
para producir la apariencia deseada.
También se ha obtenido una animación automatizada
de personajes que funciona mediante la conversión de un archivo
estándar de texto en un discurso y utilizando a continuación unos
visemas para animar al personaje. Sin embargo, estos sistemas
presentan el inconveniente de que la gama de movimientos que
presenta el personaje está limitada, y en particular está
normalmente limitada a los movimientos requeridos para presentar los
visemas. Cualquier movimiento adicional del personaje debe ser
incorporado manualmente después y no puede ser incorporado de manera
automática. Adicionalmente, los personajes pueden exhibir sólo una
respuesta lineal muy limitada respecto al texto. De acuerdo con lo
anterior, cada vez que el personaje lee el texto, la apariencia del
personaje es idéntica. Un ejemplo de un sistema de este tipo está
descrito en el documento
US-A-5.657.426, así como en el
documento GB-A-2328849.
Por lo tanto, este sistema no presenta una
apariencia muy humana, en la cual el movimiento específico del
personaje variaría cada vez que el texto es leído en voz alta.
Adicionalmente, cuando no se está leyendo ningún texto el personaje
no se mueve, contribuyendo de nuevo a la falta de personalidad
humana o de caracterización del personaje.
De acuerdo con la invención, se proporciona un
aparato tal como se indica en la reivindicación 1, un método tal
como se indica en la reivindicación 30, y unos datos tal como se
indica en la reivindicación 29 y en la reivindicación 50, que
sincronizan la salida de la información de sonido e imagen de
acuerdo con la base de tiempo definida.
La presente invención proporciona un método y un
aparato para la generación de una representación animada de un
personaje. Esta se obtiene mediante la utilización de unos datos
etiquetados que incluyen tanto unos datos de contenido como unos
datos de presentación. A continuación, el sistema utiliza esta
información para generar unos datos de fonema y visema que
representan el discurso que ha de ser presentado por el personaje.
Mediante el suministro de los datos de presentación se asegura que
se producirá, por lo menos, alguna variación en la apariencia del
personaje más allá de los visemas requeridos para aparentar que el
personaje habla. Esto contribuye a que el personaje tenga una mayor
apariencia de estar vivo.
Los datos de entrada etiquetados pueden ser
introducidos manualmente, por ejemplo tecleando un texto en un
terminal, o pueden ser obtenidos desde una fuente de datos. Esto
permite que el sistema sea utilizado para la presentación
automatizada de información provenientes de fuentes de noticias y
datos y similares.
El procesador incluye normalmente:
un procesador conversor de texto a voz para la
generación de los datos de fonema y los datos de sonido;
un procesador de animación para la generación de
los datos de visema y los datos de imagen; y
un analizador para:
analizar los datos etiquetados recibidos;
detectar unos datos de contenido predeterminado
que ha de ser presentado de un modo predeterminado;
generar datos de presentación representativos del
modo predeterminado; y,
modificar los datos etiquetados recibidos con los
datos de presentación generados.
La utilización de procesadores conversores de
texto a voz y de animación especializados permite al sistema generar
los datos de sonido y los datos de imagen en tiempo real, acelerando
por tanto el proceso de animación del personaje. Los datos de sonido
y de imagen pueden ser generados al mismo tiempo o en tiempos
diferentes, y/o en diferentes ubicaciones, según se requiera. Se
apreciará que los procesadores conversores de texto a voz y de
animación especializados, pueden estar implementados como un
programa dentro de un único procesador, o pueden estar implementados
de forma alternativa en distintos componentes de equipos o
hardware.
El análisis de los datos etiquetados recibidos
permite que los datos de presentación sean agregados, lo que a su
vez permite que los datos no etiquetados o etiquetados mínimamente
sean procesados por la presente invención. Asimismo, esto permite
que un contenido predeterminado sea representado según un modo
predeterminado. Adicionalmente, esto permite que el personaje
animado acentúe ciertas palabras, tales como números, nombres y
negaciones, aunque esto no es esencial para la presente
invención.
El sistema de procesado incluirá normalmente un
dispositivo de almacenamiento para almacenar datos, el analizador
estando acoplado al dispositivo de almacenamiento para obtener una
indicación de los datos de contenido predeterminado del mismo. Esto
permite que la información referente a las etiquetas que han de ser
agregadas sea almacenada de forma central de manera que pueda ser
accedida directamente por el analizador. De forma alternativa, la
información puede ser obtenida a través de un sistema de
comunicaciones, tal como una LAN (Red de área local) o similar,
desde un dispositivo de almacenamiento remoto.
El aparato incluye típicamente un procesador
lingüístico adaptado para:
analizar los datos de contenido;
determinar los fonemas requeridos para
representar los datos de contenido; y,
generar referencias temporales del fonema para
cada uno de los fonemas, la referencia temporal del fonema indicando
el tiempo en el cual el fonema respectivo debería ser presentado,
con respecto a una base de tiempos.
Es preferible utilizar fonemas para generar los
datos de sonido que han de ser presentados por el personaje animado
ya que esto permite que un pequeño número de unidades elementales de
sonido representen la mayoría de sonidos que se necesitarían
realizar por el personaje para presentar el discurso. Además, los
sistemas de procesado para la determinación de fonemas a partir de
texto son bien conocidos y fácilmente implementables.
Adicionalmente, la generación de las referencias
temporales del fonema permite la disposición temporal de cada uno de
los fonemas que han de ser mantenidos, así como permite la
sincronización de las etapas restantes del
proceso.
proceso.
Típicamente, el procesador lingüístico está
adaptado adicionalmente para:
analizar los datos de contenido;
generar un número de etiquetas para representar
los datos de presentación; y,
generar referencias temporales de la etiqueta
para cada una de las etiquetas, indicando la referencia temporal de
la etiqueta el tiempo en el cual el fonema respectivo debería
modificar el modo de presentación, con respecto a una base de
tiempos.
El uso de referencias temporales de la etiqueta
permite mantener la posición temporal de los datos de presentación
de forma relativa respecto los datos de fonema. De modo alternativo,
pueden utilizarse otras técnicas de sincronización.
Normalmente el procesador lingüístico está
acoplado al dispositivo de almacenamiento para obtener una
indicación de los fonemas requeridos para representar unas palabras
respectivas. En este caso, la indicación tiene normalmente la forma
de un conjunto de reglas que especifican cómo los fonemas deben ser
determinados a partir del texto. Asimismo, puede disponerse un
diccionario para las excepciones que no encajan dentro de estas
reglas más generales. Esto proporciona una técnica sencilla para
obtener los fonemas en base a los datos recibidos. Sin embargo,
puede utilizarse cualquier técnica utilizada en el estado de la
técnica.
El procesador conversor de texto a voz incluye
preferentemente un procesador de concatenación adaptado para:
determinar los datos de fonema que representan a
cada uno de los fonemas; y,
concatenar los datos de fonema de acuerdo con las
referencias temporales del fonema para generar unos datos de sonido
que representen al discurso.
La utilización de un procesador de concatenación
especializado asegura que los datos de fonema, que son obtenidos
normalmente desde el dispositivo de almacenamiento, pueden ser
combinados fácilmente para formar los datos de sonido
requeridos.
Adicionalmente, el procesador de concatenación
está asimismo adaptado para modificar los datos de sonido y de
fonema de acuerdo con los datos de presentación. Esto permite que la
voz audible del personaje sea controlada conjuntamente con la
apariencia del personaje. De esta manera, por ejemplo, puede
utilizarse un tono, una altura tonal y una velocidad de habla
dependiendo de si se supone que el personaje está feliz, triste,
serio o similares. Sin embargo, de modo alternativo, la voz audible
puede permanecer inalterada independientemente de la apariencia del
personaje. Una alternativa adicional es separar las distintas
modificaciones de la voz especificadas en los archivos de datos,
independientes de los datos de presentación.
El procesador de animación incluye
preferentemente un procesador de fonema adaptado para:
obtener los fonemas determinados, y las
referencias temporales del fonema asociadas, desde el procesador
lingüístico;
determinar los visemas correspondientes a cada
uno de los fonemas determinados; y,
determinar una referencia temporal del visema
para cada visema de acuerdo con la referencia temporal del fonema
del fonema correspondiente.
Debido a que sólo existe un número limitado (48
aproximadamente) de fonemas y un número limitado (20
aproximadamente) de visemas, es relativamente fácil convertir cada
fonema en un visema correspondiente. En este caso, utilizar las
referencias temporales del visema correspondientes a las referencias
temporales del fonema asegura de manera ventajosa la sincronización
de los visemas con los fonemas. Esto a su vez asegura que el
movimiento de los labios es sincronizado con la producción de sonido
para obtener la sincronización de los labios.
El procesador de animación asimismo incluye
normalmente un procesador de visema acoplado al dispositivo de
almacenamiento, el procesador de visema estando adaptado para
obtener unos datos de visema desde el dispositivo de almacenamiento
de acuerdo con los visemas determinados, los datos de visema
incluyendo un número de parámetros que representan la variación
requerida respecto una imagen base de personaje para representar el
visema respectivo. La utilización de los datos que representan la
variación respecto un rostro de base permite que un amplio margen de
configuraciones faciales sean implementadas sin requerir la cantidad
de potencia de procesado requerida para generar la representación a
partir de cero para cada rostro. Esto ayuda a acelerar el tiempo de
proceso permitiendo que los datos de imagen sean generados en tiempo
real a medida que los datos de contenido son "leídos" por el
personaje.
Preferentemente, el procesador de animación
incluye por lo menos un procesador de modificación adaptado para
modificar los datos de visema de acuerdo con los datos de
presentación. Mediante la modificación de los datos de visema, esto
ayuda a variar la apariencia del personaje para hacer que el
personaje parezca más que estuviera vivo. Esto se obtiene
típicamente mediante la modificación de los parámetros de los datos
de visema de acuerdo con los datos de modificación obtenidos desde
el dispositivo de almacenamiento.
El procesador de animación incluye normalmente
por lo menos un procesador de modificación adaptado para modificar
por lo menos una de una expresión, comportamiento y acción
especificados. Esto permite que diferentes aspectos de la apariencia
del personaje sean alterados.
Preferentemente, se implementa un procesador
respectivo para modificar distintamente el comportamiento, la
expresión y las acciones. Esto permite que apariencias más generales
tales como movimientos globales de la cabeza sean controladas de
forma distinta para apariencias específicas tales como sonreír,
fruncir el ceño o similares. De esta manera, la apariencia general
puede ser triste en cuyo caso el personaje puede parecer triste en
general, con una disposición triste de la boca, o similar. Sin
embargo, una apariencia específica puede ser una risa o sonrisa y,
de esta manera, incluso aunque el personaje tiene la apariencia
global de estar triste, esto permite todavía generar una sonrisa. De
acuerdo con lo anterior, esto permite la modificación detallada de
la apariencia de los personajes tal como se requiere, ayudando por
lo tanto a la generación de una imagen realista.
Obtener esto mediante modificación progresiva de
los parámetros de los datos de visema permite que las modificaciones
de la acción, la expresión y el comportamiento sean implementadas
sin excesivas complicaciones. Sin embargo, de forma alternativa,
distintas secuencias de imágenes que representan a los visemas, las
expresiones, las acciones y los comportamientos pueden ser generadas
y combinadas después de una etapa posterior.
Típicamente el o cada procesador de modificación
está adicionalmente adaptado para la modificación de los datos de
visema de acuerdo con datos pseudo-aleatorios. Esto
permite movimientos aleatorios de la cabeza, o apariencias faciales
que han de ser incluidas en el sistema, asegurando por lo tanto que
la animación del personaje no sea idéntica incluso si está basada en
el mismo archivo de datos de entrada para cualquier par de
animaciones sucesivas. Esta ayuda reduce la repetición de ciertas
palabras, frases o combinaciones de apariencia, ayudando por lo
tanto a mejorar la apariencia natural del personaje animado.
El procesador de animación normalmente incluye
adicionalmente un procesador de interpolación para interpolar los
datos de visema para determinar la apariencia del personaje en
tiempos entre los visemas especificados. Esto permite generar una
secuencia de imágenes continuas.
Un procesador de renderizado está acoplado al
procesador de interpolación para generar unos datos de imagen de
acuerdo con los datos de visema interpolados, los datos de imagen
representando al personaje presentando el discurso definido por los
datos de contenido. En particular, si el sistema de procesado
incluye adicionalmente un procesador de vídeo, el procesador de
renderizado puede formar parte del procesador de vídeo. Esto permite
que los datos de imagen sean renderizados en tiempo real sin
utilizar los recursos del procesador principal, ayudando por lo
tanto a implementar la invención en tiempo real. El procesador de
renderizado puede estar implementado de forma alternativa como un
programa dentro del mismo procesador principal, si se dispone de los
recursos suficientes.
Típicamente el procesador de vídeo también genera
datos de vídeo que representan la secuencia del personaje animado.
Esto permite de manera ventajosa que el personaje animado sea
visualizado bien como datos de imagen o bien como datos de vídeo,
permitiendo que sea visualizado en una amplia gama de diferentes
dispositivos de visualización.
Opcionalmente, el sistema puede incluir de manera
adicional, una interfaz de red de comunicaciones, que durante su
utilización acopla al dispositivo de cálculo a la red de
comunicaciones, permitiendo por tanto que la representación de un
personaje animado sea transferida a otros sistemas de procesado
acoplados a la red de comunicaciones.
En este caso, la entrada puede estar adaptada
para recibir datos etiquetados desde una red de comunicaciones,
permitiendo que archivos etiquetados externamente sean utilizados en
la generación de una secuencia de un personaje animado.
Típicamente el archivo de datos es un archivo XML
(Lenguaje de Etiquetado Extensible). Esto es particularmente
ventajoso ya que permite que los datos de presentación sean
especificados dentro del archivo XML etiquetados con XML. De acuerdo
con lo anterior, los datos de contenido que son utilizados para
controlar la apariencia del personaje, pueden ser anotados con los
elementos apropiados que definen las características de la
presentación, que deberían ser implementados a medida que las
palabras respectivas son pronunciadas.
El sistema puede ser implementado como un sistema
de procesado autónomo. De forma alternativa, el sistema puede ser
implementado en una red de comunicaciones, tal como la Internet, una
red de área local o amplia (LAN o WAN), o similares, de manera que
las imágenes pueden ser generadas de forma central y vistas de forma
remota.
A continuación se describirá con detalle un
ejemplo de la presente invención en relación con los dibujos
adjuntos, en los cuales:
la figura 1 es un diagrama esquemático de un
sistema de procesado adecuado para implementar la presente
invención; y,
la figura 2 es un diagrama esquemático del
programa implementado en el equipo o hardware representado en la
figura 1.
La figura 1 muestra un sistema de procesado
adecuado para la implementación de la presente invención. El sistema
de procesado consiste de un dispositivo de cálculo compuesto de un
dispositivo de entrada/salida (I/O) 1, un procesador 2, una memoria
3, un dispositivo de almacenamiento 4, un procesador de vídeo 5, un
procesador de sonido 6 y un adaptador de red 7, todos los cuales
están conectados entre sí a través de un bus 8. El dispositivo de
cálculo puede ser realizado por lo tanto en un ordenador personal,
una agenda electrónica, un ordenador portátil estándares, o
similares, adaptados con el equipo o hardware gráfico apropiado. Sin
embargo, también son posibles implementaciones sobre programas y
equipos dedicados. Esto podría ser potencialmente integrado en
electrodomésticos y dispositivos de consumo.
Durante su utilización, la tarjeta de red 7 puede
estar conectada a una red de comunicaciones 10 para facilitar
comunicaciones con unas estaciones terminales adicionales N1, N2 ...
Nn. La red de comunicaciones puede ser por lo tanto cualquier forma
de red, tal como una LAN, una WAN, una red inalámbrica de
comunicaciones, la Internet, o similares.
El programa implementado en el procesador está
representado esquemáticamente en la figura 2. Tal como se muestra,
los datos etiquetados de entrada son recibidos por el procesador 2 y
son transferidos al analizador A1. El analizador funciona para
analizar los datos y transferir los resultados al extensor A2, que a
su vez extiende los datos antes de transferir los datos al
procesador conversor de texto a voz B y al procesador de animación
C.
El procesador conversor de texto a voz B incluye
un procesador lingüístico B1, un procesador de concatenación B2 y un
procesador de sonido B3, tal como se muestra.
El procesador de animación C incluye un
procesador de fonema C1, un procesador de visema C2, un procesador
de expresión C3, un procesador de comportamiento C4, un procesador
de acción C5, un procesador de interpolación C6 y un procesador de
renderizado C7, conectados entre sí en secuencia, tal como se
muestra. El procesador conversor de texto a voz B y el procesador de
animación C funcionan para generar datos de salida de sonido y de
imagen respectivamente, que son emitidos desde el procesador 2.
El analizador, el extensor y los procesadores
pueden obtener los datos respectivos tal como se muestra en la
figura 2. Estos datos de entrada son utilizados durante la
generación del personaje animado, tal como se explicará con mayor
detalle a continuación. Los datos de entrada pueden ser introducidos
directamente, por ejemplo, por un teclado, obtenidos desde un
archivo local en el dispositivo de almacenamiento 4, o desde una
fuente remota a través de la red 10.
El funcionamiento del sistema mostrado en las
figuras 1 y 2 será descrito ahora.
Durante su utilización, el procesador 2 utiliza
los datos etiquetados para generar una representación animada de un
personaje. Los datos etiquetados pueden o bien ser recibidos en el
dispositivo de entrada/salida (I/O) 1, tal como se representa con I,
o de forma alternativa los datos etiquetados pueden ser recibidos
desde la red 10 a través del adaptador de red 7. Además, por
supuesto, los datos etiquetados pueden ser almacenados en el
dispositivo de almacenamiento 4. Los datos etiquetados pueden ser
transferidos a continuación al procesador 2 a través del bus 8.
Los datos etiquetados son típicamente
suministrados al procesador 2 en la forma de un archivo XML que
incluye unos datos de contenido que representan las palabras que han
de ser pronunciadas por el personaje, junto con los datos de
presentación que representan el modo en que es presentado el
discurso. En este caso, los datos de contenido normalmente tienen la
forma de texto correspondiente a las palabras que han de ser
pronunciadas, aunque pueden utilizarse notaciones numéricas o de
otros tipos.
Por el contrario, los datos de presentación
pueden incluir varias formas diferentes. La forma principal de datos
de presentación utiliza elementos predefinidos o etiquetas para
etiquetar los datos de contenido que han de ser pronunciados por el
personaje animado. De esta manera, en este caso, las etiquetas XML
son utilizadas para modificar el modo en que se presenta el texto
que cubren.
Además de esto, ciertas secuencias de caracteres
y ciertas palabras pueden funcionar asimismo como datos etiquetados.
De esta manera, por ejemplo, la presencia de tres caracteres
periódicos puede hacer que el personaje haga una pausa antes de
pasar a la siguiente palabra representada por los datos de
contenido.
Los datos de presentación incluyen generalmente
elementos referidos a, aunque no limitados a, el contexto, el tono,
la emoción, la expresión, las acciones, o otros eventos de
presentación. Además de esto, sin embargo, los datos de presentación
pueden especificar otros elementos de la presentación, tales como
unas producciones audiovisuales.
De esta manera, por ejemplo, se pueden definir
parámetros de presentación persistentes y que pertenecen a la
duración de la presentación. Por ejemplo, las dimensiones de la
imagen de salida pueden ser especificadas como un parámetro de
presentación. De forma alternativa, pueden ser utilizados unos
eventos de presentación que corresponden con una indicación de
tiempo que tiene lugar en un tiempo relativo a su posición en los
datos de contenido. Por ejemplo, un cambio en la vista de la cámara
virtual puede ser incluido como un evento de presen-
tación.
tación.
De acuerdo con lo anterior, los datos de entrada
pueden ser considerados como una forma de secuencia de instrucciones
que contiene el contenido y las indicaciones asociadas para permitir
la producción de una presentación animada.
Estos datos de entrada pueden ser introducidos
manualmente, pueden ser obtenidos de una fuente de datos, o ser
obtenidos como una combinación de entradas manuales y automatizadas.
De manera similar, el etiquetado puede ser aplicado manualmente, o
generado por un sistema externo.
El protocolo de etiquetado realmente utilizado
variará dependiendo de la implementación específica de la invención.
Sin embargo, un ejemplo del esquema de etiquetado utilizado por la
implementación real se muestra en el Apéndice A, juntamente con una
secuencia de instrucciones a título de ejemplo de historias de
noticia a ser leídas en voz alta. El ejemplo mostrado especifica
diferentes acciones y aspectos de comportamiento del personaje
animado. Sin embargo, estas especificaciones no son concretas pero
son bastante indicativas de un comportamiento general que es
implementado a continuación por el procesador 2.
Tal como se muestra en este ejemplo, las
etiquetas XML son utilizadas para especificar varias acciones,
eventos y emociones, que el personaje ha de interpretar cuando lee
el texto asociado en voz alta. En este ejemplo, el texto asociado es
el texto comprendido por la etiqueta dada. De esta manera, en el
ejemplo del Apéndice A, la frase "American Beauty recibió también
el premio al mejor actor, guión y fotografía" sería presentado en
un modo feliz debido a la presencia de la etiqueta de emoción
"felicidad".
Durante su utilización, tal como se ha mencionado
anteriormente, el archivo XML es recibido por el analizador, que
funciona para analizar los datos XML. El analizador utiliza unos
datos de configuración a1 para interpretar los contenidos del
archivo XML y para proporcionar la configuración por defecto.
Esto permite la presentación por defecto de los
datos que han de ser agregados al archivo, tal como corresponde.
Esto puede incluir por ejemplo, una indicación de la ubicación a la
cual se ha de emitir la representación animada de un personaje o el
formato requerido de la salida. Asimismo, pueden agregarse datos de
presentación más complicados referentes a la animación en curso del
personaje.
De esta manera, por ejemplo, normalmente es
deseable poner un mayor énfasis sobre ciertas palabras a medida que
son presentadas por el personaje. En particular, palabras tales como
nombres, sustantivos, negaciones y números son típicamente
acentuadas debido a que normalmente tienen mayor importancia que
otras palabras en el texto. El analizador estará por lo tanto
adaptado para detectar y agregar a continuación unos datos de
presentación apropiados que hagan que las palabras sean acentuadas a
medida que son presentadas.
Además de esto, si el archivo contiene algunos o
ningún dato de presentación, el analizador puede agregar datos de
presentación rudimentarios de acuerdo con los datos de
configuración. Esto asegura que incluso si el archivo recibido no
incluye ninguna etiqueta de presentación, el personaje animado
seguirá mostrando al menos algunas características por defecto.
Los datos de presentación y de contenido son
transferidos a continuación al extensor que puede hacer varias
substituciones y extensiones sobre los datos según se requiera. Esto
se obtiene utilizando unos datos de automatización a2, que pueden
especificar cualquier cambio requerido sobre los datos.
Una vez que esto se ha completado, los datos de
entrada son traducidos en datos de contenido que representan al
texto del discurso que ha de ser presentado y los datos o etiquetas
de presentación representan cambios de estado a medida que se
producen en el discurso. De esta manera, los datos de presentación
incluirán no sólo las etiquetas incluidas originalmente en el
archivo XML, sino que incluirán asimismo unas etiquetas adicionales,
que representan aspectos de la presentación indicados por la
presencia de ciertos caracteres o palabras.
Los datos de contenido y los datos de
presentación son transmitidos a continuación al procesador conversor
de texto a voz B. Varias implementaciones de estos sistemas están
disponibles comercialmente, aunque todos funcionan de la misma forma
general.
En primer lugar, las palabras que han de ser
presentadas son descompuestas por el procesador lingüístico B1 en
unidades elementales de sonido, o fonemas, de una duración dada. A
medida que se encuentra cada fonema, se anota una referencia
temporal de la posición temporal del fonema en relación a una base
de tiempos.
Los fonemas que han de ser presentados por el
personaje son determinados mediante la exploración de los datos de
contenido recibidos y haciendo una correlación de éstos con los
datos de un diccionario de excepciones b1, el cual indica los
fonemas requeridos para representar a las palabras que han de ser
pronunciadas.
Los datos de presentación pueden ser utilizados
para controlar el modo en los cuales se presentan los fonemas. De
esta manera, el volumen, la altura tonal y la velocidad pueden ser
modificados directa o indirectamente de acuerdo con los datos de
presentación. Los datos de presentación pueden asimismo, introducir
directa o indirectamente una interrupción o pausa en los datos de
sonido.
De esta manera, por ejemplo, si el tipo de tono
es "divertido", entonces las palabras serán pronunciadas
generalmente más deprisa que si el tono es de tipo "serio". De
acuerdo con lo anterior, la referencia temporal de los fonemas
individuales será alterada de acuerdo con esta información.
La inflexión es asimismo proporcionada en los
datos de presentación. Esta será aplicada a menudo a palabras
concretas tales como nombres, sustantivos, negaciones y números, que
han sido etiquetadas por el analizador. La inflexión dada a cada
fonema variará de nuevo dependiendo del tipo de tono especificado.
De esta manera, un tipo de tono "divertido" resultará en un
discurso que suena más optimista que el tipo de tono
"serio".
El procesador lingüístico puede asimismo
proporcionar datos de retroalimentación referentes a características
lingüísticas halladas en los datos de contenido, tales como los
límites de una oración.
Además de proporcionar unas referencias
temporales para cada fonema, las referencias temporales pueden ser
generadas asimismo para cada una de las etiquetas y elementos que
representan los datos de presentación, y otros datos de
retroalimentación.
Los datos que representan los fonemas
determinados, los datos de presentación, cualquier dato de
retroalimentación y las referencias temporales asociadas, son
transferidos, a continuación, al procesador de fonema C1, en el
procesador de animación C, tal como se explicará con mayor detalle a
continuación.
Una indicación de los fonemas y sus respectivas
referencias temporales es transferida hacia el procesador de
concatenación B2. El procesador de concatenación accede a los datos
de fonema b2, que representan cada uno de los fonemas y concatena
estos datos de fonema para formar unos datos que representan la
secuencia de fonemas que han de ser presentados por el
personaje.
En esta implementación, los datos de fonema están
formados de sonido muestreado juntamente con unos datos apropiados
de configuración, pero pueden utilizarse sistemas alternativos.
Se apreciará que alguna modificación de los datos
de fonema puede ser requerida para asegurar que todos los fonemas
encajan conjuntamente en secuencia, y para asegurar que todos los
datos de presentación son presentados correctamente.
Estos datos son transferidos a continuación al
procesador de sonido B3 que funciona para generar datos de sonido
que, cuando son presentados por un sistema de reproducción de
sonido, corresponden a las palabras que han de ser pronunciadas por
el personaje. El procesador de sonido transfiere asimismo los datos
de tiempo al procesador de interpolación C6, tal como se describirá
con mayor detalle a continuación.
Los datos de sonido son emitidos desde el
procesador conversor de texto a voz B y transferidos a la salida
designada en los datos de configuración, tal como se explicará con
mayor detalle a continuación.
El procesador de animación C funciona para
generar una secuencia de imágenes del personaje animado. Tal como se
ha mencionado anteriormente, los datos que representan los fonemas
determinados, los datos de presentación, cualquier dato de
retroalimentación y las referencias temporales asociadas, son
recibidas por el procesador de fonema C1 desde el procesador
lingüístico B1.
El procesador de fonema C1 utiliza la indicación
de los fonemas para determinar los visemas relacionados.
Típicamente, el número de visemas reconocibles es inferior al número
de fonemas reconocibles. Aproximadamente de 10 a 20 visemas pueden
proporcionar resultados aceptables, mientras que pueden requerirse
sobre unos 40 fonemas. Diferentes fonemas pueden resultar por lo
tanto en la emisión de visemas idénticos.
De acuerdo con lo anterior, una tabla de consulta
(LUT) de fonema a visema puede ser utilizada para especificar un
visema correspondiente a cada fonema. Otras técnicas pueden ser
utilizadas también para reducir el número de visemas requeridos para
proporcionar resultados aceptables.
El procesador de fonema C1 accede a la tabla de
consulta de fonema a visema y para cada fonema especifica un visema
correspondiente. El procesador de fonema C1 determina por lo tanto
los visemas con referencias temporales que corresponden a cada
fonema en la secuencia de fonemas generada.
Una indicación de los visemas que han de ser
utilizados es transferida al procesador de visema C2. El procesador
de visema utiliza esta información para acceder a los datos de
visema c2. Los datos de visema, que tienen típicamente la forma de
un número de parámetros, definen la configuración facial del
personaje cuando el visema tiene que ser presentado. Esto se define
típicamente en términos de una variación a partir de una
configuración facial de base.
Además de la determinación de los visemas
correspondientes a los fonemas utilizados para construir las
palabras que han de ser presentadas, la configuración facial puede
ser modificada adicionalmente de acuerdo con los datos de
presentación. Esto permite que el personaje muestre acciones,
expresiones y otras características de comportamiento definidas por
los datos de presentación.
Esto es obtenido mediante la utilización de las
referencias temporales de los visemas y de los datos de presentación
para determinar que visemas han de ser modificados de acuerdo con
qué dato de presentación, para representar una expresión,
comportamiento o acción apropiados.
Para obtenerlo, los datos de visema son
presentados al procesador de expresión C3, al procesador de
comportamiento C4 y al procesador de acción C5. Esto funciona para
modificar aspectos respectivos de la apariencia del personaje para
asegurar que se ha generado una representación que parezca que está
vivo. En cada procesador C3, C4, C5 los datos de presentación son
utilizados para acceder a los respectivos datos morfológicos de
expresión, comportamiento y acción c3, c4, c5 que definen las
modificaciones sobre la apariencia del personaje.
Los datos de presentación pueden especificar la
modificación absoluta o relativa de la apariencia visual. De esta
manera, los datos relativos especificarán típicamente una
modificación de los parámetros en los datos de visema desde un nivel
existente, mientras que un valor absoluto establecerá el parámetro a
un nivel especificado.
De esta manera, una etiqueta de expresión puede
estar asociada con parámetros que definen adicionalmente la
configuración facial del personaje, típicamente definida en términos
de variación respecto a una configuración facial de base.
Las expresiones generales pueden estar
especificadas de acuerdo con unas proporciones de emociones básicas
tales como alegría, tristeza, ira, miedo, disgusto y sorpresa. De
esta manera, una etiqueta de expresión para alegría podría, por
ejemplo, especificar una variación que hace que el personaje
aparezca sonriendo. La etiqueta de expresión puede especificar un
nivel como un parámetro, produciendo por lo tanto una sonrisa de un
cierto grado.
Un elemento de presentación puede especificar
múltiples parámetros de presentación, permitiendo un control
sofisticado de la presentación utilizando un etiquetado
relativamente escaso. Múltiples expresiones de diferentes grados
pueden ser superpuestas, permitiendo la creación de expresiones
faciales complejas. Esto permite la creación de una amplia variedad
de apariencias faciales. De esta manera, se apreciará que el visema
utilizado para cada sonido variará dependiendo del grado en el que
la etiqueta especifica la alegría, la tristeza o similares.
Además de las expresiones faciales, los datos de
presentación pueden especificar diferentes acciones o gestos que son
implementados por los procesadores de comportamiento y acción C4,
C5. Esto permite manipular de forma independiente características
faciales, por ejemplo, levantar la ceja o hacer que el personaje
guiñe el ojo. Las acciones y los gestos, tales como movimientos de
cabeza y de cuerpo, pueden ser asimismo iniciados, así como la
modificación de la orientación de los elementos del personaje, tales
como el ángulo de la cabeza.
Estas acciones pueden ser especificadas en
términos de cambios con respecto al tiempo, permitiendo que un grado
de comportamiento o de interpretación sea representado en el
personaje. Las acciones pueden ser invocadas explícitamente como
resultado de unos datos de presentación etiquetados producidos como
resultado de los datos de contenido o generados automáticamente.
Por ejemplo, una etiqueta para especificar una
acción de guiño en los datos de entrada haría que el personaje
apareciera guiñando en ese punto del discurso que ha de ser
presentado. De forma alternativa, la presencia de una palabra
acentuada, tal como una negación, haría que el personaje moviese
ligeramente la cabeza en ese punto del discurso que ha de ser
presentado.
Diferentes reglas pueden ser empleadas para
modificar la aplicación de diferentes parámetros de acuerdo con el
contexto actual. Por ejemplo, la tasa de parpadeo puede aumentar si
el estado actual del personaje está definido como uno de ira. Los
datos de base del personaje, modificados por los datos de visema,
los datos de expresión, los datos de comportamiento y los datos de
acción son utilizados para generar datos de imagen que representan
el personaje en un momento particular. De esta manera, una etiqueta
de expresión para alegría podría, por ejemplo, especificar una
variación que hace que el personaje aparezca sonriendo.
Las expresiones o acciones pueden ser asimismo
modificadas de acuerdo con la presencia de una o más palabras
predeterminadas, que serán identificadas por el analizador y
etiquetadas apropiadamente, tal como se ha descrito
anteriormente.
Además de las variaciones destacadas
anteriormente, los procesadores de expresión, comportamiento y
acción pueden implementar un comportamiento
pseudo-aleatorio. Esto asegura de forma efectiva que
para los mismos datos de entrada, la apariencia del personaje para
dos animaciones sucesivas cualesquiera, pueden ser diferentes,
aumentando por lo tanto la naturalidad aparente de la presentación
animada.
Esto es obtenido agregando un grado de
aleatorización en los parámetros contenidos en la secuencia de
visemas. El nivel de este comportamiento aleatorio está controlado
dentro de niveles predefinidos para asegurar que el personaje
permanece tal que parece que está vivo. Esto asegura algún grado de
variación en la presentación que no depende de los datos de
entrada.
Por ejemplo, un comportamiento definido puede
especificar que el personaje realizará una pausa y tomará un respiro
después de una frase. Este comportamiento puede ser modificado de
modo pseudo-aleatorio, de manera que no es aplicado
cada vez, de manera que el espectador no tiene la sensación de que
los mismos procedimientos son repetidos una y otra vez.
Los rasgos de comportamiento característicos,
tales como un parpadeo involuntario, pueden por lo tanto ser
iniciados de forma periódica. Comportamientos de este tipo pueden
continuar incluso cuando el personaje no está hablando, resultando
en una apariencia más natural.
La combinación de unos datos de contenido, unos
datos de presentación y un comportamiento automático produce una
gama compleja de variación. La combinación de efectos que pueden ser
obtenidos a partir de etiquetados de presentación limitados resulta
en un número virtualmente indefinido de posibles secuencias
visuales.
Los datos de presentación, además del etiquetado
referente al personaje, pueden especificar otros elementos de la
presentación. Esto incluye, pero no está limitado a, eventos y
parámetros de producción audiovisual.
Un parámetro de presentación es persistente y
pertenece a la duración de la presentación. Por ejemplo, las
dimensiones de la imagen de salida pueden ser especificadas como un
parámetro de presentación.
Un evento de presentación corresponde a una
indicación de tiempo que se produce en un tiempo relativo a su
posición en los datos de contenido. Por ejemplo, un cambio en la
vista de una cámara virtual puede ser incluido como un evento de
presentación.
Los datos de visema, una vez modificados tal como
se indica anteriormente, son transferidos a continuación al
procesador de interpolación C6. En cuanto a los datos de tiempo
asociados con cada visema, el estado del personaje puede ser
determinado con respecto al tiempo para el fonema que ha de ser
presentado. El procesador de interpolación C6 utiliza a continuación
los parámetros de los datos de visema para interpolar entre los
visemas y calcular los parámetros que representan la apariencia
visual de las posiciones del rostro intermediadas a aquellas
definidas por esos visemas definidos. De acuerdo con lo anterior,
esto genera una secuencia de parámetros representativos de la
apariencia facial del personaje, que varía a lo largo del
tiempo.
La interpolación es realizada de manera que las
imágenes serán generadas de acuerdo con, o aproximándose a, una base
de tiempos o tasa de fotogramas dadas. Mediante la interpolación de
la modificación de los datos de personaje a lo largo del tiempo, el
estado del personaje puede ser determinado para cualquier tiempo en
la presentación.
Tal como será apreciado por una persona experta
en la materia, la interpolación es realizada de acuerdo con los
datos de tiempo recibidos desde el procesador de sonido para
asegurar que los fonemas o visemas generados son generados en los
tiempos correspondientes para asegurar la sincronización de los
labios del personaje.
El procesador de interpolación secuencia todos
los parámetros conjuntamente para generar una única secuencia de
animación, que es transferida al procesador de renderizado C7 para
generar la secuencia de imágenes.
La producción de imágenes por parte del
procesador de renderizado utiliza procesos estándar y procedimientos
empleados a medida en animación por ordenador. De esta manera, la
representación del personaje es típicamente almacenada como datos
geométricos tridimensionales, aunque alternativamente también pueden
utilizarse datos bidimensionales. Esto representa típicamente un
modelo abstracto por ordenador del personaje en un estado
neutral.
Los datos geométricos son típicamente
transformados matemáticamente de acuerdo con el visema, los datos de
expresión y animación, utilizando unas técnicas estándar empleadas
convencionalmente en animación por ordenador.
El procesador de renderizado puede estar
constituido completamente de un programa implementado en el
procesador 2. Sin embargo, preferentemente, por lo menos una parte
del procesador de renderizado está implementado dentro del
procesador de vídeo 5. En este caso, las instrucciones y la
geometría requeridas para cada imagen que han de ser renderizados
son calculadas por el procesador 2 y son transferidas al procesador
de vídeo 5 a través del bus 8.
El procesador de vídeo funciona a continuación
para renderizar y texturizar una imagen en tiempo real utilizando un
equipo o hardware diseñado para este fin. Diferentes dispositivos de
aceleración gráfica para realizar este fin están disponibles de
forma generalizada, permitiendo que la salida sea generada en tiempo
real, o por encima o por debajo del tiempo real de acuerdo con las
capacidades del hardware, y de los requerimientos de la aplicación
concreta.
El procesador de vídeo 5 produce típicamente
datos de imagen en la memoria. Los datos de imagen pueden ser
visualizados inmediatamente como una imagen, almacenados en un
archivo, o transmitidos sobre una red de comunicaciones para su
visualización inmediata o posterior.
Los datos de sonido generados mediante el
procesador conversor de texto a voz B pueden asimismo ser emitidos
directamente desde el dispositivo de cálculo transfiriéndolos a
través del adaptador de sonido 6, a un altavoz 12 conectado. De
forma alternativa, los datos de sonido pueden ser almacenados en el
dispositivo de almacenamiento 4, o transferidos a través de una red
para su posterior reproducción.
Se comprenderá que en este caso, el procesador 2
puede ser adaptado de manera ventajosa para combinar los datos de
sonido con datos o bien de imagen o bien de vídeo, para generar un
único archivo que contiene tanto la animación como la secuencia
adjunta de sonido. De esta manera, por ejemplo, los archivos de
vídeo digital del personaje animado pueden ser producidos para su
almacenamiento o su transferencia a ubicaciones remotas.
Un experto en la materia apreciará que, teniendo
en cuenta que los datos pueden ser transferidos en un número de
formas diferentes, ello permite que el personaje animado sea
presentado en un número de diferentes tipos de dispositivo. De esta
manera, el personaje animado puede ser presentado en un televisor o
en un dispositivo similar. De forma alternativa, el personaje
animado podría ser presentado en la Internet, en un teléfono móvil,
en un asistente personal de datos (tal como un ordenador de
mano).
A este respecto, será por lo tanto posible que
usuarios remotos soliciten la reproducción de cierta información
tales como noticias o similares. La información es utilizada por el
dispositivo de cálculo para generar datos que definen la
representación animada de un personaje. Estos datos pueden ser
transferidos a continuación al usuario remoto, permitiendo al
usuario remoto visualizar la animación del personaje en un terminal
remoto, tal como una estación final, un teléfono móvil, un terminal
inalámbrico, o similares.
El siguiente documento XML proporciona un ejemplo
de cómo puede ser aplicado el etiquetado de unos datos de contenido.
Esta muestra está destinada simplemente a demostrar el principio. En
la práctica, se pueden emplear diferentes esquemas de etiquetado, y
el etiquetado puede ser significativamente más rico.
\vskip1.000000\baselineskip
El ejemplo comienza con una declaración estándar
que indica que es un documento XML, y que el documento cumple por
sí mismo las convenciones de un etiquetado XML bien constituido.
El elemento <cabecera> del documento
especifica los parámetros de <salida> para la presentación y
proporciona una referencia para un archivo <escena> que
contiene detalles de la escena y el personaje que ha de ser
presentado. Estos elementos son opcionales y simplemente
sobreescriben cualquier configuración por defecto.
El elemento <cuerpo> del documento contiene
el recordatorio de la presentación y los datos de contenido.
Un elemento <historia> con el atributo
"noticias" especifica que la sección incluida es una historia
de noticia. Esta información es utilizada por el sistema para
implementar ciertos parámetros que pertenecen a la presentación de
historias de noticia, de forma contrapuesta a digamos, historias
deportivas.
Un elemento <tono> con el atributo
"optimista" indica que la sección incluida es de naturaleza
optimista, por ejemplo, de forma contrapuesta a ser seria o
pesimista. Esta información es utilizada por el sistema para
especificar el comportamiento general del personaje durante el
contenido que el elemento cubre.
Cualquier contenido que no está incluido dentro
de una <etiqueta> es considerado como texto que ha de ser
presentado. Por lo tanto la presentación comenzará con las palabras
"El Oscar a la Mejor Película", presentado en el estilo de una
historia de noticia y será de tono optimista.
Los nombres propios, tales como "American
Beauty", reconocidos ya sea mediante el uso de mayúsculas o
mediante un análisis lingüístico puede recibir una acentuación
especial, que resulta en un énfasis verbal y en correspondientes
indicaciones visuales.
La puntuación elíptica en el texto (.) indica que
ha de introducirse una pausa en este punto. Este es un ejemplo de
presentación implícita de etiquetado que está incluida en el mismo
texto, de forma contrapuesta a los elementos de etiquetado
explícitos.
El elemento <imagen> especifica la
ubicación del archivo de una imagen que ha de ser presentada en este
punto. En este caso, la imagen será mostrada hasta la etiqueta de
cierre </img>.
El elemento <emoción> especifica en este
caso un atributo de "felicidad". Esta información es utilizada
para modificar el comportamiento del personaje durante la duración
del contenido cubierto por el elemento. Por ejemplo, el personaje
puede sonreír para indicar una expresión de felicidad.
El elemento <acción> especifica la
ubicación de un archivo que describe una acción que ha de ser
realizada por el personaje en este punto. Por ejemplo, el personaje
puede mirar hacia abajo en este punto, rompiendo la impresión de
contacto visual con el espectador. La acción puede tener una
duración implícita. Opcionalmente, la duración prevista de una
acción puede ser especificada de forma explícita.
Se observará a partir de este ejemplo sencillo
que un sistema puede proporcionar parte o toda la información de
etiquetado para controlar la presentación. No es necesario por tanto
proporcionar tal información de forma explícita.
Un sistema externo puede proporcionar parte o
toda la información de etiquetado para controlar la presentación.
Por lo tanto, no es necesario disponer este tipo de información de
forma explícita.
Se apreciará que a diferencia del etiquetado para
una salida simple de texto o gráfica, el texto que es pronunciado
tiene una duración inherente. Por lo tanto, el etiquetado de la
presentación tiene un significado cronológico.
Mientras que, por ejemplo, las instrucciones HTML
para una página web controlan típicamente el formato, la estructura
o la tipografía, aquí las instrucciones tienen un valor temporal con
respecto al texto, en cuanto al punto donde aparecen, y la duración
supuesta por cada texto que cubren.
Se apreciará que, con una gama dada de elementos
expresivos y adecuadamente diseñados, ello proporciona un sistema
sintáctico mediante el cual el texto puede tener un etiquetado
impuesto para ofrecer una presentación que resulte apropiada para el
contenido semántico.
Claims (50)
1. Aparato para la generación de una
representación animada de un personaje, comprendiendo el aparato un
sistema de procesado provisto de:
una entrada para recibir unos datos de entrada
etiquetados que incluyen:
- i.
- unos datos de contenido que representan un discurso que ha de ser presentado; y,
- ii.
- unos datos de presentación que representan una presentación audiovisual que incluye el modo en el cual el discurso ha de ser presentado,
un procesador acoplado a la entrada para la
generación de datos de acuerdo con una base de tiempos definida,
conteniendo los datos:
- i.
- unos datos de fonema generados de acuerdo con los datos de contenido; y,
- ii.
- unos datos de visema generados de acuerdo con los datos de fonema y los datos de presentación;
estando el procesador adaptado además para:
- iii.
- modificar los datos de visema de acuerdo con los datos de presentación;
- iv.
- generar unos datos de sonido de acuerdo con los datos de fonema;
- v.
- generar unos datos de imagen de acuerdo con los datos de visema modificados y los datos de presentación; y,
- vi.
- sincronizar la emisión de los datos de sonido e imagen de acuerdo con la base de tiempos definida.
2. Aparato según la reivindicación 1, en el que
los datos de presentación comprenden unos elementos seleccionados de
entre un grupo que incluye el contexto, el tono, la historia, la
emoción, la expresión, la acción y otros eventos de una presentación
audiovisual.
3. Aparato según la reivindicación 2, en el que
los datos de presentación incluyen un elemento de tono que
especifica el comportamiento general del personaje durante el
contenido que el elemento cubre.
4. Aparato según la reivindicación 2, en el que
los datos de presentación incluyen un elemento de historia que
especifica que el contenido incluido es un cierto tipo de historia,
el tipo de historia suponiendo ciertos parámetros que pertenecen a
la presentación de ese tipo de historia.
5. Aparato según cualquiera de las
reivindicaciones 2 a 4, en el que unos elementos de los datos de
presentación comprenden unas etiquetas para etiquetar los datos de
contenido.
6. Aparato según cualquiera de las
reivindicaciones anteriores, en el que el procesador incluye un
analizador para:
- i.
- analizar los datos de entrada etiquetados recibidos;
- ii.
- detectar unos datos de contenido predeterminados que han de ser presentados de un modo predeterminado;
- iii.
- generar unos datos de presentación representativos de un modo predeterminado; y,
- iv.
- modificar datos etiquetados recibidos con los datos de presentación generados.
7. Aparato según la reivindicación 6, en el que
los datos de presentación generados comprenden unas etiquetas para
etiquetar los datos de entrada recibidos.
8. Aparato según cualquiera de las
reivindicaciones anteriores, en el que el procesador incluye un
procesador conversor de texto a voz para la generación de los datos
de fonema y los datos de sonido, y un procesador de animación para
la generación de los datos de visema y los datos de imagen.
9. Aparato según cualquiera de las
reivindicaciones 6 a 8, en el que el sistema de procesado comprende
además un dispositivo de almacenamiento para almacenar, estando el
analizador acoplado al dispositivo de almacenamiento para obtener
una indicación del contenido predeterminado del mismo.
10. Aparato según la reivindicación 9, en el que
los datos de contenido predeterminados incluyen palabras que son
nombres, sustantivos, negaciones y números.
11. Aparato según cualquiera de las
reivindicaciones 8 a 10, en el que el procesador conversor de texto
a voz incluye un procesador lingüístico adaptado para:
analizar los datos de contenido;
determinar los fonemas requeridos para
representar los datos de contenido; y,
generar unas referencias temporales del fonema
para cada uno de los fonemas, indicando las referencias temporales
del fonema el tiempo en el que los respectivos fonemas deberían ser
presentados con respecto a la base de tiempos.
12. Aparato según la reivindicación 11, en el que
el procesador lingüístico está adaptado además para:
analizar los datos de presentación;
generar unas etiquetas que representan los datos
de presentación; y
generar unas referencias temporales de la
etiqueta para cada una de las etiquetas, indicando la referencia
temporal del fonema el tiempo en el que las respectivas etiquetas
deberían modificar el modo de presentación con respecto a la base de
tiempos.
13. Aparato según la reivindicación 11 ó 12, en
el que el procesador lingüístico está acoplado al dispositivo de
almacenamiento para obtener una indicación de los fonemas requeridos
para representar unas palabras respectivas.
14. Aparato según cualquiera de las
reivindicaciones 11 a 13, en el que el procesador conversor de texto
a voz incluye un procesador de concatenación adaptado para:
determinar unos datos de fonema que representan a
cada uno de los fonemas; y,
concatenar los datos de fonema de acuerdo con las
referencias temporales del fonema para la generación de unos datos
de sonido que representan al discurso.
15. Aparato según la reivindicación 14, en el que
el procesador de concatenación está acoplado al dispositivo de
almacenamiento para obtener la duración del fonema del mismo de
acuerdo con los fonemas determinados.
16. Aparato según cualquiera de las
reivindicaciones 11 a 15, en el que el procesador de animación
incluye un procesador de fonema adaptado para:
obtener determinados fonemas, y las referencias
temporales del fonema asociadas desde el procesador lingüístico;
determinar unos visemas que corresponden a cada
uno de los fonemas determinados; y,
determinar una referencia temporal de visema para
cada visema de acuerdo con la referencia temporal del fonema del
fonema correspondiente.
17. Aparato según la reivindicación 16, en el que
el procesador de fonema está acoplado al dispositivo de
almacenamiento para obtener datos de traducción del mismo, indicando
los datos de traducción un visema asociado con cada uno de los
fonemas, utilizando el procesador de fonema los datos de traducción
para determinar los visemas de acuerdo con los fonemas
determinados.
18. Aparato según la reivindicación 17, en el que
el procesador de animación incluye un procesador de visema acoplado
al dispositivo de almacenamiento, estando el procesador de visema
adaptado para obtener unos datos de visema desde el dispositivo de
almacenamiento de acuerdo con los visemas determinados, incluyendo
los datos de visema un número de parámetros que representan la
variación requerida a partir de una imagen de base del personaje,
para representar el visema respectivo.
19. Aparato según la reivindicación 18, en el que
el procesador de animación incluye por lo menos un procesador de
modificación adaptado para modificar los datos de visema de acuerdo
con los datos de presentación.
20. Aparato según la reivindicación 19, en el que
el o cada procesador de modificación está acoplado al dispositivo de
almacenamiento para obtener datos de modificación del mismo,
utilizando el o cada procesador de modificación los datos de
modificación para modificar los parámetros de los datos de
visema.
21. Aparato según la reivindicación 19 ó 20, en
el que el o cada procesador de modificación está adaptado para
modificar por lo menos uno de una expresión, comportamiento y acción
especificados.
22. Aparato según cualquiera de las
reivindicaciones 19 a 21, en el que el o cada procesador de
modificación está adaptado además para modificar los datos de visema
de acuerdo con unos datos pseudo-aleatorios.
23. Aparato según cualquiera de las
reivindicaciones 18 a 22, en el que el procesador de animación
comprende además un procesador de interpolación para interpolar los
datos de visema con el fin de determinar la apariencia del personaje
en tiempos entre los visemas especificados.
24. Aparato según la reivindicación 23, en el que
el sistema de procesado comprende además un procesador de
renderizado acoplado al procesador de interpolación para la
generación de unos datos de imagen de acuerdo con los datos de
visema interpolados, representando los datos de imagen el personaje
que presenta el discurso definido por los datos de contenido.
25. Aparato según la reivindicación 24, en el que
el sistema de procesado incluye además un procesador de vídeo,
formando parte el procesador de renderizado del procesador de
vídeo.
26. Aparato según la reivindicación 25, en el que
el procesador de vídeo genera unos datos de vídeo que representan la
secuencia del personaje animado.
27. Aparato según cualquiera de las
reivindicaciones anteriores, en el que el sistema de procesado
incluye además una interfaz de red de comunicaciones, que durante su
utilización acopla el dispositivo de cálculo a una red de
comunicaciones, permitiendo por lo tanto que la representación de un
personaje animado sea transferida a otros sistemas de procesado
acoplados a la red de comunicaciones.
28. Aparato según la reivindicación 27, en el que
durante su utilización la entrada está adaptada para recibir los
datos etiquetados desde la red de comunicaciones.
29. Sonido e imagen sincronizados emitidos por un
aparato según cualquiera de las reivindicaciones anteriores.
30. Método para la generación de una
representación animada de un personaje que utiliza un sistema de
procesado, comprendiendo el método:
recibir unos datos de entrada etiquetados que
incluyen:
- unos datos de contenido que representan un discurso que ha de ser presentado; y,
- unos datos de presentación que representan una presentación audiovisual que incluye el modo en el cual el discurso ha de ser presentado;
generar unos datos de acuerdo con una base de
tiempos definida, incluyendo los datos:
- unos datos de fonema generados de acuerdo con los datos de contenido; y,
- unos datos de visema generados de acuerdo con los datos de fonema y los datos de presentación;
modificar los datos de visema de acuerdo con los
datos de presentación;
generar unos datos de sonido de acuerdo con los
datos de fonema;
generar unos datos de imagen de acuerdo con los
datos de visema modificados y los datos de presentación; y,
sincronizar la emisión de los datos de sonido e
imagen de acuerdo con la base de tiempos definida.
31. Método según la reivindicación 30, en el que
los datos de presentación comprenden elementos seleccionados de
entre un grupo que incluye el contexto, el tono, la historia, la
emoción, la expresión, la acción y otros eventos de una presentación
audiovisual.
32. Método según la reivindicación 31, en el que
los datos de presentación incluyen un elemento de tono que
especifica el comportamiento general del personaje durante el
contenido que el elemento cubierto.
33. Método según la reivindicación 31, en el que
los datos de presentación incluyen un elemento de historia que
especifica que el contenido incluido es un cierto tipo de historia,
el tipo de historia suponiendo ciertos parámetros que pertenecen a
la presentación de ese tipo de historia.
34. Método según cualquiera de las
reivindicaciones 31 a 33, en el que unos elementos de los datos de
presentación comprenden unas etiquetas para etiquetar los datos de
contenido.
35. Método según cualquiera de las
reivindicaciones 30 a 34, en el que el método comprende además:
analizar datos de entrada etiquetados
recibidos;
detectar unos datos de contenido predeterminados
que han de ser presentados de un modo predeterminado;
generar unos datos de presentación
representativos de un modo predeterminado; y,
modificar los datos etiquetados recibidos con los
datos de presentación generados.
36. Aparato según la reivindicación 35, en el que
los datos de presentación generados comprenden unas etiquetas para
etiquetar los datos de entrada recibidos.
37. Método según cualquiera de las
reivindicaciones 35 ó 36, en el que el método de generación de los
datos de fonema comprende:
analizar los datos de contenido;
determinar los fonemas requeridos para
representar los datos de contenido; y,
generar unas referencias temporales del fonema
para cada uno de los fonemas, las referencias temporales del fonema
indicando el tiempo en el que los respectivos fonemas deberían ser
presentados con respecto a la base de tiempos.
38. Método según cualquiera de las
reivindicaciones 35 a 37, en el que el método de generación de los
datos de fonema comprende:
analizar los datos de contenido;
determinar los fonemas requeridos para
representar los datos de contenido;
generar unas referencias temporales del fonema
para cada uno de los fonemas, indicando las referencias temporales
del fonema el tiempo en el que el fonema debería ser presentado con
respecto a la base de tiempos.
39. Método según la reivindicación 38, en el que
el método comprende:
analizar los datos de presentación;
generar un número de etiquetas que representan a
los datos de presentación; y,
generar unas referencias temporales de la
etiqueta para cada una de las etiquetas, indicando la referencia
temporal del fonema el tiempo en el que las respectivas etiquetas
deberían modificar el modo de presentación con respecto a la base de
tiempos.
40. Método según la reivindicación 38 ó 39, en el
que el método de determinación de los fonemas comprende utilizar los
datos de contenido analizados para acceder a un diccionario,
indicando el diccionario los fonemas requeridos para representar
unas palabras respectivas.
41. Método según cualquiera de las
reivindicaciones 37 a 40, en el que el método de generación de los
datos de fonema comprende además:
utilizar cada uno de los fonemas determinados
para obtener unos datos de fonema respectivos; y
concatenar los datos de fonema de acuerdo con las
referencias temporales del fonema para la generación de unos datos
de sonido que representan al discurso.
42. Método según cualquiera de las
reivindicaciones 38 a 41, en el que el método comprende además
modificar los datos de fonema de acuerdo con los datos de
presentación.
43. Método según cualquiera de las
reivindicaciones 37 a 42, en el que el método de generación de los
datos de visema comprende:
determinar unos visemas que corresponden a cada
uno de los fonemas determinados; y,
determinar una referencia temporal de visema para
cada visema de acuerdo con la referencia temporal del fonema del
fonema correspondiente; y,
utilizar el visema para obtener los datos de
visema.
44. Método según la reivindicación 43, en el que
los visemas son determinados mediante el acceso a los datos de
traducción de acuerdo con los fonemas determinados, indicando los
datos de traducción un visema correspondiente a cada fonema.
45. Método según la reivindicación 43 ó 44, en el
que los datos de visema incluyen un número de parámetros que
representan la variación requerida a partir de una imagen de base
del personaje para representar el visema respectivo.
46. Método según cualquiera de las
reivindicaciones 43 a 45, en el que el método comprende además
modificar los datos de visema mediante la modificación de los
parámetros de acuerdo con los datos de presentación, siendo
modificados los datos de visema para representar por lo menos uno de
una expresión, comportamiento o acción especificados.
47. Método según cualquiera de las
reivindicaciones 43 a 46, en el que los datos de visema son
modificados además de acuerdo con un comportamiento
pseudo-aleatorio.
48. Método según cualquiera de las
reivindicaciones 43 a 47, en el que el método comprende además la
interpolación de los datos de visema para determinar la apariencia
del personaje en tiempos entre los visemas especificados.
49. Método según la reivindicación 48, en el que
el método comprende además utilizar los datos de visema interpolados
para generar unos datos de imagen que representan al personaje que
presenta el discurso definido por los datos de contenido.
50. Sonido e imagen sincronizados generados de
acuerdo con el método según cualquiera de las reivindicaciones 30 a
49.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GBGB0008537.3A GB0008537D0 (en) | 2000-04-06 | 2000-04-06 | Character animation |
GB0008537 | 2000-04-06 |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2230290T3 true ES2230290T3 (es) | 2005-05-01 |
Family
ID=9889396
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES01919631T Expired - Lifetime ES2230290T3 (es) | 2000-04-06 | 2001-04-06 | Animacion de personajes. |
Country Status (10)
Country | Link |
---|---|
US (1) | US6772122B2 (es) |
EP (1) | EP1269465B1 (es) |
JP (1) | JP2003530654A (es) |
CN (1) | CN1221942C (es) |
AT (1) | ATE278237T1 (es) |
AU (1) | AU4669201A (es) |
DE (1) | DE60105995T2 (es) |
ES (1) | ES2230290T3 (es) |
GB (1) | GB0008537D0 (es) |
WO (1) | WO2001078067A1 (es) |
Families Citing this family (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6975988B1 (en) * | 2000-11-10 | 2005-12-13 | Adam Roth | Electronic mail method and system using associated audio and visual techniques |
US6661418B1 (en) | 2001-01-22 | 2003-12-09 | Digital Animations Limited | Character animation system |
US7663628B2 (en) * | 2002-01-22 | 2010-02-16 | Gizmoz Israel 2002 Ltd. | Apparatus and method for efficient animation of believable speaking 3D characters in real time |
US7257538B2 (en) * | 2002-10-07 | 2007-08-14 | Intel Corporation | Generating animation from visual and audio input |
WO2004100128A1 (en) * | 2003-04-18 | 2004-11-18 | Unisay Sdn. Bhd. | System for generating a timed phomeme and visem list |
US7577636B2 (en) | 2003-05-28 | 2009-08-18 | Fernandez Dennis S | Network-extensible reconfigurable media appliance |
JP2005064939A (ja) * | 2003-08-14 | 2005-03-10 | Nec Corp | アニメーション機能を有する携帯電話端末およびその制御方法 |
US20050054442A1 (en) * | 2003-09-10 | 2005-03-10 | Anderson Peter R. | Gaming machine with audio synchronization feature |
EP1671277A1 (en) * | 2003-09-30 | 2006-06-21 | Koninklijke Philips Electronics N.V. | System and method for audio-visual content synthesis |
US20060009978A1 (en) * | 2004-07-02 | 2006-01-12 | The Regents Of The University Of Colorado | Methods and systems for synthesis of accurate visible speech via transformation of motion capture data |
US7599838B2 (en) * | 2004-09-01 | 2009-10-06 | Sap Aktiengesellschaft | Speech animation with behavioral contexts for application scenarios |
US7512537B2 (en) * | 2005-03-22 | 2009-03-31 | Microsoft Corporation | NLP tool to dynamically create movies/animated scenes |
US20080313130A1 (en) * | 2007-06-14 | 2008-12-18 | Northwestern University | Method and System for Retrieving, Selecting, and Presenting Compelling Stories form Online Sources |
US20090044112A1 (en) * | 2007-08-09 | 2009-02-12 | H-Care Srl | Animated Digital Assistant |
JP4586063B2 (ja) * | 2007-12-18 | 2010-11-24 | ソニー エレクトロニクス インク | 端末装置 |
US8224652B2 (en) * | 2008-09-26 | 2012-07-17 | Microsoft Corporation | Speech and text driven HMM-based body animation synthesis |
US8477103B2 (en) | 2008-10-26 | 2013-07-02 | Microsoft Corporation | Multi-touch object inertia simulation |
US8466879B2 (en) * | 2008-10-26 | 2013-06-18 | Microsoft Corporation | Multi-touch manipulation of application objects |
US9191639B2 (en) | 2010-04-12 | 2015-11-17 | Adobe Systems Incorporated | Method and apparatus for generating video descriptions |
US9600843B2 (en) | 2012-05-03 | 2017-03-21 | Geneva Technologies, Llc | Methods and systems for showing perspective in market data |
US9035955B2 (en) | 2012-05-16 | 2015-05-19 | Microsoft Technology Licensing, Llc | Synchronizing virtual actor's performances to a speaker's voice |
US9035970B2 (en) | 2012-06-29 | 2015-05-19 | Microsoft Technology Licensing, Llc | Constraint based information inference |
US9317971B2 (en) | 2012-06-29 | 2016-04-19 | Microsoft Technology Licensing, Llc | Mechanism to give holographic objects saliency in multiple spaces |
US9384737B2 (en) | 2012-06-29 | 2016-07-05 | Microsoft Technology Licensing, Llc | Method and device for adjusting sound levels of sources based on sound source priority |
US9105210B2 (en) | 2012-06-29 | 2015-08-11 | Microsoft Technology Licensing, Llc | Multi-node poster location |
CN104424955B (zh) * | 2013-08-29 | 2018-11-27 | 国际商业机器公司 | 生成音频的图形表示的方法和设备、音频搜索方法和设备 |
US20150287403A1 (en) * | 2014-04-07 | 2015-10-08 | Neta Holzer Zaslansky | Device, system, and method of automatically generating an animated content-item |
US10204379B2 (en) | 2014-11-10 | 2019-02-12 | Geneva Technologies, Llc | Methods, apparatus, and systems for curve trading |
CN107330961A (zh) * | 2017-07-10 | 2017-11-07 | 湖北燿影科技有限公司 | 一种文字影音转换方法和系统 |
US10699705B2 (en) * | 2018-06-22 | 2020-06-30 | Adobe Inc. | Using machine-learning models to determine movements of a mouth corresponding to live speech |
KR102116315B1 (ko) * | 2018-12-17 | 2020-05-28 | 주식회사 인공지능연구원 | 캐릭터의 음성과 모션 동기화 시스템 |
WO2020170441A1 (ja) * | 2019-02-22 | 2020-08-27 | ソニー株式会社 | 情報処理装置、情報処理方法、およびプログラム |
CN110503942A (zh) * | 2019-08-29 | 2019-11-26 | 腾讯科技(深圳)有限公司 | 一种基于人工智能的语音驱动动画方法和装置 |
CN112002301A (zh) * | 2020-06-05 | 2020-11-27 | 四川纵横六合科技股份有限公司 | 一种基于文本的自动化视频生成方法 |
KR102546532B1 (ko) * | 2021-06-30 | 2023-06-22 | 주식회사 딥브레인에이아이 | 발화 영상 제공 방법 및 이를 수행하기 위한 컴퓨팅 장치 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5878396A (en) * | 1993-01-21 | 1999-03-02 | Apple Computer, Inc. | Method and apparatus for synthetic speech in facial animation |
US5657426A (en) * | 1994-06-10 | 1997-08-12 | Digital Equipment Corporation | Method and apparatus for producing audio-visual synthetic speech |
US5734794A (en) * | 1995-06-22 | 1998-03-31 | White; Tom H. | Method and system for voice-activated cell animation |
US5880788A (en) * | 1996-03-25 | 1999-03-09 | Interval Research Corporation | Automated synchronization of video image sequences to new soundtracks |
JP4037455B2 (ja) | 1996-03-26 | 2008-01-23 | ブリティッシュ・テレコミュニケーションズ・パブリック・リミテッド・カンパニー | 画像合成 |
GB2328849B (en) | 1997-07-25 | 2000-07-12 | Motorola Inc | Method and apparatus for animating virtual actors from linguistic representations of speech by using a neural network |
JP4236815B2 (ja) * | 1998-03-11 | 2009-03-11 | マイクロソフト コーポレーション | 顔合成装置および顔合成方法 |
US6366885B1 (en) * | 1999-08-27 | 2002-04-02 | International Business Machines Corporation | Speech driven lip synthesis using viseme based hidden markov models |
-
2000
- 2000-04-06 GB GBGB0008537.3A patent/GB0008537D0/en not_active Ceased
-
2001
- 2001-04-06 AU AU46692/01A patent/AU4669201A/en not_active Abandoned
- 2001-04-06 US US10/257,046 patent/US6772122B2/en not_active Expired - Fee Related
- 2001-04-06 JP JP2001575430A patent/JP2003530654A/ja active Pending
- 2001-04-06 CN CNB018088104A patent/CN1221942C/zh not_active Expired - Fee Related
- 2001-04-06 WO PCT/GB2001/001579 patent/WO2001078067A1/en active IP Right Grant
- 2001-04-06 EP EP01919631A patent/EP1269465B1/en not_active Expired - Lifetime
- 2001-04-06 DE DE60105995T patent/DE60105995T2/de not_active Expired - Lifetime
- 2001-04-06 AT AT01919631T patent/ATE278237T1/de not_active IP Right Cessation
- 2001-04-06 ES ES01919631T patent/ES2230290T3/es not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
CN1221942C (zh) | 2005-10-05 |
DE60105995T2 (de) | 2005-08-11 |
AU4669201A (en) | 2001-10-23 |
ATE278237T1 (de) | 2004-10-15 |
EP1269465B1 (en) | 2004-09-29 |
US6772122B2 (en) | 2004-08-03 |
JP2003530654A (ja) | 2003-10-14 |
GB0008537D0 (en) | 2000-05-24 |
DE60105995D1 (de) | 2004-11-04 |
CN1426577A (zh) | 2003-06-25 |
EP1269465A1 (en) | 2003-01-02 |
US20030149569A1 (en) | 2003-08-07 |
WO2001078067A1 (en) | 2001-10-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2230290T3 (es) | Animacion de personajes. | |
Lee et al. | Nonverbal behavior generator for embodied conversational agents | |
Cosatto et al. | Lifelike talking faces for interactive services | |
US20120130717A1 (en) | Real-time Animation for an Expressive Avatar | |
WO2018132721A1 (en) | Method and system for implementing three-dimensional facial modeling and visual speech synthesis | |
US20100182325A1 (en) | Apparatus and method for efficient animation of believable speaking 3d characters in real time | |
Granström et al. | Audiovisual representation of prosody in expressive speech communication | |
KR101089184B1 (ko) | 캐릭터의 발화와 감정표현 제공 시스템 및 방법 | |
Wang et al. | Assembling an expressive facial animation system | |
DeCarlo et al. | Specifying and animating facial signals for discourse in embodied conversational agents | |
Albrecht et al. | " May I talk to you?:-)"-facial animation from text | |
Čereković et al. | Multimodal behavior realization for embodied conversational agents | |
López-Colino et al. | Spanish sign language synthesis system | |
CN115311731B (zh) | 一种手语数字人的表情生成方法和装置 | |
Elliott et al. | A framework for non-manual gestures in a synthetic signing system | |
Beard et al. | MetaFace and VHML: a first implementation of the virtual human markup language | |
Perng et al. | Image talk: a real time synthetic talking head using one single image with chinese text-to-speech capability | |
López-Colino et al. | Hybrid paradigm for Spanish sign language synthesis | |
Smid et al. | Autonomous speaker agent | |
Godenschweger et al. | Modeling and generating sign language as animated line drawings | |
Ye et al. | CSLML: a markup language for expressive Chinese sign language synthesis | |
Glauert et al. | Virtual human signing as expressive animation | |
Escher et al. | User interactive MPEG-4 compatible facial animation system | |
Wojdel et al. | Intelligent system for semiautomatic facial animation | |
Gustavsson et al. | Verification, validation and evaluation of the Virtual Human Markup Language (VHML) |