Stable Diffusionで人物を描く

このセクションではStable Diffusionで人物を描く方法を解説します。画像生成にはStable Diffusion内蔵の画像生成サービスDreamStudioを使用します。

シンプルなプロンプトでも画像は生成できる

Stable Diffusionで人物を生成する場合、シンプルに「man」や「woman」と入力しても問題なく生成されます。

試しに単一のプロンプトで画像を生成してみます。

Stable Diffusion Men Stable Diffusion woman

生成する度に画像は変わりますが、高品質な画像が生成されるのが分かります。

条件を細分化しプロンプトに反映する

シンプルなプロンプトでも、それなりに高品質な画像は生成されます。しかし、イメージに沿った画像が必ずしも生成されるとは限りません。特に業務で画像生成を使う場合、要望に沿った確度の高い画像が求められます。

こうしたケースでは、生成したい画像をゴールとして設定し条件を満たすようプロンプトを追加していきます。基本的には以下のような条件を追加していきます。

  • どのようなタイプの画像か(油絵風、写真、イラスト)
  • 外見(人種、性別、服装、表情)
  • ポーズ(座っている、立っている)
  • 場所(公園、海岸)

さらに人物写真の場合、「A professional color photograph(プロのカラー写真)」 「fujifilm(フジフィルムのカメラで撮影したという意味)」などのプロンプトを含めると良い結果が得られます。

目的をイメージし画像を生成する

それでは先にゴールを決めて画像を生成していきましょう。シンプルなプロンプトからスタートしプロンプトを追加していく過程でどのように変化していくか見ていきます。

チュートリアルでは、以下のような条件の画像をゴールに生成します。

  • 20代女性
  • 金髪,青い瞳
  • 白いウェディングドレス
  • 場所は教会

プロンプトは日本語よりも英語の方が精度が高くなります。Google翻訳DeepLのような翻訳サービスを使い英語で入力します。

20代女性

「20-something woman」のプロンプトで出力します。

Stable Diffusion 20-someting woman

女性という指示以外はないので、この時点で目的に沿った画像は生成されません。

外見を追加

「Woman in her 20-something with blue eyes and blonde hair」のプロンプトで出力。

Stable Diffusion Woman in her 20-something with blue eyes and blonde hair

まだ花嫁らしい画像は生成されません。

服装を追加

次にウェディングドレスを追加してみましょう。「20-something woman with blue eyes and blonde hair in wedding dress」

Stable Diffusion 20-something woman with blue eyes and blonde hair in wedding dress

ウェディングドレスというプロンプトでAIが「結婚式」「花嫁」というワードを想起しているのが分かります。

仕上げ

最後に場所などのプロンプトを盛り込み仕上げていきます。最終的なプロンプトは以下のように入力しました。

「A professional color photograph, 20-something bride with blue eyes and blonde hair in a pure white dress in a church」

Stable Diffusion 20-something bride

イメージ通りの画像が生成できました。

このようにゴールを決めてプロンプトを細分化していくとイメージに沿った画像を生成することができます。