【生成AI】Stable Diffusionのおすすめ設定は?WebUIで画像の品質や生成速度を上げる方法などを解説

「生成する画像の品質を上げたいけど、設定の仕方がわからない」
「もっと効率良く画像を生成する方法はないの?」

Stable Diffusionで画像を生成するとき、このような悩みを持たれる人も多いはずです。

本記事では、Web UIでStable Diffusionによる画像生成のクオリティを上げる設定方法や注意点を紹介しています。

Stable Diffusionを使いこなせるとホームページやSNSなどで使用する画像を簡単に作れるようになるので、ぜひ参考にしてください!

この記事の要約
  • 画質を上げるには標準機能のHires.fixやExtrasを使う
  • 画像の生成速度を上げるにはSampling Methodの選択や拡張機能ToMeの導入を行う
  • 思い通りの画像を生成するにはCFG Scaleの値の変更やNegative promptの入力を行う
目次

【サッとおさらい】Stable Diffusionについて

Stable Diffusionでの設定方法を正しく理解するために、まずはそもそもStable Diffusionがどのような画像生成AIなのかを知っておくことが必要です。

そこで本セクションではStable Diffusionとは何か、そして、画像生成における設定値の重要性について詳しく解説していきます。

そもそもStable Diffusionとは?

Stable Diffusionは入力したテキスト(プロンプト)をもとに画像を生成するAI技術のひとつで、数ある画像生成AIの中でもカスタマイズ性に優れているのが特徴です。

プロンプトに加えて、画質や生成速度の値を変更して自由に生成したい画像の内容を決定できます。そのため、世界に一枚しかない画像を簡単に生み出せます。

なお、Stable Diffusionのソースコードは全世界に公開されているので利用料金はかかりません。さらに、自己責任にはなりますが商用利用も可能です。

芸術作品やゲームのキャラクター、さらには広告・商品デザインなど、多岐にわたる分野でStable Diffusionを業務に活用する動きが世界中で進んでいます。

画像生成の設定の重要性

Stable Diffusionでは設定値が画像の品質を大きく左右します。

主な設定値は以下の3個です。

  • prompt:指示文
  • seed:乱数シード
  • sampling steps:処理のステップ数

promptでは生成したい画像の内容を具体的な言葉で記述するほど、理想的な画像を得られます。

seedは画像のランダム性を制御していて、-1と設定すると同じ指示文でも異なる内容の画像を生成できる設定値です。

そして、sampling stepsは画像の精度や独自性をコントロールできるので、ステップ数を多くするほど細部まで作り込まれた画像を生成できます。

上記のような設定値だけでなく、後のセクションではさらに画像のクオリティを上げられる設定値やWebUIに導入できる拡張機能を紹介していきます!

Stable Diffusionの画質を上げるおすすめ設定

画像生成において、画質は画像の見た目にリアリティを持たせるために重要な要素のひとつです。

Stable Diffusionでは、画質に関する以下2つの設定がデフォルトで利用できます。

  • Hires.fix
  • Extras

本セクションでは、生成する画像の画質を上げる上記の設定について解説していきます。

Hires.fix

Hires.fixを設定すると画像のぼやけが解消されて、高解像度の画像を生成できます

Hires.fixにもいくつか設定項目がありますが、以下の通りです。

項目概要
Upscaler元画像の拡大を行うアルゴリズム
Hires steps高解像度にするまでのステップ数
Deniosing strength元画像から除去するノイズの程度
Upscale by画像の拡大率

Upscalerは実写系には「R-ESRGAN 4+」、イラスト系には「R-ESRGAN 4+ Anime6B」が推奨されています。

Hires stepsはデフォルトの0で問題は無く、無理に上げても劇的に画質が変わるわけではありません。

Denoising strengthは基準値の0.7付近がおすすめです。

Upscale byは大きすぎず小さすぎずの値が無難なので、1.5~1.6倍程度にしておくと良いでしょう。

では、以上を踏まえてHires.fixで設定をした場合としなかった場合の画像を比べてみます。

少し顔が変わっていますが、Hires.fixを使用した方が高画質になっていることがおわかりいただけるかと思います。

Extras 

Extrasはアップロードした画像を高画質化できるStable Diffusion WebUIでの標準機能です。Hire.fixを使った場合の画質には劣りますが、Hire.fixよりも高速で生成できます。

