ブログに戻る
BananaBanana Teamtutorialimagesvideo

キャラクターの一貫した画像生成:実践ガイド

画像や動画で同じAIキャラクターを一貫して保つ方法:Nano Banana 2やNano Banana Proの参照画像制限、キャラクターシート法、ストーリーボード、Veo 3.1の使い方を解説。

キャラクターの一貫した画像生成:実践ガイド

キャラクターの一貫した画像生成とは、AIモデルが毎回新しい人物をランダムに作り出すのではなく、複数の画像にわたって同じ顔、髪型、服装のキャラクターを正確に描き出す一連の技術のことです。これは、「カフェにいる赤髪の女性」と入力するたびにまったくの別人が生成されるか、それとも漫画の最初のコマ、広告キャンペーン、あるいはストーリーボードに登場する「あなただけの」赤髪の女性を毎回描き出せるか、という違いに他なりません。

手短に結論から言うと、実際に効果のあるアプローチは2つあり、それらを重ね合わせて(併用して)使うことができます。まず1つ目は、キャラクターの参照画像(リファレンス画像)をアップロードする方法です。これは、当プラットフォームのAIフェイススワップを支えているものと同じ仕組みです。Nano Banana 2は最大4枚、Nano Banana Proは最大5枚のキャラクター参照に対応しており、Veo 3.1は最大3枚を動画に持ち込むことができます。2つ目は、詳細な固定の描写文を毎回プロンプトに貼り付ける「キャラクターシート」方式です。BananaBananaでは、Nano Banana 2を使用した場合、1K画像あたり$0.06からの一貫したキャラクター生成が可能です。本記事でご紹介するデモはすべて当プラットフォーム上で生成されたものなので、プロンプトはそのままコピーして使えます。

あらかじめ、失敗するパターンについても率直にお伝えしておきます。現在のモデルにおける一貫性は優れていますが、完璧というわけではありません。どこで崩れが生じるかも、実際に見ていただくことになります。

なぜ毎回同じキャラクターが違った姿になってしまうのか?

画像生成モデルは、リクエスト間の記憶(メモリ)を持ちません。生成は毎回ノイズから始まり、入力するプロンプトだけが唯一の架け橋になります。もしプロンプトが「赤髪の若い女性」だけであれば、モデルは自分が描ける何百万もの赤髪の若い女性のバリエーションの中から、ランダムに1人を選び出します。5回実行すれば、5人の異なる人物が生成されます。雰囲気(バイブス)は似ているかもしれませんが、顔は一致しません。

これは「キャラクタードリフト(ブレ)」と呼ばれ、プロンプトが曖昧であるほど悪化します。「さっきと同じ女性」と指示しても何の意味もありません。なぜなら、モデルにとっては「さっき」が存在しないからです。過去に生成した画像を明示的に添付(参照)しない限り、モデルはその画像を認識できません。

ドリフトは、1つのワークフロー内でもじわじわと忍び寄ってきます。カメラのアングルを変えると顎のラインが変わり、服装を変えると突然そばかすが消えてしまうといった具合です。私の経験上、最も崩れやすいパーツは、まさに人間が他人の顔を識別する際に注目する部分(目の形、鼻、生え際など)です。背景や服装はうまく維持されますが、顔はブレてしまいます。

したがって、攻略の鍵は、すべてのリクエストにおいてキャラクターのアイデンティティ(同一性)をピクセル(参照画像)またはテキスト(固定の説明文)のいずれか、あるいはできればその両方として、モデルに毎回フィードバックし続けることにあります。

画像生成におけるキャラクタードリフトを示す図:AIが生成した一連のポートレートフレームで、同じキャラクターが徐々に別人に変化していく様子

各モデルはいくつの参照画像に対応しているか?

参照画像(リファレンス画像)を使用する方法は、2つの手法のうちより強力なものです。キャラクターの写真をアップロードすると、モデルはそれを「正解(グラウンドトゥルース)」として扱います。GoogleのGemini API画像ドキュメントによると、その上限はモデルによって大きく異なるため、モデル選びの前にこれらの違いを把握しておく価値があります。

