Une équipe de recherche de l'Université de technologie de Huazhong et de l'Université de Beijing en Chine a publié un article intitulé "Synthèse d'image sémantiquement multimodale" (SMIS) à la conférence CVPR2020. Selon cet article, vous pouvez changer le motif et la couleur des vêtements et des pantalons à partir d'une seule photo pour créer une image d'essai virtuelle. Dans cet article, nous utilisons une méthode basée sur l'apprentissage en profondeur qui classe les images par objet et remplace et synthétise partiellement les images.
Cette fois, je vais vous expliquer une brève explication du modèle SMIS et comment l'essayer. Si vous souhaitez le déplacer, veuillez consulter "Essayez de déplacer le modèle". Les détails de l'article sont les suivants.
Papier: https://arxiv.org/abs/2003.12697 Page du projet: https://seanseattle.github.io/SMIS/ Github: https://github.com/Seanseattle/SMIS Vidéo: http://www.youtube.com/watch?v=uarUonGi_ZU
Afin de changer le motif / la couleur des vêtements, il est d'abord nécessaire d'étiqueter quelle partie est les vêtements / pantalons. DeepFashion est utilisé pour effectuer une segmentation sémantique qui associe des zones d'image à l'aide d'un ensemble de données qui étiquette les pièces de vêtements.
En ajustant avec le contrôleur en fonction de chaque classe de segmentation sémantique, vous pouvez convertir l'image uniquement dans la partie correspondante. De façon classique, dans une telle composition d'image, un procédé de construction d'un réseau de génération pour chaque classe et d'intégration des sorties de différents réseaux pour générer l'image finale a été utilisé.
Cependant, avec cette méthode, il y avait un problème que le temps d'apprentissage augmentait et la précision diminuait à mesure que le nombre de classes augmentait. La méthode SMIS résout ce problème avec GroupDNet (Group Decreasing Network), un réseau qui change le contrôle de classe de la convolution traditionnelle à la convolution de groupe et unifie le processus de génération en un seul modèle.
GroupDNet vous donne la possibilité de créer une intercorrélation entre différentes classes lorsqu'elles sont similaires entre les classes (la couleur de l'herbe et la couleur des feuilles sont similaires, etc.) et d'améliorer la qualité globale de l'image. Cela réduit également la quantité de calcul lorsqu'il existe de nombreuses classes. Cela a facilité la conversion des étiquettes sémantiques en différentes images et a donné des résultats de haute qualité, même pour des ensembles de données avec de nombreuses classes.
Figure 1 architecture GroupDNet (cité de [1])
La figure 2 montre une comparaison d'autres modèles. Il existe plusieurs indicateurs sur la manière d'évaluer la qualité de l'image générée dans le modèle de génération, dont l'un est la distance de départ de Fréchet (FID). Il s'agit d'un indice d'évaluation qui mesure la distance entre la distribution de l'image réelle et l'image générée. Dans ce FID, le résultat est à la pointe de la technologie par rapport aux autres modèles. Cependant, en termes de vitesse, il est de 12,2 FPS, ce qui est inférieur aux autres modèles.
Figure 2 Comparaison avec d'autres modèles (cité de [1])
Étant donné que cette méthode est une méthode de changement de style après la segmentation sémantique comme le montre la figure 1, elle n'est pas limitée à la mode, mais progressivement d'une image à une autre, comme changer un bâtiment en arbre, insérer un pari dans un endroit vide, etc. Il peut être appliqué de différentes manières, telles que le morphing qui se transforme en.
(Pour l'explication, j'en ai cité quelques-unes [2], il peut y avoir des explications manquantes ou incorrectes, veuillez donc commenter à ce moment-là)
Maintenant, déplaçons le modèle SMIS. L'équipe de recherche a publié le modèle implémenté dans Pytorch sur Github. J'ai créé un code qui fonctionne réellement avec Google Colaboratory. Vous pouvez vérifier le bloc-notes que j'ai créé à partir de l'URL suivante. Vous pouvez copier ce notebook sur votre lecteur et le faire exécuter. (Vous pouvez le déplacer simplement en exécutant les cellules dans l'ordre du haut) https://colab.research.google.com/drive/1HGqqOXxFKTSJibg2tQ-Shb9ArFiX-96g?usp=sharing
J'expliquerai également le code de collaboration créé dans Qiita.
Clonez le référentiel (https://github.com/Seanseattle/SMIS) depuis Github.
!git clone https://github.com/Seanseattle/SMIS
%cd SMIS
Téléchargez le modèle formé à partir du lecteur Google suivant. https://drive.google.com/open?id=1og_9By_xdtnEd9-xawAj4jYbXR6A9deG Le modèle entraîné est décrit dans le README du référentiel. Pour télécharger directement à partir de Google Drive avec CUI, il est nécessaire de transmettre les informations de cookie avec wget, donc téléchargez-le par la méthode suivante (Pour savoir comment télécharger Drive à l'aide de cookie, cliquez ici]( Il est résumé à https://qiita.com/tommy19970714/items/3e6a2e8b9dc15982a5de)). Vous pouvez simplement ouvrir l'URL dans votre navigateur et la télécharger dans l'interface graphique.
!wget --load-cookies /tmp/cookies.txt "https://docs.google.com/uc?export=download&confirm=$(wget --quiet --save-cookies /tmp/cookies.txt --keep-session-cookies --no-check-certificate 'https://docs.google.com/uc?export=download&id=1og_9By_xdtnEd9-xawAj4jYbXR6A9deG' -O- | sed -rn 's/.*confirm=([0-9A-Za-z_]+).*/\1\n/p')&id=1og_9By_xdtnEd9-xawAj4jYbXR6A9deG" -O smis_pretrained.rar && rm -rf /tmp/cookies.txt
Décompressez les données de conservation téléchargées et renommez le dossier.
!unrar x smis_pretrained.rar
!mv smis_pretrained checkpoints
Similaire à ce qui précède, téléchargez l'ensemble de données Deep Fashion à partir du lien Google Drive suivant. Contient des données de train et des données de test. Cette fois, je l'ai téléchargé uniquement pour l'utiliser comme données de test. https://drive.google.com/open?id=1ckx35-mlMv57yzv47bmOCrWTm5l2X-zD
!wget --load-cookies /tmp/cookies.txt "https://docs.google.com/uc?export=download&confirm=$(wget --quiet --save-cookies /tmp/cookies.txt --keep-session-cookies --no-check-certificate 'https://docs.google.com/uc?export=download&id=1ckx35-mlMv57yzv47bmOCrWTm5l2X-zD' -O- | sed -rn 's/.*confirm=([0-9A-Za-z_]+).*/\1\n/p')&id=1ckx35-mlMv57yzv47bmOCrWTm5l2X-zD" -O deepfashion.tar && rm -rf /tmp/cookies.txt
Décompressez le fichier.
!tar -xvf deepfashion.tar
Les bibliothèques utilisées dans ce référentiel sont résumées dans le fichier requirements.txt. Installez la bibliothèque dans requirements.txt.
!pip install -r requirements.txt
Tout ce que vous avez à faire est d'exécuter test.py pour que le modèle fonctionne. Dans le paramètre --gpu_ids, spécifiez l'ID gpu à utiliser. Vous pouvez vérifier l'identifiant gpu en appuyant sur la commande nvidia-smi. Le paramètre --dataroot indique où se trouvent les dossiers cihp_test_mask et cihp_train_mask du jeu de données deepfashion que vous venez de télécharger. Maintenant que je l'ai sauvegardé dans le même répertoire, j'ai spécifié ./.
!python test.py --name deepfashion_smis --dataset_mode deepfashion --dataroot ./ --no_instance \
--gpu_ids 0 --ngf 160 --batchSize 4 --model smis --netG deepfashion
Les images générées sont enregistrées dans un dossier dans results / deepfashion_smis / test_latest / images /. veuillez vous en assurer.
Vous pouvez voir qu'une telle image a été générée.
Cette fois, j'ai expliqué le modèle SMIS de pointe dans l'indice FID de conversion de style de vêtements de l'explication au mouvement réel. Le domaine des modèles d'apprentissage profond de la génération d'images est une série de surprises avec de nouveaux articles qui sortent chaque jour. C'est très amusant de découvrir ces dernières technologies. L'application de ce modèle est très claire et je pense que c'est une technologie dont les entreprises du secteur de la mode auront également besoin. J'espère que ces articles mèneront à l'application pratique de modèles d'apprentissage profond.
Je tweet à propos du modèle d'apprentissage en profondeur et du développement personnel sur Twitter → @ tommy19970714
Il peut y avoir des explications manquantes ou incorrectes pour la description du modèle, veuillez donc commenter à ce moment.
[1] ZHU, Zhen, et al. Semantically Multi-modal Image Synthesis. In: Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition. 2020. p. 5467-5476. [2] [ITmedia Deep learning facilite le changement de vêtements. Technologie «SMIS» qui ne remplace et synthétise qu'une partie de l'image](https://www.itmedia.co.jp/news/articles/2009/04/news027. html) [3] Aperçu des GAN progressifs / grands / de style et échelle d'évaluation des performances des GAN
Recommended Posts