私たちが日常で目にする美しい画像やアートワーク。その裏には、高度な技術やアルゴリズムが隠れています。
特に、ディープラーニングの分野では、画像生成技術「Stable Diffusion」が注目されています。しかし、この技術を最大限に活用するためには、適切な「サンプラー」の選択が不可欠です。
「サンプラー」とは一体何なのでしょうか? なぜそれがStable Diffusionで重要なのか?
この記事では、Stable Diffusionの「サンプラー」について詳しく解説します。サンプラーの役割、その特性、そして選択する際のポイントについて深掘りしていきます。
Stable Diffusionを使用する際のサンプラー選びのコツや、その影響について知りたい方は、この記事を最後までお読みください。正しい知識を持つことで、より高品質な画像生成を実現する手助けとなるでしょう。
Stable Diffusionの「サンプラー」とは?
Stable Diffusion WebUIでは、画像を拡散モデルで処理する際、ノイズを取り除くための様々なアルゴリズムが用意されています。
これを「Sampling method(サンプリングアルゴリズム)」と呼びます。一部では「サンプラー」とも称されます(以下、「サンプラー」として記述します)。
サンプリングの回数を増やすと、画像の変化が大きくなるものや、少ないサンプリング回数でも安定した画像が得られるものなど、各サンプラーには独自の特性があります。
画像を生成するのに要する時間は、同じサンプリング回数であっても、使用するアルゴリズムにより、速いものと遅いものが存在します。
サンプリング速度が速いサンプラーを使用すると、遅いものと比べて半分程度の時間で画像が生成されることもあります。
ノイズスケジュールについて
ノイズスケジューリングとは、画像やデータを作るときに、どれだけの「ノイズ」を加えるか、または取り除くかを決める計画や方法のことです。
ノイススケジュールが重要な理由3選
- 「ノイズ」の加え方や取り除き方は、作られる画像の質に大きく影響します。
- 画像の大きさによって、最適な「ノイズ」の加え方が変わることがあります。
- 新しい技術と組み合わせることで、より鮮明できれいな画像を作ることができます。
Stable Diffusionのサンプラーの種類
サンプラーはいくつかの系統に分類され、それぞれが出力する画像の特性を持っています。
以下は、主な系統とその特徴を一部表にまとめたものです。
サンプリング速度 | a系 | ||
---|---|---|---|
速い | Euler a | なし | DPM++ 2M Karras |
遅い | DPM++2S a | DPM++ SDE Karras |
a系:サンプラー名に「a」が入っているものや、「DPM adaptive」と「DPM fast」もこの系統に属します。
SED系:この系統のサンプラー名には「SDE」が含まれています。サンプリング回数を増やすと、画像の内容や構造に大きな変化が見られるのが特徴です。
Euler系:この系統のサンプラーには名前の特徴はありませんが、少ないサンプリング回数でも画像の品質が安定している点が特徴です。また、サンプリング回数を大きく変更しても、画像の内容や構造に大きな変動は見られません。
- Stable Diffusionのプロンプトの見本が知りたい
- 画像生成が思ったようにできない
- 色々なプロンプトを探したい
【検証】サンプラーごとに比較してみた!
それでは紹介したサンプラーを系統別に比較してみましょう。今回はサンプリング速度が遅い3つのサンプラーを使用します。
Seed値は固定しています。使用した呪文(プロンプト)は以下の通りです。
ポジティブプロンプト
masterpiece, beautiful, a woman, curly black short hair, white t-shirt
ネガティブプロンプト
(worst quality:2), bad anatomy, bad face,(moles:2), out of focus, blurry, nsfw, nipples
それでは実際に生成された画像を見てみましょう。実写系モデルを使用しています。
Seed値を固定しているにも関わらず、サンプラーごとに特徴のある人物が再生されています。
a系とSDE系はStepsを変更すると画像に違いが見られますが、Euler系はStepsの影響がほとんど見られません。
サンプラーごとにここまで違いは生まれるのであれば、理想の画像を作り出すためにも、サンプラー別の比較は欠かせないでしょう。
【結論】Stable Diffusionのおすすめサンプラー
サンプラーの種類が多すぎて、何を選べばよいか迷うかもしれません。そんなときは、まずは以下で紹介するサンプラーを使用してみましょう。
- Euler a: 一部のサンプラーとして人気があります。ただし、SDXLでは「Euler a」を使用すると画像がぼやける問題があるため注意が必要です。
- DPM++ SDE Karras: 現代の多くのユーザーによって使用されており、実写でもアニメでも高い評価を受けています。
- DPM++ 2M Karras: これも人気のサンプラーの一つです。
- DDIM: Stable Diffusion v1に付属していたサンプラーで、比較的低いステップで生成して、良い画像ができたらDPM++ SDE Karrasなどで仕上げるのがおすすめです。
サンプラーの選択は、目的や要件に応じて慎重に行うことが求められます。各サンプラーには利点と欠点があるため、目的に合ったものを選ぶことで、理想の画像に近づけます。
迷ったは複数のサンプラーを使用して比較検討しましょう。実際に使ってみることで特徴を把握することができます。
まとめ
いかがでしたでしょうか?
Stable Diffusionの「サンプラー」について解説してきました。
今回のポイントをまとめると、以下のようになります。
- サンプラーが異なると出力される画像の特徴も大きく変化することがある。
- サンプラーにそれぞれ特徴があり、サンプリングの速度にも大きく影響する。
- どれを使おうか迷ったときは、使ってみて比較検討!
Stable Diffusionを使用する際、この知識を活かして、最適なサンプラーを選択することで、より高品質な画像生成を目指しましょう!
技術の進化は日々進行しています。しかし、その背後にある基本的な知識や理解は、時代を超えて価値を持ち続けます。今後も、正確な知識を身につけ、技術の進化を楽しみましょう。
今後もStable Diffusionのさらなる活用方法やアップデート情報など、役立つ情報をお届けしていきますので、ぜひお楽しみに!
- Stable Diffusionのプロンプトの見本が知りたい
- 画像生成が思ったようにできない
- 色々なプロンプトを探したい