Ingénierie IAIngénierie IA
Ingénierie IA8 min de lecture

Modification de visages dans de vraies vidéos avec l’IA ! Stitch It in Time expliqué

La modification de visages dans de vraies vidéos avec l’IA et Stitch It in Time expliquée : le fonctionnement de ces systèmes visuels et les endroits où ils échouent.

Modification de visages dans de vraies vidéos avec l’IA ! Stitch It in Time expliqué
Sommaire

Regardez la vidéo :

Vous avez très certainement vu des films récents comme Captain Marvel ou Gemini Man, où Samuel L. Jackson et Will Smith semblaient beaucoup plus jeunes. Ce résultat demande des centaines, voire des milliers d’heures de travail à des professionnels qui modifient manuellement chaque scène où ils apparaissent. Vous pourriez plutôt utiliser une simple IA et accomplir le travail en quelques minutes.

Exemple visuel de Modification de visages dans de vraies vidéos avec l’IA ! Stitch It in Time expliqué

Exemple de vieillissement. Image tirée de l’article scientifique.

En effet, de nombreuses techniques permettent d’ajouter un sourire ou de vous faire paraître plus jeune ou plus vieux, le tout automatiquement avec des algorithmes fondés sur l’IA. Elles s’appliquent surtout aux images, puisque c’est beaucoup plus simple, mais les mêmes techniques légèrement modifiées peuvent aussi traiter des vidéos. Comme vous vous en doutez, elles sont très prometteuses pour l’industrie du cinéma. Au fait, tous les résultats que vous avez vus ont été produits avec la technique que je présenterai dans cet article.

Exemple visuel de Modification de visages dans de vraies vidéos avec l’IA ! Stitch It in Time expliqué

Exemple de résultat. Image tirée de l’article scientifique.

Le principal problème est qu’actuellement, ces images modifiées pour créer une « version plus âgée » semblent non seulement étranges, mais présentent aussi des problèmes et des artéfacts lorsqu’elles sont utilisées dans une vidéo. Ce n’est certainement pas ce que nous voulons dans un film qui coûte des millions de dollars. Il est beaucoup plus difficile de trouver des vidéos de personnes que des photos, ce qui complique encore l’entraînement de tels modèles d’IA, qui ont besoin d’un grand nombre d’exemples différents pour comprendre la tâche. Cette forte dépendance aux données est l’une des raisons pour lesquelles l’IA actuelle demeure loin de l’intelligence humaine. Voilà pourquoi des chercheurs comme Rotem Tzaban et ses collaborateurs de l’Université de Tel-Aviv travaillent fort pour améliorer la qualité de la modification vidéo automatique sans exiger autant d’exemples vidéo. Plus précisément, ils améliorent les manipulations faciales fondées sur l’IA dans des vidéos de visages parlants de grande qualité à l’aide de modèles entraînés sur des images. La méthode n’a besoin que de la vidéo à modifier. Elle peut ajouter un sourire et vous faire paraître plus jeune ou plus vieux. Elle fonctionne même avec des vidéos animées !

Exemple visuel de Modification de visages dans de vraies vidéos avec l’IA ! Stitch It in Time expliqué

Modification d’un visage dans une vidéo animée. Image tirée de l’article scientifique.

C’est vraiment génial, mais la façon dont les chercheurs y sont arrivés est encore plus intéressante…

Exemple visuel de Modification de visages dans de vraies vidéos avec l’IA ! Stitch It in Time expliqué

Bien sûr, la méthode utilise des GAN, ou réseaux antagonistes génératifs. Je n’entrerai pas dans le fonctionnement interne des GAN puisque je l’ai déjà présenté dans un article que vous pouvez lire juste ici, mais nous verrons ce qui distingue cette méthode d’une architecture GAN de base. Si vous ne connaissez pas les GAN, prenez simplement une minute pour lire l’article et revenez ensuite. Je serai toujours ici à vous attendre, et je n’exagère pas. L’article demande littéralement une minute pour comprendre les grandes lignes des GAN !

Rappelons simplement la partie où un modèle génératif reçoit une image, ou plutôt une version encodée de cette image, puis modifie le code pour générer une nouvelle version qui change certains aspects précis, lorsque c’est possible.
Le contrôle de la génération est la partie difficile. Le modèle possède tellement de paramètres qu’il devient très compliqué de trouver lesquels contrôlent quoi et de tout démêler afin de modifier uniquement ce que nous voulons.

Exemple visuel de Modification de visages dans de vraies vidéos avec l’IA ! Stitch It in Time expliqué

Fonctionnement du générateur d’un réseau GAN.

La méthode peut donc utiliser n’importe quelle architecture générative, comme StyleGAN dans ce cas-ci. StyleGAN est simplement une puissante architecture de GAN pour les images de visages, publiée par NVIDIA il y a quelques années, qui offre encore des résultats très impressionnants et possède maintenant de nouvelles versions. Le modèle génératif lui-même n’est toutefois pas très important, puisque la méthode peut fonctionner avec n’importe quelle architecture de GAN assez puissante.

Et oui, même si tous ces modèles sont entraînés pour les images, les chercheurs les utilisent pour modifier des vidéos ! Ils supposent que la vidéo envoyée est déjà réaliste et cohérente. Ils peuvent ainsi se concentrer sur la préservation du réalisme plutôt que sur la création d’une vidéo cohérente, comme nous devons le faire dans les travaux de synthèse vidéo,
où nous créons de nouvelles vidéos à partir de rien.

