Andersons Blickwinkel
Das Meistern von “schlechten Haartagen” in der menschlichen Bildsynthese

Seit der goldenen Ära der römischen Statuen ist die Darstellung von menschlichem Haar eine herausfordernde Aufgabe. Der durchschnittliche menschliche Kopf enthält 100.000 Haarsträhnen, hat unterschiedliche Brechungsindizes je nach Haarfarbe und bewegt sich und verformt sich auf Arten, die nur durch komplexe physikalische Modelle simuliert werden können – bisher nur durch “traditionelle” CGI-Methoden anwendbar.

Aus der Forschung von Disney aus dem Jahr 2017, versucht ein physikbasiertes Modell, realistische Bewegung auf einen fließenden Haarstil in einem CGI-Workflow anzuwenden. Quelle: https://www.youtube.com/watch?v=-6iF3mufDW0
Das Problem wird von modernen beliebten Deepfake-Methoden schlecht gelöst. Seit einigen Jahren hat das führende Paket DeepFaceLab ein “Vollkopf”-Modell, das nur starre Verkörperungen von kurzen (in der Regel männlichen) Haarstilen erfassen kann; und kürzlich hat der DFL-Stablemate FaceSwap (beide Pakete sind von dem umstrittenen DeepFakes-Quellcode aus dem Jahr 2017 abgeleitet) eine Implementierung des BiseNet-semantischen Segmentierungsmodells angeboten, das es dem Benutzer ermöglicht, Ohren und Haare in die Deepfake-Ausgabe einzuschließen.
Selbst wenn sehr kurze Haarstile dargestellt werden, neigen die Ergebnisse dazu, sehr begrenzt in der Qualität zu sein, wobei vollständige Köpfe auf Footage überlagert erscheinen, anstatt in sie integriert zu sein.
GAN-Haar
Die beiden großen konkurrierenden Ansätze zur menschlichen Simulation sind Neural Radiance Fields (NeRF), die eine Szene aus mehreren Blickwinkeln erfassen und eine 3D-Darstellung dieser Blickwinkel in einem erforschbaren neuronalen Netzwerk kapseln können; und Generative Adversarial Networks (GANs), die insbesondere im Bereich der menschlichen Bildsynthese (nicht zuletzt, weil NeRF erst 2020 entstand) wesentlich fortschrittlicher sind.
NeRFs abgeleitetes Verständnis der 3D-Geometrie ermöglicht es, eine Szene mit großer Treue und Konsistenz zu replizieren, selbst wenn es derzeit wenig oder keinen Spielraum für die Aufprägung von Physikmodellen gibt – und tatsächlich relativ begrenzten Spielraum für jede Art von Transformation der gesammelten Daten, die nicht mit der Änderung des Kamerablickwinkels zusammenhängt. Derzeit hat NeRF sehr begrenzte Fähigkeiten bei der Reproduktion von Haarbewegungen.
GAN-basierte Äquivalente zu NeRF starten mit einem fast fatalen Nachteil, da, im Gegensatz zu NeRF, der latente Raum eines GAN nicht von Natur aus ein Verständnis von 3D-Informationen beinhaltet. Daher ist die 3D-bewusste GAN-Gesichtsbildsynthese in den letzten Jahren zu einem heißen Forschungsthema in der Bildgenerierung geworden, mit dem InterFaceGAN aus dem Jahr 2019 als einem der führenden Durchbrüche.
Die Ergebnisse von InterFaceGAN zeigen jedoch, dass die neuronale Haarkonsistenz immer noch eine schwierige Herausforderung in Bezug auf die zeitliche Konsistenz für potenzielle VFX-Workflows darstellt:

Haar in einer Posentransformation von InterFaceGAN. Quelle: https://www.youtube.com/watch?v=uoftpl3Bj6w
Da es immer deutlicher wird, dass die konsistente Ansichtsgenerierung durch Manipulation des latenten Raums allein möglicherweise ein alchemistisches Unterfangen ist, erscheinen zunehmend mehr Arbeiten, die CGI-basierte 3D-Informationen in einen GAN-Workflow als stabilisierende und normalisierende Einschränkung einbeziehen.
Das CGI-Element kann durch Zwischen-3D-Primitiven wie ein Skinned Multi-Person Linear Model (SMPL) dargestellt werden oder durch die Verwendung von 3D-Schlußtechniken in einer ähnlichen Weise wie bei NeRF, wobei die Geometrie aus den Quellbildern oder Videos bewertet wird.
Ein neues Werk in diesem Bereich, veröffentlicht diese Woche, ist Multi-View Consistent Generative Adversarial Networks for 3D-aware Image Synthesis (MVCGAN), eine Zusammenarbeit zwischen ReLER, AAII, University of Technology Sydney, der DAMO-Akademie bei Alibaba Group und der Zhejiang-Universität.

Plausible und robuste neue Gesichtsposen, die von MVCGAN auf Bildern aus dem CELEBA-HQ-Datensatz generiert wurden. Quelle: https://arxiv.org/pdf/2204.06307.pdf
MVCGAN beinhaltet ein generatives Radiance Field-Netzwerk (GRAF), das in der Lage ist, geometrische Einschränkungen in einem Generative Adversarial Network bereitzustellen, und erreicht damit möglicherweise einige der authentischsten Posing-Fähigkeiten ähnlicher GAN-basierter Ansätze.
Das ergänzende Material für MVCGAN zeigt jedoch, dass die Erzielung von Haarvolumen, -disposition, -platzierung und -verhaltenkonsistenz ein Problem ist, das nicht leicht durch Einschränkungen basierend auf extern aufgeprägter 3D-Geometrie gelöst werden kann.

