AI画像生成ツール「Stable Diffusion」のコツまとめ(text2image)
先日オープンソース化され、話題を集めている「Stable Diffusion」を使っている中で気が付いたメソッドやコツをまとめる。自分の備忘録的な意味も込められているため適宜加筆していく。
導入については他に分かりやすいガイドがたくさんあるので割愛する。すぐに使いたいという人はGoogle Colabで環境をセットアップしてみよう。
Midjourneyとの表現の違いについて
まずMidjourneyのと違いについて気になる人が多いだろう。これについてはPromptに対する理解というか反応が異なるのと、出力される画像のタッチに基本的な違いがある。非常に端的に言うとStable Diffusionは生真面目な優等生タイプで、Midjourneyはどちらかというと独創的な自由奔放タイプだ。自分が作りたい画像のイメージによって適宜切り替えながら使うといいだろう。写真のようなリアルな造形をベースに画像を作りたい場合はStable Diffusion、芸術やアートよりなタッチで画像を作りたい場合Midjourneyのが適しているだろう。(Stable Diffusionを取り込んだMidjourneyの新モデルに期待だ)
どちらの性能が優れているといった議論は相当ナンセンスだ。楽器の音色が違うようにAI画像生成ツールにも表現にレンジがある。
実際に比較してみる
上記は全く同じpromptでStable DiffusionとMidjourneyを比較してみた。左がStable Diffusion,右がMidjourneyだ。よりリアルなテイストはやはりStableDiffusionで、芸術的でアーティスティックな感じが強いのはMidjourneyか。どちらも違った良さがある。
パワーワードについて
Midjourneyで使えるワードと大きな乖離はなく、ある程度のワードは流用することができる。ただし同じワードでもそこから想起される表現が異なるものもあるので注意。下記によく使われているものをまとめる(※適宜追加中)
Promptの記法について
固有名詞に強いのでMidjourneyよりも実在する物体や概念、アーティスト名を指示すると上手くいくことが多い。例えば特定のアーティストの画風で「雪の中にいる金髪の女の子」の画像を作りたい場合
このようにしてやればいい。記法の注意点としてA, B, C, Dのようにカンマと単語の間に半角スペースを入れよう。A,B,C,Dと空白を入れないで書いてもいいのだが、一応単語と単語が繋がって認識されてしまうケースを避けている。
画風の近いアーティスト名を複数入れることで造形や画力を安定する場合もある。とにかく主張したい、強調したい単語を前に配置し、調整ワードを後に配置するといい。また単語の順番を入れ替えて生成しなおすことでよくなるパターンもある。
構文の例
私がよく使う構文は上記だ。出来るだけ強調したい要素を優先して前側にする。無駄な単語はできるだけ削った方がいい。もちろん例外はあるが、この形が安定してイメージを伝えやすい。
上記画像はアーティスト名にみんな大好き「Makoto Shinkai」を入れて10枚生成した中で良かったものをピックアップしたもの。短めのpromptでもそこそこいい画像ができる。
上記の例は初歩だがワード選びを極めて、ガチャりまくると
これくらいのクオリティの画像を無限に生成できるようになる。アニメ・2次元っぽいイラスト画像の作り方については書き出すと非常に長くなるため別途noteを書く予定。
例:架空の生物図鑑
ステップ数・スケール数・サンプラーについて
ステップ数について
ステップ数は何を意味するかというと使用される処理ステップの量を調整する数値だ。数値が高いほど、レンダリングにかかる回数が多くなる。とはいえ数値が高ければ高いほど高品質な画像になるわけではないので注意。
Redditより各サンプラーとステップ数の相関をまとめた画像を引用させて頂いた。ステップ数は基本的に数値が上がるほどノイズが減り、具体化されていくのでデフォルトの50よりは高い値のがいい。個人的には100前後の値をよく使っている。
サンプラーについては多少違いはあるが、ステップ数が上がっていくとそこまで大差はつかなくなる。慣れてきたらサンプラーを変えて色々と試してみるくらいでいいだろう。
リアルな造形の画像を作りたいか、芸術的なアートワークを作成したいかなどで使い分けしたりする。
スケール数について
スケール数が何を意味しているかをちゃんと説明するのは難しいが簡単にいうと画像を生成する時にpromptをどれだけ重視するかを調整する数値と言える。
こちらもRedditよりスケール数と各サンプラーの相関をまとめた画像を引用させて頂いた。スケール数3~30までの比較。ちゃんとピクサーっぽくなるのは10~15くらい。スケール数7前後が最も画像の変化量が多いと言われている。
・数値0→ランダムな画像を生成し、promptを考慮しない。
・数値低め→低くすることでより独創的になる可能性があるが、prompt外の要素も増えてしまう。
・数値高め→promptに正確に沿った画像が生成される。逆に言えば独創的ではなくなっていくので、しっかりとしたpromptを設定する必要がある。
個人的にはスケール数が低すぎても高すぎても微妙になるので、5~16あたりを利用するといいと思っている。5くらいにして予想外の要素を狙ってもいいし、数値を高めにして自分のpromptに正確に従わせてもいい。いずれにしても作りたい画像で使い分けよう。
画像の比率について
Promptはどちらも「a little girl is kissing a puppy」(小さな女の子が子犬にキスしている)だが2枚目は正常なのに1枚目の横長画像はとんでもないことになってしまっている。実は画像の比率が正方形から離れれば離れるほどパフォーマンスは下がっていく。
これはStable Diffusionのモデルが主に512×512で学習しているためだ。
縦長すぎたり、横長すぎたりすると物体や人物の造形が崩れやすい。よく起こるのは人の顔が2つになる現象だ。
個人的には比率512×704(1:1.375)、704×512(1.375:1)までは大きく画像が崩れたり、奇妙なことにはなりづらいがそれ以上比率が離れてると上記の犬の画像のように恐怖画像になってしまう。
画像生成の最大パフォーマンスは1:1であることに留意しよう。画像の比率には注意。今回の比率に関するRedditの議論や研究は下記を参照。
RedditやDiscordで情報を集めよう
Redditや公式DiscordサーバーではPromptに関する研究や有益な情報がたくさんあるので興味のある方は是非。
アップスケールについて
Midjourneyとは違い、生成した画像をUpscaleする機能(元よりも高い画素数に変換する)が用意されていない。かといって画像のサイズを大きくして生成するのは時間もかかる上に、スペックも必要になる。
色々と面倒なのでアップスケールは下記の2種を利用している。
・Stable Diffusion Web UI
こちらは有志によって作られたStable Diffusionのweb UIで導入に知識は必要だが、通常機能の他アップスケールやimg2img モード、GFPGANの機能が使える。非常に多機能でUIも分かりやすいのでおすすめ。
Web UIの画面
各パラメーターやサンプラーを簡単に調整できるため便利だ。
・chaiNNer
画像アップスケールに特化したソフト。様々なモデルを利用できるので、その画像に最適なアップスケールが可能なのが魅力。導入に関してはこちらの方の動画を参照。
少しだけ作品紹介
下記に作った画像の一部を紹介していく。Stable Diffusionでこんなこともできるのか!と何か発見があれば嬉しい。よく聞かれますが全て無編集無加筆の一発出しの画像です。
・アニメイラストレーション
黒のドレスと金模様の背景をイメージ。このイラストだけで何か物語が始まりそう。アニメイラストのprompt考察に関しては別途noteを書く予定。
・カードゲーム風イラスト
カードゲーム(TCG)っぽいイラストタッチで画像生成したもの。微調整すれば実際のカードイラストになってもそこまで違和感はないかもしれない。
・漫画背景
SFっぽい都市をイメージして生成したもの。線画らしくなりそれなりに漫画の背景やアイデア出しなどでも使えそうだ。
・龍をモチーフにした鍵
もちろんイラストだけでなくこういった写真のような造形を伴った画像もお手の物。こちらはドラゴンをモチーフにした鍵を作りたくなったやつ。
この画像から3Dアセット化するプロセスなどもあり、3DCGの業界も大きく変わっていくと思う。
・ゲームアイテムアイコン風
RPGゲームのアイテムのアイコン風。こんな感じの素材アセットを無限に生み出せるのでゲーム開発の環境も大きく変わりそう。
アセット・テクスチャ系のprompt考察に関しても別途noteを書く予定。
・融合ガンプラ
ガンダムで自分の好きな機体であるRX-0(ユニコーンガンダム)とMSN-04(サザビー)を融合させた。カラーリングもそれっぽくなって満足。
自分の好きな機体を融合させたり、まだ見ぬガンダムを作り出すのは非常に楽しい。
メカ系のprompt考察に関しても別途noteを書く予定。
・架空の鉱石図鑑
架空の鉱石図鑑。地層や断層っぽいイラストが配置されていい感じに。
・ねんどろいど
「霊夢のねんどろいど」と指定したら生成されたやつ。
もっと作品がみたい!という方は下記を見てみてください。
下記アカウントで普段作ったものを公開しています。よければチェックしてみてください。
またpixivでも作品を公開しています。こちらではR18等も研究していますので興味のある方は是非覗いてみてください。
この記事が気に入ったらサポートをしてみませんか?