Questa pagina descrive come utilizzare la pittura esterna con Imagen per espandere i contenuti di un'immagine oltre i bordi originali utilizzando gli SDK Firebase AI Logic.
La pittura esterna è un tipo di modifica basata su maschera. Una maschera è un overlay digitale che definisce l'area specifica che vuoi modificare.
Come funziona: fornisci un'immagine originale e una corrispondente immagine mascherata, generata automaticamente o fornita da te, che definisce una maschera della nuova area espansa. Facoltativamente, puoi anche fornire un prompt di testo che descriva ciò che vuoi nell'area espansa oppure il modello può decidere in modo intelligente cosa continuerà logicamente la scena esistente. Il modello genera i nuovi contenuti e riempie l'area mascherata.
Ad esempio, puoi modificare le proporzioni di un'immagine o aggiungere altro contesto di sfondo.
Prima di iniziare
| Disponibile solo quando utilizzi Vertex AI Gemini API come provider di API. |
Se non l'hai ancora fatto, completa la
guida introduttiva, che
descrive come configurare il progetto Firebase, collegare l'app a Firebase,
aggiungere l'SDK, inizializzare il servizio di backend per il provider di API scelto e
creare un'istanza ImagenModel.
Modelli che supportano questa funzionalità
Imagen offre la modifica delle immagini tramite il modello capability:
imagen-3.0-capability-001
Tieni presente che per i modelli Imagen la località global
non è supportata.
Espandere i contenuti di un'immagine
| Prima di provare questo esempio, completa la sezione Prima di iniziare di questa guida per configurare il progetto e l'app. |
L'esempio seguente mostra come espandere un'immagine oltre i bordi originali utilizzando una maschera definita in un'immagine che fornisci. Fornisci l'immagine originale, un prompt di testo e l'immagine mascherata. Tieni presente quanto segue sull'immagine originale e su quella mascherata:
L'immagine mascherata deve avere le dimensioni in pixel della dimensione di destinazione dell'immagine con pittura esterna finale.
L'immagine originale deve includere un riempimento aggiuntivo per corrispondere alle dimensioni in pixel dell'immagine mascherata.
Fornire un prompt di testo è facoltativo se vuoi che il modello decida in modo intelligente cosa continuerà logicamente la scena esistente. Se vuoi contenuti specifici all'interno dell'area espansa, devi specificarli in un prompt di testo.
Swift
La modifica delle immagini con i modelli Imagen non è supportata per Swift. Ricontrolla più tardi quest'anno.
Kotlin
Per espandere un'immagine, utilizza
editImage()
e imposta la configurazione di modifica in modo da utilizzare ImagenEditMode.OUTPAINT.
Tieni presente che, facoltativamente, puoi utilizzare
outpaintImage()
anziché editImage(), e non devi specificare la modalità di modifica.
Consulta la guida di avvio rapido per il codice campione per l'outpainting.
Java
Per espandere un'immagine, utilizza
editImage()
e imposta la configurazione di modifica in modo da utilizzare ImagenEditMode.OUTPAINT.
Tieni presente che, facoltativamente, puoi utilizzare
outpaintImage()
anziché editImage(), e non devi specificare la modalità di modifica.
Consulta la guida di avvio rapido per il codice campione per l'outpainting.
Web
La modifica delle immagini con i modelli Imagen non è supportata per le app web. Ricontrolla più tardi quest'anno.
Dart
Per espandere un'immagine, utilizza
editImage()
e imposta la configurazione di modifica in modo da utilizzare ImagenEditMode.OUTPAINT.
Consulta la guida di avvio rapido per il codice campione per l'outpainting.
Unity
La modifica delle immagini con i modelli Imagen non è supportata per Unity. Ricontrolla più tardi quest'anno.
Best practice e limitazioni
Ti consigliamo di dilatare la maschera quando modifichi un'immagine. Questo può contribuire a uniformare
i bordi di una modifica e a renderla più convincente. In genere, è consigliabile un valore di dilatazione
dell'1% o del 2% (0.01 o 0.02).
Fornisci un feedback sulla tua esperienza con Firebase AI Logic