StyleCLIP の分解: 人間の P グラファーに匹敵する、テキスト駆動のオンデマンド設計

4 年前

情報

Rollroll Yuan

特色图像

StyleGAN は誰もがよく知っています。 NVIDIA がリリースしたこの新しい敵対的生成ネットワークは、スタイル転送を利用すると、スタイルに基づいた多数の新しい画像を迅速に生成できます。

StyleGANは学習能力が高く、生成される画像も偽物と本物です。しかし、この「絵を見る」ことをベースにした学習や二次創作という手法は、これまで何度も行われてきたものであり、どうしても伝統的で保守的になってしまいます。

ヘブライ大学、テルアビブ大学、アドビ研究所の研究者、事前トレーニング済みの StyleGAN ジェネレーターの生成機能と CLIP のビジュアル言語機能を創造的に組み合わせます。StyleGAN 画像を変更する新しい方法の導入 – テキストを中心に、どのような要件を「書く」とどのような画像が生成されるか

StyleCLIP を使用したテキスト駆動の操作の例
1行目は入力画像、2行目は演算結果です。
ドライバー画像に対応する画像の各列の下のテキストが変更されます

StyleCLIPとは何者ですか? 

StyleCLIP は、名前が示すように、StyleGAN と CLIP を組み合わせたものです。

StyleGAN は、画像反転を通じて画像を潜在コードに表現し、潜在コードを編集および変更することで画像のスタイルを制御します。

Contrastive Language-Image Pretraining の正式名である CLIP は、4 億の画像とテキストのペアでトレーニングされたニューラル ネットワークで、指定されたテキストの説明に基づいて最も関連性の高い画像を出力できます。 

論文の中で研究者らは、StyleGAN と CLIP を組み合わせた 3 つの方法を研究しました。

  •   テキストガイドによる潜在ベクトルの最適化。CLIP モデルが損失ネットワークとして使用されます。
  •   潜在ベクトルが特定のテキストに 1 対 1 で対応するように Latent Mapper をトレーニングします。
  •   StyleGAN の StyleSpace では、テキストの説明が入力画像のグローバル方向 (Global Direction) にマッピングされ、画像操作の強度と分離の程度が制御されます。


  関連作品 

2.1 視覚と言語

共同表現テキストベースの画像検索、画像キャプション、視覚的な応答など、クロスモーダルな視覚と言語 (VL) 表現を学習できるタスクは多岐にわたります。さまざまな言語タスクにおける BERT の成功により、現在の VL メソッドは通常、関節表現を学習するために Transformer を使用します。

テキストガイドによる画像の生成と処理

認定された GAN をトレーニングして、事前トレーニングされたエンコーダーからテキスト埋め込みを取得し、テキストガイド付きの画像生成を実現します。


2.2 潜在空間画像処理

StyleGAN の中間潜在空間は実証されており、多数の分解と意味のある画像処理操作を実現できます。たとえば、特定の画像を処理済み画像の埋め込みベクトルにエンコードするようにネットワークをトレーニングし、それによってエンドツーエンド方式で画像処理を実行する方法を学習します。

画像処理はテキスト入力に直接基づいており、事前トレーニングされた CLIP モデルによって監視されます。 CLIP は何億ものテキストと画像のペアでトレーニングされているため、したがって、この方法は汎用的であり、特定のフィールドに対するデータのアノテーションや特定の処理を必要とせず、多くの分野で使用できます。


3. StyleCLIP テキスト駆動型画像処理

この研究では、テキスト駆動型の画像処理に対する 3 つのアプローチを検討します。これらすべてのアプローチは、StyleGAN の生成機能と CLIP の豊富な視覚言語表現を組み合わせたものです。

4. 潜在的な最適化

CLIP を使用して画像処理をガイドする簡単な方法は、潜在コードを直接最適化することです。


5. 潜在マッパー

潜在的な最適化は普遍的であり、すべてのソース画像とテキストの説明のペアに対して特に最適化されているためです。欠点は、画像の編集には数分間の最適化時間が必要であり、この方法はパラメータ値に多少敏感であることです。

テキストガイド付きマッパーのアーキテクチャ
ここで使用されているテキスト プロンプトは「サプライズ」です
異なる StyleGAN レイヤーは、生成された画像の異なる詳細レベルを担当します。

6. グローバルな方向性

