見出し画像

Midjourneyのプロンプトについてご質問をいただきました。その1(実践編)

 このnoteにはMidjourneyのプロンプトについての私なりの考え方とその方法の一例が書いてあります。

 それは簡単に言うと「文法ガン無視」「思い付き」の生成法です。

 「これが正しい」とかそんなことはまったくないので、「へ~こんな方法もあるのか~」ぐらいの軽い感じでご覧くださいませ。

 プロンプトは、難しく考える人から習うと難しくなり、簡単だと考える人から習うと簡単になります。これが私の考え方の基本です。もちろん習う必要もありません。自己流で問題無しです。




「上村松園さん」のお名前を使用することで、ちょっと懐かしい雰囲気の絵をAIさんに生成していただこうと思います。

[参考] 上村松園さんの絵はpublic domainです。

[public domain]
上村松園「春芳」1940年

Q : public domainとは?
A : パブリックドメイン(public domain)とは、著作物や発明などの知的創作物について、著作権をはじめとする知的財産権が発生していない、誰でも利用できる状態のことです。日本語では「公有(こうゆう)」または「公共に帰した」と訳されます。

 ただし、パブリックドメインにある知的創作物であっても、以下の場合には、利用に制限があります。

・ 著作権法の規定に抵触する利用
・ 公序良俗に反する利用
・ 著作者の名誉・声望を毀損する利用

 パブリックドメインの知的創作物は、著作権の制限を受けずに利用できるため、さまざまな場面で活用されています。例えば、教育や研究、文化活動などの分野で、パブリックドメインの知的創作物が利用されています。

Bard

実例

 今回のお題は「ちょっと懐かしい雰囲気の絵」ということにしてみました。この時点ですでに思い付きなので深い理由はまったくありません。(画像生成はMidjourney v6.0(α)を使用)

 まずはただの"girl"から試してみますが、題材はboyでもDogでもCatでも何でもOKです。風景画でも最高!!

 ただし禁止用語を使うと警告が出ますので、もし出たら次回からはその言葉を使うのをやめましょう。

girl --ar 1:1 --v 6.0

 すると、4種類の絵が1枚の画像にあらわれました。そしてこの絵が気に入ったのならもう完成です!!あっという間!!簡単!!すてき!!!

 ここで「日本っぽい感じにしよう」と思い付きました。


 というわけで、プロンプトに日本っぽくなるような単語を足します。とりあえず着物を着ていただくということで"kimono girl"で生成しました。簡単ですね。

kimono girl --ar 1:1 --v 6.0
右上と右下、v 6.0でも指がダメすぎる・・・。

 「プロンプトが思い浮かばない・・・」という方は、この今回のプロンプト「kimono girl --ar 1:1 --v 6.0」をそのまんまMidjourneyに貼り付けてください。--ar 1:1というのは真四角という意味です。

 どんな絵が出ましたか?

 たぶん私とはまた別のkimono girlが出たと思いますが、それが良いのです!!

 プロンプトを送信してから気づいたんですが、実は着物は正しく表現されないことが多い衣服なので注意が必要です。

 私は一時期着物にハマっていたことがあります。でも着物警察みたいな人ではありません。着物は好きなように自由に着たら良い。足元がブーツでもスニーカーでもいいじゃないですか。髪色が黒じゃないとダメ?ピンクでもいいでしょ。帯の位置とか形とか、着崩れていても大丈夫。でも合わせが逆なのは・・・でも分かっていてあえて死装束にするというのもCool!!

 話がそれましたが、そもそも着物の構造をAIはガン無視して生成してくださいますので困ります。たまに完璧っぽい着物姿が出ることもありますが稀です。なので基本”とりあえず見られる”ぐらいまでは、ひたすらやり直しています。

 着物に限らず、AIは見た目しか学習していないということは常に実感しています。でも気にしない人は気にしないし、私は「自分自身が納得いっていればそれで良い」と思っています。

 そういえば勝手に和傘っぽいものが登場していますね。そして傘は中棒の部分がズレることが多いので危険な小道具です。

 案の定、今回も盛大に軸がズレています。そして傘を差せば持ち手を握ることになるので、ほとんどの場合崩れた手指が表示されて絵が台無しになります・・・。AIアートとは、気に入らない部分がまぁまぁマシになるまでひたすらやり直すものなのです。

voxeloops

 とりあえず日本っぽくなったような気がいたしますので次の工程へ。


 続きまして思い付きで"by uemura shoen"を追加し、kimonoは削除。

 余談ですが、上村松園さんってみなさんご存知ですか?(知らなかったという方はいますぐ検索)