Aus dem ergänzenden Material, das zum Zeitpunkt des Schreibens nicht öffentlich verfügbar war, sehen wir, dass während die Gesichtsposesynthese von MVCGAN einen bemerkenswerten Fortschritt im aktuellen Stand der Technik darstellt, die zeitliche Haarkonsistenz immer noch ein Problem darstellt.
Da “einfache” CGI-Workflows immer noch Schwierigkeiten bei der zeitlichen Haarrekonstruktion haben, besteht kein Grund zu der Annahme, dass konventionelle geometriebasierte Ansätze dieser Art die konsistente Haarsynthese in den latenten Raum bringen werden.
Haarstabilisierung mit Convolutional Neural Networks
Ein kommender Artikel von drei Forschern am Chalmers-Institut für Technologie in Schweden könnte jedoch einen zusätzlichen Fortschritt in der neuronalen Haarsimulation bieten.

Links, die CNN-stabilisierte Haardarstellung, rechts, die Ground-Truth. Quelle: https://www.youtube.com/watch?v=AvnJkwCmsT4
Der Artikel mit dem Titel Echtzeit-Haarfiltroption mit Convolutional Neural Networks wird im Mai auf dem i3D-Symposium veröffentlicht.
Das System besteht aus einem autoencoderbasierten Netzwerk, das in der Lage ist, die Haarauflösung, einschließlich Selbstschattierung und unter Berücksichtigung der Haardicke, in Echtzeit zu bewerten, basierend auf einer begrenzten Anzahl von stochastischen Proben, die durch OpenGL-Geometrie gesät werden.
Der Ansatz rendern eine begrenzte Anzahl von Proben mit stochastischer Transparenz und trainiert dann ein U-Net, um das ursprüngliche Bild zu rekonstruieren.

Unter MVCGAN filtert ein CNN stochastisch beprobte Farbfaktoren, Highlights, Tangenten, Tiefen und Alphas und kombiniert die synthetisierten Ergebnisse zu einem Kompositbild.
Das Netzwerk wird auf PyTorch trainiert und konvergiert innerhalb von sechs bis zwölf Stunden, abhängig von der Netzwerkgröße und der Anzahl der Eingabefeatures. Die trainierten Parameter (Gewichte) werden dann in der Echtzeitimplementierung des Systems verwendet.
Die Trainingsdaten werden durch das Rendern von mehreren hundert Bildern für gerade und wellige Haarstile unter Verwendung von zufälligen Abständen und Posen sowie unterschiedlichen Beleuchtungsbedingungen generiert.

Verschiedene Beispiele für Trainingsinputs.
Die Haartransluzenz über die Proben wird gemittelt aus Bildern, die mit stochastischer Transparenz in einer höheren Auflösung gerendert werden. Die ursprünglichen Hochauflösungsdaten werden heruntergesampelt, um Netzwerk- und Hardwaregrenzen zu berücksichtigen, und später wieder hochgesampelt, in einem typischen Autoencoder-Workflow.
Die Echtzeitinferenzanwendung (die “Live”-Software, die den Algorithmus aus dem trainierten Modell nutzt) verwendet eine Kombination aus NVIDIA CUDA mit cuDNN und OpenGL. Die anfänglichen Eingabefeatures werden in OpenGL-Multisample-Farbpuffer eingefügt und das Ergebnis in cuDNN-Tensoren umgeleitet, bevor es im CNN verarbeitet wird. Diese Tensoren werden dann in eine “Live”-OpenGL-Textur kopiert, um sie in das Endbild einzufügen.
Das Echtzeitsystem läuft auf einem NVIDIA RTX 2080 und produziert eine Auflösung von 1024×1024 Pixeln.
Da die Haarfarbwerte in den endgültigen Werten, die durch das Netzwerk erhalten werden, vollständig entflochten sind, ist das Ändern der Haarfarbe eine triviale Aufgabe, obwohl Effekte wie Gradienten und Streifen immer noch eine zukünftige Herausforderung darstellen.

Die Autoren haben den Code, der in den Bewertungen des Artikels verwendet wurde, auf GitLab veröffentlicht. Siehe das ergänzende Video für MVCGAN unten.
Schlussfolgerung
Das Navigieren im latenten Raum eines Autoencoders oder GANs ist immer noch eher wie Segeln als präzises Fahren. Erst in dieser sehr jüngsten Zeit sehen wir glaubwürdige Ergebnisse für die Posengenerierung von “einfacheren” Geometrien wie Gesichtern in Ansätzen wie NeRF, GANs und nicht-Deepfake-(2017)-Autoencoder-Rahmenwerken.
Die erhebliche architektonische Komplexität von menschlichem Haar, kombiniert mit der Notwendigkeit, Physikmodelle und andere Merkmale einzubeziehen, für die die aktuellen Bildsyntheseansätze keine Vorkehrungen haben, deutet darauf hin, dass die Haarsynthese wahrscheinlich nicht länger ein integrierter Bestandteil der allgemeinen Gesichtssynthese bleibt, sondern separate und spezielle Netze erfordert, die möglicherweise in umfassendere und komplexere Gesichtssynthese-Rahmenwerke integriert werden.
Erstveröffentlichung: 15. April 2022.













