ANIMATION UND MORPHING
ANIMATION UND MORPHING
ANIMATION UND MORPHING
Sie wollen auch ein ePaper? Erhöhen Sie die Reichweite Ihrer Titel.
YUMPU macht aus Druck-PDFs automatisch weboptimierte ePaper, die Google liebt.
<strong>ANIMATION</strong> <strong>UND</strong> <strong>MORPHING</strong><br />
Ausarbeitung zum Proseminar<br />
Computergraphik<br />
Sommersemester 2002<br />
von<br />
Thomas Jakob<br />
Betreuer: Martin Gumhold
Proseminar Computergraphik – Animation und Morphing<br />
Inhaltsverzeichnis<br />
1 Animation<br />
1.1. Überblick<br />
1.2. Wahrnehmung von Animation<br />
1.3. Das Erbe der Animation<br />
1.4. Computeranimation – Hintergründe und Geschichte<br />
1.5. Computeranimation in Film und Video<br />
1.6. Techniken für die Bewegungsanimation<br />
1.6.1. Interpolation<br />
1.6.2. Parametrisierung durch die Bogenlänge<br />
1.6.3. Orientierte Repräsentation und Interpolation<br />
1.6.4. Repräsentation über feste Koordinatenachsen<br />
1.6.5. Animation durch Kamerafahrt<br />
1.6.6. Einfache Schlüsselbildersysteme<br />
1.6.7. Metamorphose und Forminterpolation<br />
2 Morphing und Warping<br />
2.1. Metamorphose<br />
2.1.1. Formveränderungen in der Natur<br />
2.1.2. Analyse von Formen<br />
2.1.3. Bilder und Illusionen<br />
2.2. Morphing graphischer Objekte<br />
2.2.1. Morphing: Form- und Attributkombination<br />
2.2.2. Einige Beispiele für Morphing<br />
2.3. Einführung in die Warping–Techniken<br />
2.3.1. Dreiecknetze<br />
2.3.2. Dreidimensionales Warping mit Hilfe von<br />
Dreiecknetzen<br />
2.3.3. Free-Form Warping<br />
2.3.3.1 Two Pass Spline Mesh Warping<br />
2.3.3.2 Dreidimensionales Three Pass Spline<br />
Mesh Warping<br />
3 Quellenverzeichnis<br />
2<br />
3<br />
3<br />
4<br />
5<br />
7<br />
8<br />
10<br />
10<br />
12<br />
14<br />
15<br />
16<br />
17<br />
17<br />
19<br />
19<br />
19<br />
20<br />
21<br />
24<br />
24<br />
27<br />
29<br />
29<br />
29<br />
30<br />
31<br />
33<br />
34
Proseminar Computergraphik – Animation und Morphing<br />
1 Animation<br />
1.1. Überblick<br />
Im herkömmlichen Sinne bedeutet animieren, zum Leben erwecken, in der<br />
Computeranimation bezeichnet der Begriff die Veränderung der sichtbaren Dinge.<br />
Darunter fällt nicht nur die Bewegung von Objekten, sondern auch die<br />
Veränderung deren Attribute wie Farbe, Beleuchtung und Oberflächeneigenschaften,<br />
aber auch beispielsweise Kamerafahrten.<br />
Die Computeranimation als solches wird in zwei große Kategorien, die Computer<br />
Assisted Animation und die Computer Generated Animation, eingeteilt. Computer<br />
Assisted Animation betrifft zwei dimensionale Systeme, mit denen die traditionellen<br />
(hand-)gezeichneten Animationen berechnet werden. Bei dieser Art der<br />
Animation ist die Interpolation zwischen den Schlüsselformen (neben den<br />
herkömmlichen Mitteln), wobei dieser algorithmische Bestandteil hier durch<br />
Computer realisiert wird, sehr typisch.<br />
In dieser Ausarbeitung liegt der Schwerpunkt mehr im Bereich der Computer<br />
Generated Animation. Bei dieser Art der Animation werden hinsichtlich der<br />
Spezifikation der Bewegung wiederum zwei Kategorien unterschieden. Während<br />
die Low Level Techniken die genauen speziellen Bewegungen beschreiben, geht<br />
es bei den High Level Techniken um die Beschreibung der allgemeinen<br />
Bewegung.<br />
Die Low Level Techniken bestehen aus Techniken, wie Algorithmen für die<br />
Forminterpolation, die bei der Generierung helfen, in die Bewegungsdetails<br />
genug Informationen über die vorgegebene Bewegung fließen zu lassen. Die<br />
Nutzung solcher Techniken setzt einen gewissen Überblick über die Bewegungen<br />
voraus, die später durch die Animation realisiert werden sollen.<br />
Die High Level Techniken sind typischerweise Algorithmen oder Modelle, die zur<br />
Generierung und Steuerung von Bewegungen genutzt werden, die gewissen<br />
Regeln oder Beschränkungen unterliegen. Diese Bewegungen erreichen dadurch<br />
oft ein sehr realistisches Niveau, ähnlich den physisch basierenden Bewegungen.<br />
Die algorithmischen/modellbasierten Ansätze verlassen sich häufig auf ziemlich<br />
anspruchsvolle Berechnungen wie bei der physisch basierenden<br />
Bewegungskontrolle.<br />
Diese Unterscheidung ist vorrangig für pädagogische Zwecke gedacht. In der<br />
realen Praxis stellen diese Kategorien zweifellos die beiden Extreme dar, die ein<br />
Kontinuum von Lösungen charakterisieren. Jede Technik setzt eine gewisses<br />
Maß an Kompetenz bei der Generierung, aber auch ein gewissen Standard an die<br />
bestehende Hardware voraus. Die Motion Specification Aids sind solche<br />
Techniken, die mehr Eingaben vom Benutzer erfordern und ziemlich einfachen<br />
Rechenaufwand erfordern. Die Modell Based Ansätze wiederum erfordern weniger<br />
Benutzereingaben und benötigen dafür aber wesentlich mehr Rechenaufwand.<br />
Die sogenannten Motion Specification Aids werden häufig auch in die Kategorie<br />
der algorithmischen Ansätze gezählt.<br />
3
Proseminar Computergraphik – Animation und Morphing<br />
Ein anderer Weg die Unterschiede zwischen den Techniken zu charakterisieren<br />
liegt in der Betrachtung der Abstraktionsebene, in der die Animation generiert<br />
wird. Auf einer sehr niedrigen Ebene der Abstraktion steht die Generierung der<br />
Animation durch die farbliche Gestaltung jedes einzelnen Pixels in jedem<br />
einzelnen Bild. Das andere Extrem stellt auf einer sehr hohen Ebene der<br />
Abstraktion die komplette Generierung ganzer Animationssequenzen dar. Auf der<br />
untersten Abstraktionsebene wird dem Hersteller der Animation ein sehr hohes<br />
Maß an Einflussnahme auf das Ergebnis ermöglicht. In der Realität arbeitet man<br />
auf vielen Abstraktionsebenen, da man beispielsweise in der Lage sein muss, im<br />
Arbeitsprozess Korrekturen oder Verbesserungen aller Art vorzunehmen. Die<br />
Herausforderung bei der Entwicklung von Animationsprogrammen besteht darin,<br />
solche Programme so zu gestalten, dass es während der Arbeit möglich ist, wenn<br />
nötig von einer höheren Abstraktionsebene trotzdem wieder in eine niedrigere<br />
Ebene zu wechseln.<br />
1.2. Wahrnehmung von Animation<br />
Animationen werden typischerweise durch Film- oder Videoformate, also durch<br />
eine kontinuierliche Abfolge von einzelnen Bildern, dargestellt. Dies ist<br />
bekanntlich nur durch die Trägheit des menschlichen Auges zu erklären, die diese<br />
Abfolge als Bewegung interpretiert.<br />
Die Reaktionszeit der Rezeptoren im menschlichen Auge ist, abgesehen von<br />
mechanischen Begrenzungen wie Blinzeln oder Augenbewegung als solches, für<br />
die Lichterkennung die einzige Grenze für die Bewegungserkennung. Wenn ein<br />
Objekt sich schnell genug bewegt, dann werden diese Rezeptoren im Auge nicht<br />
mehr in der Lage sein, für das Gehirn schnell genug zu reagieren, um einen<br />
scharfe Wahrnehmung dieses Objektes zu bekommen. Das Ergebnis ist ein<br />
verschwommener und undeutlicher Eindruck.<br />
In Film, Video und auch Fernsehen ist die Sequenz der Bilder schnell genug<br />
aufgenommen, um das Auge so zu beeinflussen, eine kontinuierliche Bewegung<br />
wahrzunehmen. Natürlich ist die diese Bilderrate aufgrund der Ressourceneinsparung<br />
so niedrig wie möglich, um eine kontinuierliche Bewegung zu<br />
simulieren.<br />
Es gibt momentan zwei Arten von Bildraten. Die eine spiegelt die dargestellte<br />
Anzahl der Bilder pro Sekunde wieder, während die andere die Anzahl der<br />
verschiedenen Bilder, die pro Sekunde vorkommen, darstellt. Die erste ist die<br />
sogenannte Playback Rate (Wiedergaberate oder auch Bildwiederholungsrate),<br />
und letztere ist die Sampling Rate oder auch Update Rate. Beispielsweise werden<br />
im Fernsehen 25 Bilder pro Sekunde dargestellt, während in alten<br />
Comicsendungen im Fernsehen nur 5 verschiedene Bilder pro Sekunde, wobei<br />
jedes Bild fünfmal wiederholt wird, dargestellt werden.<br />
4
Proseminar Computergraphik – Animation und Morphing<br />
1.3. Das Erbe der Animation<br />
Die Idee der konventionellen Animation wurde im 18. Jahrhundert geboren und<br />
führte zu solchen Erfindungen wie dem sogenannten Wheel of Life. Es bestand<br />
damals aus einem kurzen, großen Zylinder der sich um die eigene Achse<br />
gleichmäßig drehte. Die Innenseite dieses Zylinders bestand aus einer ganzen<br />
Anzahl von Bildsequenzen mit sich geringfügig ändernden Motiven von einem<br />
Bild zum nächsten Bild. Zwischen den einzelnen Bildern befanden sich lange<br />
vertikale Schlitze, durch die man von der Außenseite des Zylinders betrachtet die<br />
einzelnen Bilder bei gleichmäßiger Rotation sehen konnte. Das Ergebnis war die<br />
Illusion einer mehr oder weniger gleichförmigen Bewegung.<br />
Eine andere Erfindung ist das Flipbook. Im allgemeinen Volksmund ist es auch als<br />
Daumenkino bekannt. Im Grunde war es nichts anderes als ein Stapel Papier<br />
bestehend aus einzelnen Bildern, die sich nur geringfügig von einem zum<br />
anderen unterschieden. Man nahm es in die Hand und schaute schnell blätternd<br />
auf die Seiten, wodurch auch hier der Eindruck einer Bewegung entstand.<br />
Der Rückblick auf frühere Tage der konventionellen Animation gibt Einblicke in<br />
bedeutende technologische Fortschritte. Der erste Hinweis für die Benutzung<br />
einer Kamera, um leblose, unbewegliche Motive zu bewegen, ist für das Jahr<br />
1890 verzeichnet.<br />
Winsor McCay war der erste Mann, der seine produzierten Animationen<br />
publikumswirksam veröffentlichte. Wie viele vor ihm, zeichnete er Cartoons in<br />
den damaligen großen Zeitungen. Er war auch der Erste, der mit Farben in<br />
Animationen experimentierte.<br />
Abbildung 1.1 – Winsor McCay<br />
Die erste große technologische Entwicklung in der Geschichte der Animation kann<br />
auf die Arbeit (und Patente) von John Bray im Jahre 1910 zurückgeführt werden.<br />
Seine Arbeit legte den Grundstein für die Nutzung von lichtdurchlässigem<br />
Zelluloid und Bildern, die durch Zusammenwirken vieler verschiedener Schichten<br />
von Zeichnungen entstanden sind, dass die bessere Nutzung der Graustufen, im<br />
Gegensatz zu einfachen schwarz-weiß Bildern, ermöglichte. Durch spätere<br />
weitere Entwicklungen von Bray und anderen wuchs die Bedeutung der Idee,<br />
mehrere Ebenen von lichtdurchlässigen Teilen von Zelluloid zu überlagern und<br />
diese durch ein Klammersystem für die Registrierung und die Darstellung des<br />
5
Proseminar Computergraphik – Animation und Morphing<br />
gezeichneten Hintergrunds auf durchgängigen Papierbögen zu erweitern.<br />
Dadurch wurde es viel einfacher, die Kamera parallel zur Ebene des Hintergrunds<br />
zu schwenken.<br />
Aus dem Studio von John Bray gingen Größen hervor wie Max Fleischer (Betty<br />
Boop), Paul Terry (Terrytoons) und Walter Lantz (Woody Woodpecker).<br />
Max Fleischer ließ 1915 zusammen mit seinem Bruder Dave dann auch das<br />
sogenannte Rotoscope patentieren. Damit war es erstmals möglich sehr<br />
realistische Animationen zu erstellen. Die Funktionsweise gestaltete sich etwa so:<br />
Ein Schauspieler wurde mit Kostüm in einer bestimmten Szene gefilmt. Danach<br />
wurde dieser Film Bild für Bild auf die Unterseite eines Glasstücks projiziert. Nun<br />
konnte man auf der Oberseite dieses Glasstücks die passenden Bilder<br />
nachzeichnen und erhielt damit eine lebensechte Bewegung für die Animation.<br />
Eine andere Erfindung von Max Fleischer war der Rotograph. Mit dieser Erfindung<br />
wurde der Hintergrund für eine Animation als reale Handlung gefilmt und wieder<br />
auf die Unterseite eines Glasstücks projiziert. Auf die Oberseite wurde der<br />
animierte Charakter platziert und komplett mit dem abgebildeten Film<br />
photographiert. Dieser Prozess konnte beliebig wiederholt werden. Das Ergebnis<br />
war die Projektion eines animierten Charakters in unsere reale Welt.<br />
Während dieser Zeit verlor die Animation als Kunstform immer mehr an<br />
Bedeutung. Die erste animierte Figur mit einer eigenen Persönlichkeit war „Felix<br />
die Katze“ von Otto Messmer und wurde in den 20er Jahren veröffentlicht.<br />
Später, Ende der 20er Jahre, beeinflussten neue Entwicklungen wie Audioeffekte<br />
und große Einflüsse durch Walt Disney die Animation.<br />
Abbildung 1.2 – Felix die Katze<br />
6
Proseminar Computergraphik – Animation und Morphing<br />
1.4. Computeranimation – Hintergründe und Geschichte<br />
Die in einem Artikel von John Lasseter erwähnten, von Walt Disney<br />
zusammengestellten, Prinzipien gelten im weitesten Sinne auch für die<br />
Computeranimation. Lasseter arbeitete lange mit Disney zusammen, bis er zu<br />
Pixar ging und dort verantwortlich für viele Animationen, unter anderem auch für<br />
die erste Oscar prämierte Computeranimation „Knick- Knack“, war.<br />
Im folgenden werden diese Prinzipien sowie ihre möglichen Verbindung und<br />
Einsetzbarkeiten in der Computeranimation dargelegt.<br />
Squash & Stretch, Timing und Secondary Actions etablieren die physische Basis<br />
von Objekten in der Szene. Ein gegebenes Objekt besitzt einen gewissen Grad<br />
der Starrheit und hat ein intuitives Maß an Masse. Das spiegelt sich in der<br />
Verzerrung (Squash & Stretch) der Form während der Aktion wieder. Die<br />
Animation muss diese Begriffe für das gegebene Objekt durchgehend<br />
unterstützen. Timing befasst sich mit der räumlichen Aufteilung im<br />
Zusammenhang mit dem Gewicht, Größe und der Persönlichkeit des Objektes<br />
oder der Figur . Secondary Actions unterstützen die Hauptaktion und<br />
möglicherweise auch physisch-basierte Reaktionen. Die folgende Abbildung zeigt<br />
das Stretch and Squash Prinzip anhand eines am Boden aufprallenden Balles.<br />
Abbildung 1.3 - Stretch and Squash Prinzip anhand eines am Boden aufprallenden Balles<br />
Slow in & Slow out und Arcs sind wichtig im Zusammenhang mit der Art, wie<br />
sich Objekte bewegen. Diese Bewegungen verlaufen gewöhnlich nicht in geraden<br />
Linien und folgen ebenfalls den realen physikalischen Gesetzen nach den<br />
Prinzipien der Trägheit und Gravitation.<br />
Der Einsatz der Straight Ahead vs. Pose to Pose Richtlinien ist abhängig von der<br />
Art, wie die Bewegungen entstehen. Straight Ahead bezieht sich auf den Verlauf<br />
der Bewegung von einem Startpunkt ausgehend. Physisch-basierte Animationen<br />
können beispielsweise auf diese Form zurückgehen. Pose to Pose bezieht sich<br />
dagegen auf die Annährung der eindeutig identifizierbaren Schlüsselbilder<br />
7
Proseminar Computergraphik – Animation und Morphing<br />
(Key Frames) und die Interpolation der dazwischen liegenden Bilder.<br />
Anticipation und Staging ist die Art der Präsentation einer Aktion gegenüber dem<br />
Publikum. Anticipation nimmt die kommende Handlung vorweg, so dass das<br />
Publikum eine gewisse, oft gezielte Erwartungshaltung gegenüber der<br />
kommenden Aktion hat. Staging folgt dem Begriff der Handlungspräsentation<br />
lückenlos, denn dem Publikum wird die komplette Handlung linear von Anfang bis<br />
Ende dargeboten. Der Begriff des Timings spielt auch hier in der Erweiterung,<br />
dass eine Handlung eine geeignete Dauer für den beabsichtigten Effekt aufweisen<br />
muss, um das Publikum zu erreichen, eine wichtige Rolle.<br />
Follow Through/ Overlapping Action, Exaggeration und Appeal sind Prinzipien, die<br />
auf das Handlungsdesign abzielen. Exaggeration sollte dabei nicht übertrieben<br />
werden, sondern bis zu einem Punkt gehen, indem es sich die Handlung einfügt<br />
und diese unterstützt. Zudem sollten alle Handlungen einer Animation ineinander<br />
fließen.<br />
1.5. Computeranimation in Film und Video<br />
Bevor im folgenden die Anwendung der Computeranimation hinsichtlich des<br />
Einsatzes im Film und Video reflektiert wird, müssen zunächst die Wurzeln der<br />
Animation betrachtet werden, um die Entwicklungen zu verstehen, die zur<br />
modernen Anwendung der Computeranimation geführt haben.<br />
Der Begriff der Szene hat in der deutschen Sprache eine vielschichtige<br />
Bedeutung. Einerseits wird damit der Schauplatz einer Handlung (Szenerie),<br />
andererseits aber auch die zeitliche Abfolge von Dingen (Szenen in einem Film)<br />
beschrieben. In den folgenden Ausführungen wird eine Szene als statische,<br />
strukturierte Sammlung von Objekten betrachtet.<br />
Wie ist der Begriff Szene hinsichtlich der Computeranimation motiviert? Das<br />
Gesamtziel der Computeranimation ist zumeist, einen mehr oder weniger großen<br />
Film zu produzieren. Ein Film besteht aus einer Folge von Bildern. Da Bilder nur<br />
in zwei Dimensionen bestand haben, wäre es denkbar, dass Szenen ebenfalls<br />
ausschließlich zweidimensionalen Charakter besitzen.<br />
Im konventionellen Trickfilm gibt es sowohl zwei- als auch dreidimensionale<br />
Szenen. Während bei der Produktion von Zeichentrickfilmen in der Regel nur<br />
zweidimensionale Szenenrepräsentationen (Skizzen im Storyboard,<br />
Umrisszeichnungen, kolorierte Bilder) verwendet werden, sich die dritte<br />
Dimension also nur im Kopf des Entwicklers befindet, sind die im Puppentrickfilm<br />
verwendeten Marionetten von vornherein dreidimensional. Unterschiedliche<br />
Szenentypen (im Trickfilm besser Medien genannt) verlangen auch<br />
unterschiedliche Animationstechniken.<br />
Während in den Anfängen der Computeranimation von einem kommerziellen<br />
Markt nicht die Rede sein konnte, und sich fast ausschließlich wissenschaftliche<br />
Institute mit Computeranimation als Teil der Computerwissenschaft<br />
beschäftigten, sieht es in den heutigen Tagen komplett anders aus.<br />
Computeranimationen sind neben den konventionellen Möglichkeiten ein immer<br />
häufiger eingesetztes Mittel bei der Produktion von Filmen. In den vergangenen<br />
Jahrzehnten sind immer mehr seriöse Unternehmen entstanden, die auf die<br />
8
Proseminar Computergraphik – Animation und Morphing<br />
Generierung von Computeranimationen spezialisiert sind und mit den großen<br />
filmproduzierenden Unternehmen zusammenarbeiten. Diese Unternehmen sind,<br />
um nur einige zu nennen, Pixar, Industrial Light and Magic (ILM), Pacific Data<br />
Images (PDI), Disney, Xaos, Rhythm & Hues, Digital Domain, Lamb & Company,<br />
Metrolight Studios, Boss Film Studios, deGraf/Wahrman, R/Greenberg<br />
Associates, Blue Sky Productions, Sony Pictures, Cinesite, Imageworks,<br />
Mathematical Applications Group, Inc. (MAGI) and Apple.<br />
An dieser Stelle ist besonders Pixar durch die Produktion der ersten prämierten<br />
Computeranimationen hervorzuheben. Zu diesen Meilensteinen gehört unter<br />
anderem<br />
• Luxo Jr. (1986), als erste Computeranimation, die für einen Academy<br />
Award nominiert wurde,<br />
• Red’s Dream (1987),<br />
• Tin Toy (1988), als erste Computeranimation, die den Academy Award<br />
gewann,<br />
• Knick- Knack (1989).<br />
Diese Animationen legten den Grundstein für die Computeranimation und sind<br />
völlig unabhängig von der Animationstechnik die ersten voll Computer Generated<br />
Animationen.<br />
Schon früh wurden Computeranimationen in einer Vielzahl von Filmen benutzt.<br />
Beispiele dafür sind Future World (1976), Star Wars (1977, Image West) und<br />
auch Lawnmower Man (1992, Xaos, Angel Studios), in dem man Einblicke in die<br />
virtuelle Realität aus der Sicht Hollywoods auf damals sehr hohem Niveau der<br />
Computeranimation bekommen konnte.<br />
Ein anderes Beispiel stellt Tron (1982, MAGI) dar. In diesem Film nahm die<br />
Computeranimation schon einen bedeutenden Teil der ganzen Produktion ein.<br />
Ein weiteres Beispiel aus der Filmwelt ist Appolo 13 (1995, Digital Domain), aber<br />
auch in TV- Serien wurde die Computeranimation immer häufiger eingesetzt,<br />
beispielsweise in Babylon 5 (1995, Newtek) und Star Trek: Deep Space Nine<br />
(1995), um den Schweif des Kometen in der Intro-Sequenz mit Hilfe von<br />
Partikelsystemen zu modellieren. Babylon 5 war andererseits die erste Serie, in<br />
der fast durchgehend computeranimierte Modelle genutzt wurden.<br />
In Filmen wie The Abyss (1989, ILM) und Terminator II wurden fremdartige<br />
Wesen, eben eine Alienkreatur und ein Android mit allen Bewegungen, durch die<br />
Computeranimation erschaffen und in den Film nachträglich eingefügt.<br />
In Jurassic Park (1993, ILM) wurden die Dinosaurier so echt mit Hilfe der<br />
Computeranimation generiert, dass ein Unterschied zu realen Schauspielern,<br />
Puppen und Modellen kaum mehr vorhanden war. Genau wie in Jumanji (1995,<br />
ILM) war es kaum noch möglich, augenscheinliche Unterschiede festzustellen, wo<br />
die Computeranimation anfing, und wo diese aufhörte. Andere Beispiele sind<br />
Batman Returns (1995, Digital Domain), um dem Batman-Darsteller bei<br />
gewissen Stunts zu unterstützen, RoboCop II (1990, deGraf/ Wahrman), um das<br />
Gesicht der Maschine generieren und Total Recall (Metrolight), um ein paar<br />
Skelette zu animieren.<br />
9
Proseminar Computergraphik – Animation und Morphing<br />
Eine andere häufig genutzte Technik der Computeranimation stellen die<br />
Partikelsysteme dar. Beispiele dafür sind in Star Trek II: The Wrath of Khan<br />
(1982, Lucas Film Computer Division, später ILM), wo eine Welle aus Feuer über<br />
die Oberfläche eines Planeten rast (auch als Genesiseffekt bekannt), oder in<br />
Lawnmower Man (1992, Xaos, Angel Studios), wo eine Person sich in eine<br />
Vielzahl von kleinen umher wirbelnden Bällen verwandelt, oder in Twister (1996)<br />
um ein Tornado zu simulieren.<br />
1.6. Techniken für Bewegungsanimationen<br />
Jede Technik ist dazu da, um dem Entwickler gewisse Arbeiten abzunehmen, so<br />
dass dieser sich auf die wichtigen Punkte wie beispielsweise Inhalt oder<br />
Kreativität der Entwicklung konzentrieren kann. Nicht jede Technik, die für die<br />
eine Art der Animation passend ist, muss auch gleichzeitig für eine andere Art<br />
der Animation passend sein. Aus diesem Grunde gibt es eine ganze Reihe von<br />
Techniken, die auf unterschiedlichen Ansätzen basieren. Im folgenden werden<br />
Techniken beschrieben, bei denen der Entwickler auf viele Einzelheiten der<br />
Animation Einfluss hat, also auf einem niedrigen Niveau der Abstraktion arbeitet.<br />
Diese Techniken unterscheiden sich von denen der Modell-Based Animationen<br />
insofern, dass eine direktere Beziehung zwischen den Informationen des<br />
Entwicklers und dem Resultat der Bewegung besteht. Im Gegensatz dazu<br />
arbeitet der Entwickler bei der Modell-Based Animation auf einem höheren<br />
Niveau der Abstraktion, wodurch der Entwickler die Kontrolle über die einzelne<br />
animierte Bewegung mehr oder weniger verliert, aber auch viel weniger<br />
Informationen für die Bewegungsgenerierung gebraucht werden.<br />
1.6.1. Interpolation<br />
Traditionell wird eine Animation durch handgezeichnete Bilder an markanten<br />
Punkten, Schlüsselpunkten der Aktion oder Handlung hergestellt. Diese Bilder,<br />
die sogenannten Schlüsselbilder oder Key Frames, stellen eine Art roten Faden<br />
durch die Handlung der zu erstellenden Animation dar. Später werden die Bilder<br />
zwischen diesen Schlüsselbildern zu einer kompletten Sequenz<br />
zusammengesetzt. Diesen Prozess wird In-Betweening oder auch Tweening<br />
genannt. Animationsprogramme unterstützen diese traditionelle Technik der<br />
Animationsgenerierung auch heute noch.<br />
Beim sogenannten Keyframing muss der Entwickler gewisse Schlüsselpositionen<br />
des zu animierenden Objekts spezifizieren. Der Computer interpoliert dann<br />
automatisch die Positionen des Objekts in den Zwischenbildern. Der<br />
Interpolationsalgorithmus ist dabei ein entscheidender Faktor für das<br />
Erscheinungsbild der entgültigen Bewegung. Die einfachste Form der<br />
Interpolation, die lineare Interpolation erzeugt meist eine Bewegung, die sehr<br />
ruckartig erscheint. Der Grund dafür ist die natürliche Diskontinuität einer<br />
Bewegung.<br />
10
Proseminar Computergraphik – Animation und Morphing<br />
Abbildung 1.4 - Keyframing unter Nutzung von Forminterpolation<br />
Um diesem Problem entgegen zu wirken, werden bessere Interpolationstechniken<br />
wie Splines angewendet, um eine weiche Interpolationskurve zu erzeugen.<br />
Die Spezifikation der Schlüsselbilder kann mit Hilfe von Techniken der inversen<br />
Kinematik sehr vereinfacht werden. Wenn beispielsweise eine Hand und der<br />
zugehörige Oberkörper eines zu animierenden Charakters eine besondere<br />
Stellung zueinander haben sollen, dann erlauben die Techniken der inversen<br />
Kinematik dem Computer eine relativ genaue Kalkulation des Winkels zwischen<br />
dem Ellenbogen und der Schulter. Kommerzielle Animationsprogramme<br />
beinhalten Routinen für Interpolationen und inverser Kinematik, die speziell auf<br />
den menschlichen Bewegungsapparat abgestimmt sind.<br />
Welche Gegebenheiten entscheiden nun, welche Technik der Interpolation am<br />
besten geeignet ist, um in die Entwicklung der Animationssequenz einzufließen?<br />
Eine der ersten Entscheidungen ist, ob die gegebenen Werte aktuelle Werte<br />
repräsentieren, die Parameter in den Schlüsselbildern haben sollten<br />
(Interpolation) oder ob diese lediglich der Kontrolle der Interpolation dienen und<br />
keine aktuellen Werte, die ein Parameter annehmen kann repräsentieren<br />
(Approximation). Andere Dinge, die Entscheidungen bei der Wahl der geeigneten<br />
Interpolationstechnik beeinflussen, beinhalten den Grad der Stetigkeit oder auch<br />
Kontinuität, den die Ergebnisfunktion aufweisen sollte, oder aber wie stark der<br />
Rechenaufwand maximal sein darf. Letzteres wird mehr oder weniger durch die<br />
polynomielle Ordnung der Interpolation, und ob die Interpolationsfunktion eine<br />
lokale oder globale Kontrolle erfordert, bestimmt.<br />
Angenommen, eine geeignete Interpolationstechnik und die passende Funktion,<br />
etwa P(t), die für einen gegebenen Wert t einen Funktionswert p liefert, wurde<br />
gewählt. Wenn nun die Position interpoliert wurde, dann kommen drei weitere<br />
Funktionen unter der Voraussetzung, dass die x, y und z Koordinaten für diese<br />
Position eindeutig in den Schlüsselbildern bestimmt sind, in der folgenden Art<br />
und Weise zur Anwendung. Diese Koordinaten sind innerhalb der Schlüsselbilder,<br />
die mit einem geeigneten Wert des Zeitparameters t gleichzusetzen sind, völlig<br />
frei wählbar. Beispielsweise können die Punkte (x, t) als Kontrollpunkte der<br />
Interpolationskurve genutzt werden, so dass X= Px(t) gilt, wobei P die<br />
Interpolationsfunktion darstellt, und x kennzeichnet, dass diese spezifische Kurve<br />
durch den Gebrauch der x Koordinaten an den Schlüsselpositionen entstanden<br />
11
Proseminar Computergraphik – Animation und Morphing<br />
ist. Analog dazu werden auch Y= Py(t) und Z= Pz(t) generiert, um die Position<br />
(x, y, z) abhängig von t zu errechnen.<br />
Die Variation des Parameters der Interpolation, in diesem Fall t durch konstante<br />
Veränderung, heißt nicht, dass der Ergebniswert, in diesem Fall die euklidische<br />
Position, sich auch um einen festen Wert verändert. Daraus folgt also, dass die<br />
konstante Veränderung des Zeitparameters t der Interpolation selten eine<br />
ähnlich große Veränderung der Geschwindigkeit des Interpolationswertes ergibt.<br />
Abbildung 1.5 - Interpolationskurve<br />
1.6.2. Parametrisierung durch die Bogenlänge<br />
Um eine konstante Geschwindigkeit des Interpolationswertes zu gewährleisten,<br />
muss die Interpolationsfunktion durch die Bogenlänge, beispielsweise der<br />
Abstand entlang der Interpolationskurve, parametrisiert werden.<br />
Gewöhnlicherweise kann diese Art der Parametrisierung approximiert werden,<br />
ohne die Interpolationsfunktion übermäßig komplex zu machen.<br />
Angenommen, ein Spline ist gegeben, der durch P(t) eindeutig definiert ist. Zu<br />
beachten ist dabei, dass es für Beziehung zwischen der Varianz in t und dem<br />
zurückgelegten Abstand entlang der Kurve keine Garantie gibt. Es kann also<br />
passieren, dass der zurückgelegte Abstand entlang der Kurve zwischen P(0) und<br />
P(2) nicht unbedingt zweimal so groß ist wie der zurückgelegte Abstand entlang<br />
der Kurve zwischen P(2) und P(3). Um diese Beziehung herzustellen, muss der<br />
interpolierte Spline mit Hilfe der Bogenlänge oder Vielfachen der Bogenlänge<br />
parametrisiert werden. Es gibt mehrere Wege, um das zu erreichen.<br />
12
Proseminar Computergraphik – Animation und Morphing<br />
Mathematisch ist die Bogenlänge folgendermaßen definiert<br />
b<br />
L (γ ) = ∫<br />
a<br />
2 2<br />
2<br />
|| γ ( t ) || dt mit || γ || = γ + γ + ... + γ ,<br />
und mit Hilfe der Gauß’schen Quadraturformel kommt man zur angenäherten<br />
Bestimmung dieses bestimmten Integrals.<br />
Häufig sind jedoch die durch Computeranimationsprogramme entstandenen<br />
Kurven nicht mathematisch parametrisierbar durch die Bogenlänge. Diese<br />
müssen durch numerische Mittel parametrisiert werden. Eine einfache, aber ein<br />
wenig ungenaue Annäherung an eine Parametrisierung ist die Errechnung einer<br />
Tabelle von Werten, die eine Beziehung zwischen dem originalen Parameter und<br />
einem Parameter der Bogenlänge herstellt. Die Anzahl der Einträge in dieser<br />
Tabelle hängt von der Genauigkeit ab, mit welcher die Bogenlänge errechnet<br />
werden muss. Das wird durch das Animationsprogramm bestimmt.<br />
Durch die Benutzung der Parameterwerte und der Funktionswerte der<br />
Interpolationsfunktion entsteht eine Tabelle, in der die linearen Abstände<br />
zwischen den errechneten Punkten abgelegt werden. Die Einträge in der Tabelle,<br />
die sich aufsteigend zwischen 0 und 1 bewegen, sind monoton und<br />
repräsentieren die Bogenlängenparametrisierung. Diese Tabelle, die vor der<br />
Nutzung in der Animation berechnet wird, kann für die Bestimmung des<br />
Funktionsparameters genutzt werden, der gebraucht wird, um einen Punkt<br />
entsprechend der Bogenlänge entlang der Kurve zu generieren, um die<br />
Interpolationsfunktion effektiv zu parametrisieren.<br />
Abbildung 1.6 – Parametrisierte Interpolationskurve<br />
1<br />
2<br />
n<br />
13
Proseminar Computergraphik – Animation und Morphing<br />
Eine alternative Technik ist rechnerisch effizienter, aber algorithmisch bzw.<br />
programmtechnisch sehr aufwendig und kompliziert. Diese Technik adaptiert die<br />
Gauß’sche Quadraturformel, um den Wert für den Punkt entsprechend der<br />
gegebenen Bogenlänge entlang der Kurve zu bestimmen.<br />
1.6.3. Orientierte Repräsentation und Interpolation<br />
Ein gemeinsames Problem in der Computeranimation ist die Repräsentation der<br />
Position und Orientierung eines Objektes im Raum, und wie diese Repräsentation<br />
über die ganze Zeit geändert werden kann, um die Animation zu generieren. Ein<br />
typisches Szenario ist, wenn der Entwickler zwei solcher Repräsentationen genau<br />
spezifiziert und der Computer für die Interpolation zwischen den Positionen<br />
genutzt wird, um eine animierte Bewegung zu generieren.<br />
Im folgenden wird angenommen, dass die Nutzung einer Skalierung nicht<br />
gegeben ist, es sich also um Transformierungen von starren Körpern handelt.<br />
Die erste Wahl für die Repräsentation der Orientierung und Position eines<br />
Objektes ist offensichtlich die Nutzung einer 4x4 Transformationsmatrix. Ein<br />
Entwickler kann ein Objekt rotieren und verschieben, um eine<br />
zusammengesetzte 4x4 Transformationsmatrix zu produzieren. In einer solchen<br />
Matrix stellt die linke obere 3x3 Matrix eine auf das Objekt anzuwendende<br />
Rotation dar und die ersten drei Elemente der vierten Matrixzeile stellen die<br />
Verschiebung dar. Angenommene Punkte werden durch Zeilenvektoren, die von<br />
rechts mit dieser Matrix multipliziert werden, repräsentiert. Bei der Generierung<br />
der Transformationsmatrix ist es völlig irrelevant, in welcher Reihenfolge die<br />
einzelnen Transformationen vom Entwickler festgelegt wurden, denn die<br />
endgültige Matrix entsteht durch die Verbindung aller einzelnen<br />
Transformationsmatrizen in der spezifizierten Reihenfolge und gibt die Position<br />
des Objektes durch die Rotationsmatrix gefolgt von der Verschiebung genau<br />
wieder.<br />
Abbildung 1.7 - Transformationsmatrix mit Rotation und Translation<br />
Die Schlussfolgerung daraus ist die unabhängige Interpolation der Rotation von<br />
der Verschiebung.<br />
14
Proseminar Computergraphik – Animation und Morphing<br />
1.6.4. Repräsentation über feste Koordinatenachsen<br />
Hierbei sind fest vorgegebene Achsen vorausgesetzt, d.h. die Orientierung ist<br />
durch drei feste Winkel, um die x-Achse, um die y-Achse und um die<br />
z-Achse, gegeben. Es gibt eine Vielzahl von Möglichkeiten der Richtung einer<br />
Rotation und eigentlich ist es auch nicht notwendig alle drei Koordinaten zu<br />
nutzen. Beispielsweise ist die Kombination x-y-x eine ausreichende<br />
Ausgangsposition, um eine Rotation in Gang zu setzen.<br />
In jedem Fall ist ein wichtiger Punkt, dass die Orientierung eines Objektes durch<br />
drei vorgegebene Winkel, wie (10, 45, 90) eindeutig bestimmt wird. In diesem<br />
Beispiel ist die Orientierung, die das Objekt erhält durch die Rotation um die x-<br />
Achse mit 10°, um die y-Achse mit 45° und um die z-Achse mit 90° gegeben.<br />
Das Problem bei der Nutzung dieses Schemas ist, wenn man die leichte<br />
Veränderungen der Werte der vorliegenden Präsentation betrachtet, dass zwei<br />
der Achsen der Rotation grundsätzlich auf der anderen stehen können.<br />
Beispielsweise bei einer Orientierung (0, 90, 0) in der unteren Abbildung kann<br />
eine leichte Veränderung starke Auswirkung auf das präsentierte Objekt haben.<br />
Abbildung 1.8 – Orientierung eines Objektes<br />
Eine schon leichte Veränderung des dritten Parameters bewirkt, dass die<br />
Objektrotation sich leicht in Richtung der z-Achse verschiebt. Also muss<br />
unbedingt beachtet werden, dass eine leichte Verschiebung schon eines der<br />
Parameter nicht unwesentliche Auswirkung auf die Rotation hat, da diese<br />
Veränderung auch alle anderen Achsenrichtungen beeinflußt. Das Objekt ist in<br />
diesem Sinne kardanisch aufgehängt.<br />
Von dieser initialen Position aus kann das Objekt nicht länger durch eine einfache<br />
Veränderung in seiner orientierten Repräsentation über die globale x-Achse<br />
rotieren.<br />
Das gleiche Problem macht die Interpolation zwischen einzelnen<br />
Schlüsselpositionen in manchen Fällen, beispielsweise bei Orientierungen wie<br />
(0, 90, 0) und (90, 45, 90), sehr schwierig.<br />
15
Proseminar Computergraphik – Animation und Morphing<br />
Abbildung 1.9 – Verschobene Orientierung um 45°<br />
Die zweite Orientierung ist eine Rotation ausgehend von der ersten Position um<br />
die x-Achse mit 45°. Wie schon oben beschrieben, kann das Objekt aufgrund der<br />
Rotation um die y-Achse mit 90° nicht länger direkt um die x-Achse rotieren.<br />
Abbildung 1.10 - Objekt aus der Sicht der negativen z-Achse<br />
1.6.5. Animation durch Kamerafahrt<br />
Eine der einfachsten Typen von Animationen ist die, in der mit Ausnahme der<br />
Kamera alle Einzelheiten dieser Animation statisch sind. In diesem<br />
Zusammenhang stehen dabei spezielle Kamerafahrten im Vordergrund. Im<br />
Grunde ist das Thema Kamera im Sinne der Komponenten einer Animation<br />
ähnlich zu betrachten wie etwa die Orientierung und Positionierung.<br />
16
Proseminar Computergraphik – Animation und Morphing<br />
Der Entwickler muss dabei einen Weg durch den Raum konstruieren, dem die<br />
Kamera später folgen soll. Wichtig sind dabei präzise Orientierungsangaben für<br />
diese Kamerafahrt. Dieser Weg wird üblicherweise mit Hilfe der Schlüsselbilder<br />
festgehalten und durch die geeignete Interpolation der Zwischenbilder<br />
weiterverfolgt. Die Orientierungsangaben bieten dem Entwickler zusätzliche<br />
Möglichkeiten, Kameraperspektiven effektiv einzusetzen. Beispielsweise kann ein<br />
bestimmtes Objekt mit der Kamera festgehalten werden, während sich diese auf<br />
einer bestimmten räumlichen Kurve um das Objekt bewegt. Eine Variation dieser<br />
Möglichkeit ist die zeitlich begrenzte Fokussierung eines Objektes, während sich<br />
die Kamera auf dieser bestimmten Kurve fortbewegt und danach eine neue<br />
Fokussierung eines anderen Objektes erfolgt. Anhand der Informationen der<br />
Kameraorientierung eines Bildes und seiner Vorgänger können nun leicht die<br />
Position und Orientierung in den Zwischenbildern errechnet werden.<br />
Die einzelnen Methoden, die für die Orientierung der Kamera genutzt werden<br />
können, sind sehr von der Art bzw. Aussage der Animation abhängig.<br />
1.6.6. Einfache Schlüsselbildersysteme<br />
Die frühen Computeranimationen waren noch sehr an die konventionellen<br />
handgemalten Systeme angelehnt, in denen die Objektpositionen und<br />
Kameraorientierungen in bestimmten Schlüsselbildern festgelegt waren. Die<br />
Positionen und Orientierungen wurden dann interpoliert, um die Zwischenbilder<br />
zu generieren.<br />
Im folgenden werden nur Interpolationen von Positionen betrachtet.<br />
Wie oben erwähnt basieren die Animationen, die durch Schlüsselbilder generiert<br />
wurden, auf den traditionellen Animationstechniken. Meister der Animation<br />
bestimmen und zeichnen die Schlüsselbilder unter Beachtung wichtiger<br />
Grundlagen bzw. bestimmter physikalischer Grundlagen der Bewegung. Lehrlinge<br />
zeichnen dann die Zwischenbilder auf der Basis der Schlüsselbilder. Dem gleichen<br />
Prinzip folgte einer der ersten Techniken, die für die zweidimensionale<br />
Computeranimation genutzt wurde. Im Gegensatz zum „Animationslehrling“<br />
konnte der Computer die Zwischenbilder bzw. die Interpolation schneller und<br />
genauer produzieren. Die Computerprogramme die das ermöglichten konnten<br />
zwar zweidimensionale Informationen besser verarbeiten, aber im Gegensatz<br />
dazu konnten diese mit dreidimensionalen Informationen, die Grundlage für<br />
animierte Figuren sind, eher unzureichend umgehen.<br />
1.6.7. Metamorphose und Forminterpolation<br />
Formveränderungen können viele verschiedene Bedeutungen in Beziehung zur<br />
Animationskontrolle haben, beispielsweise das Wedeln eines Hundeschwanzes,<br />
die Schwimmbewegungen eines Fisches, oder eben die eines Menschen. Also ist<br />
die erste Frage, die es zu beantworten gilt: Was ist Form?<br />
17
Proseminar Computergraphik – Animation und Morphing<br />
Abbildung 1.11 - Lineare Transformationen<br />
Welche der obigen Transformationen haben die Form der Figur verändert?<br />
Einfache Verschiebung kann also die Form einer Figur nicht verändern. Wie sieht<br />
das bei Rotation aus? Einheitliche Skalierung unterschiedlicher Formen kann die<br />
Form eines Objektes ebensowenig verändern. Im Gegensatz dazu kann aber<br />
nicht-einheitliche Skalierung die Form eines Objektes beeinflussen.<br />
Die einfachste Klasse von Transformationen, die manchmal die Form eines<br />
Objektes beeinflussen, sind affine Transformationen, die durch eine 3x3 Matrix<br />
gefolgt von einer Verschiebung charakterisiert sind. Diese können zum ausführen<br />
von Objektverformungen und zur Darstellung von Effekten auf ein übertrieben<br />
abgebremstes Objekt dienen.<br />
18
Proseminar Computergraphik – Animation und Morphing<br />
2 Morphing und Warping<br />
Diese Begriffe sind bedeutende graphische Operationen mit verschiedenen<br />
Anwendungen in vielen Bereichen und sind in den letzten Jahren für die Industrie<br />
und Akademien immer wichtiger geworden.<br />
Warping und Morphing verändern die Form graphischer Objekte. Der Unterschied<br />
liegt darin, dass mit Hilfe des Warping ein einzelnes Objekt deformiert wird<br />
(→ Squash and Stretch), während Morphing die Interpolation zwischen zwei<br />
Objekten darstellt. Diese Formtransformationen können auf eine Vielzahl von<br />
graphischen Objekten angewendet werden, beispielsweise auf zweidimensionale<br />
Zeichnungen, Bilder, Oberflächen oder räumliche Strukturen.<br />
2.1. Metamorphose<br />
2.1.1. Formveränderungen in der Natur<br />
Die Form von Objekten in der physikalischen Welt ist konstanten Veränderungen<br />
unterworfen. Dies ist ein grundlegender dynamischer Bestandteil der Natur. Die<br />
Körperformen verändern sich als Resultat komplexer genetischer Mechanismen.<br />
Die durch diese Mechanismen verursachten Transformationen sind sehr komplex<br />
und führen über einfache Formen zu höchst komplizierten Konfigurationen. Ein<br />
typisches Beispiel ist eine einfache Pflanze, die sich von einem Samen in einen<br />
kompletten Baum entwickelt. Die untere Abbildung zeigt eine schematische<br />
Darstellung der einzelnen Entwicklungsstufen.<br />
Abbildung 2.1 - Schema der Entwicklungsstufen einer Pflanze<br />
Objekte, die nicht animiert sind, können auch ihre Form unter externem Einfluss<br />
ändern. Diese Einflüsse können Umgebungskräfte wie Wind, Regen und Blitze,<br />
aber auch mechanischer Druck und Verbrennungsreaktionen sein. Die folgende<br />
Abbildung zeigt ein Rohr, dass durch den statischen Einfluss des unteren Rohres<br />
und mechanischer Kräfte verformt wurde.<br />
19
Proseminar Computergraphik – Animation und Morphing<br />
Abbildung 2.2 - Verformung eines Rohres über ein anderes Rohr<br />
Abhängig der materiellen Grundlage eines Objektes sind einige Verformungen<br />
permanent, und andere nur temporär. Diese Zustände klassifizieren<br />
Deformationen als elastisch oder unelastisch. Eine bedeutende Charakteristik<br />
von Formtransformationen ist mit einigen Ausnahmen die Kontinuität.<br />
2.1.2. Analyse von Formen<br />
Die Theorie von Transformationen liegt im Vergleich zwischen verwandten<br />
Formen und in der Studie von Formveränderungen. Eine mächtige Methode,<br />
um die Wechselbeziehungen zwischen ähnlichen Formen zu analysieren, ist<br />
die Betrachtung der Transformationen, die nötig sind, um eine Form zu einer<br />
anderen zu deformieren. Auf diesem Weg ist es möglich, ähnliche Formen<br />
anhand weniger Parameter zu klassifizieren, nämlich durch die Anzahl der<br />
Deformationen ausgehend von der Basisform.<br />
Abbildung 2.3 - Blätter verschiedenen Typs und verbindende Deformationen<br />
20
Proseminar Computergraphik – Animation und Morphing<br />
2.1.3. Bilder und Illusionen<br />
Wenn eine Sequenz von Bildern in einer schnellen Folge dargestellt wird,<br />
produziert sie die Illusion einer Bewegung, die man, wie am Anfang schon<br />
erwähnt, im weitesten Sinne Animation nennen kann. Dies ist das grundlegende<br />
Prinzip von Film und Fernsehen.<br />
Es gibt viele Möglichkeiten durch die Nutzung optischer Tricks und Projektionen,<br />
Photographien zu verzerren. Videobilder können durch elektronische analoge<br />
Tricks ähnlich verändert werden. Wenn eine steigende Anzahl von Verzerrungen<br />
auf das Basisbild angewendet werden, ist es möglich, eine animierte Sequenz zu<br />
generieren, die den Eindruck einer kontinuierlichen Deformation liefert. Die<br />
folgende Abbildung zeigt eine Bildverzerrung mit Hilfe analoger elektronischer<br />
Mittel.<br />
Abbildung 2.4 - Bildverzerrung durch analoge elektronische Mittel<br />
Zwei Bilder können auch durch die Mischung der Farbinformationen miteinander<br />
kombiniert werden. In diesem Prozess müssen sich als erstes die Bilder<br />
überlagern, und dann werden ihre Farbwerte überblendet. Wenn das Verhältnis<br />
der Mischung zwischen den Bildern sich kontinuierlich von 100% des Bildes A<br />
und 0% des Bildes B hin zu 0% des Bildes A und 100% des Bildes B verändert<br />
hat, dann wurde ein weicher Übergang von Bild A zu Bild B erreicht. Dieser<br />
visuelle Effekt wird Überblendung (Cross Dissolve) genannt.<br />
Abbildung 2.5 - Überblendung innerhalb eines Filmes<br />
21
Proseminar Computergraphik – Animation und Morphing<br />
Abbildung 2.6 - Überblendung zwischen zwei Bildern<br />
Überblendungstechniken werden schon seit langem in Film und Video genutzt,<br />
um eine Metamorphose zwischen verschiedenen Objekten mit ähnlichen Formen<br />
zu erreichen, die durch zwei unterschiedliche Bilder dargestellt sind.<br />
Die meisten der bisher erwähnten Beispiele für Metamorphose entstammen aus<br />
der realen Welt. Aus der Sicht der Mathematik heißt das einfach, dass diese<br />
Beispiele durch Transformationen zwischen realen dreidimensionalen Objekten<br />
realisiert wurden. In der Computergraphik geht es aber mehr um die<br />
Metamorphose zwischen Objekten von unterschiedlicher Dimension. Einzelne<br />
Applikationen beherrschen die Metamorphose von graphischen Objekten in einer,<br />
zwei, drei und sogar höherer Dimensionen:<br />
• eindimensionale Metamorphose kann zur Kombination verschiedener<br />
Audiosignale genutzt werden, um einen bestimmten Audioeffekt zu<br />
generieren;<br />
• ebene Metamorphose zwischen eindimensionalen Objekten (Zeichnungen)<br />
wird häufig genutzt, um Schriftverformungseffekte zu erreichen. Auch die<br />
Animationsentwickler bei Disney haben Metamorphose für die Vielzahl<br />
berühmter Filme benutzt.<br />
• dreidimensionale Metamorphose von Körpern und Oberflächen kann<br />
genutzt werden, um durch Mischung unterschiedlicher Objekte ein neues<br />
Objekt zu kreieren.<br />
Sehr bekannte Beispiele für die Nutzung dieses Prozesses ist die<br />
Verwandlung des T 1000 Cyborg im Film „Terminator II“ und die Maskendarstellungen<br />
im Film „Die Maske“.<br />
Es gibt nun zwei Möglichkeiten, um ein Objekt auf einem Bild zu transformieren:<br />
zum einen im Objektraum zu arbeiten, oder zum anderen im Bildraum zu<br />
arbeiten. Wenn die Wahl auf den Objektraum fällt, dann ist man gezwungen<br />
dreidimensionale Transformationen zu nutzen. Die Arbeit im Bildraum erfordert<br />
dagegen zweidimensionale Transformationen, wobei kleine Details der<br />
Objektform nicht so gut transformiert werden können.<br />
22
Proseminar Computergraphik – Animation und Morphing<br />
Abbildung 2.7 - Morphing im dreidimensionalen Raum (a) 2D Techniken (b) 3D Techniken<br />
Die Arbeit im Bildraum bring akzeptable Ergebnisse, wenn neben anderen<br />
Einschränkungen das Objekt von der gleichen Position mit ähnlichen<br />
Lichtbedingungen betrachtet wird. Die Unterschiede der Transformationen in der<br />
Abbildung 2.8 sind besonders in den Licht- und Schattenbedingungen zu<br />
erkennen. Die Ergebnisse der Transformationen von dreidimensionalen Objekten<br />
im zweidimensionalen Raum können konfus wirken, wenn die visuellen<br />
Anhaltspunkte wie Licht und Schatten falsch sind.<br />
Wenn Morphing-Effekte zwischen zwei realen Objekten (beispielsweise<br />
Menschen) angewendet werden, dann gibt es die im Warping gegebenen<br />
Möglichkeiten nicht in diesem Maße. Dennoch kann man die Metamorphose auf<br />
den Objektraum oder den gegebenen Bildraum anwenden. Gewöhnlich erlaubt<br />
die Arbeit im Objektraum durch den höheren Grad an Freiheit mehr Flexibilität.<br />
Dadurch wird gleichzeitig die Anwendung der Morphing-Effekte auf das Objekt<br />
erschwert.<br />
Abbildung 2.8 - Transformationen im zwei- bzw. dreidimensionalen Raum<br />
23
Proseminar Computergraphik – Animation und Morphing<br />
2.2. Morphing graphischer Objekte<br />
2.2.1. Morphing: Form- und Attributkombination<br />
Angenommen es seien zwei Objekte O1 und O2 gegeben. Um eine Metamorphose<br />
zwischen diesen beiden Objekten zu erreichen, muss intuitiv ein kontinuierlicher<br />
Übergang zwischen Objekt O1 und O2 entwickelt werden. Das erreicht man durch<br />
die Veränderung eines Parameters k, der die Veränderung zwischen den Formen<br />
der Transformationen und den Übergang zwischen den Attributen der zwei<br />
Objekte bezeichnet.<br />
Bezeichnet Ω einen bestimmten Raum von Objekten, etwa {ƒ : U ⊂ ℜ n → ℜ m },<br />
und die Objekte O1 und O2 sind Element in Ω , dann ist Morphing, oder auch<br />
Metamorphose, zwischen den gegebenen Objekten eine kontinuierliche<br />
k-Parameterfamilie von Transformationen<br />
ϕ : O1 x ℜ k → O2.<br />
Für jeden Parameter ν ε ℜ k aus dem Parameterraum erhält man ein neues<br />
graphisches Objekt ϕν (O1), und diese Familie ϕν beschreibt den Übergang von<br />
einem Objekt zu einem anderen.<br />
Abbildung 2.9 - Familie von Transformationen bei Flaschen<br />
Zu beachten ist dabei, dass der Parameterraum die Dimension k besitzt, man<br />
also einfach die Morphing-Transformation in k Schritte von Objekt O1 zum<br />
Objekt O2 einteilen kann. Diese intuitive Formulierung bedeutet mathematisch<br />
die Definierung einer Kurve c: [0,1] → ℜ k im Parameterraum. In diesem Fall<br />
erhält man eine 1-Parameter Familie<br />
ϕ o c : O1 → O2<br />
für die t ε [0,1] und ϕ (c (t)) gilt. Die Kurve c wird so gewählt, dass, wenn<br />
t= 0 gilt, man c (0)= O1, und wenn t= 1 gilt, man c (1)= O2 erhält.<br />
24
Proseminar Computergraphik – Animation und Morphing<br />
In der folgenden Abbildung 2.10 beschreiben die horizontalen Pfeile Warping-<br />
Transformationen, und die vertikalen Additionen repräsentieren<br />
Attributveränderungen durch Überblendungen. Diese zwei Bilder wurden durch<br />
Warping so transformiert, dass die Hauptpunkte wie Augen, Mund und Nase so<br />
ausgerichtet sind, wie es im rechten Teil der Abbildung zu sehen ist. Die<br />
Überblendung zwischen den originalen Bildern und den durch Warping<br />
transformierten Bildern ist im unteren Teil der Abbildung zu sehen.<br />
Abbildung 2.10 - Komplettes Morphing zwischen zwei statischen Bildern mit Zwischenschritten<br />
25
Proseminar Computergraphik – Animation und Morphing<br />
Die folgende Abbildung zeigt eine komplette Morphing-Sequenz über acht Bilder<br />
mit den schon oben verwendeten Ausgangsbildern.<br />
Abbildung 2.11 - Komplette Morphing-Sequenz über acht Zwischenbilder<br />
26
Proseminar Computergraphik – Animation und Morphing<br />
2.2.2. Einige Beispiele für Morphing<br />
Die gleichen Techniken und Bemerkungen, wie sie schon weiter oben<br />
beschrieben wurden, treffen auch zwischen Objekten zu, die keine Bilder sind.<br />
Das Morphing von Bildern ist ein Beispiel für zweidimensionales Morphing<br />
zwischen zweidimensionalen Objekten. Im folgenden werden auch Beispiele<br />
aufgezeigt, die andere Dimensionen betreffen.<br />
• Zeichnungen Morphing<br />
• Oberflächen Morphing<br />
Abbildung 2.12 - Morphing durch Zeichnung<br />
Abbildung 2.13 - Morphing von Oberflächen<br />
27
Proseminar Computergraphik – Animation und Morphing<br />
• Volumen Morphing<br />
Abbildung 2.14 - Volumenorientiertes Morphing<br />
Abbildung 2.15 - Volumenorientiertes Morphing<br />
28
Proseminar Computergraphik – Animation und Morphing<br />
2.3. Einführung in die Warping-Techniken<br />
Nachdem eine Spezifikation der Transformation vorliegt, gibt es viele<br />
Möglichkeiten bzw. Techniken für die Ausführung dieser Transformation. Im<br />
folgenden Abschnitt werden kurz die wesentlichsten Techniken und Formen der<br />
Spezifikation behandelt.<br />
2.3.1. Dreiecknetze<br />
Bei diesem Algorithmus wird die Deformation mit Hilfe zweier dreieckiger Netze<br />
beschrieben. Eines definiert das nicht-deformierte Ausgangskoordinatensystem,<br />
und das andere definiert die Deformation des Systems. Diese zwei Netze müssen<br />
die gleiche kombinierte Struktur besitzen, so dass die Beziehung zwischen<br />
Paaren von Dreiecken wohldefiniert sind.<br />
Abbildung 2.16 - Objektdeformation mit Hilfe eines Dreiecknetzwerkes<br />
2.3.2. Dreidimensionales Warping mit Hilfe von Dreiecknetzen<br />
Die zweidimensionale Dreiecknetztechnik kann natürlich auch in den<br />
dreidimensionalen, ja sogar in den n-dimensionalen Raum erweitert werden.<br />
Dazu sind zwei Netze von Tetraedern in zwei verschiedene Stadien gegeben,<br />
eines definiert das Ausgangskoordinatensystem, während das andere die<br />
Deformation definiert genutzt. Für miteinander verbundene Tetraeder können<br />
interne Punkte durch Nutzung von baryzentrischen Koordinaten einfach<br />
spezifiziert werden. In dieser Form ist der Algorithmus für jede Repräsentation<br />
eines Objektes geeignet, obwohl teilweise für voxelbasierende Volumenobjekte<br />
ein dreidimensionales Raster für das Innere der Tetraeder gebraucht wird.<br />
29
Proseminar Computergraphik – Animation und Morphing<br />
Die direkte Beschreibung der Deformation mit Tetraedernetzen ist nicht<br />
realisierbar, bis in irgendeiner Form ein Algorithmus zur Verfügung steht. Im<br />
zweidimensionalen Fall ist eine automatische Triangulation der Punkte, um<br />
Eigenschaften und Besonderheiten des Objektes zu erkennen, einfach zu<br />
realisieren. Außerdem kann eine automatische Triangulation zur Generierung des<br />
Netzes genutzt werden. Eine reguläre Triangulation, wie eine dreidimensionale<br />
Delauny Triangulation, minimiert die Zahl der Ecken und Oberflächendiskontinuitäten,<br />
die beim linearen Mapping im Inneren jedes Tetraeders<br />
entstehen.<br />
2.3.3. Free-Form Warping<br />
Dies stellt eine allgemeine Technik dar, die für die Berechnung einer Warping-<br />
Spezifikation freie Koordiantensysteme nutzt. Durch Veränderung der<br />
Kontrollparameter der diesen Koordinatensystemen zugrundeliegenden Kurven<br />
erreicht man eine Veränderung der Koordinaten, die der gewünschten<br />
Deformation zugrunde liegen.<br />
Abbildung 2.17 - Free-Form Deformation-Koordinatensysteme: (a) original (b) deformiert<br />
Abbildung 2.18 - Free-Form Morphing: (a) direkt (b) mit Zwischenschritt<br />
30
Proseminar Computergraphik – Animation und Morphing<br />
2.3.3.1. Two Pass Spline Mesh Warping<br />
Dieser Algorithmus wurde für die Arbeit mit digitalen Bildern entwickelt. Er nutzt<br />
die Vorteile der Matrixdarstellung von Bildern. Anstatt ein Bild direkt zu<br />
transformieren, wird ein Zwischenbild generiert, das vorher deformiert wird, um<br />
das gewünschte Ergebnis zu erreichen. Das ähnelt zwei anderen einfacheren<br />
Transformationen - die eine beinhaltet die horizontalen und die andere die<br />
vertikalen Neupositionierungen – das ist dann äquivalent zur der gewünschten<br />
Deformation. Horizontale und vertikale Deformationen sind viel einfacher für<br />
digitale Bilder umzusetzen, speziell um Sampling- und Rekonstruktionsprobleme<br />
zu vermeiden.<br />
Das Two Pass Spline Mesh Warping nutzt als Eingabe zwei reguläre Spline-Netze,<br />
wie in Abbildung 2.19, beschränkt durch geradlinige Splines an den Ecken des<br />
Bildes und ansonsten durch sich nicht-kreuzende Splines. Wieder beschreibt das<br />
erste Netz das originale Koordinatensystem, und das zweite beschreibt die<br />
Deformation dieses Systems.<br />
Abbildung 2.19 - Spline-Netze<br />
Die zwei Durchläufe sind analog und können ohne zwingende Folge durchgeführt<br />
werden. Im horizontalen Durchlauf wird jede horizontale Scanlinie durch vertikale<br />
Splines im deformierten und nicht-deformierten Stadium unterbrochen. Die<br />
Deformation wird nur durch die horizontalen Neupositionierungen in diesem<br />
Durchlauf bestimmt. Diese Unterbrechungen werden dann interpoliert, um an der<br />
Scanlinie eine Mapping-Funktion zu erhalten, indem Unterbrechungen mit<br />
deformierten Splines an einer Achse und nicht-deformierten Splines an der<br />
anderen platziert werden. Diese Mapping-Funktion setzt alle Punkte der Scanlinie<br />
im nicht-deformierten Koordinatensystem und deformierten Koordinatensystem<br />
in Beziehung. Dieser Prozess wird für jede Scanlinie wiederholt, um ein<br />
horizontales deformiertes Bild zu erhalten.<br />
31
Proseminar Computergraphik – Animation und Morphing<br />
Abbildung 2.20 - Scanline Warping: (a) Unterteilung bzw. Unterbrechung (b) Mapping-Funktion<br />
Ein Beispiel stellt die Abbildung 2.21 dar. Das gegebene Bild oben links wurde<br />
nach Vorgabe des Netzes unten links deformiert. Das Zwischenbild oben rechts<br />
ist durch die horizontalen Neupositionierungen entstanden. Danach wurde dieses<br />
deformierte Bild für den zweiten vertikalen Durchlauf genutzt, um das Bild unten<br />
rechts zu erhalten.<br />
Abbildung 2.21 - Horizontale und vertikale Durchläufe mit Zwischenbildern<br />
Obwohl sich diese Technik als sehr vielseitig und effizient erwies, basiert sie doch<br />
auf der Netzspezifikation, die doch eine Menge Ausgangsinformationen über die<br />
gewünschte Deformation voraussetzt.<br />
32
Proseminar Computergraphik – Animation und Morphing<br />
2.3.3.2. Dreidimensionales Three Pass Spline Mesh Warping<br />
Der originale zweidimensionale Algorithmus lässt sich auf digitale Bilder<br />
anwenden. Der erweiterte dreidimensionale Algorithmus lässt sich natürlich<br />
dementsprechend sinngemäß auf voxelbasierten Volumenmodellen anwenden.<br />
Aber dieser Algorithmus ist nicht nur auf Volumenmodelle beschränkt, sondern<br />
kann auch gut genutzt werden, um Volumenmodelle während der Deformation zu<br />
modellieren. Ein großer Vorteil dieser Volumenmodelle ist, dass kein spezielles<br />
Verfahren für verschiedene Objekte eingesetzt werden muss, um die Topologie<br />
der Objekte zu verändern.<br />
Bei diesem dreidimensionalen Algorithmus werden drei Durchgänge am<br />
gegebenen Objekt durchgeführt. Jeder berechnet die Deformation in jeweils eine<br />
Richtung der kartesischen Koordinatenachsen x, y und z. Die Abfolge dieser drei<br />
Durchgänge hat als Ergebnis die komplette Deformation am gegebenen Objekt,<br />
wie sie in Abbildung 2.22 dargestellt wird.<br />
Abbildung 2.22 - Three Pass Warping Pipeline<br />
Das reduziert effektiv das Problem der Deformation eines dreidimensionalen<br />
Festkörpers zur Deformation eines eindimensionalen Voxelstreifens oder einer<br />
Scanlinie. Die Durchgänge des Algorithmus werden sequentiell ausgeführt,<br />
während die Deformation jeder Scanlinie in jedem Durchgang unabhängig von<br />
den anderen Scanlinien ist. Dadurch ergibt sich die Möglichkeit, im Gegensatz<br />
zum zweidimensionalen Pendant, einer parallelen Ausführung.<br />
33
Proseminar Computergraphik – Animation und Morphing<br />
Quellenverzeichnis<br />
• Rick Parent: „Computeranimation-Algorithms and Techniques”, 2001<br />
http://www.cis.ohio-state.edu/~parent/book/outline.html<br />
• Joschka Bödecker: „3D Morphing”, 2001<br />
http://www.uni-koblenz.de/~cg/veranst/ws0001/sem/Boedecker.pdf<br />
• „GRIS und GDV Jahresbericht“, 1999<br />
http://www.gris.informatik.tu-darmstadt.de/jahrber/JahrBe99/<br />
gris_jb_1999.pdf<br />
• Jonas Gomes mit John Andrew Berton, Bruno Costa, Lucia Darsa, Luiz<br />
Velho, George Wolberg:<br />
„Warping and Morphing of Graphical Objects“, 1995<br />
http://cgg.ms.mff.cuni.cz/~pepca/i218/<br />
• Sebastian Pritschow and Ralf Wieland: „Facial Animation“, 1998<br />
http://www.pritschow.de/sebastian/study/facialanimation/<br />
FacialAnimation.html<br />
• Jessica K. Hodgins und James F. O’ Brien: „Computer Animation“,<br />
http://www.cs.dartmouth.edu/~brd/Teaching/Animation/animation.html<br />
• Thomas und Johnston: „Disney Animation: The Illusion of Life“,<br />
http://www.cs.dartmouth.edu/~brd/Teaching/Animation/animation.html<br />
• Nico Rosenbusch und Gerd Schleupen: „Graphisch interaktive Eingabe und<br />
Darstellung eines Geländemodells mittels Delaunay-Triangulierung“, 2001<br />
http://www.uni-stuttgart.de/iv-kib/generic/download/studien/ ss01/<br />
delaunay/docu/delaunay_screen.pdf<br />
• Noell Wolfgram Evans: „Follow the Bouncing Ball: The Technical Innovation<br />
of Max Fleischer“,<br />
http://www.digitalmediafx.com/Features/maxfleischer.html<br />
• Michael Crandol: „The History of Animation: Advantages and<br />
Disadvantages of the Studio System in the Production of an Art Form“,<br />
http://www.digitalmediafx.com/Features/animationhistory.html<br />
• „Visualisierungsansätze für Stadtrhythmen: Computeranimation“,<br />
http://www.iemar.tuwien.ac.at/stadtrhythmen/ pages/<br />
p4_Computeranimation.pdf<br />
• „Keyframe-Animation“,<br />
http://www-sst.informatik.tu-cottbus.de/~wk/cg_v15b.pdf<br />
• http://www.pixar.com<br />
34