Forschungsbericht 2004 - Max-Planck-Institut für Informatik

Modellbasierte Animation und Manipulation von Gesichtern in Bildern

Autoren
Blanz, Volker; Seidel, Hans-Peter
Abteilungen
Zusammenfassung
Durch eine Vektorraum-Repräsentation der Formen und Farbwerte (Texturen) menschlicher Gesichter, die aus einer Datenbasis von Beispielen aufgebaut wurde, gelingt es, die dreidimensionale (3D) Form von Gesichtern aus einzelnen Bildern zu rekonstruieren. Außerdem können mit dem allgemeinen, automatisierten Ansatz Gesichter sowohl dreidimensional als auch zweidimensional in Bildern animiert sowie die Identität von Personen in Bildern ausgetauscht werden.

Die Rechenleistung bei der Darstellung von dreidimensionalen Szenen ist in den vergangenen Jahren stark angestiegen, was vor allem auf die rasante Weiterentwicklung der Graphikhardware

zurückzuführen ist, die speziell auf die wesentlichen Rechenschritte der Bildgenerierung hin optimiert ist und diese teilweise parallel ausführt. Die Möglichkeiten der neuen Graphikhardware sowie die Fortschritte im Bereich der Software erlauben es, immer detailliertere dreidimensionale Objekte und Szenen darzustellen. Dies ist in der hohen, oft photorealistischen Qualität der Spezialeffekte in Kinoproduktionen, aber auch in dem hohen Standard der Graphik in Computerspielen zu beobachten.

Mit dem gestiegenen Anspruch an den Realismus der Szenen und auch mit dem immer häufigeren Einsatz von Computergraphik in Filmproduktionen wird es immer wichtiger, die Generierung solcher Objekte zu vereinfachen und beschleunigen.
Die Arbeitsmethoden der Designer orientieren sich meist noch an CAD-Verfahren, in denen geometrische Grundformen ausgewählt und dann manuell deformiert werden. Auch die Animation von Szenen ist geprägt von manueller Arbeit: Die zeitliche Abfolge einer Bewegungssequenz wird durch die Animatoren meist in Form von einzelnen Stadien des Bewegungsablaufes, so genannten keyframes, mit manuellen Designwerkzeugen vorgegeben. Die Animationssoftware erzeugt aus den keyframes eine Folge von Zwischenzuständen für die einzelnen Bilder des Films.

Das Ziel des Forschungsschwerpunktes „Modellbasierte Animation und Manipulation von Gesichtern“ besteht darin, die mühsame manuelle Detailarbeit der Designer durch automatische Verfahren zu ersetzen und den Designern Werkzeuge zur Verfügung zu stellen, die eine Bearbeitung auf einer höheren Abstraktionsebene erlauben. Die Forschungsergebnisse, die im Folgenden vorgestellt werden, bieten zum Beispiel die Möglichkeit, ein Gesicht in einem Bild durch ein anderes zu ersetzen oder den Gesichtsausdruck eines Gesichts gezielt zu verändern (Abb.1). Beides geschieht durch den Einsatz eines Modells (Morphable Model), das wiedergibt, welche Gesichtsmerkmale allen menschlichen Gesichtern gemeinsam sind, in welchen sie sich unterscheiden und wie Gesichter sich beim Sprechen bewegen. Der modellbasierte Ansatz zeichnet sich dadurch aus, dass die im Morphable-Model repräsentierte allgemeine Information über Gesichter automatisch aus einer Datenbasis von dreidimensionalen Oberflächenscans gewonnen wird.

Hochauflösende dreidimensionale Scans bieten den Detailreichtum, der den heute gestellten Qualitätsanforderungen genügt. Reale Objekte und Szenen müssen nicht mühsam nachgebaut werden, sondern sie werden direkt in die virtuelle Szene bernommen. Die Problematik solcher Daten lag jedoch bislang darin, dass sie kaum verändert werden konnten. Die Bearbeitung gegebenen Datenmaterials ist jedoch meist erforderlich, wenn es nicht um die bloße Reproduktion realer Objekte und Szenen geht. Dreidimensionale Scans gezielt und effizient manipulieren zu können, stellt eine große Herausforderung dar.

Existierendes Datenmaterial in die Computergraphik einzubeziehen, ist nicht nur in Bezug auf dreidimensionale Daten, sondern auch für Bild und Filmmaterial interessant: Häufig sind graphische Effekte in bestehende, reale Szenen eingebettet, und es besteht die Aufgabe, gezielte Veränderungen innerhalb des Bildes durchzuführen.
Das hier vorgestellte Verfahren erlaubt es, Gesichter in Bildern zu animieren oder Personen auszutauschen. Anders als die klassische Bildretusche ist es unabhängig von der Ausrichtung der Gesichter im Raum sowie von deren Beleuchtung: Im ersten Schritt wird ein dreidimensionales Gesichtsmodell aus dem Eingabebild rekonstruiert. Dieses Modell wird animiert, verändert oder ausgetauscht, und das Resultat wird automatisch in das Bild an die Stelle des ursprünglichen Gesichtes gezeichnet. Die manuelle Arbeit reduziert sich auf das Anklicken von etwa sieben Merkmalspunkten in den zu bearbeitenden Gesichtern.

