Gesichtserkennung Ist Für Animationen Unwirksam. Disney Erstellt Eine Gesichtserkennungsbibliothek Speziell Für Animationen

Auch bei der Gesichtserkennung gab es Probleme. Es kann dreidimensionale Objekte erkennen, ist jedoch bei zweidimensionalen Objekten unwirksam. Das technische Team von Disney entwickelt diesen Algorithmus, um Animatoren bei der Suche nach der Postproduktion zu unterstützen. Das Team nutzte PyTorch, um die Effizienz deutlich zu verbessern.
Wenn es um Animation geht, müssen wir Disney erwähnen, ein 1923 gegründetes Unternehmensimperium. Disney, das als Animationsunternehmen begann, ist bis heute führend in der Entwicklung von Animationsfilmen auf der ganzen Welt.
Hinter jedem Animationsfilm stecken die harte Arbeit und der Schweiß von Hunderten von Menschen. Seit der Veröffentlichung der ersten computergestützten 3D-Animation „Toy Story“ hat Disney die Reise der digitalen Animationserstellung begonnen. Mit der Entwicklung der CGI- und KI-Technologie haben sich auch die Produktions- und Archivierungsmethoden der Disney-Animationsfilme enorm verändert.

Derzeit hat Disney auch eine große Zahl von Informatikern eingestellt, die mithilfe modernster Technologie die Art und Weise der Inhaltserstellung verändern und die Belastung der Filmemacher hinter den Kulissen verringern.
Wie verwaltet ein jahrhundertealter Filmgigant digitale Inhalte?
Es wird davon ausgegangen, dass in den Walt Disney Animation Studios etwa 800 Mitarbeiter aus 25 verschiedenen Ländern beschäftigt sind, darunter Künstler, Regisseure, Drehbuchautoren, Produzenten und technische Teams.
Um einen Film zu machen, müssen viele komplexe Prozesse durchlaufen werden, von der Inspirationsfindung über das Schreiben einer Story-Skizze bis hin zum Entwurf des Drehbuchs, dem Art Design, dem Charakterdesign, der Synchronisation, den Animationseffekten, der Produktion von Spezialeffekten, dem Schnitt, der Postproduktion usw.
Bis März 2021 haben die Walt Disney Animation Studios, die sich allein auf die Produktion von Animationsfilmen spezialisiert haben, 59 abendfüllende Animationsfilme produziert und veröffentlicht, und die Zahl der animierten Figuren in diesen Filmen beläuft sich auf Hunderttausende.

Wenn Animatoren an einer Fortsetzung arbeiten oder auf eine bestimmte Figur verweisen möchten, müssen sie ein riesiges Inhaltsarchiv durchsuchen, um eine bestimmte Figur, Szene oder ein bestimmtes Objekt zu finden. zu diesem Zweck,Sie müssen oft Stunden damit verbringen, Videos anzuschauen und sich dabei ausschließlich auf ihre Augen verlassen, um die benötigten Clips herauszufiltern.
Um dieses Problem zu lösen, startete Disney ein Projekt namens „Inhaltsgenom“KI-Projekte,Es wurde entwickelt, um ein Archiv mit digitalen Disney-Inhalten zu erstellen und hilft Animatoren dabei, Gesichter in Animationen schnell und genau zu identifizieren, unabhängig davon, ob es sich um Personen oder Objekte handelt.
Training animationsspezifischer Gesichtserkennungsalgorithmen
Der erste Schritt bei der Digitalisierung einer Inhaltsbibliothek besteht darin, den Inhalt in früheren Werken zu erkennen und zu markieren, um die Suche durch Produzenten und Benutzer zu erleichtern.
Die Technologie zur Gesichtserkennung ist bereits relativ ausgereift, aber kann dieselbe Methode auch für die Gesichtserkennung in Animationen verwendet werden?
Nach Experimenten stellte das technische Team von Content Genome fest, dass dies nur unter bestimmten Umständen möglich war.
Sie wählten zwei Animationsfilme aus, „Elena von Avalon“ und „Die Garde der Löwen“, und kommentierten einige Beispiele manuell, indem sie die Gesichter in Hunderten von Filmbildern mit Quadraten markierten. Durch diesen manuell annotierten DatensatzDas Team stellte fest, dass die auf der HOG + SVM-Pipeline basierende Gesichtserkennungstechnologie bei animierten Gesichtern (insbesondere menschenähnlichen Gesichtern und Tiergesichtern) eine schlechte Leistung zeigte.