girl, by uemura shoen --v 6.0

 ご覧ください、kimonoという言葉を入れなくてもkimono girlよりそれっぽく絵柄が変化しましたので"uemura shoen"は有効だということが分かります。これがお名前の力です。(私としては、ちょこっと雰囲気が出たらもうそれでOK)

 ただ、この絵はどう見ても上村松園さんの絵とは思えませんね。これは、いくら絵がパブリックドメインだとは言ってもあまりにも上村松園さんそっくりだと問題になりそうなので配慮がされているからだと思っています。

 詳細は不明ですが「uemura shoen = こういう雰囲気」という風に学習したのか、何らかの影響で今回はこうなったのでしょう。

 逆に、お名前を入れたのにただのgirlと同じ絵が出たら、それは意味のない言葉ということなので削除しています。(放置することもあります)

 ・・・話がそれましたが、私の印象では"kimono girl"というプロンプトの絵よりも、kimonoと書かずに"uemura shoen"と書いた方が、どこか懐かしい雰囲気になっているように思います。なので、とりあえず当初の目的が達成されたと言えるので基本のスタイルはこれにて完成です。

 ただ、kimonoを書いておかないと洋服になったりもしますので、着物を着てほしい時は入れて置くと安心です。

 4種類の絵の統一感については、まぁまぁでしょうか。左下がやや中華風のような気がしますが、どれを切り出すか否かは各個人の好みですね。


この段階ですでに違いが出る。

 このたった3回の生成だけで12種類の絵が出ています。そしてそれぞれの絵に対して同じように主観で「いい感じかどうか?」の判断をいたします。

 つまり、AIアートは爆速で絵が完成しますので、多量に出来すぎるとかなり忙しくなるのです。生成は機械任せ、その後の判断は人間が行います。

 好みの絵が出たらアップスケールボタンを押して切り出し、好みの絵が出なかったら再生成、プロンプトの改造が必要であれば適宜行うというのが私のいつもの流れです。(ダメだと思ったらバッサリ捨てる!!)

 プロンプトは大切ではありますが、私は「生成した後にどうするのか?」の方が重要だと考えています。すごいプロンプトを入手しても、生成後の判断は人それぞれですからね。そこで差が出ます。1回目で完璧なのが出ればよいのですがなかなか・・・。

 たとえば今回の絵を私が改造するとしたら、このあと「表情」「人数」「場所」「時間」「画角」「質」「縦横比」なんかを付け加えます。そしてプロンプトを送信し、生成された絵を見てまた次どうするかを考えます。


というわけで、たとえばこんな感じ。

[close-up, portrait] [kimono girls] [two girls, smile, beach, night, from above, watercolor, by uemura shoen] --v 6.0

[close-up, portrait] [kimono girls] [two girls, smile, beach, night, from above, watercolor, by uemura shoen] --v 6.0

 「さっきと絵柄が変わってる!!」と思うかもしれませんがこれで良いのです。私は素敵な絵が見られればそれでOK。百発百中のプロンプトを探すのが目的ではないのです。絵柄が変わったってキニシナイ!!

 絵柄が変化した原因としては、プロンプトをいろいろと付け足したからこうなった気がしますが、本当のところは分かりません。

 改めて拝見するとnightが反映されていませんが、良い雰囲気の絵が出て私はご機嫌です。ちなみに、画像をアップスケールして保存し、iPhoneのアプリを使って周囲を黒い線で囲ってあります。(投稿するときはいつもそうしています)

 そしてuemura shoenを削除したのが次の絵です。


[close-up, portrait] [kimono girls] [two girls, smile, beach, night, from above, watercolor] --v 6.0

 さらに画風が変わりましたね!!今度はちょっとnightが反映されてるっぽいかしら?

[close-up, portrait] [kimono girls] [two girls, smile, beach, night, from above, watercolor] --v 6.0

 「こっちの方がいいんじゃないの?!」と思ったので即・切り出し。


プロンプトについて解読。

[close-up, portrait] [kimono girls] [two girls, smile, beach, night, from above, watercolor, by uemura shoen] --v 6.0

Prompt for Midjourney

close-up, portrait : 近距離の上半身
two girls, smile : 二人の少女、笑顔
beach, night : 浜辺、夜
from above : 上から(視点の位置)
watercolor : 水彩画
by uemura shoen : 上村松園(雰囲気)

 邦訳するとこのような内容になります。もちろんコレを覚えようとしなくていいんですよ!!こんなの思い付きで付け加えただけですから。文法とか知らないのでいつもテキトーです。

 細かいことは後回し。とりあえず生成してから「もうちょっとこうなったらいいな」と思った部分だけ付け加えればOKです。


