Image to Image

2D画像情報をインプットに画像生成を行います。

Unityのカメラの範囲の映像、別で準備した画像データを利用します。

Image to Imageを使用することで新しい要素を追加してなじませたり微調整を行ったりが可能です

現在(2023年4月)Image to ImageはWebUIを使用することで部分的に修正が可能なInpaint機能などを使うことが出来るためWebUIを使うこともお勧めです。

stable-diffusion-for-unityではStableDiffusionWebUIを動かしているため、UnityからStartServerで起動したコマンドプロンプトに記載のローカルサーバーのURLよりWebUIの機能を使用することが可能です。

ローカルサーバーURL
WebUIインペイント

Unity上で行う場合

Img2Img.csコンポーネントをオブジェクトにアタッチして使用します。

以下ローカルサーバーが立ち上がっている前提です。下記を参考にStartServerしてからご使用ください

ローカルサーバーについて

パラメータ概要を下記に示します。特によく調整を行うパラメータを太字にしています

パラメータ
内容

ImageSource

インプットとする要素を準備した画像にするかUnity内のカメラ映像とするか

Image

ImageSourceでTextureを選んだ場合、インプットとする画像を選択 詳細は表下に記載

Prompt

生成したい画像を自然言語で入力

NegativePrompt

生成画像に含みたくない要素を自然言語で入力

Width

生成画像の横幅をpixelで入力

Height

生成画像の高さをpixelで入力

Steps

生成画像の精細さが変わる

生成画像がぼやけた感じになる場合に大きくしてください

Cfg Scale

プロンプトに従う強さ プロンプトの要素の反映が弱い場合に多きな値に調整してください。

DenoisingStrength

インプット画像にどれだけ忠実に画像生成されるか インプット画像を少しだけ変更したい場合、値を小さく 画像を大幅に変更したい場合値を大きくしてください

Seed

シード値を固定すると同じような画像が生成かの可能 -1の場合ランダムとなる

Batch Count

画像生成を行う枚数を指定します 1~100枚で選択することが出来ます。 生成画像はStreamingAssets/StableDiffusion内に保存されます。エクスプローラーで日時順などにして確認してください

ExportType

出力タイプとしてPNG, JPG, TGAを選択可能 Image, RawImage, Materialなどに適用

Sampler

生成画像のニュアンスを変える

Model

ベースとなるモデル 変え方はもモデル/LoRAの差し替えご覧ください

Lora

追加学習により特定の要素を出しやすくする要素 変え方はモデル/LoRAの差し替えをご覧ください Loraを選択するとPromptに<lora:ファイル名:1>が追加されて使用可能になります

インプットとしてTextureを選択した場合の設定

画像のImportSettingsで>Read/Writeにチェックを入れてください。

Last updated