Die Grundlage des Ansatzes, das Morphable- Model, ist eine Vektorraumrepräsentation von Gesichtern: Eine Menge von Beispielscans wird in Form- und Texturvektoren konvertiert, die so definiert sind, dass jede Linearkombination wieder ein realistisches menschliches Gesicht beschreibt, sofern die Koeffizienten der Linear-kombination einen gewissen Wertebereich nicht überschreiten. Das Morphable-Model verall-gemeinert das Konzept des Morphing, das einen kontinuierlichen Übergang zwischen zwei Objekten bezeichnet. Während die Formvektoren die dreidimensionalen Koordinaten aller Oberflächenpunkte eines Scans zu einem hochdimensionalen Vektor zusammenfassen, bestehen die Texturvektoren aus deren Farbwerten. Entscheidend für eine sinnvolle Definition der Form- und Texturvektoren ist es, dass die einander entsprechenden Strukturen in Gesichtern, wie zum Beispiel die Nasenspitzen, stets durch die gleichen Vektorkomponenten beschrieben werden. Diese Zuordnung wird bei der Generierung der Vektoren aus Scans durch einen Algorithmus aus der Bildverarbeitung (optischer Fluss) geleistet.

Der hier verwendete Gesichtsvektorraum wird von Vektoren aufgespannt, die sowohl aus Scans von 200 verschiedenen Personen als auch aus mehreren Scans einer Person mit verschiedenen

Gesichtsausdrücken und sprachbezogenen Mundstellungen (Visemen) berechnet wurden. Eine Hauptachsenanalyse (Principal Component Analysis) der statistischen Verteilung der Daten (Abb.2) liefert diejenigen Richtungen im Gesichtsraum, entlang derer die Form die größte Varianz aufweist.

Die im Gesichtsvektorraum repräsentierte, allgemeine Information über Gesichter ermöglicht es, ein 3D-Gesichtsmodell aus einem einzelnen Bild zu rekonstruieren. Dieses Problem wäre andernfalls mathematisch unterbestimmt: Obwohl es dem menschlichen Betrachter leicht fällt, sich aus den Schattierungen im Bild eine Vorstellung von dessen dreidimensionaler Form zu machen, erweist sich die im Bild enthaltene Information als ungenügend, um dieses Problem mathematisch zu lösen: Dunkle Stellen im Bild können stets sowohl durch Schattierungseffekte als auch durch geringe Reflektanz der betreffenden Oberflächenregion verursacht werden. Ohne Information über die Reflektanz der Oberfläche (Textur) ist eine Formschätzung daher unmöglich. Selbst bei bekannter Reflektanz, zum Beispiel im Falle der homogenen Materialeigenschaften einer Gipsbüste, erweist sich das Problem der 3D Rekonstruktion ohne gesichtsspezifische Information noch als unterbestimmt.

Die Rekonstruktion mithilfe des Morphable Model beruht auf einer schrittweisen Anpassung des Modells an das Eingabebild (Abb.3): Ausgehend vom Mittelwertgesicht werden die Koeffizienten der Linearkombination der Form- und Texturvektoren sowie die Position und Ausrichtung des Gesichts, die Intensität und Richtung des einfallenden Lichtes und andere Parameter so optimiert, dass ein synthetisches Bild des Modells entsteht, das dem Eingabebild bezüglich der Farbwerte so ähnlich wie möglich wird. In jedem Schritt wird zunächst ein Bild generiert: Das Gesicht wird als Linearkombination berechnet und dann eine Rotation und Translation im dreidimensionalen Raum und eine perspektivische Projektion in die Bildebene durchgeführt. Dann werden Oberflächennormalen und Beleuchtungseffekte berechnet. Schließlich wird Punkt für Punkt der Bildunterschied bestimmt und eine Korrektur der Parameter (Gradientenabstieg) vorgenommen.

Damit dieses Verfahren der so genannten Analyse durch Synthese konvergiert, muss das System mithilfe von einigen manuell vorgegebenen Punktkorrespondenzen initialisiert werden, die in den ersten Iterationen vom Programm zur Deckung gebracht werden. Nach der Modellanpassung werden die Farbwerte des Bildes auf die dreidimensionale Oberfläche übertragen, um auch Details, die die Linearkombination der Beispieltexturen nicht reproduzieren kann, wiederzugeben. Dabei wird der Effekt der Beleuchtung, die bei der Anpassung abgeschätzt wurde, invertiert, um eine präzise Schätzung der Reflektanz zu erhalten und das Gesicht später neu beleuchten zu können.