本記事では、Extrasで高画質化に影響のあるUpscaleの設定項目のみ紹介します。

項目概要
Upscaler 1元画像の拡大を行うアルゴリズム
Upscaler 2元画像の拡大を行うアルゴリズム
Scale by Resize画像の拡大率
Scale to width / height拡大後のサイズ

Upscaler 1と2はHires.fixと同様の項目です。Upscaler 1にだけ実写系は「R-ESRGAN 4+」、イラスト系は「R-ESRGAN 4+ Anime6B」を設定すれば問題ありません。

Scale by Resizeは2~4倍が適正値になります。

Scale to width / heightはScale by Resizeを使わない場合に指定しますが、基本はScale by Resizeで十分でしょう。

それでは、先ほどのHires.fix使用前の画像を使って生成してみます。

比較すると、Extrasを使用した方がより鮮明な画像になっているのが確認できますね。

Stable Diffusionの生成速度を上げるおすすめ設定

画像生成はテキスト生成よりも多くのデータ量を扱うため、一般にハイスペックなパソコンが必要です。

しかし、Stable Diffusionでは以下の設定を変更すると画像の生成速度を上げられます。

  • Sampling Method
  • ToMe

本セクションでは、画像生成の速度を上げる上記の設定方法を詳しく解説していきます。

Sampling Method

Sampling Methodとは、画像を生成する際に使用するアルゴリズムです。一般的には、「DDIM」や「PLMS」が比較的高速で安定しています。

それでは、同じプロンプトとシード値で縦650px・横840pxの画像を1枚生成した時の速度を比較してみます。

アルゴリズム生成速度
デフォルト(DPM++ 2M)39.5秒
DDIM37.21秒
PLMS36.01秒

DDIMやPLMSを使用すると、生成速度を2~3秒短縮できました。

さらに大きなサイズや枚数を生成するほど速度の差は開いていくはずなので、ぜひ試してみてください!

ToMe

ToMeとは、生成された画像の解像度や品質を調整するためのStable Diffusion WebUIの拡張機能です。

以下が、ToMeの適用までの手順になります。

  1. WebUIにて、Extensionsタブのinstall from URLを選択する
  2. URL for extension’s git repositoryに「https://github.com/SLAPaper/a1111-sd-webui-tome」と入力してインストールボタンを押す
  3. Stable Diffusionを再起動してSettingsタブのページ左下のToMe Settingsを選択する
  4. ToMeでの設定項目を設定する
  5. txt2imgタブまたはimg2imgタブにて「Enable ToMe optimization」にチェックを入れる

ToMeでの設定項目は以下の通りです。

設定項目概要
ToMe merging ratioどの程度画像の生成速度を速くするか
Only activate tome if image width reach this valueToMe適用後の画像の横幅のサイズ
Only activate tome if image height reach this valueToMe適用後の画像の縦幅のサイズ

ToMe merging ratioは数値を上げると生成速度は早くなりますが、画像のクオリティが落ちるのでデフォルトの0.75付近がおすすめです。

Only activate tome if image width(height) reach this valueに関しては、生成したい画像のサイズをお好みで設定してください。

それでは、同じプロンプトとシード値で縦650px・横840pxの画像を1枚生成した時のToMe適用前後の速度を比較してみます。

ToMeの適用生成速度
なし39.7秒
あり38.27秒

以上のように、ToMeを使用した方が1.5秒ほど速く画像を生成できていました。

したがって、単に生成速度を上げるならSampling Method、生成速度を上げつつ画像の拡大も行いたい方はToMeを利用すると良いでしょう。

Stable Diffusionで思い通りの画像を生成するおすすめ設定 

画質と生成速度で画像の品質をある程度担保できるようになったら、生成する画像に写る人や物体、背景などのクオリティを上げていきましょう。

  • CFG Scale
  • Negative prompt

本セクションでは、思い通りの画像を生成できる上記の設定項目を紹介していきます。

CFG Scale

CFG(Classifier Free Guidance)Scaleとは、生成された画像がプロンプトに忠実になるように調整できるWebUIでの標準の設定項目です。

CFG Scaleの値を高くするとプロンプトに忠実な画像が生成されますが、画像の多様性が失われます。

一方、値を低くするとプロンプトから逸脱した独創的な画像が生成されて、意図した画像とはかけ離れてしまう可能性が少なくありません。

