** C'est un mouvement cool de chiffres, logos, illustrations, etc. **. C'est une définition assez vague, n'est-ce pas? Je ne pense pas qu'il y ait réellement une définition claire. Les graphiques animés sont souvent utilisés dans ce que l'on appelle communément emo. Il est souvent utilisé dans les MV d'artistes et les CM d'entreprise. Si vous recherchez des «graphiques animés» sur YouTube, etc., vous trouverez de nombreuses images sympas, alors jetez un œil.
La plupart des graphiques animés sont créés à la main par les créateurs. C'est une tâche très longue et difficile. Récemment, je me suis demandé s'il pouvait être généré à l'aide de l'IA populaire. Ne serait-il pas amusant d'entraîner l'IA à générer des animations graphiques?
Même s'il est généré, un ensemble de données pour la formation est nécessaire. Cependant, dans mes recherches, ** les ensembles de données d'animation graphique n'existaient pas. ** Vous devez donc créer votre propre ensemble de données. Cependant, il faut beaucoup de temps pour créer un grand ensemble de données, donc cette fois j'ai simplement créé des graphiques animés pour 6 types de particules. J'ai utilisé les effets Afrique d'Adobe pour créer l'ensemble de données.
Maintenant que nous avons créé le jeu de données (à part s'il peut être appelé un jeu de données à une échelle assez petite), la prochaine chose à considérer est le modèle. Il existe plusieurs modèles de génération, et le courant dominant est le GAN ou VAE. Le GAN est difficile à apprendre, et si l'ensemble de données est petit comme cette fois, il y a de fortes chances qu'il n'apprenne pas bien, c'est pourquoi nous avons adopté la VAE. La VAE est un système dérivé de l'AE, et la distribution des variables latentes est acquise par compression et restauration de l'ensemble de données. Après apprentissage, il peut être généré en donnant du bruit z à la partie décodeur. Pour AE et VAE, les articles suivants seront utiles. Explication approfondie du codeur automatique variationnel Cette fois, nous allons générer une vidéo, donc VAE a construit un modèle de structure Unet par convolution 3D. Apprenez les informations spatio-temporelles des images en mouvement par convolution 3D. La convolution de transposition de la partie décodeur est la convolution de translocation. La convolution de translocation est expliquée d'une manière facile à comprendre avec une vidéo dans l'article [ici](ttps: //qiita.com/kenmatsu4/items/b029d697e9995d93aa24 "Transfer convolution").
Comme l'ensemble de données est petit, la formation s'est terminée immédiatement.J'ai jugé qu'elle pouvait être générée à environ 200 époques, alors j'ai terminé la formation là-bas. Cela a pris environ une heure avec GTX1080Ti.
Détails de l'expérience
Taille de la vidéo | numéro d'époque | Cadre | GPU |
---|---|---|---|
128x128x32 | 200 | PyTorch | GTX1080Ti |
Les graphiques animés qui ressemblent à des données d'entraînement ont été générés correctement.
Morphing En complétant le vecteur de bruit z donné au décodeur entre les animations graphiques, il est possible de générer une animation graphique intermédiaire entre les deux animations graphiques. Il s'agit d'une version vidéo de ce qui est souvent généré par GAN et qui change petit à petit.
Les animations graphiques intermédiaires sont générées en complétant la variable latente z entre les animations graphiques comme indiqué dans la formule suivante.
z = t z_1 + (1-t)z_2 \\
0 < t < 1
J'ai pu générer des animations graphiques en utilisant un apprentissage approfondi. Cette fois, il n'y avait pas de diversité dans la génération en raison du jeu de données assez petit. Si vous avez un grand ensemble de données d'animation graphique, j'aimerais faire des expériences. (Quelqu'un peut-il le faire?) Cependant, il est intéressant de pouvoir générer des choses intermédiaires avec Mophing etc. Dans cette expérience, nous avons constaté que Morphig peut être créé même avec un petit ensemble de données.
Explication approfondie du codeur automatique variationnel [Déconvolution dans un réseau neuronal](ttps: //qiita.com/kenmatsu4/items/b029d697e9995d93aa24 "Transfer Convolution")
Recommended Posts