影像產生和編輯
Amazon Nova Canvas 可透過 Bedrock InvokeModel API 取得,並在執行模型推論時支援下列推論參數和模型回應。
影像產生請求和回應格式
當您使用 Amazon Nova Canvas 模型進行 InvokeModel 呼叫時,請使用符合您使用案例的格式來取代請求的 body 欄位。所有任務都共用 imageGenerationConfig 物件,但是每個任務都有一個特定於該項任務的參數物件。支援下列使用案例:
| 任務類型值 | 任務參數欄位 | 任務類別 | 描述 |
|---|---|---|---|
TEXT_IMAGE,僅含文字 |
textToImageParams |
產生 | 使用文字提示詞產生影像。 |
TEXT_IMAGE,包含影像條件化 |
textToImageParams |
產生 | 提供輸入調節影像及文字提示詞,以產生遵循調節影像佈局和構圖的影像。 |
COLOR_GUIDED_GENERATION |
colorGuidedGenerationParams |
產生 | 提供十六進位格式的顏色值清單 (例如 #FF9800),以及文字提示詞和選用的參考影像,以產生遵循指定調色盤的影像。 |
IMAGE_VARIATION |
imageVariationParams |
產生 | 提供有或沒有文字提示詞的一或多個輸入影像,以影響產生的影像。可用於影響產生影像的視覺風格 (與文字提示詞搭配使用時)、產生單一影像的變體 (不帶文字提示詞使用時),以及其他創意效果和控制。 |
INPAINTING |
inPaintingParams |
編輯 | 透過變更遮罩區域以內的區域來修改影像。可用於新增、移除或取代影像元素。 |
OUTPAINTING |
outPaintingParams |
編輯 | 透過變更遮罩區域以外的區域來修改影像。可用於取代主體後方的背景。 |
BACKGROUND_REMOVAL |
backgroundRemovalParams |
編輯 | 自動移除任何影像的背景,以透明像素取代背景。當您稍後想要將影像與影像編輯應用程式、簡報或網站中的其他元素複合時,會很有用。也可以透過自訂程式碼,輕鬆將背景變更為純色。 |
VIRTUAL_TRY_ON |
virtualTryOnParams |
編輯 | 提供來源影像和參考影像,將參考影像中的物件疊加到來源影像上。可用於視覺化不同模型或不同姿勢的衣物和配件、改變物件或物品或衣物的風格和外觀,或將風格和設計從一個物件轉移到另一個物件。 |
用於產生影像的輸入影像
許多任務類型需要將一或多個輸入影像包含在請求中。請求中使用的任何影像都必須編碼為 Base64 字串。一般而言,影像可以是 PNG 或 JPEG 格式,且必須為每個色彩通道 8 位元 (RGB)。PNG 影像可能包含額外的 Alpha 通道,但該通道不得包含任何透明或半透明像素。如需支援的輸入影像維度的特定詳細資訊,請參閱 支援的影像解析度。
遮罩影像是一種影像,指出要進行修繪或擴繪的區域。此影像只能包含純黑色和純白色像素。
對於修繪請求,顏色為黑色的區域稱為遮罩,是將要變更的區域。遮罩影像的其餘部分只能包含純白色像素。純白色像素表示遮罩以外的區域。
對於擴繪請求,模型會變更顔色為白色的區域。
遮罩影像不得包含任何純黑色或純白色之外的像素。如果您使用 JPEG 影像作為遮罩,則必須以 100% 品質壓縮,以避免在壓縮期間引入非白色或非黑色像素。
如需如何以 Base64 字串編碼或解碼影像的範例,請參閱程式碼範例。
遮罩影像
編輯影像時,遮罩是定義待編輯區域的一種方式。您有三種方式可以定義遮罩:
-
maskPrompt– 撰寫自然語言文字提示詞,描述要遮罩的影像部分。 -
maskImage– 黑色和白色影像,其中純黑色像素表示遮罩以內的區域,純白色像素表示遮罩以外的區域。對於修繪請求,模型會變更黑色像素。對於擴繪請求,則會變更白色像素。
-
garmentBasedMask– 以影像為基礎的遮罩 (定義要取代的區域) 以及一些有限的風格選項。
您可以使用攝影拍攝編輯工具來繪製遮罩,或使用您自己的自訂程式碼來建立遮罩。否則,請使用 maskPrompt 欄位來允許模型推論遮罩。
支援的影像解析度
您可以為產生任務指定任何輸出解析度,只要符合下列要求:
-
每一側必須介於 320-4096 (含) 像素之間。
-
每一側必須平均除以 16。
-
長寬比必須介於 1:4 和 4:1 之間。也就是說,一側長度不能超過另一側的 4 倍。
-
像素總數必須小於 4,194,304。
大多數相同的限制條件也適用於輸入影像。不過,影像的側邊不需要平均除以 16。