Intelligenza artificiale
Editing di Immagini Semantico ad Alta Precisione con EditGAN

Reti Adversarie Generative o GAN hanno goduto di nuove applicazioni nell’industria di editing di immagini. Negli ultimi mesi, EditGAN sta guadagnando popolarità nell’industria AI/ML perché è un metodo innovativo per l’editing di immagini semantico ad alta precisione e alta qualità.
Parleremo del modello EditGAN nel dettaglio e vi faremo sapere perché potrebbe rivelarsi un punto di svolta nell’industria di editing di immagini semantico.
Iniziamo. Ma prima di scoprire cosa è EditGAN, è importante capire cosa è l’importanza di EditGAN e perché rappresenta un passo significativo in avanti.
Perché EditGAN?
Sebbene le architetture GAN tradizionali abbiano aiutato l’industria di editing di immagini basata su AI a progredire notevolmente, ci sono alcune sfide importanti nella costruzione di un’architettura GAN da zero.
- Durante la fase di training, un’architettura GAN richiede una grande quantità di dati etichettati con annotazioni di segmentazione semantica.
- Sono in grado di fornire solo un controllo di alto livello.
- E spesso, interpolano semplicemente avanti e indietro tra le immagini.
Si può osservare che, sebbene le architetture GAN tradizionali facciano il loro lavoro, non sono efficaci per un’ampia diffusione. L’efficienza scarsa dell’architettura GAN tradizionale è il motivo per cui EditGAN è stato introdotto da NVIDIA nel 2022.
EditGAN è stato proposto come un metodo efficace per l’editing di immagini semantico ad alta precisione e alta qualità, con la capacità di consentire agli utenti di modificare le immagini alterando le loro maschere di segmentazione dettagliate. Una delle ragioni per cui EditGAN è un metodo scalabile per le attività di editing di immagini è a causa della sua architettura.
Il modello EditGAN è costruito su un framework GAN che modella immagini e segmentazioni semantiche congiuntamente e richiede solo una manciata di dati di training etichettati o annotati. Gli sviluppatori di EditGAN hanno tentato di incorporare un’immagine nello spazio latente del GAN per modificare efficacemente l’immagine eseguendo un’ottimizzazione del codice latente condizionale in conformità con l’editing della segmentazione. Inoltre, per amortizzare l’ottimizzazione, il modello tenta di trovare “vettori di editing” nello spazio latente che realizzano gli editing.
L’architettura del framework EditGAN consente al modello di apprendere un numero arbitrario di vettori di editing che possono essere applicati direttamente ad altre immagini con alta velocità ed efficienza. Inoltre, i risultati sperimentali indicano che EditGAN può modificare le immagini con un livello di dettaglio mai visto prima, preservando al massimo la qualità dell’immagine.
Per riassumere il motivo per cui abbiamo bisogno di EditGAN, è il primo framework di editing di immagini basato su GAN che offre
- Editing ad alta precisione.
- Può funzionare con una manciata di dati etichettati.
- Può essere distribuito efficacemente in scenari in tempo reale.
- Consente la composizionalità per più editing contemporanei.
- Funziona su immagini generate da GAN, immagini reali incorporate e anche immagini fuori dal dominio.
Editing di Immagini Semantico ad Alta Precisione con EditGAN
StyleGAN2, un framework GAN di stato dell’arte per la sintesi di immagini, è il componente principale di generazione di immagini di EditGAN. Il framework StyleGAN2 mappa codici latenti tratti da una distribuzione normale multivariata e li mappa in immagini realistiche.
StyleGAN2 è un modello generativo profondo che è stato addestrato per sintetizzare immagini della più alta qualità possibile, oltre ad acquisire una comprensione semantica delle immagini modellate.
Training e Inferenza della Segmentazione
Il modello EditGAN incorpora un’immagine nello spazio latente del GAN utilizzando l’ottimizzazione e un encoder per eseguire la segmentazione su una nuova immagine e addestrare la branca di segmentazione. Il framework EditGAN continua a costruire sui lavori precedenti e addestra un encoder per incorporare le immagini nello spazio latente. L’obiettivo principale qui è addestrare l’encoder costituito da perdite L2 e LPIPS costruite punto per punto utilizzando campioni da GAN e dati di training reali. Inoltre, il modello regolarizza anche l’encoder in modo esplicito utilizzando i codici latenti quando lavora con i campioni GAN.
Di conseguenza, il modello incorpora le immagini annotate del set di dati etichettate con segmentazione semantica nello spazio latente e utilizza la perdita di entropia incrociata per addestrare la branca di segmentazione del generatore.
Utilizzo dell’Editing della Segmentazione per Trovare la Semantica nello Spazio Latente
Lo scopo principale di EditGAN è sfruttare la distribuzione congiunta di segmentazioni semantiche e immagini per l’editing di immagini ad alta precisione. Supponiamo di avere un’immagine x che deve essere modificata, quindi il modello incorpora l’immagine nello spazio latente di EditGAN o utilizza i campioni di immagini del modello stesso. La branca di segmentazione genera y o la segmentazione corrispondente principalmente perché sia le immagini RGB che le segmentazioni condividono gli stessi codici latenti w. Gli sviluppatori possono quindi utilizzare qualsiasi strumento di etichettatura o pittura digitale per modificare la segmentazione ed editarla manualmente in base alle loro esigenze.

