Animation bedeutet im wörtlichen Sinn, Leben zu bringen, wenn es auch in Zusammenhang mit Synthese als Vortäuschung von Leben gedacht ist. Ziel der Animation ist es, Leben in ein künstliches Gesicht zu bringen.
Es ist schwer ein Modell zu erstellen, das auf der einen Seite physikalisch realistisch, aber auf der anderen Seite auch einfach zu bedienen ist, daher wird ein mehrschichtiges Verfahren nach Kalra [SMILE] verwendet, daß das Problem der Animation von Gesichtern in eine Hierarchie mehrere unabhängiger Ebenen einteilt:
Ebene 1: Synchronisation von Mechanismen
Ebene 2: Globale Aktionen (Emotionen, Sprache, Kopfbewegungen)
Ebene 3: Diskrete Aktionen (Phonem (kleinste linguistische Einheit) und Ausdruck)
Ebene 4: Minimal wahrnehmbare Bewegungen (MPA)
Ebene 5: Muskelaktionen
Eine Animation anhand von Muskelaktionen zu erstellen, würde die Erstellung von Animationen sehr langwierig und kompliziert machen, da man sozusagen jeden kleinen Parameter einer Gesichtsbewegung (die Muskeln) von Hand beschreiben müßte. Man würde schnell den Überblick verlieren. Es ist daher dringend eine Vereinfachung und Zusammenfassung nötig, wenn man Gesichtsausdrücke beschreiben will. Dazu nutzt man FACS (Facial Action Coding System) [FacAction], speziell in einer nicht-verbalen Kommunikation.
Die minimal wahrnehmbare Bewegung (englisch: Minimal Perceptible Action MPA) gehört zu den Grundparametern des Gesichtsausdrucks. Jede MPA hat einen entsprechenden Satz sichtbarer Eigenschaften, wie Bewegungen der Augenbrauen, des Kiefers oder Mundes und anderen, die aus Muskeleinflüssen entstehen. MPAs beinhalten aber auch vom Gesicht unabhängige Muskelbewegungen, wie nicken, Kopfdrehungen und Augenbewegungen. Jedes MPA wird mit einer normalisierten Intensität zwischen 0 und 1 oder –1 und 1 angegeben.
Es ist möglich auf dieser MPA-Ebene eine Animation zu erstellen. Allerdings muß der Anwender viele Werte manuell erstellen und eingeben. Daher ist dieses Verfahren sehr umständlich und wird selten verwendet.
Deshalb wird eine höhere Ebene verwendet, in der MPAs gruppiert werden können. Auf dieser Ebene 3 werden Entitäten zu diskreten Aktionen, wie Ausdruck und Phonem, zusammengefaßt.
Ausdrücke und Phoneme sind Schnappschüsse des Gesichts, d.h. eine detaillierte Position zu einem bestimmten Zeitpunkt. Bei Phonemen werden nur die Lippen während der Stimmausgabe berücksichtigt. Ein Schnappschuß des Gesichts besteht aus einem oder mehreren MPAs und deren Intensität, wie schon beschrieben. Ein Satz MPAs reicht normalerweise aus, um die meisten möglichen Gesichtsausdrücke zu beschreiben.
Bekannte statische Ausdrücke und Phoneme können auch bereits vordefiniert in einer Bibliothek abgelegt sein, um damit automatisch Animationssequenzen generieren zu können.
Beispiel für den Ausdruck "Überraschung"
[expression surprise [mpa open_jaw intensity 0.17] // Mundöffnung [mpa puffcheeks intesity –0.41] // Backen, Wangen [mpa raise_eyebrows intensity 0.40] // Augenbrauen heben . . . ] |
Beispiel für das Phonem "ee"
[phoneme ee [mpa open_jaw intensity 0.50] // Mundöffnung [mpa stretch_cornerlips intesity –0.29] // Lippenwinkel strecken [mpa raise_upperlips intensity –0.20] // Oberlippen anheben . . . ] |
Wenn man nur Ausdrücke und Phoneme hat, wirkt eine so erstellte Animation nicht natürlich genug. Der Anwender wird daher vielmehr die Animation auf der obersten Ebene beschreiben und kontrollieren wollen. Dort kann er die Animationen direkt in Ausdrücke globaler Aktionen einteilen, wie Emotionen, Sprache und Kopfbewegung. Mit solchen Angaben bleibt dem Anwender erspart, detailliertes Wissen der unteren Ebenen eines Systems zu lernen.
Emotionen sind sehr persönlicher Natur und nur schwer zu verstehen und nachzuvollziehen. Verschiedene Personen reagieren ganz unterschiedlich auf bestimmte Situationen. Die Analyse und Erforschung der Gründe und Empfindungen von Emotionen, ist ein Forschungsgebiet für sich.
Eine Emotion drückt einen Gesichtsausdruck über eine Zeitperiode aus. Eine generierte Emotion besteht aus vier Phasen: Beginn (attack), Abklingen (decay), Wahrnehmung (sustain) und Ende (release). [FacAction]
Die zeitliche Länge und Intensität sind vom Kontext abhängig. So sind die Intensität und die zeitliche Länge eines Lachens zum Beispiel in einer normalen Situation und in einer lustigen Situation unterschiedlich.
Desweiteren ist nicht jede Phase der Emotion gleich empfindlich zur Ausdehnung der Zeit. Anfalls- und Befreiungsphase dehnen sich nicht proportional zur Zeitausdehnung aus.
Die Übertragung eines Satzes oder Wortes mit richtiger Lippensynchronisation benötigt Mechanismen zur Kontrolle der Intensität, der Dauer und der Betonung jedes Wortes. Es werden Pausen für den Rhythmus und die Sprachmelodie eines Satzes hinzugefügt. Ein Wort wird als eine Sequenz von Phonemen beschrieben. Die relative Dauer eines jeden Phonems in einem Wort wird entsprechend seines Platzes, seines Nachbarphonems und der Anzahl der Silben in dem gegebenen Wort bestimmt. Für jedes Wort wird die Folge von Phonemen als Liste relativer Ausdrücke mit normalisierter Dauer (zwischen 0 und 1) geführt.
Bewegungen des Kopfes spielen eine extrem wichtige Rolle in der natürlichen Gesichtsanimation. Zusätzlich zur Lippenbewegung für die Sprachausgabe, kann eine Person während dem Reden zusätzlich den Kopf drehen und die Augen bewegen, um die Konversationssignale zu akzentuieren und zu regulieren. Die Reihenfolge von Ausdrücken, während einer Kopfbewegung, wird in einer Liste als relativer Ausdrücke zusammengefaßt.
Um einen glatten Fluß der Emotionen und Sätze mit Kopfbewegungen sicher zu stellen, benötigt man Synchronisationsmechanismen. Dafür wird die Sprache HLSS (High Level Script Scheduler) [3] benützt, die eine Synchronisation als ein Ausdruck aus Aktion (action) und seiner Dauer (duration) beschreibt. Das generelle Format ist:
while <duration> do <action>
|