GAN lehrte, Gesichter mit realistischer Textur und Geometrie zu erstellen

Hallo Habr! Ich präsentiere Ihnen die Übersetzung des Artikels „Synthese von Gesichtsoberflächen und Texturen über GAN“ .

Wenn Forschern echte Daten fehlen, greifen sie häufig auf Datenerweiterungen zurück, um den vorhandenen Datensatz zu erweitern. Die Idee ist, den vorhandenen Trainingsdatensatz so zu ändern, dass die semantischen Eigenschaften intakt bleiben. Keine so triviale Aufgabe, wenn es um menschliche Gesichter geht.

Die Gesichtsgenerierungsmethode sollte so komplexe Datentransformationen berücksichtigen wie

  • Pose
  • Beleuchtung
  • nicht starre Verformungen

während realistische Bilder erstellt werden, die mit der Statistik der realen Daten übereinstimmen.

Überlegen Sie, wie modernste Methoden versuchen, dieses Problem zu lösen.

Moderne Ansätze zur Gesichtsgenerierung


Generative kontradiktorische neuronale Netze (GANs) haben sich als wirksamer erwiesen, um synthetischen Daten mehr Realismus zu verleihen. Durch Akzeptieren synthetisierter Daten als Eingabe erzeugt das GAN Samples, die eher realen Daten ähneln . Semantische Eigenschaften können jedoch geändert werden, und selbst die Verlustfunktion, die für das Ändern von Parametern bestraft wird, löst das Problem nicht bis zum Ende.

Das 3D Morphable Model (3DMM) ist die gebräuchlichste Methode zur Darstellung und Synthese von Geometrie und Texturen und wurde ursprünglich im Zusammenhang mit der Erzeugung dreidimensionaler menschlicher Gesichter eingeführt. Nach diesem Modell können die geometrische Struktur und die Texturen eines menschlichen Gesichts als Kombination von Wurzelvektoren linear angenähert werden.

Vor kurzem wurde das 3DMM-Modell mit Faltungs-Neuronalen Netzen kombiniert , um Daten zu erweitern. Die resultierenden Proben sind jedoch zu glatt und unrealistisch, wie im folgenden Bild zu sehen ist:

Mit 3DMM erhaltene Personen
Mit 3DMM erhaltene Personen


Darüber hinaus generieren 3DMMs Daten basierend auf einer Gaußschen Verteilung, die selten die tatsächliche Verteilung von Daten widerspiegelt. Im Folgenden sind beispielsweise zwei PCA-Koeffizienten (Hauptkomponentenanalyse) aufgeführt, die auf realen Gesichtern basieren und unter Verwendung von 3DMM synthetisiert wurden. Der Unterschied zwischen der synthetischen und der realen Verteilung kann leicht zur Erzeugung falscher Daten führen.
Die ersten beiden PCA-Koeffizienten für reale (links) und 3DMM-generierte (rechts) Personen
Die ersten beiden PCA-Koeffizienten für reale (links) und 3DMM-generierte (rechts) Personen



Idee auf dem neuesten Stand der Technik


Slossberg, Shamai und Kimmel vom Technion Israel Institute of Technology bieten einen neuen Ansatz zur Synthese realistischer menschlicher Gesichter unter Verwendung einer Kombination aus 3DMM und GAN.

Insbesondere verwenden Forscher das GAN, um den Raum parametrisierter menschlicher Texturen zu simulieren und die entsprechenden Gesichtsgeometrien zu erstellen, wobei die besten 3DMM-Koeffizienten für jede Textur berechnet werden. Die generierten Texturen werden auf die entsprechende Geometrie abgebildet, um neue hochauflösende 3D-Flächen zu erstellen.

Eine solche Architektur erzeugt realistische Bilder, während:

  • Leidet nicht unter der Kontrolle über Attribute wie Pose und Beleuchtung
  • quantitativ nicht auf die Erzeugung neuer Gesichter beschränkt.

Schauen wir uns den Datengenerierungsprozess genauer an.

Datengenerierungsprozess


Datenaufbereitungspipeline
Datenaufbereitung


Die Datengenerierungspipeline besteht aus vier Hauptschritten:

  • Datenerfassung : Forscher haben mehr als 5.000 Scans (Gesichts-Scans) verschiedener ethnischer, geschlechtsspezifischer und Altersgruppen gesammelt. Jeder Teilnehmer musste 5 verschiedene Gesichtsausdrücke einschließlich neutral darstellen.
  • Markup : 43 wichtige Punkte wurden dem Maschi halbautomatisch hinzugefügt, indem das Gesicht gerendert und der vorab trainierte Gesichtsmarkierungsdetektor verwendet wurde
  • Ausrichtung der Netze : Wird aufgrund der Verformung des Schablonennetzes der Fläche gemäß der Geometrie jedes Scans implementiert, wobei der Schwerpunkt auf dem angebrachten Markup liegt.
  • Texturübertragung : Die Textur wird mithilfe der in die Blender-Toolbox integrierten Ray Casting-Technik vom Scan auf die Vorlage übertragen. Danach wird die Textur mithilfe einer vordefinierten universellen Transformation von der Vorlage in einen zweidimensionalen Streifen konvertiert