では、実際に同じプロンプトとシード値でCFG Scaleの値による画像の違いを比較してみますね。

一人の男性の顔写真の画像を出力するよう指示していますが、CFG Scaleが1~5と極端に低い場合は指示の再現度も低めです。

反対に、25~30と高めの数値では大きな乱れは無いものの、肌や色調の細かい乱れが目立ちます。

10~20辺りではリアルな写真に近く、あまり違和感はありませんね。

CFG Scaleはプロンプトの指示の細かさによっても最適な値が異なるので、10~20の値を基準に試してみてください!

Negative prompt

Negative promptは生成したくない要素を指定するためのプロンプトです。WebUIではpromptのすぐ下に入力欄が配置されており、標準機能として利用できます。

たとえば、以下のキーワードは生成したくない要素としてよく使用されています。

  • blurry, low quality:低品質なもの
  • bad anatomy, deformed, mutated:ボディパーツのエラー
  • out of frame, cropped, poorly composed:作画や構成のエラー
  • text, logo, watermark:文字やロゴ
  • nsfw, explicit:画像を分割して生成

一方で、Negative promptを過剰に設定するとオリジナリティに欠ける傾向にあるので、CFG Scaleとうまく組み合わせて入力していきましょう。

Stable Diffusionを使った画像生成の注意点

今までWeb UIでStable Diffusionを使って生成する画像の質を上げる設定を紹介しましたが、設定項目だけでなく以下の点に注意する必要があります。

  • プロンプトの入力を工夫する
  • 商用利用する際は著作権や肖像権を確認する

本セクションでは、画像生成の設定を行う際や生成した画像を利用する場合の上記の注意点について解説していきます。

プロンプトの入力を工夫する

生成したい画像のイメージを完璧に近い形でAIに伝えるためには、設定値や拡張機能に加えて、プロンプトの文章を工夫する必要があります。

プロンプトの主な改善例は以下の通りです。一般的に英語で入力する方が高精度な画像を生成できるので、英語の文章を中心に記載しています。

  • 具体性を持たせる:a cat, walking in the harbor at dusk(夕暮れの港を歩く猫)
  • スタイルを指定する:a dog, in the style of a watercolor painting(水彩画風の犬)
  • 色彩の指定:a living room, lit with warm-colored lights(暖色系の明かりを灯しているリビング)

ただ単に猫や犬と指示するよりは、上記のように詳細な指示を心がけると理想の画像に近づいていくでしょう。

商用利用する際は著作権や肖像権を確認する

画像生成AIはインターネット上にある画像を学習しているため、生成された画像が既存のキャラクターや人物、デザインに酷似してしまうケースは少なくありません。

Stable Diffusionの開発元のStability AIは、以下のように述べています。

The model is licensed with a CreativeML OpenRAIL++ license. The authors claim no rights on the outputs you generate, you are free to use them and are accountable for their use which must not go against the provisions set in this license. The license forbids you from sharing any content that violates any laws, produce any harm to a person, disseminate any personal information that would be meant for harm, spread misinformation and target vulnerable groups. For the full list of restrictions please read the license

【和訳】
このモデルはCreativeML OpenRAIL++ライセンスで使用が認められています。著者はあなたが生成した出力物の権利を主張しません。あなたは出力物を自由に使用可能で、使用に対する責任を負います。本ライセンスでは、法律違反や個人への何らかの侵害、個人情報の悪用、誤情報の拡散、脆弱なグループが標的のコンテンツの共有を禁止しています。詳細についてはライセンスをご確認ください。

参考:huggingface.co

ひと言でまとめると、権利の侵害や法律違反が無ければStable Diffusionは一切の制限が無く利用できるとのことです。

そのため、生成した画像は著作権や肖像権に注意しながら活用していきましょう。

まとめ

本記事では、Stable Diffusion WebUIで画像生成する際のおすすめ設定を紹介していきました。

画質を上げたい際はHires.fixまたはExtras、生成速度を上げるならSampling MethodまたはToMe、思い通りの画像を生成する場合はCFG ScaleやNegative promptがおすすめです。

しかし、おすすめの設定項目でも数値を極端に上げすぎると、かえってクオリティが低下することもあるので注意が必要になります。

そして、生成した画像を商用利用する際は既存のキャラクターやロゴ、人物に酷似していないか確認するように心がけましょう!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

目次