Nach der Analyse bestätigte das Team, dass Methoden wie HOG+SVM robust gegenüber Änderungen der Farbe, Helligkeit oder Textur sind, die verwendeten Modelle können jedoch nur animierte Charaktere mit menschlichen Proportionen (d. h. zwei Augen, eine Nase und ein Mund) abgleichen.
Da der Hintergrund animierter Inhalte normalerweise flache Bereiche und wenige Details aufweist, identifiziert das Faster-RCNN-Modell außerdem alles, was sich vom einfachen Hintergrund abhebt, fälschlicherweise als animiertes Gesicht.

Daher kam das Team zu dem Schluss, dass eine Technik erforderlich sei, mit der abstraktere Konzepte von Gesichtern erlernt werden könnten.
Das Team entschied sich für die Verwendung von PyTorch zum Trainieren des Modells. Das Team stellte vor:Mit PyTorch können sie auf hochmoderne vortrainierte Modelle zugreifen, um ihre Trainingsanforderungen zu erfüllen und den Archivierungsprozess effizienter zu gestalten.
Während des Trainingsprozesses stellte das Team fest, dass es in seinem Datensatz genügend positive Beispiele gab, aber nicht genügend negative Beispiele, um das Modell zu trainieren. Sie beschlossen, ihren ursprünglichen Datensatz um zusätzliche Bilder zu erweitern, die zwar keine animierten Gesichter, aber animierte Merkmale enthielten.
Um dies technisch zu bewerkstelligen, Sie haben die Faster-RCNN-Implementierung von Torchvision erweitert, um das Laden negativer Beispiele während des Trainings ohne Anmerkungen zu ermöglichen.
Dies ist auch eine neue Funktion, die das Team unter Anleitung der Torchvision-Kernentwickler für Torchvision 0.6 erstellt hat.Durch das Hinzufügen negativer Beispiele zum Datensatz können Fehlalarme zum Zeitpunkt der Inferenz erheblich reduziert werden, was zu besseren Ergebnissen führt.
Die Verwendung von PyTorch zur Videoverarbeitung erhöht die Effizienz um das Zehnfache
Nach der Gesichtserkennung für animierte Figuren besteht das nächste Ziel des Teams darin, den Videoanalyseprozess zu beschleunigen. Durch die Anwendung von PyTorch können andere Aufgaben effektiv parallelisiert und beschleunigt werden.
Das Team stellte vor:Das Lesen und Dekodieren des Videos ist ebenfalls zeitaufwändig, daher verwendete das Team ein benutzerdefiniertes PyTorch IterableDataset in Kombination mit dem DataLoader von PyTorch, um das Lesen verschiedener Teile des Videos mithilfe paralleler CPUs zu ermöglichen.

Diese Art des Videolesens ist bereits sehr schnell, das Team hat jedoch auch versucht, alle Berechnungen mit nur einem Lesevorgang abzuschließen. Daher haben sie den Großteil der Pipeline in PyTorch implementiert und die GPU-Ausführung berücksichtigt. Jeder Frame wird nur einmal an die GPU gesendet und dann werden alle Algorithmen auf jeden Batch angewendet, wodurch die Kommunikation zwischen CPU und GPU auf ein Minimum reduziert wird.
Das Team verwendete PyTorch auch, um traditionellere Algorithmen zu implementieren, wie beispielsweise einen Shot Detector, der keine neuronalen Netzwerke verwendet und hauptsächlich Operationen wie Farbraumtransformation, Histogramme und Singulärwertzerlegung (SVD) durchführt. PyTorch ermöglichte es dem Team, Berechnungen mit minimalem Aufwand auf die GPU auszulagern und Zwischenergebnisse, die von mehreren Algorithmen gemeinsam genutzt werden, problemlos wiederzuverwenden.
Durch die Verwendung von PyTorch verlagerte das Team den CPU-Anteil auf die GPU und nutzte DataLoader, um das Lesen von Videos zu beschleunigen, die Hardware voll auszunutzen und die Verarbeitungszeit letztendlich um das Zehnfache zu reduzieren.
Die Entwickler des Teams kamen zu dem Schluss, dass die Kernkomponenten von PyTorch, wie IterableDataset, DataLoader und Torchvision, es dem Team ermöglichen, das Laden von Daten und die Algorithmuseffizienz in Produktionsumgebungen zu verbessern. Von der Inferenz über Modelltrainingsressourcen bis hin zu einem vollständigen Toolset zur Pipeline-Optimierung entscheidet sich das Team zunehmend für die Verwendung von PyTorch.
Dieser Artikel wurde vom offiziellen Konto der PyTorch Developer Community zusammengestellt und veröffentlicht.