テキスト プロンプトを StyleGAN のスタイル スペース内の単一のグローバル方向にマップします。他の潜在空間よりも孤立しています。

「白髪」を活用した画像処理

さまざまな動作強度と分離閾値に適しています

論文の著者: GAN に焦点を当てたイスラエルの大学出身

あるいは、論文の筆頭著者であるパタシュニク氏は、テルアビブ大学でCSを専攻する大学院生です。主に画像生成・加工関連のプロジェクトに従事。彼女は機械学習、コンピューター グラフィックス、マシン ビジョンに非常に興味があります。主に画像の生成と処理に関するプロジェクトに従事し、StyleGAN 関連の論文をいくつか発表しています。

論文「Or Patashnik」の著者(左)とZongze Wu(右)

論文のもう一人の著者、ゾンゼ・ウー氏はこう語る。ヘブライ大学エドモンド&リリー・サフラ脳科学センターの博士課程の学生です。現在は、Adobe Research Institute の Dani Lischinski 教授と Eli Shechtman 教授に続き、主に HUJI マシンビジョン研究室でプロジェクトに取り組んでいます。

Zongze Wu はコンピュータ ビジョン関連のトピックに焦点を当てています。敵対的生成ネットワーク、画像処理、画像翻訳など。
呉宗澤氏の履歴書によると、彼は 2011 年から 2016 年まで同済大学でバイオインフォマティクスを専攻しました。卒業後、Zongze Wu はエルサレムのヘブライ大学の計算神経科学プログラムに入学し、博士課程の研究を続けました。

StyleGANとCLIPを組み合わせた3つの方法を詳しく解説

StyleCLIP に関する関連論文によると、研究者は StyleGAN と CLIP を組み合わせた 3 つの方法を開発しました。これら 3 つの方法は、それぞれ潜在最適化、潜在マッパー、グローバル ディレクションに基づいています。

1. 潜在的な最適化に基づく 

このチュートリアルでは、主に反復最適化に基づく顔編集を紹介します。ユーザーはテキスト表現を入力し、テキストに一致する顔編集画像を取得します。


最初のステップはコード環境を準備することです

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

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

ステップ2 パラメータの設定

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"
}

ステップ 3: モデルを実行する

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

ステップ 4: 処理前と処理後の画像を視覚化する

# 可视化图片
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))

ステップ 5: 最適化プロセスをビデオ出力として保存する

#@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

完全なノートブック アクセス アドレス

 2. 潜在マッパーに基づく

最初のステップはコード環境を準備することです

ステップ 2 パラメータを設定する

ステップ 3: モデルを実行する

ステップ 4: 処理前と処理後の画像を視覚化する

クリックして訪問完成したノートブック

 3. グローバルな方向性を踏まえて

このチュートリアルでは、テキスト情報を StyleGAN の潜在空間にマッピングし、画像のコンテンツをさらに変更する方法を紹介します。ユーザーはテキストの説明を入力すると、テキストに厳密に一致し、特徴が適切に分離された顔編集画像を取得できます。

最初のステップはコード環境を準備することです

ステップ 2 StyleCLIP を設定する

ステップ 3 e4e をセットアップする

ステップ 4: 写真を選択し、dlib を使用して顔の位置を調整します。

ステップ5: 編集する画像をStyleGANの潜在空間にプッシュバックします。

ステップ 6: テキストの説明を入力する

ステップ 7 画像編集の操作強度 (アルファ) とデカップリングしきい値 (ベータ) を選択します。

ステップ 8: ビデオを生成して編集プロセスを視覚化する

クリックして訪問完成したノートブック

オープンベイズについて

OpenBayes は、中国の大手マシンインテリジェンス研究機関です。コンピューティングパワーコンテナ、自動モデリング、自動パラメータ調整など、AI開発に関連する多数の基本サービスを提供します。

同時に、OpenBayes は、データ セット、チュートリアル、モデルなどの多くの主流の公開リソースも立ち上げました。開発者が理想的な機械学習モデルを迅速に学習して作成できるようにします。

今すぐアクセス オープンベイズ.com そして登録してください週 600 分の vGPU をお楽しみください および 1 週間あたり 300 分の無料 CPU

すぐに行動して、StyleCLIP を使用して希望の顔をデザインしてください。

クリックして訪問チュートリアルを完了する