Technology部の町田です。
生成AIが台頭しはじめ早くも1年以上が経ちましたが、特に進歩がすさまじい技術の1つが画像生成AIです。画像生成AIを使えば、数秒で画像を生成できるようになりました。
ただし、自分がイメージしたような画像を生成するには、プロンプトがとても重要です。
そこで今回は、思い通りの画像を生成するためのプロンプト作成のコツをまとめました。
代表的な画像生成AIツールであるStable DiffusionとMidjourneyの使い方とあわせ、プロンプトの作成ポイントをお伝えします。
- 生成AIを業務で活用するには…
- 生成AIをビジネスや業務で活用するためには、導入時に直面する課題・リスクについても考慮する必要があります。生成AIの活用をご検討中なら、こちらのページで紹介している生成AIコンサルティング・導入支援を得意とする会社へご相談してみてください!
画像生成AIとは
画像生成AIとは、人工知能を利用しプロンプトという指示文から新しい画像を作り出すツールやサービスのことを差します。アルゴリズムを用いて大量の画像データを学習し、特定の指示やキーワードに基づいてリアルな画像を生成します。
代表的な画像生成AIツールにはStable Diffusionやmidjourneyなどがあります。
Stable Diffusionとは
Stable Diffusionの特徴
Stable Diffusionは、英国のStability AI社が開発した画像生成AIサービスです。ソースコードが公開されており、誰でも無料で使えます。Stable diffusionでは”モデル”と呼ばれる、画像生成のアルゴリズムを使用し画像生成をおこないます。
どのモデルを使用するかによって実写風の画像やイラスト調の画像など、生成される画像が大きく変わります。モデルに加え、Loraという追加の学習データを組み合わせることで、あらかじめ生成される画像の方向性を指定可能です。モデルやLoraはcivitaiなどのサイトでダウンロードできます。
ソースコードを用いての環境構築が必要となりますが、モデルやLoraを用いることであらかじめ生成される画像の方向性を決めれることや、豊富な拡張機能などを用いることで人物の顔やポーズ、服装を固定したりなど、自由度の高い画像を生成できるのが特徴です。
Stable Diffusionの使い方
Stable Diffusionの使い方は、次のとおりです。
- 環境構築をおこなう
自身のPCや、Google Colaboratoryなどのクラウドサービス上で環境構築をおこないます。Stable Diffusionはオープンソースなので様々な形で利用できますが、その中でもブラウザ上で簡単に操作ができるWebUIが使いやすくおすすめです。 - Stable Diffusionを起動する
構築した環境でStable Diffusionを実行するとブラウザでWebUIを起動します。
- モデルや画像サイズなどを設定をする
使用するモデルや生成する画像サイズ、1度に生成する枚数などを設定します。 - プロンプトを入力する
プロンプトの入力欄に生成したい画像のイメージを説明するプロンプトを入力します。 - 画像を生成する
Generateボタンを押して、画像を生成します。
関連記事:画像生成AI「Stable Diffusion」の使い方をていねいに解説も参考にしてください。
- 「とりあえずStable Diffusionを試してみたい!」という方に
- 「環境構築とかせずに、とりあえず使ってみたい」という方にはseeArtというサイトがおすすめです。無料プランだと1日に生成できる画像に限りがありますが、GoogleやDiscordアカウントと連携してログインするだけで、すぐに画像生成できます。
Midjourneyとは
Midjourneyの特徴
Midjourneyはプロンプトを入力するだけでDiscord上で動作するため、Discordアカウントさえあればすぐに使うことができます。2023年12月にリリースされた最新バージョンであるMidjourney V6では、実際の写真と比べても遜色ないクオリティの画像が生成できるようになりました。
Midjourneyの使い方
- Discordアカウントを作成する
Midjourneyを利用するには、Discordアカウントが必要です。持っていない方は新しく作成してください。 - Midjourneyの招待を受ける
Midjourneyの公式サイトトップページから”Join in the Beta”というボタンを押すと、専用Discordサーバーへの招待を受け、承認するとDiscordサーバーに参加できます。
https://www.midjourney.com/ - チャットルームを開く
Discordサーバー参加後、左側のチャンネル一覧にある”newbies-25″や”newbies-63″など、”newbies-数字”と書かれたチャンネルを開きます。”newbies-数字”は初心者専用チャンネルで、Midjourneyのサーバーに参加するとどれかが自動で割り当てられ、このチャンネルの中で画像生成ができます。
- プロンプトを入力
チャンネル内でテキスト入力欄に”/imagine”と入力すると、プロンプトを入力できるようになります。プロンプトの後ろにパラメーターを付けることで使用するバージョンやアスペクト比を変更することも可能です。
- 生成
プロンプトを入力し、Enterで送信すると画像が生成されます。
関連記事:画像生成AI「Midjourney」の始め方・使い方をデザイナーが丁寧に解説しますも参考にしてください。
画像生成AIのプロンプト作成のコツ
思い通りの画像を生成するためのプロンプトはどのように作ればよいのでしょうか。プロンプトの基本と、よいプロンプトを作るためのコツをご紹介します。
プロンプトの基本
Stable Diffusion、Midjourneyともに、生成したい画像に関する指示を短い英単語に分けカンマで区切って入力します。AIがその単語の組み合わせをもとに画像を生成します。Midjourneyでは日本語に対応していないため、英語でプロンプトを記載する必要があります。たとえば「夕方に公園で遊ぶ子どもたち」であれば、
children playing in a park, sunset,leaves changing color,
といった感じです。
分かりやすく具体的な指示を
プロンプトは、明確にかつ具体的に記載することが重要となります。画像生成AIでは、具体的に記載のない要素はAIが補完して生成するため、違うイメージの画像が生成されることがあります。なるべく具体的に詳細に記載することでAIが補完する要素を減らすことができます。
たとえば、猫を書きたいときに単に”かわいい猫”と記述するよりも”窓辺で日向ぼっこする白いマンチカン”と詳細まで具体的に記載することで、よりイメージに近い画像を生成できます。
例としてMidjourneyで”a cute cat”とだけ入力して生成してみます。
プロンプト
a cute cat
猫の色や種類を指定していませんでしたが、どれも茶色のスコティッシュフォールドのように見えます。これはMidjourneyが「猫 = 茶色のスコティッシュフォールド」のイメージを強く持っているためだと考えられます。また、テイストもイラスト寄りのもの、実写寄りのものがそれぞれあります。
続いて、”窓辺で日向ぼっこする白いマンチカン”をイメージし、猫の種類や色、シーンを特定したプロンプトを入力してみます。実写テイストの画像にするためにphoto realisticというワードも追加します。
プロンプト
photo realistic,A white Munchkin cat with short legs is peacefully basking in the warm sunlight streaming through the window. Cozy,serene,soft lighting
“かわいい猫”とだけ入力したときに比べ、かなりイメージしたものと近い画像が生成できたかと思います。このように、イメージを具体的な単語に落とし込み、詳細に記載することで質の高い画像を生成可能です。
先に記述した内容の優先順位が高い
プロンプト内では、先に記述したプロンプトほど生成画像に強い影響を与えます。そのため、プロンプトに記載する要素の順番は以下が目安となります。
画像全体に影響のある要素(品質やテイスト)→主役となる要素(人物や動物、建物)→服装や特徴→背景や構図
ただしこれはあくまでも目安なので、特に優先したい要素がある場合はなるべく前に持ってくるなど調整するとよいでしょう。
重みづけ
Stable Diffusion,Midjourneyともに、プロンプト内の特定の単語を重みづけすることで影響を強めたり弱めたりすることができます。それぞれ以下の方法で重みづけができます。
重みづけ – Stable Diffusion
Stable Diffusionでは、キーワードに ( ) , [ ]をつけるか、直後にコロンをつけて数字を指定することで、強調もしくは影響を抑えることができます。カッコと数字を同時に使うと、重ねがけすることも可能です。
重みづけによってどのように変化するのか実際に試してみましょう。
使用モデル:Beautiful Realistic Asians Brav5
プロンプト
8k quality,masterpiece,a women,rain,
プロンプト
8k quality,masterpiece,a women,((rain:1.2)),
2つの結果を比べると、“rain”の重みづけによって雨の要素が強くなっていることがわかります。重みづけの影響度は他の要素との組み合わせにもよるため、試しながら調整することをおすすめします。
重みづけ – Midjourney
Midjourneyでは、キーワードの直後に::と数字を入力することで重みづけすることができます。
例として、犬とロボットを組み合わせた画像を生成してみます。
犬を2、ロボットを0.5とした場合と、逆に犬を0.5、ロボットを2とした場合それぞれ比較してみます。
プロンプト
dog::2 , robot::0.5
プロンプト
dog::0.5 ,robot::2
犬を2、ロボットを0.5とした場合は犬をベースとしたロボットの画像が生成されたのに対し、犬を0.5、ロボットを2とした場合はほぼ犬要素がなくなっていることがわかります。重みづけを変えることで同じキーワードの組み合わせでも全く違う画像になることがわかります。
ネガティブプロンプト
ネガティブプロンプトとは、通常のプロンプトとは逆で、生成画像に含めたくない要素を指定するプロンプトです。描きたくないものや、どうしても不自然になってしまう要素をネガティブプロンプトに指定することで、生成画像をコントロールできます。
ネガティブプロンプトの書き方 – Stable Diffusion
Stable Diffusion WebUIではネガティブプロンプトの入力欄があるので、ここに通常のプロンプトと同様に表示させたくない要素を入力するだけでネガティブプロンプトを適用できます。
Stable Diffusionの場合、ネガティブプロンプトはいらない要素を除くだけでなく品質や雰囲気に大きく影響します。
まずはネガティブプロンプトを使わず、「品質 + “a girl”」 のみのプロンプトで画像を生成してみます。
使用モデル:Beautiful Realistic Asians Brav5
プロンプト
8k quality,masterpiece,a girl,
プロンプトに指定していませんが、西洋の雰囲気を持った少女の画像が生成されました。十分きれいですが、顔が少し人工的な印象があります。
次に、ネガティブプロンプトに”worst quality”という低品質を避けるワードを入れてみます。
プロンプト
8k quality,masterpiece,a girl,
ネガティブプロンプト
worst quality
雰囲気が変わり顔もきれいになったことがわかります。
さらに、”worst quality”に重みづけをして、ネガティブプロンプトを強めてみます。Stable Diffusionでは、プロンプトだけでなく、ネガティブプロンプトにも重みづけをすることができます。
プロンプト
8k quality,masterpiece,a girl,
ネガティブプロンプト
(worst quality:2)
生成された画像は雰囲気がさらに変わり、かなりリアルな顔になっています。このように、Stable Diffusionではネガティブプロンプトが品質に大きく影響します。
特に”worst quality”や”low quality”などの低品質を避けるネガティブプロンプトは必須といっても過言ではありません。
ネガティブプロンプトの書き方 – Midjourney
Midjourneyの場合、ネガティブプロンプトはパラメータ”‐‐no”で記述します。
具体的には、通常のプロンプトのあとに
--no ネガティブプロンプト1, ネガティブプロンプト2・・・
と付け加えることでネガティブプロンプトが有効となります。
記載する要素は、通常のプロンプトと同様にカンマ区切りで並べます。まずはネガティブプロンプトなしで渋谷のネオン街を生成してみました。
プロンプト
People bustling through the crowded streets of Shibuya, neon lights flashing, vibrant atmosphere, bustling city life
すると、プロンプトでは指定していない雨の描写が含まれています。夜のネオン街 = 雨のイメージが強いのでしょうか。
そこで同じプロンプトに加え、ネガティブプロンプトに雨と傘を記述することで、要素を排除します。
プロンプト
People bustling through the crowded streets of Shibuya, neon lights flashing, vibrant atmosphere, bustling city life --no rainy, umbllela
同じプロンプトでも、ネガティブプロンプトを用いることで雨ではないシーンを生成できました。
プロンプトの作成例
Stable Diffusionと Midjourneyで生成した画像と実際のプロンプトを紹介します。
Stable Diffusion「正座する女性」
プロンプト
8k quality,masterpiece, A serene scene of a woman dressed in a traditional Japanese kimono sitting seiza-style with good posture on tatami mats. Soft sunlight streams through a nearby shoji screen,casting gentle shadows on the scene. The room is adorned with minimalist decor,featuring a simple flower arrangement and a peaceful ambiance. The woman's posture exudes tranquility and grace,as she gazes peacefully into the distance.
ネガティブプロンプト
(worst quality:2)
畳の上で正座する女性を生成してみました。正座を指定するのに”seiza-style”というワードを使いましたが少し姿勢が崩れた画像もあります。ここらへんはうまくネガティブプロンプトでコントロールできるかもしれません。
Midjourney「別の惑星から地球を見上げる少年」
プロンプト
A boy standing on a desolate planet, looking up at Earth. Barren landscape, dusty atmosphere, distant stars, solemn mood
SF映画をイメージし、何もない惑星から地球を見上げる少年を描いてみました。
Midjourney「雷の雲海の中にいる龍」
プロンプト
A Japanese-style dragon soaring vertically through stormy clouds , illuminated by flashes of lightning. Powerful, majestic, fierce.
“dragon”だと、いわゆる西洋のドラゴンになってしまうため、”Japanese-style-dragon”とすることで龍を描いてみました。雷の描写も相まってかっこいい龍ができました。
実は絵文字が使える!
midjourneyのプロンプトでは、実は絵文字を使うことができます。絵文字を用いることで、テキストを使わずともイメージを表現できます。
プロンプト
👹🏄🏄🏝️🏝️🏝️
鬼がサーフィンしている姿をイメージして作成してみました。絵文字だけだと解釈の幅が広いのでいろんなパターンの画像が生成されている印象です。
いろんな絵文字を組み合わせてみて、どんな画像が生成されるかという楽しみ方もできるかと思いますのでぜひ試してみてください。
画像生成AIツールを使用する際の注意点
著作権や利用規約
画像生成AIを利用する上で気をつけなければならないのが著作権や肖像権、商用利用に関する規約です。生成した画像が、他の作品や実在の人物に酷似している場合、それぞれ著作権と肖像権の侵害となる可能性があります。
また、Stable Diffusionで使用するモデルやLoraには、それぞれ作成者が定めた利用規約があり、商用利用や一般公開に関して制限があるものも多いです。規約はcivitaiなどの公開サイトに記載されています。
個人の範囲内で利用する分には問題ありませんが、一般公開(SNS含む)や商用利用する場合は必ず利用規約と著作権、肖像権侵害の恐れがないかを確認するようにしてください。
試行錯誤を繰り返す
正直、画像生成AIのプロンプトは初心者にとって慣れないと難しいかと思います。私もまだまだいきなり思い通りの画像を生成することはできません。今回ご紹介したコツを意識しつつ、とにかく繰り返しプロンプトを微調整していくのが重要です。
さいごに
画像生成AIツールの使い方やプロンプト作成のコツについて解説しました。ぜひ実際に操作して、色々な画像を作成してみてください。
この記事が参考になれば幸いです。
また、LIGでは生成AIコンサルティング事業をおこなっています。画像生成AIを含め、生成AIをビジネスに活用したいと考えている企業さまは、ぜひお気軽にご相談ください。