モデルキャラクター参照オブジェクト参照スタイル参照1K画像あたりの価格
Nano Banana 2 Liteなし最大14なし$0.03
Nano Banana 2最大4最大10最大3$0.06
Nano Banana Pro最大5最大6なし$0.11

この表で意外な存在なのがLiteです。合計で最も多くの画像(14枚)を入力できますが、ドキュメントにはオブジェクト参照専用であり、キャラクターの一貫性(同一性)はサポートしていないと明記されています。私たちは、実践の中でこの事実を学びました。Liteに顔画像を入力すると、モデルはそれを快く受け付けますが、まるで商品写真のように扱ってしまいます。つまり、ジャケットの柄などは一致させても、肝心の人物の顔は失われてしまうのです。ワークフローがキャラクター中心であるならば、価格がどれほど魅力的であってもLiteは対象外となります。(ただし、それ以外の用途であれば極めて優秀な低価格モデルです。Liteで十分なユースケースについては、こちらのガイドで詳しく解説しています)。

残る2つのモデルについて言えば、まずは$0.06のNano Banana 2から始めるのがおすすめです。Nano Banana Proの5つ目のキャラクター枠とより強力なアイデンティティの固定能力は、複数のキャラクターが登場するシーンや最終的なアセット作成において真価を発揮します。1枚あたり$0.11という価格も、実際に成果物として納品するレベルのクオリティを考えれば、それほど高い追加コストではありません。

また、アップロードする枚数よりも、その「アングル」のほうが重要です。同じアングルの参照画像を3枚アップロードしても、モデルはその1つのアングルしか学習しません。正面、横顔、そして斜め45度(3/4ビュー)の3枚を揃えることで、モデルは頭部全体の立体的な特徴を理解できるようになります。

AI画像モデルに入力されるさまざまなアングルのキャラクター参照写真の束。参照画像がキャラクターの一貫した生成をどのようにガイドするかを示す図

キャラクターシート方式とは何か?

キャラクターシートとは、キャラクターの特徴を徹底的に描写した固定のテキストブロックのことで、これをすべてのプロンプトに一言一句違わず貼り付けます。これは参照写真がまだ手元にない場合のテキスト限定の代替手段であり、そもそも最初の参照写真自体を「作成」するための手段でもあります。また、AIエージェントから機能させる際にもこの方法が使われます。例えば、当社のMCPサーバー経由でClaude Codeから画像を生成する場合、画像をアップロードすることなく、プロンプト内にキャラクターシートを忍ばせるだけで一貫性を保つことができます。

鉄則は、警察の似顔絵捜査官が求めるような詳細さでキャラクターを描写することです。年齢、体格、肌、髪の色と髪型、目の色、特徴的なマーク(そばかすや傷など)、そして1〜2個の固定アクセサリーを指定します。曖昧な形容詞はブレ(ドリフト)を引き起こしますが、具体的な名詞はキャラクターの特徴を固定してくれます。

以下は、後述のデモで使用した実際のテキストブロックです。

a woman in her late 20s with shoulder-length copper-red wavy hair,
pale skin with faint freckles across the nose and cheekbones,
green eyes, a small silver hoop earring in her left ear,
wearing a mustard-yellow corduroy jacket over a white t-shirt

下の2つの画像は、いずれも同じテキストブロックを用いてNano Banana Proで生成したものです。変更したのは周囲のシチュエーションを描写するテキストのみです。参照画像は一切添付しておらず、完全にテキストのみで固定された一貫性の例です。

AIが生成したキャラクターの一貫性のデモ:マスタードイエローのコーデュロイジャケットを着た赤髪の女性がカフェの窓辺で本を読んでいる様子。Nano Banana Proで生成

同じAIキャラクター(マスタードイエローのコーデュロイジャケットを着た赤髪の女性)がゴールデンアワーの屋上にいる様子。Nano Banana Proによるキャラクターの一貫した画像生成を示す

同一人物に見えるでしょうか? かなり近い仕上がりです。顔立ちはしっかりと維持されており、ジャケットとイヤリングも固定され、両方のシーンでそばかすも消えていません。ピクセル単位で細かくチェック(ピクセルピープ)すると、髪の長さがわずかに変化していることに気づくでしょう。これがテキストのみによる一貫性の率率な限界(天井)です。だからこそ、プロのワークフローではこれらの手法を組み合わせます。まずキャラクターシートから最高のキャラクター画像を1枚生成し、その後はその画像自体をキャラクター参照としてフィードバックするのです。テキストでアイデンティティ(同一性)を定義し、ピクセルでそれを強制補強します。

