Cet article est l'article du 24ème jour du Calendrier de l'Avent Yuyu-shiki 2019.
L'année dernière à Advent Calender, j'ai essayé la coloration automatique de dessins animés en noir et blanc avec CycleGAN. (Essayez de colorier des dessins animés avec CycleGAN-Exemple de style Yuyu-) CycleGAN est bon pour la conversion de style comme le changement de couleurs et de textures, mais il n'est pas bon pour la conversion de forme.
Par conséquent, cette année, en utilisant U-GAT-IT, qui est un GAN qui réalise à la fois la conversion de style et la conversion de forme, une illustration de style Yuyu à partir d'une photo de visage Générons.
L'image ressemble à ceci ↓ (Extrait de mantan-web)
U-GAT-IT peut également effectuer une conversion de forme, ce à quoi CycleGAN n'était pas bon.
Voici les résultats publiés par l'auteur dans l'article. La plus à gauche est la photo originale, mais vous pouvez voir que les changements qui accompagnent la conversion de forme des chats en chiens sont également bien effectués.
Tous les chiffres sont tirés de U-GAT-IT: Réseaux attentionnels génératifs non supervisés avec normalisation d'instance de couche adaptative pour la traduction d'image en image
L'apprentissage a été effectué au Google Colaboratory. Vous pouvez apprendre en le collant dans une cellule de notebook dans l'ordre de util-> ops-> UGATIT-> main depuis ce référentiel.
Cependant, lors de l'exécution avec Notebook, l'analyseur provoquera une erreur, changez-le comme suit.
#Commentez ce qui suit
#parser = argparse.ArgumentParser(description=desc)
#Omis à mi-chemin
#parser.add_argument(...)
#Ajoutez ce qui suit
!pip install easydict
import easydict
args = easydict.EasyDict({
'phase': 'train',
'light': False,
'dataset': 'yuyu',
###Ce qui suit est omis
})
Placez le jeu de données directement sous le répertoire actuel comme indiqué ci-dessous.
└─ dataset
└─ yuyu
├─ trainA #Photo d'une femme pour apprendre(Détourné de selfie2anime)
├─ trainB #Photos de personnages à la Yuyu pour apprendre
├─ testA #Pour tester(ry
└─ testB #Pour tester(ry
Maintenant, quand vous êtes prêt, commencez à apprendre!
Ce modèle est très volumineux et même avec un ensemble de données d'environ 100 feuilles seulement, l'erreur selon laquelle il ne tient pas dans la mémoire s'est produite fréquemment. .. Dans un tel cas, si vous définissez «light» dans args sur True, la version light apprendra. (C'est un compromis avec la précision, mais ...) Cette fois, j'ai appris 1500 époques sur 100 itérations, ce qui est un peu surapprentissage.
** ○ Résultat ** Photo originale / photo du résultat de la conversion.
C'est une image à la Yuyu, mais elle est subtile ...
Cette fois, je n'ai pas obtenu les résultats escomptés. Je suis désolé de ne pas pouvoir bien faire ressortir les performances du modèle.
Je pense que le principal facteur est que l'ensemble de données de formation est trop petit. Je sens les limites des ressources. ..
(Je veux que quelqu'un crée un ensemble de données Yuyu)
Demain est le dernier jour.
Passez un bon Noël à tous!
Recommended Posts