HyperAI

Déconstruire StyleCLIP : Conception À La Demande Basée Sur Du Texte, Comparable À Photoshop Humain

il y a 4 ans
Information
Rollroll Yuan
特色图像

Tout le monde connaît StyleGAN. Ce nouveau réseau antagoniste génératif publié par NVIDIA,En empruntant le transfert de style, un grand nombre de nouvelles images basées sur le style peuvent être rapidement générées.

StyleGAN a une forte capacité d'apprentissage et génère des images impossibles à distinguer des images réelles.Cependant, cette méthode d'apprentissage et de création secondaire basée sur « l'observation d'images » est devenue quelque peu traditionnelle et conservatrice après avoir été utilisée trop souvent.

Des chercheurs de l'Université hébraïque, de l'Université de Tel Aviv et d'Adobe Research,Combine de manière créative la puissance génératrice du générateur StyleGAN pré-entraîné avec les capacités de langage visuel de CLIP.Présentation d'une nouvelle façon de modifier les images StyleGAN – Guidé par le texte, tout ce que vous « écrivez » générera l’image que vous souhaitez..

Exemple d'opération pilotée par texte à l'aide de StyleCLIP
La première ligne est l'image d'entrée et la deuxième ligne est le résultat de l'opération
Le texte sous chaque colonne d'images correspond au texte qui entraîne le changement d'image

Qui est StyleCLIP ? 

StyleCLIP, comme son nom l'indique, est une combinaison de StyleGAN et CLIP.

StyleGAN utilise l'inversion d'image pour représenter les images sous forme de code latent, puis contrôle le style de l'image en éditant et en modifiant le code latent.

CLIP signifie Contrastive Language-Image Pretraining. Il s’agit d’un réseau neuronal formé avec 400 millions de paires image-texte. Il peut générer l'image la plus pertinente en fonction d'une description textuelle donnée. 

Dans l’article, les chercheurs ont étudié trois méthodes de combinaison de StyleGAN et CLIP :

  •   Optimisation vectorielle latente guidée par le contexte, où le modèle CLIP est utilisé comme réseau de pertes.
  •   Entraînez Latent Mapper pour faire correspondre le vecteur latent au texte spécifique un par un.
  •   Dans StyleSpace de StyleGAN, la description du texte est mappée à la direction globale de l'image d'entrée pour contrôler l'intensité des opérations d'image et le degré de séparation.


  Travaux connexes 

2.1 Vision et langage

Représentations conjointesIl existe de nombreuses tâches dans lesquelles les représentations intermodales de la vision et du langage (VL) peuvent être apprises, telles que la récupération d'images à base de texte, le sous-titrage d'images et la réponse visuelle. Avec le succès de BERT dans diverses tâches linguistiques, les méthodes VL actuelles utilisent généralement des transformateurs pour apprendre des représentations conjointes.

Génération et traitement d'images guidés par texte

Entraînez un GAN éligible pour obtenir des intégrations de texte à partir d'un encodeur pré-entraîné pour la génération d'images guidées par texte.


2.2 Traitement d'images en espace latent

Il a été prouvé que l’espace latent intermédiaire de StyleGANUn grand nombre de décompositions et d'opérations de traitement d'images significatives peuvent être réalisées,Par exemple, former un réseau à encoder une image donnée dans un vecteur d'intégration de l'image traitée, apprenant ainsi à effectuer un traitement d'image de bout en bout.

Le traitement des images est effectué directement sur la saisie de texte, supervisé par un modèle CLIP pré-entraîné. Étant donné que CLIP est formé sur des centaines de millions de paires texte-image,Cette méthode est donc universelle et peut être utilisée dans de nombreux domaines sans nécessiter d’annotation de données pour des champs spécifiques ou de traitement spécifique.


3. Traitement d'image basé sur du texte StyleCLIP

Ce travail explore trois manières de traiter des images à partir de texte :Toutes ces approches combinent la puissance génératrice de StyleGAN avec la riche représentation conjointe vision-langage de CLIP.

4. Optimisation latente

Une manière simple d’utiliser CLIP pour guider le traitement d’image consiste à utiliser l’optimisation directe du code latent.


5. Cartographieur latent

L’optimisation latente est universelle.Parce qu'il est spécifiquement optimisé pour toutes les paires de descriptions d'images et de textes sources.L’inconvénient est que l’édition d’une image peut prendre plusieurs minutes de temps d’optimisation, et la méthode est quelque peu sensible à ses valeurs de paramètres.

L'architecture du Mapper guidé par texte
Le texte d'invite utilisé ici est « surprise »
Différentes couches StyleGAN sont responsables de différents niveaux de détail dans l'image générée.

6. Orientations mondiales

Cartographie des indices textuels vers une direction unique et globale dans l'espace de style de StyleGAN, qui a fait ses preuvesPlus discret que les autres espaces latents.

Traitement d'image piloté par les « cheveux gris »

Convient à différentes intensités de fonctionnement et seuils de séparation

L'auteur de l'article : des universités israéliennes, se concentrant sur le GAN

Le premier auteur de l’article, Or Patashnik, est un étudiant diplômé en informatique à l’Université de Tel Aviv.Principalement engagé dans des projets liés à la génération et au traitement d'images. Elle s’intéresse beaucoup à l’apprentissage automatique, à l’infographie et à la vision artificielle.Principalement engagé dans des projets impliquant la génération et le traitement d'images, et a publié plusieurs articles liés à StyleGAN.

