Imagen を使用すると、テキスト プロンプト、マスク、既存の画像を使用して編集をガイドし、画像を数秒で編集できます。
編集とカスタマイズ用 Imagen のモデルカードを表示する
サポートされているモデル バージョン
Imagen API は、次のモデルをサポートしています。
imagen-3.0-capability-001
モデルでサポートされている機能の詳細については、Imagen モデルをご覧ください。
HTTP リクエスト
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json" \
https://LOCATION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/imagen-3.0-capability-001:predict \
-d '{
"instances": [
{
"referenceImages": [
{
"referenceType": "REFERENCE_TYPE_RAW",
"referenceId": 1,
"referenceImage": {
"bytesBase64Encoded": string
}
},
{
"referenceType": "REFERENCE_TYPE_MASK",
"referenceId": 2,
"referenceImage": {
"bytesBase64Encoded": string
},
"maskImageConfig": {
"maskMode": "MASK_MODE_USER_PROVIDED"
}
}
],
"prompt": string
}
],
"parameters": {
"addWatermark": boolean,
"baseSteps": integer,
"editMode": string,
"guidanceScale": integer,
"includeRaiReason": boolean,
"includeSafetyAttributes": boolean,
"language": string,
"negativePrompt": string,
"outputOptions": {
"mimeType": string,
"compressionQuality": integer
},
"personGeneration": string,
"safetySetting": string,
"sampleCount": integer,
"seed": integer,
"storageUri": string
}
}'
インスタンス
| インスタンス | |
|---|---|
prompt |
省略可。画像のテキスト プロンプト。 |
referenceImages |
必須。マスク編集では、 |
referenceImages オブジェクト
referenceImages オブジェクトは、編集する Imagen の画像アセットを記述します。
| パラメータ | |
|---|---|
referenceType |
必須。参照画像のタイプ。次のいずれかになります。
|
referenceId |
必須。参照画像の固有識別子。マスク編集には使用されません。 |
referenceImage.bytesBase64Encoded |
必須。Base64 でエンコードされた画像のバイト数。PNG、JPEG、GIF、BMP の各ファイルを使用できます。PNG にコード変換した後の最大サイズは 20 MB です。マスク画像を提供する場合は、ベース画像と同じサイズにする必要があります。 |
maskImageConfig.maskMode |
|
maskImageConfig.dilation |
省略可。範囲: [0, 1]。マスクを拡張(拡大)する画像幅の割合。これにより、不正確なマスクを補正できます。最良の結果を得るには、次の
|
maskImageConfig.maskClasses |
省略可。 |
パラメータ
| パラメータ | |
|---|---|
addWatermark |
省略可。生成された画像に目に見えない透かしを追加します。
デフォルト値は |
baseSteps |
省略可。サンプリング ステップ数。値が大きくなるほど画質は向上しますが、値が小さくなるほどレイテンシは短縮されます。デフォルトは
マスク領域が小さい場合や、削除モードまたは挿入モードの場合、 |
editMode
|
マスク編集で必須です。 次のいずれかの値を持つ列挙型です。
|
guidanceScale |
省略可。モデルのテキスト プロンプトに対する適合度を制御します。 値を大きくすると出力とプロンプトの適合性が向上しますが、画質が低下する可能性があります。
許容範囲: デフォルト: 挿入モードでは |
includeRaiReason |
省略可。フィルタされた画像の安全上の理由をレスポンスに含めるかどうかを指定します。デフォルト値は |
includeSafetyAttributes |
省略可。各画像の安全スコアをレスポンスで報告するかどうかを指定します。デフォルト値は |
language |
省略可。テキスト プロンプト言語に対応する言語コード。 次の値を使用できます。
|
negativePrompt |
省略可。生成される画像に含まれないようにする内容の説明。 |
outputOptions |
省略可。 |
personGeneration |
省略可。モデルによって人物の画像が生成されるようにします。次の値を使用できます。
マスクベースの編集の場合、 |
sampleCount |
省略可。生成する画像の数。デフォルト値は 4 です。 |
seed |
省略可。画像生成用の乱数シード。 |
safetySetting |
省略可。安全フィルタリングにフィルタレベルを追加します。次の値を使用できます。
デフォルト値は
|
storageUri |
省略可。生成された画像を保存する Cloud Storage URI。 |
出力オプション オブジェクト
outputOptions オブジェクトは画像出力を記述します。
| パラメータ | |
|---|---|
outputOptions.mimeType |
省略可。出力を保存する際の画像形式。次の値を使用できます。
デフォルト値は |
outputOptions.compressionQuality |
省略可。出力タイプが |
リクエストの例
REST
リクエストのデータを使用する前に、次のように置き換えます。
-
REGION: プロジェクトが配置されているリージョン。サポートされているリージョンの詳細については、Vertex AI の生成 AI のロケーションをご覧ください。 PROJECT_ID: 実際の Google Cloud プロジェクト ID。-
TEXT_PROMPT: 省略可。モデルが生成する画像をガイドするテキスト プロンプト。最適な結果を得るには、マスクされた領域の説明を使用し、単語によるプロンプトは避けてください。たとえば、「コーギー」ではなく「かわいいコーギー」を使用します。 -
B64_BASE_IMAGE: 編集対象の画像を base64 でエンコードした画像で、サイズは 10 MB 以下です。Base64 エンコードの詳細については、ファイルを Base64 でエンコードおよびデコードするをご覧ください。 -
B64_MASK_IMAGE: サイズが 10 MB 以下で Base64 でエンコードされた白黒マスク画像。 -
MASK_DILATION: 省略可。マスクを拡大する画像幅の割合を表す 0~1 の浮動小数点値(両端を含む)。dilationを使用すると、不正確なマスクを補正できます。0.01の値をおすすめします。 -
EDIT_STEPS: 省略可。サンプリング ステップ数を表す整数。値が大きくなるほど画質は向上しますが、値が小さくなるほどレイテンシは短縮されます。初期値として
35ステップをお試しください。画質が要件を満たしていない場合は、上限値75まで値を増加させていくことをおすすめします。 -
SAMPLE_COUNT: 省略可。生成する画像の数を指定する整数。指定できる値の範囲は1~4で、デフォルト値は4です。
HTTP メソッドと URL:
POST https://REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/publishers/google/models/imagen-3.0-capability-001:predict
リクエストの本文(JSON):
{
"instances": [
{
"prompt": "TEXT_PROMPT",
"referenceImages": [
{
"referenceType": "REFERENCE_TYPE_RAW",
"referenceId": 1,
"referenceImage": {
"bytesBase64Encoded": "B64_BASE_IMAGE"
}
},
{
"referenceType": "REFERENCE_TYPE_MASK",
"referenceImage": {
"bytesBase64Encoded": "B64_MASK_IMAGE"
},
"maskImageConfig": {
"maskMode": "MASK_MODE_USER_PROVIDED",
"dilation": MASK_DILATION
}
}
]
}
],
"parameters": {
"editConfig": {
"baseSteps": EDIT_STEPS
},
"editMode": "EDIT_MODE_INPAINT_INSERTION",
"sampleCount": SAMPLE_COUNT
}
}
リクエストを送信するには、次のいずれかのオプションを選択します。
curl
リクエスト本文を request.json という名前のファイルに保存して、次のコマンドを実行します。
curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/publishers/google/models/imagen-3.0-capability-001:predict"
PowerShell
リクエスト本文を request.json という名前のファイルに保存して、次のコマンドを実行します。
$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://REGION-aiplatform.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/publishers/google/models/imagen-3.0-capability-001:predict" | Select-Object -Expand Content
"sampleCount": 2 を含むリクエストに対するものです。レスポンスは、生成された画像のバイトを base64 でエンコードした 2 つの予測オブジェクトを返します。
{
"predictions": [
{
"bytesBase64Encoded": "BASE64_IMG_BYTES",
"mimeType": "image/png"
},
{
"mimeType": "image/png",
"bytesBase64Encoded": "BASE64_IMG_BYTES"
}
]
}
クラス ID
次のオブジェクト クラス ID を使用して、特定のオブジェクトに基づいて画像マスクを自動的に作成します。
クラス ID(class_) |
オブジェクト |
|---|---|
| 0 | リュックサック |
| 1 | 傘 |
| 2 | バッグ |
| 3 | ネクタイ |
| 4 | スーツケース |
| 5 | ケース |
| 6 | 鳥 |
| 7 | 猫 |
| 8 | 犬 |
| 9 | 馬 |
| 10 | ヒツジ |
| 11 | 牛 |
| 12 | ゾウ |
| 13 | クマ |
| 14 | シマウマ |
| 15 | キリン |
| 16 | 動物(その他) |
| 17 | 電子レンジ |
| 18 | ラジエーター |
| 19 | オーブン |
| 20 | トースター |
| 21 | 貯蔵タンク |
| 22 | コンベヤー ベルト |
| 23 | シンク |
| 24 | 冷蔵庫 |
| 25 | 洗濯乾燥機 |
| 26 | 扇風機 |
| 27 | 食洗機 |
| 28 | トイレ |
| 29 | バスタブ |
| 30 | シャワー |
| 31 | トンネル |
| 32 | ブリッジ |
| 33 | 桟橋 |
| 34 | テント |
| 35 | ビルディング |
| 36 | 天井 |
| 37 | ノートパソコン |
| 38 | キーボード |
| 39 | ネズミ |
| 40 | リモート |
| 41 | 携帯電話 |
| 42 | テレビ |
| 43 | フロア |
| 44 | ステージ |
| 45 | バナナ |
| 46 | リンゴ |
| 47 | サンドイッチ |
| 48 | オレンジ |
| 49 | ブロッコリー |
| 50 | ニンジン |
| 51 | ホットドッグ |
| 52 | ピザ |
| 53 | ドーナツ |
| 54 | ケーキ |
| 55 | 果物(その他) |
| 56 | 食品(その他) |
| 57 | 椅子(その他) |
| 58 | アームチェア |
| 59 | 回転椅子 |
| 60 | スツール |
| 61 | シート |
| 62 | ソファ |
| 63 | ゴミ箱 |
| 64 | 鉢植えの植物 |
| 65 | ナイトスタンド |
| 66 | ベッド |
| 67 | テーブル |
| 68 | ビリヤード |
| 69 | 樽 |
| 70 | デスク |
| 71 | オットマン |
| 72 | 洋服だんす |
| 73 | ベビーベッド |
| 74 | かご |
| 75 | 整理ダンス |
| 76 | 本棚 |
| 77 | カウンタ(その他) |
| 78 | バスルーム カウンタ |
| 79 | キッチン アイランド |
| 80 | ドア |
| 81 | ライト(その他) |
| 82 | ランプ |
| 83 | 壁掛け照明 |
| 84 | シャンデリア |
| 85 | ミラー |
| 86 | ホワイトボード |
| 87 | 棚 |
| 88 | 階段 |
| 89 | エスカレーター |
| 90 | キャビネット |
| 91 | 暖炉 |
| 92 | ガスコンロ |
| 93 | アーケード マシン |
| 94 | 砂利 |
| 95 | プラットフォーム |
| 96 | プレイフィールド |
| 97 | レール |
| 98 | 道路 |
| 99 | 雪 |
| 100 | 歩道 |
| 101 | ランウェイ |
| 102 | 地形 |
| 103 | 書籍 |
| 104 | ボックス |
| 105 | 時計 |
| 106 | 花瓶 |
| 107 | はさみ |
| 108 | 玩具(その他) |
| 109 | テディベア |
| 110 | ヘアドライヤー |
| 111 | 歯ブラシ |
| 112 | 絵画 |
| 113 | ポスター |
| 114 | 掲示板 |
| 115 | ボトル |
| 116 | コップ |
| 117 | ワイングラス |
| 118 | ナイフ |
| 119 | フォーク |
| 120 | スプーン |
| 121 | ボウル |
| 122 | トレイ |
| 123 | レンジフード |
| 124 | 皿 |
| 125 | 人物 |
| 126 | ライダー(その他) |
| 127 | サイクリスト |
| 128 | ライダー |
| 129 | ホワイトペーパー |
| 130 | 街灯 |
| 131 | 道路の障害物 |
| 132 | 郵便受け |
| 133 | CCTV カメラ |
| 134 | ジャンクション ボックス |
| 135 | 交通標識 |
| 136 | 信号 |
| 137 | 消火栓 |
| 138 | パーキング メーター |
| 139 | ベンチ |
| 140 | 自転車置き場 |
| 141 | 広告板 |
| 142 | 空 |
| 143 | ポール |
| 144 | フェンス |
| 145 | 手すり |
| 146 | ガードレール |
| 147 | 山 |
| 148 | 岩 |
| 149 | フリスビー |
| 150 | スキー |
| 151 | スノーボード |
| 152 | ボール |
| 153 | 凧 |
| 154 | 野球のバット |
| 155 | 野球のグローブ |
| 156 | スケートボード |
| 157 | サーフボード |
| 158 | テニスラケット |
| 159 | ネット |
| 160 | ベース |
| 161 | 彫刻 |
| 162 | 列 |
| 163 | 噴水 |
| 164 | 日よけ |
| 165 | アパレル |
| 166 | バナー |
| 167 | 旗 |
| 168 | ブランケット |
| 169 | カーテン(その他) |
| 170 | シャワーカーテン |
| 171 | 枕 |
| 172 | タオル |
| 173 | ラグマット |
| 174 | 樹木 |
| 175 | 自転車 |
| 176 | 車 |
| 177 | 自動三輪タクシー |
| 178 | オートバイ |
| 179 | 飛行機 |
| 180 | バス |
| 181 | 電車 |
| 182 | トラック |
| 183 | トレーラー |
| 184 | ボート、船 |
| 185 | ゆっくりと動く車輪付きの物体 |
| 186 | 川湖 |
| 187 | 海 |
| 188 | 水(その他) |
| 189 | プール |
| 190 | ウォーターフォール |
| 191 | 壁 |
| 192 | 窓 |
| 193 | ブラインド |
次のステップ
- 詳細については、Vertex AI の Imagen をご覧ください。