Stable Diffusion Web UIを使ってみた
マシン上でWeb UIのセットアップが完了したので、text2imgやimg2img、モデルやLoRAの利用などをやってみる
主に作業録として使用する
/icons/hr.icon
備考
起動方法:Stable Diffusion Web UIのディレクトリに移動し、docker compose --profile auto up --build -dを実行する
正しく起動できたら、ブラウザで{マシンのIP}:7860にアクセスする
プロンプト:(masterpiece:1.4), (best quality:1.4), (ultra detailed:1.4), winterfashion, woman wearing skirt, solo, <lora:winterfashion_v1:1.2>
(2024/01/07追記)マシンの自動再起動などでStable Diffusionが使えなくなる場合があります。その場合は落ち着いて、人手で再起動してあげることで復旧できます。
再起動コマンド:sudo reboot
(masterpiece:1.2), (best quality:1.2), woman, winterfashion, <lora:test_winterfashion_v1:1>
(worst quality:1.5), (low quality:1.5)
1woman, full body, wearing denim pants, (masterpiece:1.2), (best quality:1.2), fashionapp, <lora:fashionapp_good1:1>
(worst quality:1.5), (low quality:1.5), mulitiple people
1woman, full body, fashionapp, masterpiece, best quality, <lora:fashionapp0603_1:1>
(worst quality:1.2), (low quality:1.2)
Web UIの機能
txt2img
img2img
image outpainting(画像の外枠を拡張する)
LoRAの作成
(masterpiece:1.4), (best quality:1.4), (ultra detailed:1.4), トリガープロンプト, woman wearing skirt, solo, <lora:winterfashion_v1:1.2
txt2img
プロンプトから画像を生成する機能
プロンプトは英語で与える(日本語対応モデルもある)
英文またはコンマ区切りの単語でプロンプトを与える
img2img
入力画像+プロンプトで新たに画像を生成する機能
画風の変換ができる
image outpainting
画像の外枠を拡張する機能
img inpainting
マスク領域を推論する機能
1.img2img画面から「Generation」欄の「inpaint」を選択する
2.修正したい箇所をマスクする. ペンで塗りつぶすことができる
3.プロンプトに修正後追加したいものを入力する
4.実行
「手の部分をマスクして、持ち物を変える」なんて使い方ができる:鞄→りんご
生成できる画像のクオリティはプロンプトで調整できるが、半分くらい運
ネガティブプロンプトの例:(worst quality, low quality:1.4), bad anatomy,jpeg artifacts, out of focus, lowers, error, low resolution/low res, extra_arms, nsfw, missing arms, deformed mutated disfigured, missing_limb, malformed_hands, bad finger
LoRA
少ない計算量で追加学習ができる
作成済みLoRAは/models/Loraに保存しておく
MEMO
モデルの保存先:stable-diffusion-web-ui-docker/data/webui/models/Stable-diffusion
VS Codeでssh接続して、エクスプローラからドラッグアンドドロップするのが一番早い(wgetコマンドに与えるURLがどれなのかいまいちわからん)
ネガティブプロンプト:worst quality, low quality, out of focus/blurry/bokeh, ugly, bad anatomy, jpeg artifacts, lowers, error, text, missing limb, bad hands, missing fingers, extra digit
ネガティブプロンプトは、欲しい画像に合わせて入力する方が良い
(masterpiece:2.0), (best quality:2.0), (ultra detailed:2.0) , winterfashion, 1girl, <lora:test_winterfashion_v1:1.4>
(worst quality:2.0), (low quality:2.0)
/icons/hr.icon
Web UIで「アイテム→着用画像」ができた話
Web UI
img2img
sd-v1-5
プロンプト:woman wearing denim pant, (whole body:1.3), masterpiece, extremely detailed, standing, fasionable
ネガティブプロンプト:(worst quality, low quality, bad anatomy:1.4), out of focus/blurry/bokeh, ugly, bad anatomy, jpeg artifacts, lowers, error, partial face, missing limb, bad hands, missing fingers, extra digit
デニムパンツの画像
たまに人体が補完され、たまに足だけor上半身だけみたいな画像が出てくる(つまり精度は良くない)
入力に使ったデニムとは、色や材質が異なる時が多々ある(つまりアイテム画像の特徴を反映しきれていない)
トップスで試したが、ダメだった(つまりアイテムによって得意不得意がある)
よって、「アイテム→着用画像」ができるモデルを一から作る必要がある
/icons/hr.icon
sd-webui-train-toolsを使う
「sd-webui-train-tools」とは
Web UIの拡張機能
LoRAを自作することができる
インストール方法
Web UIを立ち上げる
「Extensions」タブの「Install from URL」タブを開く
「URL for extension's repository」にhttps://github.com/liasece/sd-webui-train-toolsと入力する
オレンジ色の「Install」ボタンを押す
「Extensions」タブの「Installed」タブを開いて、「Apply and quit」を押す
「Reloading...」みたいな画面になるので待つ
リロードがなかなか終わらない(自分は15分待っても終わらなかった)場合は、Web UIを再起動して大丈夫
Web UIに「Train Tools」というタブが追加されていれば完了
sd-webui-train-toolsの使い方
画像サイズは任意(自動でリサイズされる、推奨は1024×1024)
(追記予定)
/icons/hr.icon
(worst quality:1.4), (low quality:1.4), bad hands, bad body, bad anatomy
使用したモデル
動画生成の拡張機能「SD-CN-Diffusion」を投入すると、ControlNetが使えなくなるので注意!
拡張機能をアンインストールすると復旧する