AI画像作成2(Stable Diffusion)

Stable Diffusionを使用して、画像を作成する方法を記載方法で、細かい機能部分について説明します。

ここでは、「japanesedolllikeness_LoRA.ipynb」を使用しています。

1. 各設定項目

タブ「txt2img」は、テキストから新たなイメージ画像を生成する場所です。

各項目で大事な項目として、下記のとおりです。

1. Sampling methodサンプリング方法(おススメは「DPM++ 2M Karras」)
2. Sampling stepsノイズからイラストに変えていくための回数
3. Restore faces顔を綺麗にできる(美人になるとは限らない)
4. Tilingタイル状に並べる
5. Hires. fix解像度を上げることができる
6. Width, Height画像の横幅、高さ
7. Batch count画像の枚数(何回バッチを行うか)
8. Batch size画像の枚数(1回のバッチで何枚の画像を生成するか)
9.CFG Scaleどれだけプロントに近いイラストを生成するか
10. SeedSeedの数値と他の設定によって絵が決まる。-1にするとランダム

2. 各項目を変更しての比較

ここでは下記のプロンプトは変更しないで、各項目設定を変更したら、どのぐらい変化があるのかを比較します。

【Positive】
masterpiece, best quality, highres, (photo realistic:1.4),1girl, solo, medium breasts, portrait, (sitting), big blue eyes, school uniform, cute, young, black hair, hair professional lighting, (18 years old), indoors, chair,

【Nagative】
painting, sketches,(worst quality:2),(low quality:2),(normal quality:2), lowers, normal quality,((monochrome)),((greyscale)),skin spots, acnes, skin blemishes, age spot, nsfw, ugly face, fat

1. Sampling methodDPM++ 2M Karras
(デフォルト設定はEuler a)
2. Sampling steps20
3. Restore facesチェックなし
4. Tilingチェックなし
5. Hires. fixチェックなし
6. Width, Height512×512
7. Batch count1
8. Batch size1
9.CFG Scale7
10. Seed-1

上記でデフォルト設定で作成すると、下記の図が作成されました。

①「Sampling method」をデフォルト「Euler a」で「Generate」すると、下図のように崩れた画像となります。

「DPM++ 2M」でも崩れてます。特に今回使用している、「japanesedolllikeness_LoRA.ipyn」を使用する場合は、「DPM++ 2M Karras」を推奨します。

ちなみに、Sampling methodとは、統計学や機械学習、信号処理などの分野において、集合から一部を取り出す方法を指します。サンプリングにはランダムサンプリング、層別サンプリング、クラスタサンプリング、システマティックサンプリング、多段階サンプリングなど様々な種類があります。

②「Sampling steps(ノイズからイラストに変えていくための回数)」のみを「20」から「100」に変更して「Generate」します。

どうですかね?あまり変化はないかもです。

③「Restore faces(顔を綺麗にできる(美人になるとは限らない))」にチェックを入れます。
 (先ほど変更した「Sampling steps」は「20」に戻しています。)

多少現実にありそうな顔になったかな?と思われます。(美人を少し抑えた気がします。)

④「Tiling(タイル状に並べる)」にチェックを入れます。
(先ほど変更した「Restore faces」は、チェックを外しています。)

なんだかわけの分からない画像になりました・・・、人物には向いてないのでしょうか。

⑤「Hires. fix(解像度を上げることができる)」にチェックを入れます。
(先ほど変更した「Tiling」は、チェックを外しています)
 チェックを入れたところ、下図のように新たな項目が追加されましたが、デフォルトのままで「Generate」します。

左がデフォルト設定のプロパティ情報であり、右が④「Hires. fix」にチェックを入れたものです。
サイズが大きくなったのが分かりますが、別設定の「Width, Height」を1024×1024にすればいいのでは・・・・?と思いましたら、「Width, Height」を大きくすると二人出力されます。(下記⑤参照)

⑥「Width, Height」を「512×512」から「1024×1024」に変更して「Generate」します。
(先ほど変更した「Hires. fix」は、チェックを外しています。)

なぜか、二人表示されるようになりました。3回やってもポーズなどは変化があっても、人は二人表示されます。「Positive」には1girlと入力しているのに。サイズや容量は上記④「Hires. fix」と同じでした。

