Stable Diffusionのプロンプトで表情を指定しないと、画像を生成するたびに表情がコロコロと変わってしまいます。
笑顔や怒り顔、驚きといった表情や感情を指示するのは基本だといえるでしょう。
しかし、
- 特定の表情にさせるプロンプトの書き方がわからない
- 感情を表すプロンプトだけでは思ったとおりの表情にできない
- どんなに試行錯誤しても望んだ表情で生成できない
上記のような悩みを抱えているのではないでしょうか?
今回は、Stable Diffusionでの生成時に使える、表情に関するプロンプトを中心に紹介します。
あらゆる表情を生み出すためプロンプトを参考にしたい方は、ぜひ最後までご覧ください。
Stable Diffusionの導入方法や使い方については以下の記事で詳しく解説しています。
Stable Diffusionの表情プロンプト(呪文)一覧
Stable Diffusionで表情を変えるときに参考になるプロンプトを、以下の順に一覧で紹介します。
- 笑顔・喜びの表情
- 怒り・憎しみの表情
- 悲しみ・泣きの表情
- 恥ずかしい・照れの表情
- 驚き・恐怖の表情
- 不安・苦痛の表情
- その他の表情
笑顔・喜びの表情
プロンプト(呪文) | 意味 |
---|---|
smile | 笑顔 |
light smile | ほほえみ |
laugh | 笑い |
pleased | 喜び |
happy | 幸せ |
enjoy | 楽しんでいる |
cheerful | 陽気 |
burst out laughing | 爆笑する |
belly laugh | 腹を抱えて笑う |
cracking up | クスリと笑う |
grin | ニヤリと笑う |
smirk | 意地悪な笑顔 |
怒り・憎しみの表情
プロンプト(呪文) | 意味 |
---|---|
angry | 怒り |
frown | しかめっ面 |
furious | 激怒 |
scolding | 叱咤 |
pout | ふくれっ面 |
Annoyed | イライラ |
displeased | 不機嫌 |
glaring | 睨む |
flare nostrils | 広がった鼻孔 |
悲しみ・泣きの表情
プロンプト(呪文) | 意味 |
---|---|
sad | 悲しい |
sorrowful | 悲しみ |
unhappy | 不幸 |
gloomy | 暗い |
lamentation | 悲嘆 |
cry | 泣く |
tears | 涙 |
tearful | 涙ぐんだ |
weep | すすり泣く |
Bawl | 号泣 |
恥ずかしい・照れの表情
プロンプト(呪文) | 意味 |
---|---|
embarrassed | 恥ずかしい |
bashful | 恥ずかしがり屋 |
shy | 照れる |
red cheek | 赤い頬 |
blush | 赤面 |
full-face blush | 顔全体が赤い |
nose blush | 赤くなった鼻 |
ear blush | 赤くなった耳 |
驚き・恐怖の表情
プロンプト(呪文) | 意味 |
---|---|
surprised | 驚いた |
amazed | 驚嘆する |
startled | 飛び上がるような驚き |
dumbfounded | 唖然とする |
shocked | ショックを受ける |
panic | パニックになる |
scared | 怖がっている |
afraid | 恐れている |
gasped | 息を呑む |
disconcerted | うろたえる |
不安・苦痛の表情
プロンプト(呪文) | 意味 |
---|---|
anxiety | 不安 |
worried | 心配している |
nervous | 緊張している |
guilt | 罪悪感 |
painful | 苦しい |
Severe pain | 激痛 |
regrettable | 悔しい |
disgust | 嫌悪感 |
grimace | 顔をゆがめる |
その他の表情
プロンプト(呪文) | 意味 |
---|---|
expressionless | 無表情 |
wink | ウィンク |
sleepy | 眠たい |
serious | 真剣な表情 |
determined | 決意の表情 |
tired | 疲れている |
drunk | 酔っ払っている |
顔のパーツを調整するプロンプトの一覧
顔のパーツの状態を表すプロンプトを追加することで、一言で表現するのが難しい表情も生成できます。
以下で紹介するプロンプトを組み合わせて、イメージした表情に近づけましょう。
- 目の開閉
- 目の状態
- 目線・顔の向き
- 眉毛
- 口
- 化粧など
目の開閉
プロンプト(呪文) | 意味 |
---|---|
open Eyes | 開いた目 |
closed eyes | 閉じた目 |
shutting eyes | 目をつぶる |
half closed eyes | 半分閉じた目 |
squinting | 目を細める |
wide-eyed | 目を見開く |
one eye closed | 片目を閉じる |
目の状態
プロンプト(呪文) | 意味 |
---|---|
bigeyes | 大きい目 |
cute eyes | かわいい目 |
droopy eyes | タレ目 |
single eyelid | 一重まぶた |
double eyelid | 二重まぶた |
glowing eyes | 光る目 |
twinkle in the eyes | キラリと光る目 |
sparkling eyes | 輝く目 |
watery eyes | 涙目 |
streaming tears | 流れる涙 |
empty eyes | 虚ろな目 |
constricted pupils | 収縮した瞳孔 |
slit pupils | 細長い瞳孔(猫目) |
heterochromia | オッドアイ |
目線・顔の向き
プロンプト(呪文) | 意味 |
---|---|
looking at viewer | カメラ目線 |
looking away | 目線を外す |
looking up | 見上げる |
looking down | 見下ろす |
looking back | 後ろを見る |
looking side | 横を見る |
profile | 真横を向く |
look far away | 遠くを見ている |
眉毛
プロンプト(呪文) | 意味 |
---|---|
raised eyebrows | 眉を上げる |
lowered eyebrows | 眉を下げる |
v-shaped eyebrows | V字型の眉毛 |
thick eyebrows | 太い眉 |
short eyebrows | 細い眉 |
口
プロンプト(呪文) | 意味 |
---|---|
open mouth | 開いた口 |
closed mouth | 閉じた口 |
Upturned corners of the mouth | 上がった口角 |
Downturned mouth corners | 下がった口角 |
stick out tongue | 舌を出す |
saliva | 唾液 |
thick lips | 厚い唇 |
red lips | 赤い口紅 |
teeth | 歯 |
sharp teeth | 鋭い歯 |
round teeth | 丸い歯 |
fang | 牙 |
化粧など
プロンプト(呪文) | 意味 |
---|---|
makeup | 化粧 |
heavy makeup | 厚化粧 |
light makeup | 薄化粧 |
no makeup | ノーメイク |
pink cheek | ピンクのチーク |
eye shadow | アイシャドウ |
mascara | マスカラ |
eyeliner | アイライナー |
(false) eyelashes | (つけ)まつげ |
freckles | そばかす |
mole | ほくろ |
mole under eye | 目の下のほくろ |
mole under mouth | 口元のほくろ |
Stable Diffusionの表情に関するプロンプトについては「EdgeHUB」の「Stable Diffusionで表情のバリエーションを豊かにする手軽な方法」記事も参考になるので、是非ご覧ください。
Stable Diffusionで表情をうまく作るコツ
Stable Diffusionで思い通りの表情を生成するためのコツを4つ解説します。
- 強調する構文で書いてみる
- プロンプトを組み合わせる
- モデルを変更してみる
- 表情に特化したLoraを活用する
強調する構文で書いてみる
特定の単語を強調してプロンプトを書くことで、思い描いた表情に近づけやすくなります。
たとえば、喜びの感情の強さを1.5倍にしたいときは「pleased」の代わりに「(pleased:1.5)」と書いてみましょう。
あまり数値を大きくしすぎると絵が崩れてしまう場合があるので、数値を調整しながら強調させてみてください。
強調も含めた、プロンプトの特殊な書き方については以下の記事で紹介しています。
プロンプトを組み合わせる
複数の要素を組み合わせて複雑な表情を作りましょう。
例として、怒りながら泣く表情を作りたいときは「angry」と「tears」を組み合わせます。
さらに目や眉に関するプロンプトを追加すれば、生成される絵の精度をより高められるでしょう。
思った表情にならない場合は、別の類似したプロンプトで試したり、一部の単語に強弱を付けたりしてみてください。
モデルを変更してみる
使用するモデルデータを変更するのも一つの手です。
学習させているプロンプトはモデルによって異なるため、今回紹介した単語が使えないケースも存在します。
一部のモデルでは「tsurime」や「jitome」のような日本語的な単語や「:d」のような顔文字が使えることも。
表情に特化したLoraを活用する
使用しているモデルが使いたいプロンプトに対応していない、あるいは特殊な表情にさせたいときは、表情に特化したLoraを活用しましょう。
Loraは追加学習させるためのデータで、指定されたトリガーワードをプロンプトに入力して使用します。
表情に関するLoraは数多く公開されており、学習できる内容もさまざま。
Civitaiなどの配布サイトで「expression」と検索し、表情関係のモデルデータをチェックしてみてください。
Stable Diffusionの表情に関するQ&A
Stable Diffusionの表情に関する、よくある質問と回答を紹介します。
- 紹介されたプロンプトは他のAI画像生成ツールでも使えますか?
- ここで紹介されていない表情にさせたいときはどうすればいいですか?
- 表情だけ変えた表情差分を作る方法は?
- 表情をランダムに生成することはできる?
- 紹介されたプロンプトは他のAI画像生成ツールでも使えますか?
-
smileなどの基本的な表情は他のAI画像生成ツールでも使えます。
ただし、モデルデータが違う場合と同様に、AI画像生成ツールが異なると有効なプロンプトが変わります。
実際にプロンプトを入力して画像を生成し、どの程度の効果があるのか検証してみるとよいでしょう。
- ここで紹介されていない表情にさせたいときはどうすればいいですか?
-
表情の呼び方を英語に翻訳してプロンプトに入力すればOKです。
たとえば笑顔にさせたいときは「笑顔」で翻訳すると表示される「smile」を入力します。
翻訳した単語を入力しても効果がない場合は、顔のパーツに関するプロンプトを組み合わせてイメージに近づけるとよいでしょう。
人物はどっちを向いているか、目や口は開いているか、といった詳細を突き詰めて、1つずつプロンプトに書き出してみてください。
該当する表情のLoraがあれば、それを導入するのが手っ取り早いでしょう。
- 表情だけ変えた表情差分を作る方法は?
-
人物を固定して表情が異なる差分の画像を生成するには、拡張機能のADetailerを使うとよいでしょう。
ADetailerは画像から特定の部位を検出し、修復する拡張機能です。
ADetailerをインストールするとシード値入力欄の下にADetailerの設定が追加されるので、適切なモデルを選んで表情のプロンプトを入力してください。
選択するモデルによって、修正する範囲や仕上がりが異なります。
モデル名 修正対象 face_yolov8n.pt イラスト、実写系の顔 face_yolov8s.pt イラスト、実写系の顔 hand_yolov8n.pt イラスト、実写系の手 person_yolov8n-seg.pt イラスト、実写系の人物(体全体) person_yolov8s-seg.pt イラスト、実写系の人物(体全体) yolov8x-worldv2.pt 「ADetailer model classes」の項目で指定したもの(person, bicycleなど) mediapipe_face_full 実写系の顔 mediapipe_face_short 実写系の顔 mediapipe_face_mesh 実写系の顔 mediapipe_face_mesh_eyes_only 実写系の顔 None ADetailerを使用しない 差分を作る画像に合わせて「face_yolov8n.pt」や「mediapipe_face_full」を選ぶとよいでしょう。
なお、ADetailerは古いバージョンのWebUIでは使えないため、シード値の下に表示されない場合は新しくWebUIをインストールし直してください。
Stable Diffusionの使い方とコツを初心者向けに解説!無料の画像生成AIとは? | meta land 本記事では、自由度の高い画像生成AIツールであるStable Diffusionについて解説しています。導入方法やプロンプトの入力についてもわかりやすく解説していますので参考にし… - 表情をランダムに生成することはできる?
-
拡張機能のDynamic Promptsを使用すれば、あらかじめ指定した表情をランダムに生成することが可能です。
Dynamic Promptsを使用する際は、インストールした後にシード値の下に追加される項目から「Dynamic Prompts 有効化(enabled)」を探してチェックを入れてください。
その後、プロンプトに「{A|B|C}」のように入力することで、AとBとCのいずれかがランダムで反映されます。
たとえば、喜びと怒りと悲しみのいずれかをランダムで選択したいときは、プロンプトに{pleased|angry|sorrowful} と入力しましょう。
{0.5::pleased|0.3::angry|0.2::sorrowful} のように重みを付けて、選択される確率を調整することもできます。
まとめ
本記事では、Stable Diffusionの表情について解説しました。
最後に、記事の内容をおさらいしておきましょう。
- 笑顔や怒り、泣きなどの表情をプロンプトで指定できる
- プロンプトを組み合わせたり強調させたりすることで、さまざまな表情を生成できる
- モデルやLora、拡張機能を活用すれば表現の幅が広がり、品質のよい画像を作りやすくなる
人物の表情は、絵の雰囲気や印象を左右する大きな要素の一つです。
今回紹介したプロンプトを参考に、魅力的な表情をした人物をどんどん生み出しましょう。
プロンプトの書き方に困ったときは以下の記事も参照してみてください。