Vous voudrez peut-être consulter la version 2 beaucoup plus compétente du même logiciel: http://github.com/pkhungurn/talking-head-anime-2-demo
Ce référentiel contient du code pour deux applications qui utilisent le système de réseau neuronal dans l'anime de tête parlante à partir d'un seul projet d'image:
Si vous n'avez pas le matériel requis (discuté ci-dessous) ou si vous ne souhaitez pas télécharger le code et configurer un environnement pour l'exécuter, cliquez pour essayer d'exécuter le poseur manuel sur Google Colab.
Comme pour de nombreux projets d'apprentissage automatique modernes écrits avec Pytorch, ce morceau de code nécessite un GPU NVIDIA récent et puissant à fonctionner. J'ai exécuté personnellement le code sur un GEForce GTX 1080 Ti et un Titan RTX.
De plus, l'outil Peppeteer nécessite une webcam.
Si vous installez ces packages, vous devriez être bon.
Si vous utilisez Anaconda, vous avez également la possibilité de recréer l'environnement Python qui peut être utilisé pour exécuter la démo. Ouvrez un répertoire de shell et changez à la racine du projet. Ensuite, exécutez la commande suivante:
conda env create -f environment.yml
Cela devrait télécharger et installer toutes les dépendances. Gardez à l'esprit, cependant, que cela nécessitera plusieurs gigaoctets de votre stockage. Une fois l'installation terminée, vous pouvez activer le nouvel environnement avec la commande suivante:
conda activate talking-head-anime
Une fois que vous avez terminé avec l'environnement, vous pouvez le désactiver avec:
conda deactivate
Après avoir cloné ce référentiel au stockage de votre machine, vous devez télécharger les modèles:
data sous la racine du projet. Les modèles sont publiés séparément avec la licence internationale Creative Commons Attribution 4.0.shape_predictor_68_face_landmarks.dat et enregistrez-les dans le répertoire data . Vous pouvez télécharger les archives BZIP à partir d'ici. N'oubliez pas de vous compresser.Une fois le téléchargement terminé, le répertoire de données devrait ressembler à ce qui suit:
+ data
+ illust
- placeholder.txt
- waifu_00_256.png
- waifu_01_256.png
- waifu_02_256.png
- waifu_03_256.png
- waifu_04_256.png
- combiner.pt
- face_morpher.pt
- placeholder.txt
- shape_predictor_68_face_landmarks.dat
- two_algo_face_rotator.pt
Pour jouer avec la démo, vous pouvez utiliser les 5 images que j'ai incluses dans les data/illust . Ou, vous pouvez préparer vous-même quelques images de personnages. Les images qui peuvent être animées doivent satisfaire aux exigences suivantes:
Pour plus de détails, consultez la section 4 du site Web de la rédaction du projet. Vous devez enregistrer toutes les images dans le répertoire data/illust . Une bonne façon d'obtenir des images de caractère est d'en générer une avec Waifu Labs et de modifier l'image pour répondre aux exigences ci-dessus.
Changer le répertoire en répertoire racine du projet. Pour exécuter le poseur manuel, émettez la commande suivante dans votre shell:
python app/manual_poser.py
Pour exécuter le marionnettiste, émettez la commande suivante dans votre shell:
python app/puppeteer.py
Si votre travail académique profite du code dans ce référentiel, veuillez citer la page Web du projet comme suit:
Pramook Khungurn. Talking Head Anime à partir d'une seule image. http://pkhungurn.github.io/talking-head-anime/, 2019. Consulté: yyyy-mm-dd.
Vous pouvez également utiliser l'entrée Bibtex suivante:
@misc{Khungurn:2019,
author = {Pramook Khungurn},
title = {Talking Head Anime from a Single Image},
howpublished = {url{http://pkhungurn.github.io/talking-head-anime/}},
year = 2019,
note = {Accessed: YYYY-MM-DD},
}
Bien que l'auteur soit un employé de Google Japan, ce logiciel n'est pas le produit de Google et n'est pas pris en charge par Google.
Le droit d'auteur de ce logiciel m'appartient car je l'ai demandé en utilisant le processus IARC. Cependant, l'une des conditions de publication de ce code source est que la publication de "l'anime de tête parlante à partir d'une seule image" soit approuvée par le processus d'approbation de la publication interne. J'ai demandé l'approbation le 2019/11/17. Il a été examiné par un chercheur, mais n'a pas été officiellement approuvé par un gestionnaire dans ma zone de produit (Google Maps). J'ai décidé de publier ce code, portant tous les risques qu'il pourrait encourir.
J'ai utilisé un code de suivi de visage implémenté par Kwanhua Lee pour implémenter l'outil de marionnet.