単語を並べるだけの簡単な方法

 繰り返しますが、私はプロンプトの文法とかは一切何も気にせずに生成しています。単語を並べるのが基本。でもたまに英文も使います。

 やり方は簡単。まず日本語で簡潔な短文を書いてから、それを翻訳サイトで変換してコピーします。あとはMidjourneyに戻って貼り付けるだけ。

 どんな内容にするかは思い付きでOK!!頭の中のイメージを言語化すれば良いのです。どんな突飛なものでも大丈夫。AIがテキトーに「こんなのどうですか?」という感じで生成してくださいます。

 生成後のプロンプトの改造も、英文の文体を変えるとかではなく単語の順番を思い付きで並べ替えたり、追加や削除するだけなことが多いです。

 ただ、唯一お手本として採用しているのは "/describe" というコマンドで分析したときに登場する"in the style of"という言葉と、Community Feedで見つけた中括弧 [] による組み方です。これらについてはまた別のnoteにてご紹介しますが、先ほどのプロンプトがその一例になります。

 私の感覚では"in the style of""art by"とか"by"だけでも代替出来るような気がしています。使い分けもテキトー。すべては思い付きです。

 たとえばプロンプトの冒頭に[art by hokusai]などと入れてみたり、途中に[in the style of impressionism]を放り込んだりすると絵が変わりますよ。なんなら造語でも構いません。それによって変化するかどうかはAI次第なので、生成された絵を見た後に適宜判断しています。


[おまけ情報] Q : 画像生成系のAIは、プロンプトを文章で組んだ場合と、単語の羅列で組んだ場合とではどちらが生成しやすいのですか?

AIチャットであるBardさんに聞いてみました。

Q : 画像生成系のAIは、プロンプトを文章で組んだ場合と、単語の羅列で組んだ場合とではどちらが生成しやすいのですか?

A : 画像生成系のAIは、プロンプトを文章で組んだ場合の方が、単語の羅列で組んだ場合よりも、生成しやすい傾向にあります。

 その理由は、文章には、単語の羅列よりも、画像の構図や雰囲気、意図などを明確に伝えることができるからです。

 例えば、文章で「夕暮れの海辺で、波打ち際で遊ぶ犬」とプロンプトを組んだ場合、AIは、夕暮れの空、海、波打ち際、犬などの要素を認識し、それらを組み合わせて、夕暮れの海辺で犬が遊んでいる画像を生成することができます。

 一方、単語の羅列で「夕暮れ、海、波打ち際、犬」とプロンプトを組んだ場合、AIは、夕暮れ、海、波打ち際、犬の各単語を認識しますが、それらをどのように組み合わせればよいのかが明確ではありません。そのため、生成される画像は、夕暮れの海辺で犬が遊んでいる画像とは限りません。

 もちろん、単語の羅列でも、十分に意図を伝達できる場合もあります。例えば、「夕暮れ、海、波打ち際、犬、遊ぶ」とプロンプトを組んだ場合、AIは、夕暮れの海辺で犬が遊んでいる画像を生成できるでしょう。

 しかし、一般的には、文章でプロンプトを組んだ方が、画像生成の精度が高くなると言えます。

また、文章でプロンプトを組む際には、以下のような点に注意すると、より精度の高い画像を生成できるでしょう。

画像の構図や雰囲気などを具体的に伝える
画像に含めたい要素をすべて伝える
余計な情報を入れすぎない

 これらの点に注意して、プロンプトを組むことで、より理想的な画像を生成できるでしょう。

Bardさん

まとめ

私は単語をテキトーに並べる派

 私は「単語の羅列派」の人です。本当にテキトーに並べます。並べ替えもテキトー。そして基本的にAIまかせ。まず単語の羅列だけを送信して、返って来た絵を見てから修正を加えるという方法で生成しています。

  先ほどの回答から引用すると・・・

一般的には、文章でプロンプトを組んだ方が、画像生成の精度が高くなると言えます。

Bardさん

 ・・・ということだそうで、確かに私の感覚としてもそんな感じがします。どうしてもその場面が欲しい時は英文で、あとは要素として入れてほしいものを単語でちりばめておいて、それをどうするかはAIまかせというのが私がやっている方法です。私がすべてをコントロールしないし、出来ない。やるのはちょっとした調整だけ。

 そしてその先の判断は私の直感で行っています。つまり思い付きです。そしてこのnoteにはここまでで9回「思い付き」という言葉が出て来ました。

 でも「思い付き」でやってはいますがこだわりがないという意味ではありません。逆に常人の1000倍ぐらいのこだわりでダメ出ししまくっているのが私です。11万枚生成して10万枚はボツですから。

 私の直感は私からしか出ないものですし、みなさんの直感も、それぞれのみなさんからしか出せません。マネなど不可能!!私はここが重要だと思っています。

 同じAIサービスを使っていると、どうしても似たような絵柄になりがちです。特にMidjourneyには「プロンプトを共有してみんなで利用する」という考え方があります。他人のプロンプトをそのまま使うためのメニューが標準で用意されていたり、似たような画像の検索も出来ます。なので人気のある絵はみんなが真似をして、そしてどんどん使う、別のものに応用する、というような文化があるように感じています。(違うのかな?)

 そしていまブラウザ版のalpha版が限定版として稼働中ですが、Discordで取られたアンケートを基に新しい機能が実装されたりもしています。

 以上、話が飛びまくってしまいましたが「Midjourneyのプロンプトについてご質問をいただきました。その1(実践編)」をお届けしました。

 そのうち第二弾もやります。

この記事が気に入ったらサポートをしてみませんか?