実務でこの手法を運用する上での2つのちょっとしたコツを紹介します。まず、固定となるアクセサリー(イヤリングや特定のジャケットなど)は、わずかなトークン数でキャラクターを識別させる上で非常に大きな役割を果たします。すべてのキャラクターに何か1つ象徴的なアイテムを持たせましょう。もう1つは、キャラクターシートを60単語前後に抑えることです。それ以上長くなると、モデルの注意力がキャラクター描写とシーン(背景やアクション)描写の間で分散し、お互いに干渉し合ってしまうためです。

複数キャラクターが登場するシーンとAIストーリーボード

1つのフレームに一貫したキャラクターを2人登場させるとなると、小手先のトリックは通用しなくなります。2人のキャラクター描写を混在させたテキストシートを作成すると、高確率で「混ざり合い(クロスコミタミネーション)」が発生します。例えば、キャラクターAがBの髪型を真似てしまったり、BがAのジャケットを羽織ってしまったりします。何度も再生成(リラン)を繰り返せば解決するかもしれませんが、再生成にはその都度コストがかかります。

参照画像はそれをきれいに解決してくれます。Googleのドキュメントに記載されている通り、Nano Banana 2は最大4枚、Nano Banana Proは最大5枚のキャラクター参照スロットを備えており、これらを別々の人物に割り当てることができます。各キャラクターの写真を2、3枚ずつアップロードし、役割を明記したシーン描写(例:「赤髪の女性が、白髪混じりの髭を生やした男性にコーヒーを渡す」など)を入力します。これにより、アイデンティティはそれぞれの人物に格段に高い精度で割り当てられます。もっとも、2人の人物の間で物を手渡す「手」の描写は、2026年現在でも依然として一種の運試し(ロト)のような状態ではありますが。

ストーリーボード(絵コンテ)の作成は自然な次のステップであり、これには2つのアプローチがあります。1コマ(パネル)ごとに生成する方法です。コマごとにキャラクター参照を紐付けるため、Nano Banana 2では1コマあたり$0.06、6コマのボードなら合計$0.36となります。もう1つは、1枚の画像にまとめる方法です。Nano Banana Proに指示して、1回の生成でマルチパネルのレイアウトを出力させます。以下のパネルはその方法で作られたもので、上記と同じキャラクターシートを使用し、1回$0.11のリクエストで生成されました。

Nano Banana Proへの1回のリクエストで生成された4コマのAIストーリーボード。起床、サイクリング、プレゼンテーション、屋上のすべてのコマで同じ赤髪のキャラクターが一貫して描かれている

単一の画像内で一貫性を保つのは、実質的に「無料」です。なぜなら、モデルはすべてのコマを1回のパスで描き、自身の描画内容を参照しながら進めることができるからです。ただし、トレードオフとして「解像度」が犠牲になります。各コマのサイズはフレーム全体の4分の1になってしまいます。企画書(ピッチデック)やアニマティクス用であればこれで十分ですが、個別に書き出して製品レベルで使用するパネルであれば、1コマずつ生成して合計$0.36を支払う価値は十分にあります。

キャラクターを一貫させたまま動画化することはできるか?

はい、これこそが制作パイプラインを最も面白くしてくれる部分です。Veo 3.1は、GoogleのVertex AIドキュメントで「アセット参照画像」と呼ばれる機能をサポートしています。これは人物、キャラクター、または商品の写真を最大3枚登録することで、生成される動画クリップ内でもその被写体の外見を維持できるというものです。当社のジェネレーターでは、これは「被写体参照(Subject Reference)」セクションに該当します。サウンド付きで常に提供されるGemini Omni Flashは、より柔軟に対応できます。1クリップあたり最大10枚の参照画像に対応し、これらは開始フレームと組み合わせることも可能です(1秒あたり$0.10、Omniの完全レビューはこちら)。