このことから1人分の姿を記載しようと思ったら、「Width, Height」を「512×512」がベストであり、1024だと二人分記載されてしまう。大きいサイズを作成したい場合は、「Hires. fix」で調整すべきだと思いました。

⑦「Batch count(画像の枚数(何回バッチを行うか))」を「1」から「4」に変更して「Generate」します。(先ほど変更した「Width, Height」は「512×512」に戻しています。)

4枚生成されました。サイトには4枚を1枚にまとめたのを掲載していますが、1枚ずつのものも生成されているため、計5枚生成されいます。

⑧「Batch size(画像の枚数(1回のバッチで何枚の画像を生成するか))」を「1」から「4」に変更して「Generate」します。(先ほど変更した「Batch count」は「1」に戻しています。)

先ほど⑦Batch countと同じ4枚の画像が生成されました。
同じかなと思いましたが、Batch sizeは同じ構図で服や背景が異なることから
⑦Batch countは、4回新しく生成している。
⑧Batch sizeは、1回生成して、そこから同じものを追加3枚生成している

という使い分けができると思います。

⑦+⑧として、「Batch count」を3にして「Batch size」を2にしてみます。

分かりずらい結果ではありますが、3種類を2個ずつ作成された画像となりました。
(どれが同一種類のものか分かりずらいですが・・・・、同じ顔で複数作成したい場合、この方法が良いかもです。)

⑨「CFG Scale(どれだけプロントに近いイラストを生成するか)」を「7」から「30(MAX)」に変更して「Generate」します。(先ほど変更した「Batch count」等は「1」に戻しています。)

明らかに不自然な画像となってしまいました。

「CFG Scale」を「15」に変更して生成しましたが、それでも不自然な画像となります。

「CFG Scale」を「10」に変更して生成しましたが、それでもデフォルトの「7」と比較すると、違和感を感じる画像となります。

「CFG Scale」を「1(min)」に変更して生成しましたが、今までの画像と比較して、別人物となってしまいました。「CFC Scale」は「7」ぐらいが適当なようです。

⑩「Seed」を「-1」から「10000」に変更して「Generate」します。(先ほど変更した「CFG Scale」は「7」に戻しています。)

あまり変化がないような・・・・

「Seed」を「100000」に変更して「Generate」します。「10000」と比較しても、そこまで絵柄が変わるわけではないようです。

ここで「Seed」を調べたところ、「Seed」とは、ランダムな値を生成するための出発点となる、初期値や種となる値のことを指します。Seedは、同じ初期値から同じ疑似乱数が生成されるという性質を利用して、ランダムな値を生成するプログラムやアプリケーションで再現性を持たせることができます。例えば、乱数を使用して実験を行う場合、Seedを指定することで、同じ結果が得られるようにすることができます。

そのため、「Seed」を「100000」のまま「Generate」をしたところ、全く同じ画像となります。

このことから画像は 「プロンプト」+「各設定」×「seed」=画像
となります。(先ほどまでは「seed」は「-1(ランダム)」なため、実施するたびに異なる画像となっていたと思われます。)

⑩’ 「Seed」を「100000」にしたまま、

「Positive」
masterpiece, best quality, highres, (photo realistic:1.4),1girl, solo, medium breasts, portrait, (sitting), big blue eyes, school uniform, cute, young, black hair, indoors, chair,

⇒hair professional lighting,及び(18 years old)を削っています。

にして、「Generate」しました。

髪型が少し変化があったぐらいで、他に変化はあまり見られません。

さらにそのまま、「Positive」を「big blue eyes」を「big black eyes」に変更して「Generate」したところ

目が黒色??になっていますかね。(まだ青色に近いような・・・)しかも顎に手が生えてる・・。

3. 考察(まとめ)

各設定を変えながら作成したところ、

・設定はデフォルトのままが良い(Sampling methodのみ「DPM++ 2M Karras」に変更する。)

・画像生成の基本は 「プロンプト」+「各設定」×「seed」=画像
 で生成される。

・良い画像が作成されたら、「seed」を固定して、「プロンプト」を変更して作成してみると丁度いい微調整が可能となる。

AI_機械学習
スポンサーリンク
takeをフォローする
スポンサーリンク
サイバー・セキュリティ・フォレンジック 備忘録
タイトルとURLをコピーしました