Les auteurs de l'article, Or Patashnik (à gauche) et Zongze Wu (à droite)

Zongze Wu, un autre auteur de l'article,est doctorant au Centre Edmond & Lily Safra pour les sciences du cerveau de l'Université hébraïque de Jérusalem.Actuellement, je travaille principalement au laboratoire de vision artificielle HUJI, sur des projets avec les professeurs Dani Lischinski et Eli Shechtman de l'Adobe Research Institute.

Zongze Wu se concentre sur les sujets liés à la vision par ordinateur.Tels que les réseaux antagonistes génératifs, le traitement d'images, la traduction d'images, etc.
D'après le curriculum vitae de Zongze Wu,De 2011 à 2016, il a étudié à l'Université de Tongji, se spécialisant en bioinformatique.Après avoir obtenu son diplôme, Zongze Wu est entré à l'Université hébraïque de Jérusalem pour poursuivre un doctorat en neurosciences computationnelles.

Explication détaillée de trois méthodes combinant StyleGAN et CLIP

Selon l’article relatif à StyleCLIP, les chercheurs ont développé trois méthodes pour combiner StyleGAN et CLIP.Ces trois méthodes sont basées respectivement sur l'optimisation latente, le mappeur latent et la direction globale.

1. Basé sur l'optimisation latente 

Ce tutoriel présente principalement l'édition de visage basée sur l'optimisation itérative. L'utilisateur saisit une expression de texte et obtient une image de visage éditée qui correspond au texte.


Étape 1 : préparer l’environnement de code

import os
os.chdir(f'./StyleCLIP')

! pip install ftfy regex tqdm
! pip install git+https://github.com/openai/CLIP.git

Étape 2 Réglage des paramètres

experiment_type = 'edit' # 可选: ['edit', 'free_generation']

description = 'A person with blue hair' # 编辑的描述,需要是字符串

latent_path = None # 优化的起点 (一般不需修改)

optimization_steps = 100 # 优化的步数

l2_lambda = 0.008 # 优化时候 L2 loss 的权重

create_video = True # 是否将中间过程存储为视频

args = {
    "description": description,
    "ckpt": "/openbayes/input/input0/stylegan2-ffhq-config-f.pt",
    "stylegan_size": 1024,
    "lr_rampup": 0.05,
    "lr": 0.1,
    "step": optimization_steps,
    "mode": experiment_type,
    "l2_lambda": l2_lambda,
    "latent_path": latent_path,
    "truncation": 0.7,
    "save_intermediate_image_every": 1 if create_video else 20,
    "results_dir": "results"
}

Étape 3 : Exécuter le modèle

from optimization.run_optimization import main
from argparse import Namespace
result = main(Namespace(**args))

Étape 4 : Visualisez les images avant et après traitement

# 可视化图片
from torchvision.utils import make_grid
from torchvision.transforms import ToPILImage
result_image = ToPILImage()(make_grid(result.detach().cpu(), normalize=True, scale_each=True, range=(-1, 1), padding=0))
h, w = result_image.size
result_image.resize((h // 2, w // 2))

Étape 5 : Enregistrez le processus d’optimisation en tant que sortie vidéo

#@title Create and Download Video

!ffmpeg -y -r 15 -i results/%05d.png -c:v libx264 -vf fps=25 -pix_fmt yuv420p /openbayes/home/out.mp4

Adresse d'accès complète au bloc-notes

 2. Basé sur Latent Mapper

La première étape consiste à préparer l'environnement de code

Étape 2 : Définir les paramètres

Étape 3 : Exécuter le modèle

Étape 4 : Visualisez les images avant et après traitement

Cliquez pour visiterCarnet complet

 3. Basé sur une orientation mondiale

Ce tutoriel présente le mappage des informations textuelles dans l'espace latent de StyleGAN et la modification ultérieure du contenu de l'image. Les utilisateurs peuvent saisir une description textuelle et obtenir une image de visage modifiée qui correspond étroitement au texte et présente un bon découplage des fonctionnalités.

Étape 1 : préparer l’environnement de code

Étape 2 : Configurer StyleCLIP

Étape 3. Configurer e4e

Étape 4 : Sélectionnez l’image et utilisez dlib pour l’alignement des visages

Étape 5 : Inverser l’image à éditer dans l’espace latent de StyleGAN

Étape 6 : Saisissez la description textuelle

Étape 7 : Sélectionnez la force de manipulation (alpha) et le seuil de découplage (bêta) pour l'édition d'image

Étape 8 : Générer une vidéo pour visualiser le processus de montage

Cliquez pour visiterCarnet complet

À propos d'OpenBayes

OpenBayes est une institution de recherche de premier plan en intelligence artificielle en Chine.Fournit un certain nombre de services de base liés au développement de l'IA, notamment des conteneurs de puissance de calcul, une modélisation automatique et un ajustement automatique des paramètres.

Dans le même temps, OpenBayes a également lancé de nombreuses ressources publiques grand public telles que des ensembles de données, des tutoriels et des modèles.Pour que les développeurs apprennent rapidement et créent des modèles d’apprentissage automatique idéaux.

Visitez maintenant openbayes.com et inscrivez-vous,Bénéficiez de 600 minutes/semaine d'utilisation du vGPU Et 300 minutes/semaine de temps de calcul CPU gratuit

Agissez maintenant et utilisez StyleCLIP pour concevoir le visage que vous souhaitez !

Cliquez pour visiterTutoriel complet