Flach gefütterte Gesichtsstrukturen
Flach gefütterte Gesichtsstrukturen


Der nächste Schritt besteht darin, dem GAN beizubringen, wie Simulationen ausgerichteter Texturen erstellt werden. Für diese Aufgabe verwendeten die Forscher ein progressives GAN mit einem Generator und einem Diskriminator, die als symmetrisches neuronales Netzwerk organisiert sind. In einer solchen Implementierung erhöht der Generator die Größe der Merkmalskarte schrittweise, bis sie die Größe des Ausgabebildes erreicht, während der Diskriminator die Größe allmählich auf eine einzelne Ausgabe reduziert.

Von GAN synthetisierte Gesichtstexturen
GAN-Gesichtstexturen


Der letzte Schritt ist das Erstellen der Gesichtsgeometrie. Die Forscher versuchten verschiedene Ansätze, um die richtigen Geometriekoeffizienten für die Textur zu finden. Qualitativer und quantitativer Vergleich verschiedener Methoden unten (L2 geometrischer Fehler):

Zwei synthetisierte Texturen, die auf unterschiedliche Geometrien abgebildet sind
Zwei synthetisierte Texturen überlagern unterschiedliche Geometrien.


Unerwarteterweise zeigt die Methode der kleinsten Quadrate die besten Ergebnisse. In Anbetracht der Einfachheit der Methode wurde sie für alle Experimente ausgewählt.

Ergebnisse


Das vorgeschlagene Verfahren kann viele neue Gesichter erzeugen, und jedes von ihnen kann in verschiedenen Posen mit unterschiedlichen Ausdrücken und Lichtverhältnissen dargestellt werden. Mithilfe des Mischformmodells werden der neutralen Geometrie verschiedene Gesichtsausdrücke hinzugefügt. Die resultierenden Bilder werden unten gezeigt:

Bild

Bild

Mit der vorgeschlagenen Methode erzeugte Identitäten mit unterschiedlicher Pose und Beleuchtung

Für quantitative Bewertungen verwendeten die Forscher die Wasserstein Truncated Metric (SWD) , um den Abstand zwischen den Trainingsverteilungen und den generierten Bildern zu messen.



Die Tabelle zeigt, dass die resultierenden Texturen statistisch näher an realen Daten liegen als diejenigen, die mit 3DMM erhalten wurden.

Das folgende Experiment bewertet die Fähigkeit, Bilder zu synthetisieren, die sich erheblich vom Trainingsdatensatz unterscheiden, und zuvor nicht sichtbare Bilder zu erhalten. Somit wurden 5% der Personen nicht in die Bewertung einbezogen. Die Forscher maßen L2 den Abstand zwischen jeder realen Person von den Trainingsdaten und der ähnlichsten der generierten und in ähnlicher Weise für die reale Person aus dem Trainingsdatensatz.

Der Abstand zwischen der generierten und der realen Identität
Abstand zwischen synthetisierten und realen Gesichtern


Wie aus den Grafiken ersichtlich ist, liegen die Testdaten näher an den erzeugten Bildern als an den Trainingsbildern. Darüber hinaus unterscheidet sich die Entfernung „Test to Fake“ nicht allzu sehr von „Fake to Real“. Daraus folgt, dass die erhaltenen Proben nicht nur synthetisierte Gesichter sind, die einem Trainingssatz ähnlich sind, sondern völlig neue Gesichter.

Um die Möglichkeit der Generierung des ersten Datensatzes zu überprüfen, wurde schließlich eine qualitative Bewertung vorgenommen: Die von diesem Modell erhaltenen Gesichtstexturen wurden mit ihrem nächsten Nachbarn in der L2-Metrik verglichen.

Synthetisierte Gesichtstexturen (oben) vs. entsprechende nächste echte Nachbarn (unten)
Synthetisierte Texturen (oben) gegen die nächsten echten "Nachbarn" (unten)


Wie Sie sehen können, unterscheidet sich die nächste reale Textur erheblich vom Original, sodass wir auf die Fähigkeit schließen können, neue Gesichter zu generieren.

Zusammenfassung


Das vorgeschlagene Modell ist wahrscheinlich das erste, das in der Lage ist, sowohl die Textur als auch die Geometrie menschlicher Gesichter realistisch zu synthetisieren. Dies kann nützlich sein, um Gesichter oder Gesichtsrekonstruktionsmodelle zu erkennen und zu erkennen. Darüber hinaus kann es in Fällen verwendet werden, in denen viele verschiedene realistische Gesichter erforderlich sind, beispielsweise in der Filmindustrie oder bei Computerspielen. Darüber hinaus ist diese Struktur nicht auf die Synthese menschlicher Gesichter beschränkt, sondern kann tatsächlich für andere Objektklassen verwendet werden, bei denen eine Datenerweiterung möglich ist.

Das Original

Übersetzt - Stanislav Litvinov.

Source: https://habr.com/ru/post/de422723/


All Articles