見出し画像

キャラクターを画像生成AIで実写化して、ポートレート撮影をしてみよう!

この記事は、画像生成AIを使ってキャラクターを実写化し、ポートレートを作る過程の紹介をします。
また、画像生成AIはプロンプトと呼ばれるAIへの指示文を入力するのですが、どのような内容をプロンプトに入力することでより良い画像が生成できるようになったかという上達までの過程も合わせて紹介していきます。

画像生成AIをまったく知らない人にも「画像生成AIってなんだか面白そう!」と思ってもらえるように難しい説明はなく、読んでいて楽しい記事を目指して書きましたので、ぜひ最後までお読みいただけると幸いです。


■まえがき

◆画像生成AIによるポートレートとは

さて、そもそもポートレートとは、人物を被写体として撮影した写真のことです。
本来なら撮影環境やカメラ等の撮影機材を用意した上で撮影を行います。
しかし、画像生成AIを使うことで気軽にポートレートを作ることができてしまいます。

以下の画像は私が実際に、画像生成AIで生成したポートレート写真です。
どれも、AIと言われなければわからないほど実際に撮影したかのようにリアルです。
今回は、このような写実的なポートレートを生成することを目指します。

駐車場で撮影されたポートレートをイメージして生成



◆画像生成AIで作るリアル〇〇

なんでも生成できてしまうAIだからこそ、目的を持って生成することが大事だと思っています。
例えば、AIに「男の画像を生成して」と指示するよりも「力持ちでバスを持ち上げてる男の画像を生成して」と具体的な指示をする方がオリジナリティのある画像が生まれますし、そこに物語性を感じることができて面白そうですよね。
この記事でも漠然とポートレート写真を生成することはせず、被写体を決めてから生成してみることにします。

少し前に、生成AIで作られた「リアル千と千尋」や「リアル桃太郎」がネット上でバズっていたことをご存知でしょうか。
現実に、「千と千尋」や「桃太郎」の登場キャラクターが存在していたら・・・をAIで再現したというものです。

この記事でもリアル〇〇をしてみます。
下の画像は、この記事の筆者が普段SNSやメタバースで活動している姿です。
この人物が現実に存在していたら…?という想定の姿を AIで生成します。

上下縞柄のパジャマ・ボブヘアが大きな特徴です!


◆画像生成AI「Midjourney」の紹介

今回使用する画像生成AIは「Midjourney」です。
画像生成AIといえば…というときに必ず上位にある有名なサービスです。

生成AIによっては、端末に別途専用アプリのインストールや環境構築をする必要や高いマシン性能が求められるものがあります。
しかし、Midjourneyは Discord というチャットサービス上で使用することができるため、端末に依存せず手軽に始められます。
※Web版もありますが利用条件があり初心者は使用することができません。

料金に関してですが、以前は無料版があったそうなのですが2023年3月に廃止されているため、$10の月額プランに加入しました。
ちなみに、他のサブスク系と同じように1ヶ月後までに解約しなければ、次の月も自動で請求されます。
気軽に試したくて登録した場合は、満足するまで生成または月額プランの最大数200回生成したら忘れないうちに解約するといいでしょう。

この記事は生成結果とプロンプトの紹介がメインなので詳細な導入の方法までは紹介しませんが、私が導入した際に参考にしたサイトのリンクを貼らせていただきます。
もし、この記事を読んで始めてみたくなったら参考にしてください。
初めは英語だらけで戸惑うかもしれませんが、登録して生成までに10分以内にできると思います。


さて、ざっくりと画像を生成する流れを説明します。
まず、プロンプトと呼ばれるテキストの指示文をAIに送ります。
すると、ものの1分程で画像が生成されます。
この生成手法は、Text(文章)からImage(画像)を生成することから、Txt2Img(テキスト・トゥー・イメージ)と呼ばれます。

※ちなみに、世の中には画像を入れてAIがアレンジを加えた画像を返してくれるImg2Img(イメージ・トゥー・イメージ)と呼ばれる手法や画像を入れてAIが動画化してくれるImg2Mov(イメージ・トゥー・モブ?)と呼ばれる手法などもあります。


■まずは素直に生成してみた

一旦難しいことは考えずに生成してみます。
プロンプトは翻訳サイトを使用しつつ作成しました。
ちなみに、キーワードの切れ目が認識しやすいように ,(カンマ)で区切るというおきてがあります。

※これ以降の各生成画像はそれぞれ以下のような構成で載せていきます。

