今から1~2ヶ月前(2023年2月頃)に発表されていた「Instruct pix2pix」ですが、動作環境も普通に整備されてきたので簡単に試してみました。

📌Instruct pix2pixとは?

Instruct pix2pixは「テキストの指示で画像のスタイルを変更」するような技術です。GANにも似ていますが、Diffusion modelが利用されています。
Instruct pix2pixを使うと、昼の写真を夜の写真に変えたり、人物の髪の色を変えたり・・・など、画像のスタイルを簡単に変更できます。

📌Instruct pix2pixの導入方法

今では、Stable Diffusionで有名な「SD-WebUI」の標準機能として、Instruct pix2pixがサポートされています。
Stable Diffusionのモデルと同じように、「Instruct pix2pix専用のモデル」が存在するので、Instruct pix2pixのモデルをダウンロードして、SD-WebUIのmodels/Stable-diffusionフォルダに格納すれば、すぐに利用できます。

なお、Instruct pix2pix用のモデルは、以下のURLからダウンロード出来ます。(instruct-pix2pix-00-22000.safetensorsというファイルです)
https://huggingface.co/timbrooks/instruct-pix2pix/tree/main 


📌SD-WebUIでの使い方

次の手順で、SD-WebUIでInstruct pix2pixを利用できます。

1. img2imgタブを選択
2. 利用モデルは instruct-pix2pix-00-22000.safetensors を選択
3. Instruct pix2pix専用のパラメータが表示されます
4. 元画像を設定してプロンプトを入力
5. Generateで画像生成

Instruct pix2pix専用のパラメータとして「Image CFG Scale」というパラメータが存在します。このパラメータは「元画像とどれだけ似た画像を出力させるか」・・・というパラメータなので、「値を小さくするほど効果が大きく」なります。(普通のCFG Scaleなどとは逆)

効果を強めたい場合は「CFG Scaleを大きく or Image CFG Scaleを小さく」、
効果を弱めたい場合は「CFG Scaleを小さく or Image CFG Scaleを大きく」すればOKです。


📌実際のサンプル

実際にInstruct pix2pixを試したサンプルを紹介します。
元画像は、この風景画像です。(アルプス的な風景)
20230321_002446_800919-ed7ec37cb5.png 974.62 KB

🎨Prompt=sunset、Image CFG Scale=1
20230324_004340_105899-fbc31a67aa.png 910.1 KB

🎨Prompt=midnight, stars、Image CFG Scale=0.8
20230324_004624_711596-fbc31a67aa.png 962.9 KB

🎨Prompt=spring, flowers、Image CFG Scale=0.8
20230324_004712_314120-fbc31a67aa.png 999.7 KB

🎨Prompt=ice world, ice、Image CFG Scale=1
20230324_004922_722107-fbc31a67aa.png 926.25 KB

🎨Prompt=dark forest, foggy、Image CFG Scale=0.7
20230324_005729_789970-fbc31a67aa.png 804.13 KB 


こんな感じで、元の画像を最大限に活かしつつ、色々なスタイルに変更できます。
Stable Diffusionを使ったimg2imgだと「元の画像から大きく変わる」ことも多いのですが、Instruct pix2pixなら、スタイルだけを差し替えられるようなイメージですね。

簡単に使えて、かなり楽しいので、是非お試しください!