Diversi Moduli di Editing durante l’Inferenza
I vettori di editing dello spazio latente ottenuti utilizzando l’ottimizzazione possono essere descritti come semanticamente significativi e sono spesso disaccoppiati con diversi attributi. Pertanto, per modificare una nuova immagine, il modello può incorporare direttamente l’immagine nello spazio latente e eseguire le stesse operazioni di editing che il modello ha appreso in precedenza, senza eseguire nuovamente l’ottimizzazione dall’inizio. Sarebbe sicuro dire che i vettori di editing che il modello apprende amortizzano l’ottimizzazione che era essenziale per modificare l’immagine inizialmente.
È degno di nota che gli sviluppatori non hanno ancora perfezionato la disaccoppiatura e i vettori di editing spesso non restituiscono i migliori risultati quando utilizzati su altre immagini. Tuttavia, il problema può essere superato rimuovendo gli artifact di editing da altre parti dell’immagine eseguendo alcuni passaggi di ottimizzazione aggiuntivi durante il test.
Sulla base delle nostre attuali conoscenze, il framework EditGAN può essere utilizzato per modificare le immagini in tre diversi modi.
- Editing in Tempo Reale con Vettori di Editing
Per immagini localizzate e disaccoppiate, il modello modifica le immagini applicando vettori di editing appresi in precedenza con diverse scale e manipola le immagini a velocità interattive.
- Utilizzo del Raffinamento Auto-Supervisionato per l’Editing Basato su Vettori
Per l’editing di immagini localizzate che non sono disaccoppiate perfettamente con altre parti dell’immagine, il modello inizia a modificare l’immagine utilizzando vettori di editing appresi in precedenza e rimuove gli artifact di editing eseguendo alcuni passaggi di ottimizzazione aggiuntivi durante il test.
- Editing Basato sull’Ottimizzazione
Per eseguire modifiche su larga scala e specifiche dell’immagine, il modello esegue l’ottimizzazione dall’inizio perché i vettori di editing non possono essere utilizzati per eseguire questi tipi di trasferimenti su altre immagini.
Implementazione
Il framework EditGAN è valutato su immagini diffuse in quattro diverse categorie: Auto, Uccelli, Gatti e Volti. La branca di segmentazione del modello è addestrata utilizzando coppie di immagini e maschere di 16, 30, 30, 16 come dati di training etichettati per Auto, Uccelli, Gatti e Volti rispettivamente. Quando l’immagine deve essere modificata utilizzando solo l’ottimizzazione o quando il modello tenta di apprendere i vettori di editing, il modello esegue 100 passaggi di ottimizzazione utilizzando l’ottimizzatore Adam.
Per il set di dati di Gatti, Auto e Volti, il modello utilizza immagini reali del set di test di DatasetGAN che non sono state utilizzate per addestrare il framework GAN per eseguire la funzionalità di editing. Immediatamente, queste immagini vengono incorporate nello spazio latente di EditGAN utilizzando l’ottimizzazione e la codifica. Per la categoria Uccelli, l’editing viene mostrato su immagini generate da GAN.
Risultati
Risultati Qualitativi
Risultati all’Interno del Dominio

