虛擬試穿 - Amazon Nova

虛擬試穿

虛擬試穿是一種影像引導的修繪使用案例,其中參考影像的內容會根據遮罩影像的引導疊加到來源影像中。Amazon Nova Canvas 已針對服裝、配件、家具和相關物件進行調校。此模型也很適合其他案例,例如將標誌或文字新增至影像。

您可以使用虛擬試穿 API 產生最多五個影像。根據預設,只會產生一個影像。

若要執行虛擬試穿,必須提供三個影像:

  • 來源影像 - 您要修改的原始影像。例如,這可能是影像、人物或房間場景。

  • 參考影像 - 包含您要疊加至來源影像的項目、物件或物品的影像。例如,這可能包含夾克、碗或沙發。對於服裝,參考影像可以包含身上或身外的服裝,並且可以包含代表不同服裝元件的多個產品 (例如單一影像中包含襯衫、褲子和鞋子)。

  • 遮罩影像 - 該影像定義您要修改的來源部分。遮罩影像是黑白影像,用來定義應該修改來源影像的哪個部分。黑色像素表示要修改的來源影像區域,而白色像素表示要保留的影像區域。您可以提供自己的遮罩影像,也可以讓模型根據您提供的其他輸入參數為您建立一個遮罩影像。

    如果指定,則可以將遮罩影像做爲輸出的一部分傳回。

以下是模型運作方式的一些範例。

Upper body clothing

下圖顯示 Amazon Nova 如何將上半身衣物疊加至模型的範例。

來源影像

參考影像

輸出

一位戴著太陽眼鏡、注視左側、穿著藍色襯衫的男性。
粉紅色排扣襯衫。
一位戴著太陽眼鏡、注視左側、穿著粉紅色排扣襯衫的男性。
Couch in a room

下圖顯示 Amazon Nova 如何將沙發疊加到家具房間中的範例。

來源影像

參考影像

輸出

房間裏一件中世紀的現代灰色沙發被其他裝飾包圍。
白色背景的橘色沙發。
房間內的橘色沙發被其他裝飾包圍。

與其他 Amazon Nova Canvas 任務類型不同,虛擬試穿不支援文字提示詞或負面文字提示詞。

定義遮罩影像

您可以直接提供遮罩影像,方法是指定 maskType: "IMAGE" 或允許模型使用輔助輸入,例如 maskType: "GARMENT"maskType: "PROMPT" 自動運算。

當指定遮罩類型 "GARMENT" 時,Amazon Nova Canvas 會根據您指定的 garmentClass 輸入參數值建立服裝感知遮罩。在大多數情況下,您可以使用下列其中一種高階衣物類別:

  • "UPPER_BODY" - 建立包含完整手臂長度的遮罩。

  • "LOWER_BODY" - 建立包含完整腿部長度且兩腿之間沒有間隙的遮罩。

  • "FOOTWEAR" - 建立符合來源影像中示範的鞋子輪廓的遮罩。

  • "FULL_BODY" - 建立相當於 "UPPER_BODY""LOWER_BODY" 組合的遮罩。

您可以使用 "PROMPT" 遮罩類型,藉助自然語言來描述您要取代的來源影像中的項目。這對於非服裝場景很有用。此功能會透過 maskPrompt 參數,使用現存於 "INPAINTING" 任務類型中的相同自動遮罩功能。

警告

使用 "PROMPT" 遮罩類型建立的遮罩將嚴格遵循您描述的項目形狀。在許多場景中,這可能有問題,因為新增的產品可能不能共用您即將取代的項目的相同剪影或大小。因此,虛擬試穿 API 也提供了一個選用的 maskShape 參數,該參數可設定為 "BOUNDING_BOX"。我們建議大多數情況下,在使用 "PROMPT" 遮罩類型時使用此設定 (此爲預設設定)。

產生新的姿勢、手部或臉部

您可以指示模型保留或重新產生來源影像人物的姿勢、手部或臉部。當您選擇保留這些元素時,它們會自動從遮罩影像中移除,無論您選擇哪個 maskType

