Prova virtuale
La prova virtuale è un caso d’uso di inpainting basato su immagini in cui il contenuto di un’immagine di riferimento viene sovrapposto a un’immagine di origine sulla base delle indicazioni di un’immagine maschera. Amazon Nova Canvas è stato ottimizzato per capi di abbigliamento, accessori, mobili e oggetti correlati. Il modello si applica bene anche ad altri casi, come l’aggiunta di un logo o di un testo in un’immagine.
Puoi generare fino a cinque immagini con l’API di prova virtuale. Per impostazione predefinita, viene generata una sola immagine.
Per eseguire una prova virtuale, devi fornire tre immagini:
-
Immagine di origine: l’immagine originale che desideri modificare. Ad esempio, può essere un’immagine, una persona o una scena in una stanza.
-
Immagine di riferimento: l’immagine che contiene l’articolo, l’oggetto o il capo che desideri sovrapporre all’immagine di origine. Ad esempio, può contenere una giacca, una ciotola o un divano. Per i capi di abbigliamento, l’immagine di riferimento può contenere i capi indossati o meno, nonché includere più prodotti che rappresentano componenti diversi di un outfit (come camicia, pantaloni e scarpe in un’unica immagine).
-
Immagine maschera: l’immagine che definisce quale parte dell’origine desideri modificare. Un’immagine maschera è un’immagine in bianco e nero utilizzata per definire l’area di origine da modificare. I pixel neri indicano l’area dell’immagine di origine da modificare, mentre quelli bianchi definiscono le aree da conservare. Puoi fornire la tua immagine maschera o lasciare che il modello ne crei una in base ad altri parametri di input forniti.
L’immagine maschera può essere restituita come parte dell’input, se specificato.
Ecco alcuni esempi di funzionamento del modello.
A differenza di altri tipi di attività di Amazon Nova Canvas, la prova virtuale non supporta prompt di testo o prompt di testo negativi.
Definizione dell’immagine maschera
Puoi fornire direttamente un’immagine maschera specificando maskType: "IMAGE" o consentire al modello di calcolarla automaticamente utilizzando input ausiliari come maskType: "GARMENT" o maskType: "PROMPT".
Quando specifichi un tipo di maschera "GARMENT", Amazon Nova Canvas crea una maschera sensibile ai capi di abbigliamento in base al valore del parametro di input garmentClass specificato. Nella maggior parte dei casi, puoi utilizzare una delle seguenti classi di abbigliamento di alto livello:
-
"UPPER_BODY": crea una maschera che include l’intera lunghezza del braccio. -
"LOWER_BODY": crea una maschera che include l’intera lunghezza della gamba senza spazio tra le gambe. -
"FOOTWEAR": crea una maschera corrispondente al profilo delle scarpe presenti nell’immagine di origine. -
"FULL_BODY": crea una maschera equivalente alla combinazione di"UPPER_BODY"e"LOWER_BODY".
Puoi utilizzare il tipo di maschera "PROMPT" al fine di usare il linguaggio naturale per descrivere l’elemento dell’immagine di origine da sostituire. Questa opzione è utile per gli scenari che non includono abbigliamento. Questa funzionalità utilizza la stessa capacità di mascheramento automatico presente nel tipo di attività "INPAINTING" tramite il parametro maskPrompt.
avvertimento
Le maschere create con il tipo "PROMPT" aderiranno strettamente alla forma dell’oggetto descritto. Questo aspetto può essere problematico in molti scenari, perché il prodotto che desideri aggiungere potrebbe non avere la stessa sagoma o le stesse dimensioni dell’oggetto da sostituire. Per questo motivo, l’API di prova virtuale fornisce anche un parametro maskShape facoltativo che può essere impostato su "BOUNDING_BOX". Consigliamo di utilizzarla (è l’impostazione predefinita) nella maggior parte dei casi con il tipo di maschera "PROMPT".
Generazione di nuove pose, mani o volti
Puoi indicare al modello di mantenere o rigenerare la posa, le mani o il volto della persona presente nell’immagine di origine. Quando scegli di mantenerli, questi elementi vengono automaticamente rimossi dall’immagine maschera, a prescindere dal maskType scelto.
Nelle seguenti situazioni può essere opportuno mantenere posa, mani o volto:
-
Stai sviluppando un’applicazione che consente agli utenti finali di definire le proprie maschere. La conservazione di queste funzionalità impedisce agli utenti finali di includere per errore le mani o il volto nella maschera.
-
Utilizzi il parametro
maskShape: BOUNDING_BOXma non desideri generare nuove mani o un nuovo volto. ConpreserveFace: ONopreserveHands: ON, queste funzionalità vengono automaticamente rimosse dalla maschera. -
Utilizzi
maskType:GARMENTemaskShape: BOUNDING_BOXcon un modello che non è in posizione eretta. In questo caso, il riquadro di delimitazione della maschera può sovrapporsi al volto, quindi consigliamo di utilizzarepreserveFace: ON.
Al contrario, nelle seguenti situazioni potresti voler rigenerare la posa, le mani o il volto:
-
Per i capi di abbigliamento che coprono il collo,
preserveFace: ONpuò escludere una porzione abbastanza ampia del collo da avere un impatto negativo sull’output. -
Quando la modella indossa scarpe con il tacco e l’immagine di riferimento è di scarpe basse o viceversa. In questo caso, mantenere la posa crea risultati innaturali.
-
Analogamente al punto precedente, quando si provano borse o altri accessori, la generazione di nuove pose o mani può garantire risultati più naturali.
Indicazioni di stile
Il parametro garmentStyling consente di mantenere o modificare indicazioni di stile specifiche che potresti trovare in un servizio fotografico. Ad esempio, Amazon Nova Canvas può modificare lo stile di una camicia in modo che le maniche siano arrotolate o srotolate oppure può modificare la camicia in modo che sia infilata nei pantaloni o meno. Sono disponibili le seguenti opzioni:
-
"longSleeveStyle": controlla se le maniche di un capo a maniche lunghe sono arrotolate o srotolate.-
"SLEEVE_DOWN": può essere applicato quando nell’immagine di origine viene indossato un capo a maniche lunghe (con maniche arrotolate o srotolate), un capo a maniche corte o un capo senza maniche. -
"SLEEVE_UP": può essere applicato quando nell’immagine di origine viene indossato un capo a maniche lunghe con le maniche arrotolate, un capo a maniche corte o senza maniche.
-
-
"tuckingStyle": controlla se un capo per la parte superiore del corpo sembra essere infilato nei pantaloni o meno.-
"UNTUCKED": può essere applicato indipendentemente dal fatto che nell’immagine di origine sia presente un capo infilato o non infilato nei pantaloni. -
"TUCKED": può essere applicato quando nell’immagine di origine viene indossato un capo infilato nei pantaloni.
-
-
"outerLayerStyle": controlla se un capo di abbigliamento per la parte superiore del corpo è aperto o chiuso. L’impostazione predefinita è"CLOSED", adeguata per la maggior parte dei capi (come magliette e maglioni). Per i capi da indossare all’aperto, come le giacche, impostare questo valore su"OPEN"assicura che il capo per la parte superiore del corpo presente nell’immagine di origine venga mantenuto con sopra il nuovo capo da indossare all’aperto. L’uso del valore"CLOSED"con un capo da indossare all’aperto non sempre restituisce il capo chiuso. Ciò si verifica perché il valore"CLOSED"garantisce solamente che tutti i capi per la parte superiore del corpo nell’immagine di origine vengano sostituiti e talvolta può comportare uno strato esterno aperto con un nuovo strato inferiore visibile al di sotto.-
"CLOSED" -
"OPEN"
-
Per ulteriori informazioni, consultare i parametri garmentStyling nella pagina Struttura di richieste e risposte per la generazione di immagini.
Unione di immagini
La prova virtuale consente di stabilire come le immagini vengono unite insieme per creare l’immagine finale. Puoi scegliere tra "BALANCED", "SEAMLESS" e "DETAILED". Ogni stile di fusione adotta un approccio diverso alla modalità di unione degli elementi per creare l’immagine finale, ognuno con i propri vantaggi e compromessi.
-
"BALANCED": protegge i pixel non mascherati dell’immagine di origine, garantendo che rimangano accurati al 100% rispetto all’originale. In alcuni casi, sarà presente una discrepanza di colore o texture appena percepibile nell’immagine di output, che si presenta come una sorta di immagine “fantasma” della forma della maschera. È più probabile che ciò si verifichi quando nell’immagine è presente una persona di fronte a uno sfondo a tinta unita o con una texture uniforme. Per evitarlo, puoi utilizzare lo stile di fusione"SEAMLESS". -
"SEAMLESS": garantisce che non vi sia mai una linea di unione evidente tra le aree mascherate e non nell’immagine finale. Il compromesso è che tutti i pixel dell’immagine cambiano leggermente e a volte i dettagli granulari vengono ridotti nelle aree non mascherate dell’immagine. -
"DETAILED": può migliorare notevolmente i dettagli granulari come loghi e testo, soprattutto quando l’area mascherata è relativamente piccola rispetto all’immagine complessiva. Il modello ottiene questo risultato eseguendo l’inpainting su una versione dell’immagine originale ben ritagliata e ad alta risoluzione che include solo l’area mascherata. In seguito, unisce il risultato all’immagine originale. Proprio come con la modalità"BALANCED", a volte questo metodo può generare una linea di unione visibile.