|

Nano Banana Pro API 原比例出力完全ガイド:3つのシナリオで画像のオリジナルサイズ生成を実現

著者注:Nano Banana Pro API で元の比率(オリジナルサイズ)を出力する方法を徹底解説。aspect_ratio パラメータを省略するテクニックをマスターし、画像編集におけるサイズ維持の課題を解決しましょう。

Nano Banana Pro API を使用して画像編集を行う際、元の画像サイズを維持することは開発者がよく直面する課題です。公式ドキュメントでは aspect_ratio が10種類の固定比率のみをサポートしていると明記されていますが、実は簡単な解決策があります:画像編集のシーンでは、aspect_ratio パラメータを省略するだけで元のサイズでの出力が可能になります

核心価値: この記事を読み終える頃には、Nano Banana Pro API で元の比率を維持して出力するためのテクニックを完全にマスターし、さまざまなシーンで柔軟に画像サイズをコントロールできるようになります。

nano-banana-pro-original-aspect-ratio-output-ja 图示


Nano Banana Pro オリジナル比率出力の重要ポイント

要点 説明 メリット
パラメータ省略法 画像編集時に aspect_ratio を送らない 元のサイズを自動的に維持
10種類の固定比率 1:1, 2:3, 3:2, 3:4, 4:3, 4:5, 5:4, 9:16, 16:9, 21:9 テキストから画像生成(Text-to-Image)で使用
デフォルト挙動の違い 画像生成は 1:1、画像編集は元のサイズがデフォルト APIロジックを理解する鍵

Nano Banana Pro オリジナル比率出力の仕組み

Nano Banana Pro(別名 Gemini 3 Pro Image)は、画像を処理する際に2つの異なるデフォルト挙動を持っています。純粋なテキストからの画像生成(Text-to-Image)シーンでは、aspect_ratio を指定しない場合、API はデフォルトで 1:1 の正方形画像を出力します。

しかし、画像編集(Image-to-Image)シーンでは、API の挙動は全く異なります。参照画像を提供して編集を依頼する際、aspect_ratio パラメータを渡さなければ、API は入力画像の元のサイズを自動的に認識し、同じサイズで編集結果を出力します。これが、オリジナル比率での出力を実現する核心的なメカニズムです。

なぜ Nano Banana Pro のオリジナル比率出力が有効なのか

この設計は非常に合理的です。ユーザーが編集のために画像をアップロードする場合、通常は出力画像が元の画像と同じサイズと比率を維持することを期待します。ユーザーに手動で比率を計算させたり指定させたりすることは、開発の複雑さを増すだけでなく、比率の不一致による画像の歪みや意図しないトリミングを招く可能性があります。

nano-banana-pro-original-aspect-ratio-output-ja 图示


Nano Banana Pro オリジナル比率出力の公式ルール詳解

公式APIドキュメントでは、aspect_ratio パラメータは以下の10種類のプリセット値のみを受け付けると明確に規定されています。

比率 サイズ例 (1K) 主な用途 利用シーン
1:1 1024×1024 アイコン、プロフィール画像 SNSのプロフィール画像
2:3 832×1248 縦型ポスター スマホの壁紙
3:2 1248×832 横型写真 カメラの標準比率
3:4 864×1152 縦型コンテンツ SNSの投稿カバー
4:3 1152×864 従来のディスプレイ スライド資料(PPT)用画像
4:5 896×1120 Instagram SNSコンテンツ
5:4 1120×896 写真プリント 8×10インチ写真
9:16 768×1344 縦型動画 ショート動画のカバー
16:9 1344×768 横型動画 YouTubeのサムネイル
21:9 1536×658 ウルトラワイド 映画風の画面

重要なヒント: 上記の比率制限は、サイズを指定する必要があるシーンにのみ適用されます。画像編集のシーンでは、APIYI (apiyi.com) プラットフォームを通じてテストすることをお勧めします。aspect_ratio パラメータを省略するだけで、オリジナルサイズでの出力が可能です。


Nano Banana Pro オリジナル比率出力クイックスタート

シンプルな例:オリジナルサイズを維持した画像編集

以下は、オリジナル比率での出力を実現する最も簡単な方法です。

import openai
import base64