Chaque image est donc traitée séparément, plutôt que d’envoyer une vidéo complète et d’attendre une nouvelle vidéo en retour. Cette hypothèse simplifie beaucoup la tâche, mais d’autres défis demeurent. Il faut notamment préserver une vidéo réaliste où chaque trame passe naturellement à la suivante sans problème visible.

Exemple visuel de Modification de visages dans de vraies vidéos avec l’IA ! Stitch It in Time expliqué

Vue d’ensemble du modèle. Image tirée de l’article scientifique.

Les chercheurs prennent chaque trame de la vidéo comme image d’entrée, extraient uniquement le visage et l’alignent (1) pour assurer sa cohérence, une étape essentielle comme nous le verrons. Ils utilisent ensuite leur encodeur préentraîné (2) et leur générateur (3) pour encoder les trames et produire une nouvelle version de chacune. Malheureusement, ces étapes ne règlent pas le problème de réalisme. Les nouveaux visages peuvent sembler étranges ou déplacés lors du passage d’une trame à l’autre, et des problèmes d’éclairage ou des différences d’arrière-plan peuvent apparaître.

Pour corriger le problème, ils poursuivent l’entraînement du générateur initial (3) et l’utilisent afin de rendre les générations de toutes les trames plus semblables et cohérentes dans l’ensemble. Ils ajoutent aussi deux autres étapes : une étape de modification et une nouvelle opération appelée « stitching-tuning », ou ajustement d’assemblage.

L’étape de modification (4) prend simplement la version encodée de l’image et la change légèrement. C’est à cette étape que le modèle apprend, dans notre exemple, à modifier le code juste assez pour faire paraître la personne plus âgée. Il apprend quels paramètres déplacer et dans quelle mesure changer les bonnes caractéristiques de l’image, par exemple en ajoutant des cheveux gris et des rides.

Exemple visuel de Modification de visages dans de vraies vidéos avec l’IA ! Stitch It in Time expliqué

L’étape 5 en détail : la méthode de stitching-tuning. Image tirée de l’article scientifique.

La méthode de stitching-tuning (5) reçoit ensuite l’image encodée que vous voyez ici. Elle apprend à générer, à partir du code modifié, l’image qui correspond le mieux à l’arrière-plan et aux autres trames. Pour y arriver, elle compare la nouvelle image générée à l’image originale, puis trouve la meilleure façon de remplacer uniquement le visage à l’aide d’un masque, tout en conservant le reste de l’image recadrée sans changement.

Enfin, nous recollons le visage modifié sur la trame (6). Ce processus est très intelligent et permet de produire des vidéos de grande qualité, puisque le modèle traite uniquement le visage recadré et aligné. Il réduit ainsi énormément les calculs nécessaires et la complexité de la tâche. Même si le visage doit être petit, disons 200 pixels carrés comme dans cet exemple, nous pouvons conserver une vidéo en assez haute résolution s’il n’occupe qu’un cinquième de l’image.

Et voilà ! C’est ainsi que ces excellents chercheurs réalisent des manipulations faciales de grande qualité dans des vidéos !

Exemple visuel de Modification de visages dans de vraies vidéos avec l’IA ! Stitch It in Time expliqué

Merci de m’avoir lu. Regardez la vidéo pour voir plus d’exemples !


Si vous aimez mon travail et souhaitez rester au courant de l’IA, suivez-moi sur mes autres réseaux sociaux (LinkedIn, Twitter) et abonnez-vous à mon infolettre hebdomadaire sur l’IA !

Pour me soutenir :

  • La meilleure façon de me soutenir est de devenir membre de ce site Web ou de vous abonner à ma chaîne YouTube si vous préférez le format vidéo.
  • Suivez-moi ici sur Medium
  • Vous souhaitez vous lancer en IA ou améliorer vos compétences ? Lisez ceci !

Références

Discussion

Commentaires

Chargement

Aucun compte requis. Votre nom et votre commentaire seront publics, alors n'incluez pas de renseignements privés. Consultez la page de confidentialité pour les détails.

Continuez à apprendre

Vous voulez le côté pratique de l'IA, sans le brouillard marketing ?

Je partage ce qui est utile sur YouTube, Substack et dans mes guides d'ingénierie IA.

FAQ

Quel problème Stitch It in Time résout-il ?

Il modifie les attributs faciaux d’une personne dans une vraie vidéo tout en réduisant le scintillement et les changements d’identité entre les trames.

Pourquoi la modification indépendante des trames donne-t-elle un mauvais résultat ?

De petites différences dans l’âge, la texture ou la géométrie générés créent des problèmes temporels visibles lorsque les trames sont lues ensemble.

Pourquoi recadrer et aligner le visage ?

Se concentrer sur une région normalisée du visage réduit les calculs et retire les variations inutiles de la tâche de modification.

La méthode exige-t-elle un GAN précis ?

Non. Son approche de modification temporelle peut utiliser différentes architectures efficaces de génération de visages.

Qu’est-ce qui compte pour modifier un visage avec une qualité cinématographique ?

L’identité, la haute résolution, l’expression naturelle, l’éclairage et la cohérence temporelle doivent tous être préservés malgré la modification demandée.