Stable Diffusion(ステイブル・ディフュージョン)とは、2022年に公開された画像生成AIサービスである。略してSDとも呼ばれる。
潜在拡散モデルという技術を使って高品質な画像生成を実現しており、オープンソースかつ無料で利用できることもあいまって、2024年現在NovelAI Diffusion(以下NAI)などと共に主流となっている画像生成AIサービスであると思われる。
特徴
簡単なテキスト(これをプロンプトと呼ぶ)で描かせたい内容を指示して画像を生成するtxt2img機能と、元になる画像を加工して新たな画像を生成するimg2img機能に対応している。
NAIとの比較
Stable Diffusionと共に主流となっている画像生成AIサービスであるNAIとは、以下のような点が異なっている。これから画像生成AIに触れたいがどのサービスを利用するか迷っている人は参考にしてほしい。
なお、以下の表においてStable Diffusionはローカル版の利用を想定している。
|
Stable Diffusion |
NAI |
| 初期費用 |
ある程度のグラボを搭載したPCを用意する必要がある。 |
普通のPCまたはスマホで利用できる。 |
| 利用料金 |
無料。 |
有料。
サブスクプランの加入または都度課金が必要で、無制限で画像を生成できる最上位のプランは月額$25。 |
| プロンプトの反応性 |
使用するモデルにもよるが、基本的にプロンプトの反応性はNAIに劣る。 |
良好。 |
| 拡張性の高さ |
モデルの変更やLoraの使用、さらにはControlNetなどの拡張機能によって画風や構図を自由自在に変えられる。 |
モデルの変更はアップデートによるもののみで、拡張性に乏しい。 |
利用方法
Stable Diffusionは大きく分けて、WEB上で動作させる方法とローカルで環境を構築して動作させる方法がある。
WEB上ではHugging Face、DreamStudioなどのサイトで公開されており、難しい技術などは一切不要で手軽に利用できるが、機能が著しく制限される、または課金が必要なため、多くのユーザーはローカルに環境を構築して利用している。
ローカル版は更に、ブラウザ上で動くStable Diffusion Web UIと、専用のアプリケーションを使うNMKD Stable Diffusion GUIがある。それぞれの特徴は以下のとおりである。
- Stable Diffusion Web UI(以下WebUI版)
- PythonやGitなどのツールを利用してローカルに環境を構築し、Webブラウザで動作させる。拡張性の高さなどから、2024年現在最も利用者が多いと思われるStable Diffusionである。導入までの技術的なハードルはやや高いが、ユーザー数が多い分ノウハウも蓄積されており、不明な点をすぐに調べたり聞いたりしやすい点もメリット。
AUTOMATIC1111氏が公開するAUTOMATIC1111版や、AUTOMATIC1111版よりも高速で動作するForge版、独特なUIを持つConfyUI版などがある。ただし前者2つはNVIDIA製グラフィックボードを積んでいるのが前提。
- NMKD Stable Diffusion GUI(以下GUI版)
- 専用のアプリケーションをダウンロードし、それをローカルで動作させる。WebUI版と比べると手軽に導入できるのがメリットだが、拡張性では劣る。とはいえバージョンが上がるごとに利用できる機能が充実してきており、ControlNetなどの高度な拡張機能を必要としないのであればこちらを使うのもアリだろう。
AUTOMATIC1111版とは違いRadeonでも動く。
モデル
Stable Diffusionで画像を生成するには、Stable Diffusion本体のほかにモデルという学習データファイルを用意する必要がある。
Stable Diffusionにはデフォルトのモデルも用意されているが、これは二次元絵などの生成には向いていないため、そのような画像を生成したい場合は別途モデルをダウンロードして適用することになる。モデルはCivitaiなどのサイトで探すと良いだろう。どのモデルを使用するかによって生成画像がまったく変わってくるため、プレビュー画像などを参考にしながら使用するモデルを検討していこう。
またStable Diffusionにはモデル同士を組み合わせる(マージする)機能が備わっており、これを利用して自分で新たなモデルを作り出すこともできる。
ただしモデルにはそれぞれ生成物の公開や商用利用に関する利用条件が定められており、その利用条件を逸脱しない範囲での利用を求められる。特に二次元絵の生成に特化したモデルの多くはNAIリークモデルの要素が含まれている可能性があり、これらに関してNAI側が法的措置を検討していると表明していることから、その利用にリスクが伴うことは留意すべきである。
また、モデルはベースとなったモデルによってSD1.5系・SDXL系に分けられ、SDXL系はさらに派生形となるpony系モデル・Illustrious系(以下、IL系)モデルなどが存在する。それぞれ必要とされるPCスペックや対応するLoraなどが違うため、その点も考慮してモデルを吟味しよう。
SDXL系は総じてSD1.5系よりも高品質な画像を生成できるが、要求されるPCスペックの高さや対応するLoraが少ないことから現在もSD1.5系を愛用するユーザーは多い。pony系モデルは な画像の生成に強いとされているが、プロンプトの記述方法が独特で扱いには慣れが必要。IL系モデルは2024年下半期に登場したばかりで発展途上だがポテンシャルの高さが注目されており、特に版権キャラの出力に強いとされている。
利用者の多いモデル、あるいはかつてよく使われていたモデルには以下のようなものがある。(太字は記事あり)
二次元・アニメ系
- 7th_anime
- AbyssOrangeMix
- Animagine XL
- Anything
- AutismMix
- Counterfeit
- CuteYukiMix
- HimawariMix
- Illustrious-XL
- lametta
- NoobAI-XL
- pony diffusion
- QteaMix
- Waifu Diffusion
|
実写・リアル系
- basil mix
- ChilloutMix
- yayoi_mix
|
使い方のヒント
- Q. 千手観音が生成されてしまう
- Q. デュラハンが生成されてしまう
- Q. ケンタウロスが生成されてしまう
- Q. その他、よくわからないクリーチャー的なのが生成されてしまう
- EasyNegativeなどを導入してネガティブプロンプトにぶち込め。
- Q. 版権キャラが生成できない・生成されにくい
- Stable Diffusionのモデルは、総じてNAIと比較するとプロンプトのみで版権キャラを生成するのが難しい傾向にあるようである。キャラ名のみで再現できるキャラとなると、おそらく初音ミクレベルの超有名キャラに限られてくるだろう。
再現したいキャラのLoraが配布されているなら、それを適用することで再現率がぐっと上がるので活用してみよう。無ければLoraを自作するか、頑張ってプロンプトを組み合わせて再現するしかない。
なお、IL系モデルではこの欠点はある程度解消された模様。
- Q. 一部のプロンプトの効きが悪い
- モデルによっては、一部のプロンプトの効きが悪い場合がある。そのような場合、以下のような対処を実践することで改善する場合があるので試してみよう。
- プロンプトの強度を上げてみる。ただし上げすぎると崩壊する可能性が高くなるので注意。
- 別のプロンプトで置き換えてみる。たとえば「tsurime(ツリ目)」⇔「slanted eyes(つり上がった目)」、「small breasts(小さな胸)」⇔「flat chest(平らな胸)」など。
- 別のモデルを使ってみる。
- Q. 生成された画像がくすんだ色になってしまう
- VAEの内蔵されていないモデルをそのまま使うと、くすんだ色の画像が生成されてしまう。その場合は、別途VAEをダウンロードして適用することで鮮やかな画像を生成できるようになる。
- Q. 手指が崩壊する・崩壊しやすい
- 残念ながら仕様なので回避は難しい。以下の対処法でどうぞ。
- 手指が隠れる構図にする。プロンプトに“arms behind back”と指定すれば、手を身体の後ろに隠すことができる。
- 別のモデルを使ってみる。IL系などの後発のモデルは手指の崩壊率が低い傾向にあるので、スペックが許す限り新しいモデルを使用してみると良い。
- 編集ソフトなどを使って、手指の部分をトリミングする。ただし、手指が画像の端のほうにある場合に限る。
- 編集ソフトなどを使って、自分で修正する。
- 手指が崩壊していない画像が出るまで生成し続ける。img2imgを利用して、手の部分だけ書き直させるのも手。
- Q. 人物の胴体が異様に長くなる・短くなる
- Q. 頼んでもいないのに人物が勝手に増える
- アスペクト比を見直してみるといいかも。
画像生成AIは被写体をキャンバスいっぱいに描こうとする傾向があるようで、縦に長すぎるキャンバスだと人物もそれにあわせて胴体が長くなってしまったり、横長のキャンバスで立ち絵や抱き枕画像を描かせようとするとプロンプトを無視して人物を勝手に増やしてしまったりすることがある。そのような場合、適正なアスペクト比に設定することで改善する可能性があるので試してみよう。
うまくいかない場合は、「full body(全身)」「cowboy shot(太腿から上)」「dutch angle(斜め構図)」などのプロンプトで描画する範囲を調整するか、ControlNetやRegional Prompterなどの拡張機能に頼ることも検討すべし。
また、SD1.5系モデルは512×512、ponyやIL系を含めたSDXL系モデルは1024×1024のサイズがベースになっており、同じアスペクト比でもこの数値から離れるほど崩壊率が高くなる。より高解像度の画像を出力したい場合は、オプション機能のhires.fixなどを利用すると良い。
関連動画
関連リンク
関連項目