client = openai.OpenAI(
    api_key="YOUR_API_KEY",
    base_url="https://vip.apiyi.com/v1"
)

# 元画像を読み込み、エンコードする
with open("input.jpg", "rb") as f:
    image_base64 = base64.b64encode(f.read()).decode()

# 重要:aspect_ratioパラメータを渡さない
response = client.chat.completions.create(
    model="gemini-3-pro-image-preview",
    messages=[{
        "role": "user",
        "content": [
            {"type": "image_url", "image_url": {"url": f"data:image/jpeg;base64,{image_base64}"}},
            {"type": "text", "text": "画像の背景を夕暮れの風景に変更してください"}
        ]
    }]
)

完全な実装コードを表示(エラー処理を含む)
import openai
import base64
from pathlib import Path

def edit_image_keep_ratio(
    image_path: str,
    edit_prompt: str,
    output_path: str = "output.png"
) -> bool:
    """
    オリジナルサイズを維持して画像を編集する

    引数:
        image_path: 入力画像のパス
        edit_prompt: 編集指示(プロンプト)
        output_path: 出力画像のパス

    戻り値:
        成功したかどうか
    """
    client = openai.OpenAI(
        api_key="YOUR_API_KEY",
        base_url="https://vip.apiyi.com/v1"
    )

    # 画像を読み込んでエンコード
    image_data = Path(image_path).read_bytes()
    image_base64 = base64.b64encode(image_data).decode()

    # 画像形式を検出
    suffix = Path(image_path).suffix.lower()
    mime_type = {"jpg": "jpeg", "jpeg": "jpeg", "png": "png", "webp": "webp"}.get(suffix[1:], "jpeg")

    try:
        # コア:aspect_ratioを指定せず、自動的にオリジナルサイズを維持
        response = client.chat.completions.create(
            model="gemini-3-pro-image-preview",
            messages=[{
                "role": "user",
                "content": [
                    {"type": "image_url", "image_url": {"url": f"data:image/{mime_type};base64,{image_base64}"}},
                    {"type": "text", "text": edit_prompt}
                ]
            }]
        )

        # 結果を保存
        result_base64 = response.choices[0].message.content
        output_data = base64.b64decode(result_base64)
        Path(output_path).write_bytes(output_data)
        return True

    except Exception as e:
        print(f"編集失敗: {e}")
        return False

# 使用例
edit_image_keep_ratio(
    "product.jpg",
    "画像の背景を削除し、メインの製品のみを残してください",
    "product_nobg.png"
)

推奨: APIYI (apiyi.com) で無料テストクレジットを取得し、オリジナル比率出力の効果を素早く検証してください。このプラットフォームは Nano Banana Pro モデルの全機能の呼び出しをサポートしています。


Nano Banana Pro 元の比率での出力:3つのシナリオ比較

nano-banana-pro-original-aspect-ratio-output-ja 图示

シナリオ aspect_ratio 設定 出力結果 活用シーン
Text-to-Image – 比率指定 "aspect_ratio": "16:9" 1344×768 (1K) ポスター、カバーデザイン
Text-to-Image – デフォルト パラメータなし 1024×1024 正方形アイコン
画像編集 – 元のサイズ パラメータなし 元の画像と同じ 商品写真の編集

シナリオ 1:Text-to-Image では比率指定が必要

テキストのみから画像を生成する場合、特定のサイズが必要であれば aspect_ratio パラメータを明示的に渡す必要があります。

response = client.chat.completions.create(
    model="gemini-3-pro-image-preview",
    messages=[{"role": "user", "content": "可愛らしい猫"}],
    extra_body={
        "image_config": {
            "aspect_ratio": "16:9",  # 必須指定
            "resolution": "2K"
        }
    }
)

シナリオ 2:画像編集で元のサイズを維持する

これが本記事の核心となるシナリオです。aspect_ratio を省略するだけで、元のサイズが維持されます。

response = client.chat.completions.create(
    model="gemini-3-pro-image-preview",
    messages=[{
        "role": "user",
        "content": [
            {"type": "image_url", "image_url": {"url": f"data:image/jpeg;base64,{img}"}},
            {"type": "text", "text": "画像の色彩を強調して"}
        ]
    }]
    # extra_body や aspect_ratio は渡さない
)