在下列情況下,您可能想要保留姿勢、手部或臉部:

  • 您正在開發的應用程式允許最終使用者繪製自己的遮罩。保留這些特徵可防止最終使用者意外地在遮罩中包含手部或臉部。

  • 您正在使用 maskShape: BOUNDING_BOX 但不想產生新的手部或臉部。使用 preserveFace: ONpreserveHands: ON 時,這些特徵會自動從遮罩中移除。

  • 您正在搭配非直立姿勢的模型使用 maskType:GARMENTmaskShape: BOUNDING_BOX。在這種情況下,週框方塊遮罩可以重疊臉部,我們建議使用 preserveFace: ON

相反地,在下列情況下,您可能想要重新產生姿勢、手部或臉部:

  • 對於覆蓋脖子的服裝,preserveFace: ON 可能會排除足夠多的脖子部位,進而對輸出產生不利影響。

  • 當模特穿著高跟鞋子,而參考影像是平跟鞋子時,反之亦然。在這種情況下,保留身體姿勢會產生看起來不自然的結果。

  • 與上一點類似,在嘗試包包或其他配件時,產生新的姿勢或手部可能會產生更自然的結果。

造型提示

garmentStyling 參數可讓您保留或修改您可能會在攝影拍攝中找到的特定服裝造型提示。例如,Amazon Nova Canvas 可以修改襯衫的造型,使袖子捲起或收下,也可以修改襯衫,使下擺塞進去或塞進去。以下是可用的選項:

  • "longSleeveStyle" - 控制長袖襯衫的袖子是否捲起或收下。

    • "SLEEVE_DOWN" - 可在來源影像使用長袖襯衫 (袖子捲起或收下)、長袖襯衫或無袖襯衫時套用。

    • "SLEEVE_UP" - 可在來源影像使用長袖襯衫 (袖子捲起)、長袖襯衫或無袖襯衫時套用。

  • "tuckingStyle" - 控制上半身服裝是塞進去還是松垂。

    • "UNTUCKED" - 無論來源影像的襯衫是否塞進去都可以套用。

    • "TUCKED" - 可在來源影像的襯衫塞進去時套用。

  • "outerLayerStyle" - 控制上半身服裝的造型為開放還是封閉。此選項預設值為 "CLOSED",適用於大多數衣物 (例如襯衫和毛線衣)。對於外衣,例如夾克,將此值設定為 "OPEN" 可保證保留來源影像的原始上半身服裝,並在上面疊加新的外套層。搭配外套使用 "CLOSED" 值,不一定會使外套呈現閉合狀態。這是因為 "CLOSED" 值僅保證來源影像中的每個上半身服裝都會被替換,有時可能導致開放的外層,下方可見新的下層。

    • "CLOSED"

    • "OPEN"

如需更多詳細資訊,請參閱 影像產生的請求和回應結構 中的 garmentStyling 參數。

影像拼接

虛擬試穿可讓您判斷影像如何拼接在一起以建立最終影像。您可以從 "BALANCED""SEAMLESS""DETAILED" 中選擇。每個合併樣式會採用不同的方法來將元素拼接在一起建立最終影像,且每個都具有自己的優點和權衡。

  • "BALANCED" - 保護原始影像中的任何非遮罩像素,確保它們與原始影像保持 100% 準確。在某些情況下,輸出影像中會有輕微可見的顏色或紋理不相符,並呈現為遮罩形狀的「鬼影」影像。當影像特徵為一個人站在純色或均勻紋理的背景前方時,最有可能發生這種情況。若要避免這種情況,您可以改為使用 "SEAMLESS" 合併樣式。

  • "SEAMLESS" - 確保最終影像中的遮罩和非遮罩影像區域之間永遠不會有明顯的接縫。權衡是影像中的所有像素會稍微變更,有時會在影像的非遮罩區域減少精細細節。

  • "DETAILED" - 可大幅改善標誌和文字等精細細節,特別是遮罩區域相較於整體影像相對較小時。模型實現此目標的方法是,對原始影像的緊密裁剪、解析度更高且僅包含遮罩區域的版本進行修繪。然後再將結果合併回原始影像。如同使用 "BALANCED" 模式,此模式有時可能會導致可見的接縫。