Catégories
Tuto

First order motion model : tuto pour faire parler une photo

Un groupe de chercheurs spécialisés dans le traitement de l’image à base de machine learning a publié en 2019 le code source d’un projet permettant d’animer n’importe quelle photo de visage à partir d’une séquence vidéo d’un visage en train de parler.

Dans ce tutoriel, je te propose d’utiliser leur code source depuis le service en ligne Google Colab pour créer ton propre deepfake !

Pas le temps de lire ? Regarde ma vidéo

Au sommaire

  1. Le projet first order motion model
  2. Les prérequis pour “hacker” le projet
  3. Crée un répertoire google drive avec photo, vidéo et dataset
  4. Exécute le code du git avec Google Colab
  5. Ajoute du son à ton animation

Le projet first order motion model

Voici une présentation en vidéo du projet

Tu peux en savoir plus ici :

Bravo aux chercheurs : Aliaksandr Siarohin, Stéphane Lathuilière, Sergey Tulyakov, Elisa Ricci and Nicu Sebe

Les prérequis

Pour réaliser ce tuto, tu vas avoir besoin :

  • d’un navigateur Web (comme Chrome ou Firefox)
  • d’un compte Google / Gmail
  • d’au moins 2 go d’espace sur Google Drive

Il te faudra aussi une photo (format .png) 256 pixels x 256 pixels que tu as envie d’animer.

Pour que ce soit fun, j’ai créé cette image de dessin animé à partir du code source de toonify yourself et de ma propre photo

nomme-la photo.png

Il faudra ensuite que tu génères une vidéo 256 x 256 pixels (.mp4) de toi en train de parler. Pour cela, tu peux te filmer avec ton smartphone et ensuite recadrer la vidéo avec une appli comme Inshot.

Voilà ce que ça donne

nomme-la video.mp4

Grâce au notebook Google Colab first order motion model, tu vas pouvoir générer ceci à la fin

Pas mal ! N’est-ce pas ?

Etape 1 : crée-toi un répertoire Google Drive

Crée-toi un répertoire Google Drive nommé
first-order-motion-model

Mets-y :

  • ta photo 256×256, nomme-la photo.png
  • ta video 256×256, nomme-la video.mp4
  • et ce fichier magique vox-cpk.pth.tar

Le fichier vox-cpk.pth.tar est un gros zip de 700 mégas qui contient le dataset de points clés d’animations de visages de célébrités.

Ici un autre Modèle d’apprentissage avec plusieurs combattants de taï-chi

C’est ce dataset très complet qui va nous permettre de faire le lien entre les points clés de la photo (photo.png) et de la vidéo (video.mp4) pour ensuite animer la photo.

Etape 2 : Lance le Google Colab First Order Motion Model

Ouvre maintenant cette URL dans ton navigateur en étant loggué à ton compte Gmail (celui qui donne accès à ton Google drive)

https://colab.research.google.com/drive/1Xpe3zQzkIP9owBwY7KHl9d8UDLrH-xDP

Il va falloir ensuite que tu clones le répertoire git du projet first-order-model et que tu te mettes dans le répertoire du même nom.

Pour ce faire, tu as juste à cliquer sur play ici pour exécuter les 2 lignes de commande.

Ensuite, tu dois donner l’autorisation au Google Colab d’accéder à ton Google Drive.

Même technique qu’avant, tu cliques sur play, tu autorises le colab à avoir accès à ton Google Drive et copie-colle le code qu’on te donne dans “Enter your authorization code”

Une fois le code collé, appuie sur entrée pour avoir ceci qui s’affiche

Dans les lignes de commande qui suivent, modifie l’image source avec photo.png et la vidéo avec video.mp4 comme ceci

Tu peux jouer aussi plus bas sur le framerate de ta vidéo (nombre d’images par seconde), ici j’ai mis 33 qui donnera de bons résultats à la fin.


Quand tu es content, clique sur play pour exécuter le code ! Ca va te générer une image et une vidéo côte à côte, sans transformation.

Ensuite, tu vas cliquer sur play pour charger ton modèle d’apprentissage de visages de célébrités vox-cpk.pth.tar

L’étape juste après te permettra de créer ta photo animée, toujours en cliquant sur play

A la fin des 100%, tada !! tu auras ton animation

L’image de gauche s’anime à droite grâce à la vidéo au centre

Tu peux la récupérer en faisant clic droit + enregistrer sous (au format .mp4)

via GIPHY

Etape 3 : Crée un montage vidéo pour avoir le son

Avec l’appli de montage VN Vidéo Editor, tu peux mettre en piste 1 la vidéo originale qui a le son, en piste 2 l’animation qu’on vient de créer plus haut.

Libre à toi ensuite de zoomer sur les 2 visages ou sur un seul visage.

Mon double manga parle à ma place 😉

Bluffant, n’est-ce pas ? Dis-moi si tu t’en sort dans les commentaires et n’oublie pas de partager ce tuto autour de toi s’il t’a été utile.

2 réponses sur « First order motion model : tuto pour faire parler une photo »

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *