Stable Diffusion img2imgのパラメータ一覧

txt2imgのパラメータに続きimg2imgのパラメータも調べていこうと思います。
img2imgはベースとなる画像からプロンプトを組み合わせて新しい画像を生成するものです。
txt2imgは入力がプロンプトだけですがimg2imgは画像が入力に加わります。
できることが多くかなり楽しいです。

検証環境

毎度説明するのもアレですが僕の検証環境は以下の通りです。
もうちょい良いの買えばよかった。

内容 詳細
OS Windows 11 Pro
CPU 12th Gen Intel(R) Core(TM) i5-12400 2.50 GHz
メモリ 32.0 GB (31.8 GB 使用可能)
GPU NVIDIA GeForce RTX 3060 12GB
Stable Diffusion https://github.com/CompVis/stable-diffusion
使用モデル v1-5-pruned-emaonly.ckpt
https://huggingface.co/runwayml/stable-diffusion-v1-5

パラメータ一覧

txt2imgと共通のパラメータ

img2imgのパラメータの大半がtxt2imgと共通です。
txt2imgで使用している値がimg2imgでもそのまま適用できるイメージです。
PLMSは未実装のようでエラーが発生します。(2022/10/30時点)

パラメータ 固有(〇:img2imgのみ -:txt2imgと共通) 簡単な説明
prompt 描画用文字列です
outdir 結果の出力先です
skip_grid 個別のサンプルのみの出力でグリッドを保存しません。
多くのサンプルを評価するときに役に立ちます。
skip_save 個別のサンプルを保存しません。速度測定用。
ddim_steps DDIMサンプリングのステップ数
おそらく指定しても効果ない
plms PLMSサンプラーを使用する
※CompVis/stable-diffusionは未実装っぽい(2022/10/30時点)
fixed_code 有効の場合、サンプル全体で同じ開始コードを使用します
ddim_eta eta=0.0 は決定論的サンプリングに対応します
n_iter 出力する回数
C 画像の幅、ピクセル空間
f ダウンサンプリング係数
n_samples 特定のプロンプトごとに生成するサンプルの数。別名バッチサイズ。
n_rows グリッド1行に含まれる画像の数(デフォルト:n_samplesの値)
scale 無条件ガイダンス スケール: eps = eps(x, empty) + scale * (eps(x, cond) – eps(x, empty))
from-file 指定されている場合、このファイルからプロンプトを読み込みます
config モデルを構築する config へのパス
ckpt モデルチェックポイントのパス
seed シード (再現可能なサンプリング用)
precision この精度で評価する "full" または "autocast"

上記の内容については、
txt2imgと同じであるため以下をご参照ください。

Stable Diffusion txt2imgのパラメータ一覧

img2img固有のパラメータ

img2img固有のパラメータは以下の2点です。

パラメータ 固有(〇:img2imgのみ -:txt2imgと共通) 簡単な説明
init-img 初期ファイルが保存されているファイルパス
strength ノイズ/ノイズを出さないための強さ。
1.0はPromptを優先し入力画像をがっつり変更します。

init-img

ベースとなる画像のファイルパスを指定します。
色味や構図などが反映されるという印象です。

概要

項目 詳細
コマンド例 python scripts/img2img.py –prompt "cat" –init-img "C:\example.jpg"
形式 文字列
デフォルト値 指定なし
ヘルプ path to the input image
ヘルプ(日本語) 入力画像のファイルパス

サンプル

以下の画像をベースに猫を出してみます。

Command->python scripts/img2img.py --prompt "cat" --ddim_steps 75  --n_iter 2 --seed 1   --init-img "C:\example.jpg" --strength 0.6 

なかなか斬新です。

ベースの画像は変えずプロンプトを変更してみます。
プロンプトは以下からとってきました。

https://lexica.art/?prompt=bd40c03c-026b-46fe-8d0f-c9825ace2b27

President Donald J Trump as a Greek god, detailed face, gorgeous, amazing, muscular, fit, very muscular male body, Caesar victorious, proud Emperor , intricate, highly detailed, digital painting, artstation, concept art, sharp focus, illustration, art by greg rutkowski and alphonse mucha


strength

strengthはどれくらいプロンプトを優先するかというものです。
0を指定すると元の画像そのままです。0.1程度でもほぼ変わりません。
一方で1.0を指定するとプロンプトを完全に優先します。
ただし1.0でも元の画像の色味などは保持されます。

概要

項目 詳細
コマンド例 python scripts/txt2img.py –outdir "C:\output"
形式 文字列
デフォルト値 outputs/txt2img-samples
ヘルプ strength for noising/unnoising. 1.0 corresponds to full destruction of information in init image
ヘルプ(日本語) ノイズ/非ノイズの強さ。1.0は初期画像を完全に壊して作り変えます

サンプル

では0.1~1.0まで0.1刻みでStrengthを変更していきます。

まずこちらをご確認ください。
オープンワールドのゲームで出会ったらドキドキするたたずまいです。

せっかくですのでこいつらをキノコにしてやります。
使用するのはこちらのプロンプト。

https://lexica.art/?q=mashroom&prompt=0139ae37-aa5e-44fb-af5e-6d8e2c50da01

a humanoid mushroom creature, plant filaments, humanoid shape, full body, photorealistic, 4 k, octane render, cinematic lighting, artistic photography, insanely detailed and intricate 

ではどうぞ。

ちょっと想像してたのと違いました。
が、最終的には倒すのも億劫な雑魚感が出ています。

詳細

少ししっかり見ていきます。

元画像(←)とStrength=0.0(→)の比較
まるっきり同じに見えますが実はほんの少しノイズがのっています。

Strength=0.3
ノイズが多くなるだけでさほど画像に変化はありません。

Strength=0.4
背景を森に変えてきました。
巨大ロボ感はなくなっています。ちょっと勝てそう。

Strength = 0.6
急激に弱そうになりました。
構図や色味は維持されつつも結構キノコです。

Strength = 0.8
キノコだ。うん、キノコ。

Strength = 1.0
何となく構図は維持されていますが、全く別物ですね。何これ?

どこら辺を使うかは好みです。

まとめ

img2imgにもさまざまなパラメータがありますが以下の2つの調整程度で色々楽しめます。

  • init-img
  • strength

それ以外のパラメータは以下のページをご参照ください。

Stable Diffusion txt2imgのパラメータ一覧

おわり

PR

コメント

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です