Um Gesichter in Bildern auszutauschen, wird der Anpassungsalgorithmus sowohl auf das Zielbild als auch auf das Bild der einzusetzenden Person angewandt (Abb.4). Anschließend wird deren Gesichtsmodell mit den Parametern für Position, Orientierung und Beleuchtung des Zielbildes gezeichnet. Hinsichtlich der Geometrie, Beleuchtung und der Farbwerte passt das Resultat damit automatisch zum neuen Zielbild. Als Hintergrund dient im Wesentlichen das Zielbild. Wenn das neu eingezeichnete Gesicht kleiner als das ursprüngliche ist, wäre dessen Silhouette hinter dem neuen Gesicht noch erkennbar. Daher werden mit einem automatischen Verfahren die Farbwerte außerhalb des Gesichtes über die ursprüngliche Silhouette in das Gesicht hinein gespiegelt (siehe Abb.). Sofern Haarsträhnen im Zielbild vor dem Gesicht liegen, muss der Benutzer diese mit einem halb automatisierten Verfahren freistellen. Die Ebenen für Hintergrund, Gesicht und Haare werden dann über einander gezeichnet. Das Austauschen von Gesichtern kann als neues Werkzeug in der Bildbearbeitung eingesetzt werden. Der Ablauf ist größtenteils automatisch und eignet sich daher für Anwendungen wie die virtuelle Anprobe von Frisuren (Abb.5). Der Vorteil des Ansatzes liegt darin, dass jedes Foto einer neuen Frisur, zusammen mit einem Bild der Kundin oder des Kunden, eine synthetische, fotorealistische Vorabansicht zu generieren erlaubt. Im Gegensatz dazu würden 3D- Haarmodelle, wie sie in digital animierten Filmen zum Einsatz kommen, nicht hinreichend realistisch sein und es erforderlich machen, die Frisur digital nachzumodellieren. Eine weitere Anwendung der Software liegt in der Filmproduktion. Die dazu erforderliche Erweiterung auf Videodaten ist leicht zu bewerkstelligen.

Ein wichtiges Anwendungsfeld des Verfahrens kann in der automatischen Gesichtserkennung liegen. Änderungen in Orientierung und Beleuchtung stellen für Gesichtserkennungsprogramme noch immer eine enorme Schwierigkeit dar. Für den Herstellertest FRVT2002 des National Insitute of Standards und DARPA wurden mit dem hier vorgestellten Programm aus Seitansichten von Versuchspersonen Frontalansichten generiert und in ein Standardfoto gezeichnet. Mit den synthetischen Frontansichten stieg die Erkennungsrate von 9 der 10 getesteten kommerziellen Verfahren beträchtlich an. Während die besten Verfahren auf den Original-Seitansichten bestenfalls ca 45% der Bilder korrekt klassifizierten, erkannten sie bis zu 85% der synthetischen Frontansichten korrekt.

Auf der Grundlage der 3D-Gesichtsrekonstruktion können Gesichter in Fotos und Gemälden reanimiert werden. Nach der Rekonstruktion animiert die Software die Gesichtsmodelle dreidimensional und zeichnet das Ergebnis zurück in das ursprüngliche Bild (Abb.6 und Abb.7). Die Veränderungen im Gesicht, die bei Sprache und Mimik auftreten, wurden aus einer Datenbasis von 3D-Scans einer einzelnen Person erlernt. In der Vektorraumrepräsentation ist die Differenz zwischen einem lächelnden und einem neutralen Gesicht ein smile vector, der zu einem anderen, neutralen Gesicht addiert werden kann, um dieses zum Lächeln zu bringen. Da für neue Personen, zum Beispiel die Gesichter auf Gemälden, keine Information über die Zähne vorliegt, werden stets die Zähne aus einem Beispielscan eingesetzt. Die geometrische Anpassung dieser Zähne erfolgt automatisch auf der Grundlage der Mundwinkelpositionen. Die Veränderung von Bild- und Videodaten kann in einer Vielzahl von Medienanwendungen eingesetzt werden, unter anderem in virtuellen Museen und bei der Sprachsynchronisation von Filmen.

In laufenden und zukünftigen Projekten soll der Ansatz der lernbasierten Computergraphik auf neue Arten von Messdaten übertragen werden. In der Gesichtsanimation bedeutet dies zum Beispiel, auch den zeitlichen Ablauf einer Bewegungsfolge zu vermessen und nachzubilden, um einen realistischen visuellen Eindruck von synthetischen Sprechern zu erzielen. Außerdem wird das Wachstum von Kindergesichtern in dreidimensionalen Scans untersucht. Ein weiterer Schwerpunkt der laufenden Arbeiten ist die Modellierung der Reflektionseigenschaften von menschlicher Haut, die durch bisherige Modelle noch nicht ausreichend wiedergegeben werden. Der Ansatz des Lernens aus Beispieldaten liefert Lösungsverfahren, die leicht auf andere Bereiche übertragen werden können. Er ist daher nicht nur im Hinblick auf konkrete Anwendungen der Gesichtsmodellierung und Animation von Interesse, sondern auch als eine allgemeine Methode der physikalischen Modellierung.

Zur Redakteursansicht