タイトル:生成された画像をテキトーに一言で表した言葉
生成された画像:AIに生成された無加工のままの画像
プロンプト:実際にAIに入力した全文
コメント:どのように生成したか


◆生成画像

休日に1人でコスプレを楽しむのが趣味

A cute girl with light blue hair, cat ears, and a bright expression wearing light blue and white striped pajamas

とりあえず、特徴である「水色髪」「猫耳」「縞模様パジャマ」の要素をプロンプトに入れて生成してみました。猫耳は生えている耳ではなく布製の付け耳が生成されたため、まるでコスプレ写真のようです。

旅行先で寝る前にふと家の鍵を締めたか不安になった

A full-body photo of a cute girl with light blue short hair, cat ears, and a bright expression wearing light blue and white striped pajamas, posing energetically

「元気いっぱいなポーズ」「明るい表情」という全身の見た目に関わる要素をプロンプトに追加して全身が生成されることを試みました。
全身を生成することに成功しましたが、元気や明るさは微塵もないです。

明日からゴールデンウィーク

A bright photo of a smiling cute girl with light blue short hair and cat ears wearing light blue and white striped pajamas, using her whole body movements to show off her energy

プロンプトを「全身の動きを使って元気さをアピールしている」という書き方に変更してみました。はちゃめちゃに元気になりました。

生卵がすべて消費期限が切れていた

A bright photo of a smiling cute girl with light blue short hair and cat ears wearing light blue and white striped pajamas, using her whole body movements to show off her energy

こちらも同じプロンプトで生成した別パターンの画像です。
なぜか急に生卵のようなものを飛ばし始めました。
危険なので一旦ここでやめます。


■他人のプロンプトの改変をする

◆きっかけ

上記の生成した画像たちはリアルではあるのですが、実在感がなくどこか無機質な印象を感じました。
そう思っていた矢先に、同じくMidjourneyを使って生成したというツイートを見つけました。

こちらの方の画像は空気感を感じ写真のようにとてもリアルで驚きました。
そこで、記載のプロンプトを好きにカスタムして大丈夫とのことでしたので、まずはお言葉に甘えてプロンプトの一部を流用させていただくことにしました。
このようなネット上にあるプロンプトに加え、Midjourneyに登録すると他の人のプロンプトを見ることができるので、まずは手軽に画像を生成したい場合にはそれらのプロントを改変することもできます。
この手法は絵の練習の過程で、上手な人の描き方を学ぶために模写をすることと似ていると感じます。


◆生成画像

なんとかモーニングに間に合った

in a stylish coffee shop in Tokyo, a beautiful Japanese woman is seen laughing with a friend. She is wearing light blue and white striped pajamas , with her bob skyblue hair styled in an elegant updo. The shop's ambient lighting warmly illuminates their smiles, enhancing the cozy and friendly vibe of the setting --ar 3:4 --style raw --stylize 250 --v 6.0

先程のツイート3つめにカフェで談笑する女性の画像がありました。
プロンプトの「髪型」「髪色」「服装」に関する情報を書き換えました。
パジャマを着たままオシャレカフェに来てる不思議な人が生成できました。

名前を呼ばれた気がして

This scenario captures a beautiful Japanese woman from a direct frontal angle as she walks through the vibrant and chaotic environment of Times Square at night. She's dressed in a stylish, White and light blue striped pajamas, paired with pants, and Saturn-shaped accessories for ears, bob skyblue hair. The dazzling array of neon lights and billboards provide a dynamic and colorful lighting, reflecting the energy and excitement of New York City --ar 3:4 --style raw --stylize 250 --v 6.0

先程のツイート4つめに夜の街を歩く女性の画像がありました。プロンプトの「髪型」「髪色」「服装」「アクセサリー」に関する箇所を書き換えました。

眠れない夜に眠らない街へ

This scenario captures a beautiful Japanese woman from a direct frontal angle as she walks through the vibrant and chaotic environment of Times Square at night. She's dressed in a stylish, White and light blue striped pajamas, paired with pants, and Saturn-shaped accessories for ears, bob skyblue hair. The dazzling array of neon lights and billboards provide a dynamic and colorful lighting, reflecting the energy and excitement of New York City --ar 3:4 --style raw --stylize 250 --v 6.0

こちらも同じプロンプトで生成した画像です。
同じプロンプトでも、だいぶ異なった画像が生成されました。
繁華街をパジャマのまま歩いているにも関わらず、かなりスタイリッシュでうらやましいです。


■プロンプトに入れる要素を改善

◆足りなかったこと

