画像を生成するときに人物を中心にした描写が多くなると思います。大人や子ども、男の子や女性といったように、望む人物をうまく登場させる必要があります。
そういうときに、人物の描写に関わるプロンプト(呪文)を色々と入れ替えることになります。
ここでは、公開されている多くの画像のプロンプトを拝見した上で、人物の描写に関するプロンプトとして使用されているものを中心にまとめています。
プロンプトの中には一般的によく使われているものとそうでないものとがあります。あまり見かけないものや有効性を感じられないものは灰色で表記しています。ですが、さまざまな表現を知っている方が後々役に立つことがあるかもしれません。そうしたことを考慮して、あまり使われていないプロンプトも含めて掲載しています。
なお、これからAIイラストを始めようとお考えの方は、まず以下のページからご覧ください。一緒に学習を進めていきましょう。
人物の描写に関するプロンプト
環境と設定およびプロンプト
こちらに掲載しているプロンプトは「Anything-v4.0.ckpt」というモデルで再現性をざっと簡単に確認したものになりますが、他のモデルや他のプロンプトではまったく有効にならないものも含まれているかもしれません。その点はご了承下さい。
各プロンプトは以下の設定で使用しました。モデルや設定が異なるとプロンプトの効果も変わります。
【使用】
「Stable Diffusion web UI(AUTOMATIC1111版)」
「Anything-v4.0.ckpt」
→ vaeは「anyting-v4.0.vae.pt」
【設定】(初期値のまま)
サンプラー「Euler a」
サンプリング回数「20」
バッチの回数「1」
1回あたりの枚数「1」
幅×高さ「512×512」
CFGスケール「7」
シード値「-1」
プロンプトとネガティブプロンプトはすべて以下のものを使用しています。プロンプトの文頭にある○○を入れ替えて数回ずつ試してみました。これらのプロンプトは必要に応じてコピペしてください。
○○, master piece, best quality, highly detailed beautiful face and eyes, blue eyes, look at viewer, cowboy shot, sky blue hair, solo, moon in the night sky
nsfw, flat color, flat shading, retro style, poor quality, bad face, bad fingers, bad anatomy, missing fingers, low res, cropped, signature, watermark, username, artist name, text
クオリティに関するプロンプトを調整したいという方は以下のページをご覧ください。
さらに、ネガティブプロンプトをいろいろ試してみたいという方は以下のページをご覧ください。
使用する「モデル」によって推奨されている「プロンプト」があることもあるので、「モデル」をダウンロード時に説明を確認してください。
人物の動作、ポーズ、構図等に関するプロンプト
キャラクターの所作や行動などのポーズに関するプロンプトは以下のページにまとめています。このページとあわせて活用してください。
「ControlNet(コントロールネット)」の導入と使い方は以下のページをご覧ください。「ControlNet」を活用することで思いどおりのポーズをとらせることが可能になります。
人物を一人・単独で登場させたいとき
一人の人物を描きたいという場合は特定のプロンプトを入力しておく必要があります。そうしたプロンプトは複数の人物に登場して欲しくないという場合にも有効です。
「solo」や「1 girl」などが代表的なプロンプトになります。実際に多くのイラストに「solo」や「1 girl」などのプロンプトが含まれています。「1 girl」とするときも「solo」を入れて単独であることを強調しているものが多い印象です。
男性を登場させたいのに女性ばかり出てしまう場合は、男性を強調する「プロンプト」を文頭に入れてみてください。何も指定していなかったり指定が弱かったりすると女性が出てきます。
一人・単独に関するプロンプト一覧
solo | 一人・単独 | 一人だけ登場させたいとき 使用頻度はとても高いようです |
1 girl a girl |
女の子 | 入れなくても基本は女性が出てくる 「solo」と併用されていることも多い |
1 boy a boy |
男の子 | 男の子を登場させたいときに |
1 child a child |
子ども | 「solo」や「woman」と したときより明らかに子ども |
1 baby a baby |
赤ちゃん | この表記では赤ちゃんは登場しない ネガティブに「adult」を入れても不可 幼子は後述の方法で登場する |
1 adult an adult |
成人 | 大人を登場させたいときに |
1 old man an old man 1 older man an older man |
高齢男性 中年男性 おじさん |
中年の男性を登場させたいときに |
1 old woman an old woman |
高齢女性 | 若い女性しか登場しません |
a grandpa a grandfather |
おじいちゃん 祖父 |
前者の表現では若い男性 後者の表現では若い女性 |
a grandma a grandmother |
おばあちゃん 祖母 |
どちらも若い女性 |
1 woman a woman |
女性 | 大人の女性を登場させたいときに |
1 man a man |
男性 | 大人の男性を登場させたいときに |
1 female a female |
女性 | 女性を登場させたいときに |
1 male a male |
男性 | 男性を登場させたいときに |
1 person a person |
人物 | 「solo」が一般的な表現 これだけだと女性が出てきます |
生成された画像の見本
a child | an adult |
一人の場合は別のページでもたくさん紹介しているので省略します。
髪型や髪色なども変えてみると面白いかもしれません。
それと併せて顔の表現も工夫してみるとオリジナリティの高いキャラクターが生み出せるかもしれません。
人物を複数・集団で登場させたいとき
「solo」のタグが入っている場合は必ず外してください。「solo」が優先されてしまうか、もしくは矛盾によって画像がうまく生成されません。
5人くらい登場させたいのに出てこないという場合は、横幅を増やしてみるといった工夫をしてみてください。また、モデルによって大人数が出やすいものとそうでないものがあるようです。
2~3人の人物を並べて登場させることは「Latent Couple(ラテント・カップル)」という拡張機能を利用することで容易に実現することができます。「Latent Couple」は画面を分割して各領域ごとにプロンプトを効かせることができるため、左側の人物と右側の人物に別のプロンプトを指定して髪色や服装などをうまく表現することが可能です。
このほか、「MultiDiffusion(マルチ・ディフュージョン)」という拡張機能を利用することで、画像を拡大してたくさんの人を描くという方法もあります。この拡張機能でも人の配置を画面内に範囲指定して、登場人物ごとに髪型や服装を指定して描くことも可能です。詳細は以下のページをご覧ください。
複数・単独に関するプロンプト一覧
group | 集団 | 一人の時や三人の時がある (人数と性別を正確に指定する) |
couple | カップル | 寄り添った二人が登場する 男性と女性または女性と女性 |
wife and husband | 夫婦 | 寄り添った男女が登場する |
friends | 友だち | 友だちは抽象的 一人のみ登場 |
1 girl and 1 boy 1 girl, 1 boy |
女の子と男の子 | 少女のみ登場 男は強調する |
1 boy and 1 girl 1 boy, 1 girl |
男の子と女の子 | 男女が登場する (男性を優先的に記述する必要あり) |
1 woman and 1 man 1 woman, 1 man |
女性と男性 | 女性一人のみ |
1 man and 1 woman 1 man, 1 woman |
男性と女性 | 成人の男女が登場する (男性を優先的に記述する必要あり) |
2 boys | 男子二人 | 男子を二人登場させたいときに |
3 boys | 男子三人 | 男子を三人登場させたいときに |
4 boys | 男子四人 | 4人は稀にしか登場しない →解像度を変更してみる |
5 boys | 男子五人 | 女子一人など →解像度を変更してみる |
many boys multiple boys |
たくさんの男子 複数の男子 |
モデルによっては有効のようです |
2 girls | 女子二人 | 女子を二人登場させたいときに |
3 girls | 女子三人 | 女子を三人登場させたいときに |
4 girls | 女子四人 | 1~3人ランダム →解像度を変更してみる |
5 girls | 女子五人 | 女子一人のみ →解像度を変更してみる |
many girls multiple girls |
たくさんの女子 複数の女子 |
モデルによっては有効のようです |
2 boys and 2 girls 2 boy, 2 girls |
男子二人と女子二人 | 三人程度? 解像度を変更してみる |
2 boys and 1 man 2 boys, 1 man |
男子二人と男性一人 | 前者の表記では三人登場する 後者の表記では二人だけ |
1 mother and 1 baby 1 mother, 1 baby |
お母さんと幼子 | お母さんと幼子を登場させたいときに お母さんが幼子を抱っこしている (ただし、手指の描写に難あり) |
1 father and 1 baby 1 father, 1 baby |
お父さんと幼子 | お父さんと幼子を登場させたいときに お父さんが幼子を抱っこしている (ただし、手指の描写に難あり) |
1 mother and 1 child 1 mother, 1 child |
お母さんと子ども | 母と子を登場させたいときに (子どもはbabyの時より大きいw) |
1 mother and 2 children 1 mother, 2 children |
お母さんと 二人の子ども |
母と子を登場させたいときに (512 pxでは子ども二人がぎりぎり) |
1 father and 1 child 1 father, 1 child |
お父さんと子ども | 父と子を登場させたいときに (後者の表現では出てこない) |
1 father and 2 children 1 father, 2 children |
お父さんと 二人の子ども |
うまく出てこない |
2 boy and students 2 boy, students |
二人の学生 | 二人の学生を登場させたいときに (人物と制服を指定するほうが自然) |
特定の職業の人物を表現したい場合は、職業をプロンプトとして記載するよりも性別と人数を記述した後に、服装や動作を別に指定するといった工夫が必要になります。そのようにして、他の要素と上手く組み合わせて応用を利かせてみてください。
生成された画像の見本
3 boys | 4 boys |
couple | 1 mother, 2 child |
三人や四人の画像も生成できることがあります。解像度を512×512の正方形から変更するともっと上手くいくかもしれません。あとは「ControlNet」を利用すると思いどおりのポーズを取らせて人物をうまく配置できそうです。ですが、私はまだそこまで進んでいません。
なお、親子の画像は「2 children」とするのを忘れて「2 child」としてしまいましたが問題なく生成されています。
その他の人物の描写に関わる要素(変わり種もw)
特定の職業やキャラクターを指定するとそれに基づいた人物が描かれることがあります。そして、背景となる場所を上手くあわせることでより効果的になります。
ここに記載しているプロンプトは他のプロンプトの影響を受けていると考えられる部分もあります。指定したプロンプトは記事の冒頭をご確認ください。
その他の人物に関するプロンプト一覧
1 office worker an office worker |
会社員 | OLぽい服装の女性を登場させたいときに (男を強調しても女性になる) |
1 student a student |
学生 | 背景の影響かファンタジーぽい服 (女子と制服を指定するほうが自然) (例, a girl, school uniform, …, school) |
1 boy, 1 student a boy, a student |
男子学生 | 背景の影響かファンタジーぽい服 (男子と制服を指定するほうが自然) (例, a boy, school uniform, …, school) |
1 teacher a teacher |
先生 | 大人の女性が描かれる (成人とスーツを指定するほうが自然) (例, a woman, suits, ……, school) |
1 nurse a nurse |
看護師 | 看護師(女性)を登場させたいときに (例, a nurse, ……, hospital) (赤十字マークに注意【法令あり】) |
an angel | 天使 | やや雰囲気が天使のようになる? |
a devil | 悪魔 | 角やコウモリのような羽根が生える 黒や白の衣装が多い |
a fighter | 戦士 | 衣装がやや冒険者のようになる (剣や鎧と合わせるなど) |
a wizard | 魔法使い | 衣装が魔法使いのようになる (杖や本と合わせるなど) |
a princess | お姫様 | ドレスを着た女性を登場させたいときに |
a prince | 王子様 | 豪華な衣装の男性を登場させたいときに |
queen | 女王 | 王冠&豪華な衣装の女性を登場させたいときに |
king | 王 | 王冠&豪華な衣装の女性を登場させたいときに |
a robot | ロボット | SF感のあるスーツを着用させたいときに (これは一度試してみてください) |
a cat | 猫 | 猫耳の人物を登場させたいときに (a girl, cat ear なども可) |
a dog | 犬 | 犬耳の人物を登場させたいときに (a boy, dog ear なども可) |
a rabbit | うさぎ | うさ耳の人物を登場させたいときに |
a bear |
くま |
丸い耳の人物を登場させたいときに |
a panda | パンダ | 耳と衣装がパンダっぽくなるwww |
色々な言葉をつい入れてみたくなりますね。
生成された画像の見本
a robot | a bear |
「a robot」という一言でクールなスーツに変身してくれました。近未来やサイバーパンクな世界観とマッチしそうです。
丸い耳のほうは、とても可愛らしいですね。「sky blue hair」というプロンプトを受けて髪色と同色になっています。また、耳の内側は優しいピンク色になっています。
ちびキャラも作れます。詳しくは以下のページをご覧ください。
なお、画風を変化させたり描き込みを増やしたりした場合は「flat LoRA」の導入がおすすめです。詳しくは以下のページをご覧ください。
人物の特徴を明確にして服装や場所と組み合わせる
イラストに含まれる人物は、人物像をどのようにプロンプトに記述するかにかかっています。人物の指定に加えて、それらしい状況が生み出されるように工夫したいですね。
同じようなプロンプトを指定しても、男性が上手く描写されないことが多いようです。この点は、学習に用いた画像が偏っていたことの影響をもろに受けているといえるのではないでしょうか。男性をうまく描写できるようなモデルを採用するというのもひとつの手かもしれません。
また、「難しい条件」や「無理な条件」をプロンプトで指定してしまうと、思いどおりのものが生成されることはほとんどありません。実際、二人の人物を登場させようとしているのに「solo」を消し忘れているといったことがよくあります。そういう点には注意が必要です。
AIに対しては具体的かつ明瞭なプロンプトをもって指示することが適切であると考えられます。