La Reconnaissance Faciale Est Inefficace Pour L'animation, Disney Crée Une Bibliothèque De Reconnaissance Faciale Spécifiquement Pour L'animation

La reconnaissance faciale a également rencontré des problèmes. Il peut reconnaître les objets tridimensionnels mais est inefficace pour les objets bidimensionnels. L'équipe technique de Disney développe cet algorithme pour aider les animateurs dans leurs recherches de post-production. L’équipe a utilisé PyTorch pour améliorer considérablement l’efficacité.
En matière d'animation, il faut mentionner Disney, un empire commercial fondé en 1923. Disney, qui a débuté comme une société d'animation, est à la pointe du développement de films d'animation dans le monde entier jusqu'à aujourd'hui.
Derrière chaque film d’animation, il y a le travail acharné et la sueur de centaines de personnes. Depuis la sortie du premier film d'animation 3D par ordinateur « Toy Story », Disney s'est lancé dans l'aventure de la création d'animation numérique. Avec le développement des technologies CGI et IA, les méthodes de production et d’archivage des films d’animation Disney ont également subi d’énormes changements.

Actuellement, Disney a également intégré un grand nombre d’informaticiens qui utilisent une technologie de pointe pour changer la façon dont le contenu est créé et réduire la charge de travail des cinéastes en coulisses.
Comment un géant du cinéma centenaire gère-t-il le contenu numérique ?
On estime qu'il y a environ 800 employés de 25 pays différents dans les studios d'animation Walt Disney, y compris des artistes, des réalisateurs, des scénaristes, des producteurs et des équipes techniques.
Réaliser un film nécessite de passer par de nombreux processus complexes, depuis la génération de l'inspiration, jusqu'à la rédaction du plan de l'histoire, en passant par la rédaction du scénario, la conception artistique, la conception des personnages, le doublage, les effets d'animation, la production d'effets spéciaux, le montage, la post-production, etc.
En mars 2021, Walt Disney Animation Studios, spécialisé dans la production de films d'animation uniquement, a produit et publié 59 longs métrages d'animation, et le nombre de personnages animés dans ces films s'élève à des centaines et des milliers.