他の方が書かれたプロンプトを改変することで手軽にリアルな画像が生成できました。
では、自分のプロンプトとは何が異なっていたのでしょうか。
自分のプロンプトを見返すと、髪型や服装などの被写体の情報しかプロンプトに入れておらず、あとは"AIにおまかせ"の状態になっていました。
その結果、何となくAIが作ってくれた背景やアングルで画像が生成されていたのです。

以前やっていたこと

そのため、ここからはやり方を変えてみます。
AIに任せ過ぎずにもう少し詳細な情報をプロンプトに入力することで、より細かく描写された空気感のある画像の生成を試みます。

ここからやること

※注意 : あくまで今回は写実的なポートレートを目指しています。多くの要素を"AIにおまかせ"して偶然生成される画像を楽しむことも生成AIを使うことの面白さの1つです。そこは誤解のないようにお願いします。


◆含めるべき内容

では、どのような内容をプロンプトに入れたらいいのでしょうか?
人物を対象にした画像を生成している方々のプロンプトを複数見て、個人的に生成結果に大きく影響がありそうなだと思う要素を整理しました。
プロンプトに正解はないので、あくまで参考程度に見てください。


・被写体の人種や性別
 例 : Japanese woman (日本人の女性)
・被写体の衣服やアクセサリーなどのファッション
  例 : She is wearing a stylish blue jumper and star-shaped earrings, embodying a modern vibe (スタイリッシュな青のジャンバーを着て、星の形のアクセサリーを身につけ、モダンな雰囲気)
・被写体の髪の色や長さ
 例:Her hair is styled casually in loose waves above her shoulders, revealing short brown shades (彼女の髪はカジュアルにスタイリングされ、肩の上でゆるいウェーブがかかっている短い茶髪)
・どのような特徴の場所か
 例:in Shibuya road, where many people come and go (多くの人が行き交う渋谷の道路)
・被写体はそこで何をしているか
 例:talking and laughing with friends (友達と話して笑っている)
・どのようなライティングか
 例:Colorful and dazzling neon lights illuminate the road and her smile (ネオンのカラフルできらびやかな照明が、道と彼女の笑顔を照らしている)
・どのようなレンズを使って撮影されたか
 例 : using a wide-angle lens (広角レンズを使用して)


それに加えて、パラメーターと呼ばれるMidjourneyで使えるコマンドのようなものを使用します。以下のサイトで、実例画像と共にいくつかのパラメーターが紹介されていて参考になりました。

その中から、今回は以下の2つを使用します。

--ar 3:4 :--stylize + 決まった値  で画像の縦横比を変更できます。デフォルトは1:1で生成されます。値の一覧は以下の公式ドキュメントに記載されています。

--stylize 250:--stylize + 決まった値 で芸術性をどれだけ反映させるかという指定ができます。Midjourneyは芸術的に誇張をするそうでそれを数値でコントロールできるようです。今回はあまり誇張し過ぎない250を使用してみます。値の一覧は以下の公式ドキュメントに記載されています。

では、上記を踏まえていくつか生成してみます。


◆生成画像

雪の降る繁華街を見下ろす屋上から生配信

Japanese woman photographed from an angle with a fisheye lens, she is wearing light blue and white striped pajamas loosely in a top and bottom setup, her hair is light blue and short, and a tube of blue paint is in her hand A brush is in her hand. She is alone on the roof of a building overlooking a busy downtown area filled with cars. You can feel the coldness of winter from her ennui expression. It is snowing and each grain of snow is falling. Shining in the light of the morning sun, --ar 3:4 --stylize 250

季節や天気の情報をプロンプトに含めたらかなり空気感を感じる画像が生成できました。
魚眼レンズで撮影されたことを指定すると自撮りをするようなポーズが多く生成された印象がありました。

うさぎ帽子を被って 自転車屋の営業活動

A stelth photo of a cute Japanese woman with light blue hair in a bob, photographed with a 55mm lens, wearing blue and white striped long sleeve pajamas on the top and bottom and wearing a Big Saturn-shaped hat, dancing conceptual dance ,using her whole body ,with a serious expression ,in front of a bicycle shop with many bicycles lined up ,the shop is in the center of modren city, she is crowded space and seen by many people coming and going , her dance attracting everyone's attention, the bright morning light shining down on her from above, --ar 3:4 --stylize 250

「土星モチーフの帽子」と入力したのですが何故かうさぎの帽子を被っています。
「多くの人々の注目を集めている」と入力したのですが、多くの人々は画像に含まれませんでした。多くの人々の注目を集めそうな人物像をAIが考えて生成してくれたのでしょうか。