シナリオ 3:画像編集で強制的に比率を変更する

編集時にサイズを変更したい場合は、明示的にパラメータを渡します。

response = client.chat.completions.create(
    model="gemini-3-pro-image-preview",
    messages=[{
        "role": "user",
        "content": [
            {"type": "image_url", "image_url": {"url": f"data:image/jpeg;base64,{img}"}},
            {"type": "text", "text": "画像を正方形の構図に変更して"}
        ]
    }],
    extra_body={"image_config": {"aspect_ratio": "1:1"}}
)

比較に関する補足: 以上のパラメータ設定は、APIYI (apiyi.com) プラットフォームにて動作検証済みです。


よくある質問

Q1: aspect_ratio を省略したのに、画像が正方形になってしまいます。なぜですか?

リクエストに「入力画像」が正しく含まれているか確認してください。messages 内にテキストのみで画像がない場合、API は Text-to-Image モードとして動作し、デフォルトで 1:1 の比率を出力します。元のサイズでの出力は、参照画像を提供する「編集シナリオ」においてのみ有効です。

Q2: 元の画像の比率が、サポートされている 10 種類の比率にない場合はどうなりますか?

それこそが「パラメータ省略法」の価値です。例えば、元の画像が 1920×1080(約 16:9)の場合、API は強制的にクロップ(切り抜き)することなく、そのサイズに近い結果を出力します。もし明示的に aspect_ratio: "16:9" を渡すと、出力は標準の 1344×768 に固定されます。

Q3: 元の比率での出力をすぐにテストするにはどうすればよいですか?

複数のモデルに対応した API 集約プラットフォームの利用をおすすめします。

  1. APIYI (apiyi.com) にアクセスしてアカウントを登録
  2. API キーと無料クレジットを取得
  3. 本記事のコード例を使用し、テスト画像をアップロードして検証

まとめ

Nano Banana Pro で元の比率のまま出力するための核心となるポイントは以下の通りです:

  1. 省略=オリジナルサイズ: 画像編集シナリオでは、aspect_ratio パラメータを渡さないことで、元の画像サイズを維持できます。
  2. シーンによる違いを理解する: テキストからの画像生成はデフォルトで 1:1 ですが、画像編集はデフォルトでオリジナルサイズとなります。これら2つのモードで挙動が異なる点に注意してください。
  3. 10種類のプリセット比率: サイズを指定する必要がある場合は、公式にサポートされている10種類の比率から選択する必要があります。

このテクニックをマスターすれば、商品画像の編集、ポートレートのレタッチ、背景の入れ替えなどのシーンにおいて、後からサイズを調整する手間を省き、簡単にオリジナルサイズでの出力を実現できます。

効果を素早く検証するには、APIYI apiyi.com を利用することをお勧めします。このプラットフォームでは無料枠が提供されており、Nano Banana Pro モデルをフルサポートしています。


📚 参考文献

⚠️ リンク形式の説明: すべての外部リンクは 資料名: domain.com の形式を使用しています。コピーには便利ですが、SEOの評価(重み)の流出を防ぐため、クリックしてジャンプすることはできません。

  1. Google Gemini API 公式ドキュメント: Nano Banana 画像生成の完全なパラメータ説明

    • リンク: ai.google.dev/gemini-api/docs/nanobanana
    • 説明: 公式の権威あるドキュメントで、aspect_ratio パラメータの完全な定義が含まれています。
  2. fal.ai Nano Banana Pro API: サードパーティプラットフォームによる詳細なインターフェース説明

    • リンク: fal.ai/models/fal-ai/nano-banana-pro/edit/api
    • 説明: image-to-image シナリオのパラメータ設定例が含まれています。
  3. Google AI 開発者フォーラム: コミュニティでの議論とQ&A

    • リンク: discuss.ai.google.dev
    • 説明: サイズ制御に関する他の開発者の経験共有を確認できます。

著者: 技術チーム
技術交流: コメント欄で Nano Banana Pro API の使用テクニックをぜひ議論しましょう。さらなる資料は APIYI apiyi.com 技術コミュニティでご確認いただけます。

類似投稿