L’immagine sopra mostra le prestazioni del framework EditGAN quando applica i vettori di editing appresi in precedenza su immagini nuove e raffina le immagini utilizzando 30 passaggi di ottimizzazione. Queste operazioni di editing eseguite dal framework EditGAN sono disaccoppiate per tutte le classi e preservano la qualità complessiva delle immagini. Confrontando i risultati di EditGAN con altri modelli di base, si può osservare che il framework EditGAN supera altri metodi nell’esecuzione di editing ad alta precisione e complessi, preservando l’identità del soggetto e la qualità dell’immagine allo stesso tempo.
Ciò che è sorprendente è che il framework EditGAN può eseguire editing ad alta precisione come dilatare le pupille o modificare i raggi delle ruote di un’auto. Inoltre, EditGAN può anche essere utilizzato per modificare le parti semantiche di oggetti che hanno solo pochi pixel o può essere utilizzato per eseguire modifiche su larga scala a un’immagine. Vale la pena notare che le diverse operazioni di editing del framework EditGAN sono in grado di generare immagini modificate diverse da quelle che appaiono nei dati di training di GAN.
Risultati Fuori dal Dominio
Per valutare le prestazioni di EditGAN fuori dal dominio, il framework è stato testato sul set di dati MetFaces. Il modello EditGAN utilizza volti reali all’interno del dominio per creare vettori di editing. Il modello quindi incorpora i ritratti di MetFaces fuori dal dominio utilizzando un processo di ottimizzazione di 100 passaggi e applica i vettori di editing tramite un processo di raffinamento auto-supervisionato di 30 passaggi. I risultati possono essere visti nell’immagine seguente.

Risultati Quantitativi
Per misurare le capacità di editing di immagini di EditGAN in modo quantitativo, il modello utilizza un benchmark di editing del sorriso che è stato introdotto per la prima volta da MaskGAN. I volti che contengono un’espressione neutra vengono sostituiti con volti sorridenti e le prestazioni vengono misurate su tre parametri.
- Correttezza Semantica
Il modello utilizza un classificatore di attributi di sorriso pre-addestrato per misurare se i volti nelle immagini mostrano espressioni sorridenti dopo l’editing.
- Qualità dell’Immagine a Livello di Distribuzione
La distanza di Inception del kernel o KID e la distanza di Inception di Frechet o FID vengono calcolate tra il set di test di CelebA e 400 immagini modificate di test.
- Conservazione dell’Identità
La capacità del modello di preservare l’identità dei soggetti quando si modifica l’immagine viene misurata utilizzando una rete di estrazione di caratteristiche ArcFace pre-addestrata.

La tabella sopra confronta le prestazioni del framework EditGAN con altri modelli di base sul benchmark di editing del sorriso. Il metodo seguito dal framework EditGAN per ottenere tali risultati è confrontato con tre diversi modelli di base:
- MaskGAN
MaskGAN prende immagini non sorridenti insieme alle loro maschere di segmentazione e una maschera di segmentazione di sorriso di destinazione come input. Vale la pena notare che, rispetto a EditGAN, il framework MaskGAN richiede una grande quantità di dati annotati.
- Editing Locale
EditGAN confronta anche le sue prestazioni con l’editing locale, un metodo utilizzato per raggruppare le caratteristiche di GAN per implementare l’editing locale e che dipende dalle immagini di riferimento.
- InterFaceGAN
Allo stesso modo di EditGAN, InterFaceGAN tenta di trovare vettori di editing nello spazio latente del modello. Tuttavia, a differenza di EditGAN, il modello InterFaceGAN utilizza una grande quantità di dati annotati, classificatori di attributi ausiliari e non ha la precisione di editing fine.
- StyleGAN2Distillation
Questo metodo crea un approccio alternativo che non richiede necessariamente l’incorporazione di immagini reali e invece utilizza un modello di vettori di editing per creare un set di dati di training.

Limitazioni
Poiché EditGAN si basa sul framework GAN, ha la stessa limitazione di qualsiasi altro modello GAN: può funzionare solo con immagini che possono essere modellate dal GAN. La limitazione di EditGAN di funzionare con immagini modellate da GAN è il motivo principale per cui è difficile implementare EditGAN in diversi scenari. Tuttavia, vale la pena notare che gli editing ad alta precisione di EditGAN possono essere trasferiti facilmente su altre immagini diverse utilizzando i vettori di editing.
Conclusione
Uno dei motivi principali per cui GAN non è uno standard industriale nel campo di editing di immagini è a causa della sua limitata praticità. I framework GAN richiedono generalmente una grande quantità di dati di training annotati e non restituiscono spesso un’efficienza e un’accuratezza elevate.
EditGAN tenta di affrontare i problemi presentati dai framework GAN convenzionali e tenta di presentarsi come un metodo efficace per l’editing di immagini semantico ad alta qualità e alta precisione. I risultati finora hanno indicato che EditGAN offre effettivamente ciò che afferma e sta già performando meglio di alcune delle attuali pratiche e modelli standard dell’industria.