雨の降る大阪の街でお互いの写真を撮り合った

A stelth photo of beautiful Japanese woman by crowded space, perspective with a cinematic lens, she stylishly wears light blue and white striped pajamas with a top and bottom set up and a raincoat over it, stylishly wearing rain boots, it is raining, her hair is light blue and short and has a lot of volume, She is taking pictures of her friends with a single-lens camera, she is looking at her friend through the camera's viewfinder, her serious eyes peeking out are illuminated by the lights of the street, While filming, she is on a bridge in Dotonbori, Osaka, see the dazzling colorful lights illuminating the city at night --ar 3:4 --stylize 250

生成AIの苦手ポイントの1つに「手の形」があります。特に何かを持たせることは難しく、実はこの画像も何度か同じプロンプトで生成してやっと普通の手の形になった画像です。

沖縄の海で魚を手掴みする夢

A Japanese woman photographed from a wide-angle lens looking up, she is wearing light blue and white striped pajamas with a top and bottom set, her hair is light blue and short and swaying in the strong wind , She is wearing false cat ears, She is holding fresh fish in both hands, She is fishing on the crowded coast of Okinawa, Her bright smile is illuminated by the summer sun. It's shining, --ar 3:4 --stylize 250

「新鮮な魚を握っている」と入力したら楽しい画像が生成できました。
服装は他のプロンプトと同様に「上下縞柄のパジャマ」と入力しているのですが、場所が海を指定していることからAIが海に合うパジャマにしてくれたようです。

惑星が浮かぶ部屋で撮影したアーティスト写真

a cute Japanese woman with an androgynous appearance photographed with an 85mm lens, her hair in a blue bob, wearing thick blue and white striped pajamas in a top and bottom setup, multiple planets floating They are riding a bicycle in space, looking up at the Earth, and can see many other people riding bicycles in space as well, the stars and moonlight illuminating them and their bicycles. has been, --ar 3:4 --stylize 250

惑星が浮かんでいる宇宙にいるイメージで生成したつもりでしたが、翻訳サイトの内容をあまり整理せずにプロンプトに入れたことで部屋で撮影された写真が生成されてしまいました。翻訳サイトである程度文章ができたらすぐにプロンプトに入れずに少し構成に手を入れた方が良さそうです。
「見上げている」という内容を入れたことで、真正面からの撮影ではなくなり動きが出ました。

月面で行われたロードレースに参加して地球を懐かしむ

A cute Japanese woman with an androgynous is participating in a bicycle race on the moon, photographed with an 85mm lens, her hair in a blue bob, wearing thick blue and white striped pajamas in a top and bottom setup, looking up at the Earth, many people driving bicycles, moonlight illuminating them and their bicycles, --ar 3:4 --stylize 250

「月面で自転車レースに参加している」という非現実的な内容を入れました。
他の参加者の服装は指定しなかったため、AIがメインの被写体と同じく縞柄のパジャマを着せてくれました。この服装で参加することがこのレースのルールみたいで面白いです。

ちなみに、上記のいくつかの画像では ZoomOut機能を使って生成後に画像の拡張を行いました。
被写体が画像に対して占める割合が大きかった場合に使用することで、被写体のいる周辺の環境を追加で生成してくれます。

この例ではZoomOut後に背景にエアコンが追加されました


■まとめ

さて、『画像生成AIによる キャラクターの実写化』+『画像生成AIによる ポートレート』というテーマはいかがでしたでしょうか?
非現実の世界をまるで現実かのようにリアルに構築することで、実際の現実とはまた違った「もうひとつの現実の世界」を覗いているような面白さを感じていただけたのではないでしょうか。

このような画像生成AIのリアルさゆえに、カメラマンや写真撮影の知識が不要になってしまうのではと危惧する声もあります。
しかし、実際にはその逆で高品質で意図的な画像を生成するためには、適切なライティングやカメラのレンズ、構図などの指示が必要であり撮影に関する幅広い知識が重要だということが、今回の記事で行なったポートレート画像の生成を通して知ることができました。

AIは単なるツールであり、人間とAIが協力して創造することで、新しい可能性が開かれるのだと思います。
そのため、AIが何でもやってくれるからと油断せず、むしろ創造性や知識を身につけるために学ぶ必要性があることを実感しました。


■おまけ

この記事で生成した画像から、お気に入りをピックアップして動画にまとめました。BGMは SunoAI という生成AIで作りました。

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