動画用のプロンプトでも、キャラクターシートの記述は依然として重要な役割を果たします。以下のクリップは、上記の画像と同じ描写ブロックに「動き」や「カメラワーク」の指定を追加し、テキストのみでVeo 3.1 Fastを使用して生成したものです。

プロンプトにはキャラクターシートを入力した上で、「夕暮れ時の街をカメラに向かって歩く、ゆっくりとしたドリーバック、ミディアムショット、浅い被写界深度」と追加指示しました。長さは6秒、無音の720pでコストは$0.52。静止画と同じキャラクターであることがはっきりと分かり、異なる2つのモデル間でテキストのみで引き継いだ結果としては、正直期待以上の出来栄えです。

生成ログから1つ注意点(警告)があります。アセット参照を使用すると、時折表情が硬く(平坦に)なる傾向があります。顔立ち自体は一致するものの、特に画面内のピクセル数が少なくなる広角ショット(ワイドショット)では、少し蝋人形(ワックスフィギュア)のような無機質な印象になることがあります。アップショットのほうがきれいに仕上がります。もし生成された動画の登場人物が死んだような目(デッドアイ)をしてた場合は、同じショットを何度も生成し直すのではなく、アングルをより寄りに(タイトに)再構成してみてください。

まとめると、一連のフルスタックは次のようになります。「キャラクターシートの作成 → Nano Banana Proでメインとなる代表画像を生成 → その画像をすべての静止画用のキャラクター参照および動画用のアセット参照として利用する」。これにより、1つのアイデンティティ、1つのパイプラインを構築でき、画像は$0.06から、動画クリップは$0.10から料金ページで作成できます。

FAQ

キャラクターの一貫性を保つのに最適なAIモデルはどれですか?

スペックを重視するなら、Nano Banana Proが最適です。最大5枚のキャラクター参照画像に対応し、ファミリーの中で最も強力なアイデンティティ固定力を誇ります。価格は1Kまたは2K画像あたり$0.11です。コスパ重視であれば、Proにはないスタイル参照に加えて4つのキャラクター枠を備え、1枚あたり$0.06で利用できるNano Banana 2が価値ある選択肢となります。なお、キャラクター参照自体に対応していないため、この用途ではNano Banana 2 Liteの使用は避けてください。

参照写真を使わずに、AI画像の間で同じ顔を維持するにはどうすればよいですか?

キャラクターシートを作成してください。年齢、髪型、目、肌、特徴的なマーク、そして1つの固定アクセサリーを網羅した、40〜60単語程度の固定描写文を用意し、それを変更せずにすべてのプロンプトに貼り付けます。そして、生成された中で最高の結果を、それ以降の参照画像として活用します。テキストだけでもある程度形になりますが、テキストに画像参照を組み合わせることで、一貫性を完全に維持することができます。

実在する人物の写真をキャラクター参照として使用できますか?

技術的には、APIはあらゆる写真を受け入れます。しかし、法的および倫理的な観点から、あなたが権利を所有している、あるいは本人の同意を得ている写真のみを使用してください。同意なしに実在する人物と識別できる画像を生成することは、当プラットフォームを含め、ほとんどのプラットフォームの利用規約に違反します。

参照画像は何枚アップロードすべきですか?

似たような画像をたくさんアップロードするよりも、枚数を絞ってバリエーションを持たせるほうが効果的です。正面、横顔、斜め45度(3/4ビュー)をカバーする3枚の写真があれば、似たような自撮り写真を5枚用意するよりも優れた結果が得られるのが一般的です。上限枚数は、Nano Banana 2で最大4枚、Nano Banana Proで最大5枚、Veo 3.1の動画で最大3枚となっています。

人間以外のキャラクターでも一貫性を維持できますか?

ほとんどの場合、はい(可能です)。マスコット、ロボット、デフォルメされた動物などは、人間の微妙な顔の凹凸よりも、はっきりとした形状や色彩に特徴(アイデンティティ)があるため、人間以上に一貫性を維持しやすいことが多いです。アプローチは人間と同様で、キャラクターシートに特徴的な固定要素を盛り込み、決定版となるデザインができた後はそれを参照画像として使用します。

tutorialimagesvideo