Lorsque les animateurs travaillent sur une suite ou souhaitent faire référence à un certain personnage, ils doivent parcourir une archive massive de contenu pour trouver un personnage, une scène ou un objet spécifique. à cette fin,Ils doivent souvent passer des heures à regarder des vidéos, en se fiant uniquement à leurs yeux pour filtrer les clips dont ils ont besoin.
Afin de résoudre ce problème, Disney a lancé un projet appelé « Génome du contenu »Projets d'IA,Conçu pour créer une archive de contenu numérique Disney, il aide les animateurs à identifier rapidement et avec précision les visages dans les animations, qu'il s'agisse de personnes ou d'objets.
Formation d'algorithmes de reconnaissance faciale spécifiques à l'animation
La première étape de la numérisation d’une bibliothèque de contenu consiste à détecter et à marquer le contenu des œuvres passées pour faciliter les recherches par les producteurs et les utilisateurs.
La technologie de reconnaissance faciale est déjà relativement mature, mais la même méthode peut-elle être utilisée pour la reconnaissance faciale dans les animations ?
Après des expériences, l’équipe technique de Content Genome a découvert que cela n’était possible que dans certaines circonstances.
Ils ont sélectionné deux films d'animation, « Elena d'Avalon » et « La Garde du Lion », et ont annoté manuellement certains échantillons, en marquant les visages dans des centaines d'images du film avec des carrés. Grâce à cet ensemble de données annotées manuellement,L'équipe a vérifié que la technologie de reconnaissance faciale basée sur le pipeline HOG + SVM fonctionnait mal sur les visages animés (en particulier les visages humains et les visages d'animaux).

Après analyse, l'équipe a confirmé que des méthodes comme HOG+SVM sont robustes aux changements de couleur, de luminosité ou de texture, mais les modèles utilisés ne peuvent correspondre qu'à des personnages animés aux proportions humaines (c'est-à-dire deux yeux, un nez et une bouche).
De plus, comme l’arrière-plan du contenu animé comporte généralement des zones plates et peu de détails, le modèle Faster-RCNN identifiera par erreur tout ce qui se détache de l’arrière-plan simple comme un visage animé.

L’équipe a donc décidé qu’elle avait besoin d’une technique capable d’apprendre des concepts plus abstraits des visages.
L’équipe a choisi d’utiliser PyTorch pour entraîner le modèle. L'équipe a présenté,Avec PyTorch, ils peuvent accéder à des modèles pré-entraînés de pointe pour répondre à leurs besoins de formation et rendre le processus d'archivage plus efficace.
Au cours du processus de formation, l’équipe a constaté qu’il y avait suffisamment d’échantillons positifs dans son ensemble de données, mais pas suffisamment d’échantillons négatifs pour former le modèle. Ils ont décidé d’augmenter leur ensemble de données initial avec des images supplémentaires qui ne contenaient pas de visages animés, mais avaient des caractéristiques animées.
Pour faire cela techniquement, Ils ont étendu l’implémentation Faster-RCNN de Torchvision pour permettre le chargement d’échantillons négatifs pendant la formation sans annotations.
Il s’agit également d’une nouvelle fonctionnalité que l’équipe a créée pour Torchvision 0.6 sous la direction des développeurs principaux de Torchvision.L’ajout d’exemples négatifs à l’ensemble de données peut réduire considérablement les faux positifs au moment de l’inférence, conduisant à des résultats supérieurs.
L'utilisation de PyTorch pour traiter les vidéos augmente l'efficacité de 10 fois
Après avoir obtenu la reconnaissance faciale pour les personnages animés, le prochain objectif de l’équipe est d’accélérer le processus d’analyse vidéo, et l’application de PyTorch peut efficacement paralléliser et accélérer d’autres tâches.
L'équipe a présenté,La lecture et le décodage de la vidéo prennent également beaucoup de temps, c'est pourquoi l'équipe a utilisé un PyTorch IterableDataset personnalisé, combiné au DataLoader de PyTorch, pour permettre la lecture de différentes parties de la vidéo à l'aide de processeurs parallèles.

Cette façon de lire une vidéo est déjà très rapide, mais l’équipe a également essayé de réaliser tous les calculs avec une seule lecture. Ils ont donc implémenté la majeure partie du pipeline dans PyTorch et ont pris en compte l’exécution GPU. Chaque image est envoyée au GPU une seule fois, puis tous les algorithmes sont appliqués à chaque lot, réduisant ainsi au minimum la communication entre le CPU et le GPU.
L'équipe a également utilisé PyTorch pour implémenter des algorithmes plus traditionnels, comme un détecteur de tir, qui n'utilise pas de réseaux neuronaux et effectue principalement des opérations telles que la transformation de l'espace colorimétrique, les histogrammes et la décomposition en valeurs singulières (SVD). PyTorch a permis à l'équipe de décharger les calculs sur le GPU avec un coût minimal et de recycler facilement les résultats intermédiaires partagés entre plusieurs algorithmes.
En utilisant PyTorch, l'équipe a déchargé la partie CPU sur le GPU et a utilisé DataLoader pour accélérer la lecture vidéo, exploitant pleinement le matériel et réduisant finalement le temps de traitement de 10 fois.
Les développeurs de l'équipe ont conclu que les composants principaux de PyTorch, tels que IterableDataset, DataLoader et Torchvision, permettent à l'équipe d'améliorer le chargement des données et l'efficacité des algorithmes dans les environnements de production. De l'inférence aux ressources de formation de modèles en passant par un ensemble complet d'outils d'optimisation de pipeline, l'équipe choisit de plus en plus d'utiliser PyTorch.
Cet article est compilé et publié par le compte officiel PyTorch Developer Community