Connect with us

Intelligenza artificiale

InstantID: Generazione di identità zero-shot in pochi secondi

mm

La tecnologia di generazione di immagini basata sull’intelligenza artificiale ha conosciuto una crescita notevole negli ultimi anni, dal momento che modelli di diffusione di testo-immagine come DALL-E, GLIDE, Stable Diffusion, Imagen e altri sono emersi sulla scena. Nonostante il fatto che i modelli di generazione di immagini basati sull’intelligenza artificiale abbiano un’architettura e metodi di formazione unici, condividono tutti un punto focale comune: la generazione di immagini personalizzate e personalizzate che mira a creare immagini con caratteristiche di identità, soggetto e stile coerenti in base a immagini di riferimento. Grazie alle loro notevoli capacità generative, i moderni framework di generazione di immagini basati sull’intelligenza artificiale hanno trovato applicazioni in campi che includono l’animazione di immagini, la realtà virtuale, il commercio elettronico, i ritratti di intelligenza artificiale e molto altro. Tuttavia, nonostante le loro notevoli capacità generative, questi framework condividono tutti un ostacolo comune, la maggior parte di essi non è in grado di generare immagini personalizzate preservando i dettagli delicati delle immagini di oggetti umani.

La generazione di immagini personalizzate preservando i dettagli intricati è di importanza critica, soprattutto nei compiti di identità facciale umana che richiedono un alto livello di fedeltà e dettaglio, e una semantica sfumata quando paragonata alla generazione di immagini di oggetti generici che si concentra principalmente su texture e colori grossolani. Inoltre, i framework di sintesi di immagini personalizzate negli ultimi anni, come LoRA, DreamBooth, Textual Inversion e altri, sono avanzati notevolmente. Tuttavia, i modelli di generazione di immagini personalizzate basati sull’intelligenza artificiale non sono ancora perfetti per il deploy in scenari del mondo reale, poiché hanno un alto requisito di archiviazione, richiedono molte immagini di riferimento e spesso richiedono un lungo processo di fine-tuning. D’altra parte, sebbene i metodi basati su ID-embedding esistenti richiedano solo un’unica propagazione in avanti di riferimento, o mancano di compatibilità con modelli pre-addestrati pubblicamente disponibili, o richiedono un eccessivo processo di fine-tuning su numerosi parametri, o non riescono a mantenere un’elevata fedeltà del viso.

Per affrontare queste sfide e ulteriormente migliorare le capacità di generazione di immagini, in questo articolo parleremo di InstantID, una soluzione basata su modello di diffusione per la generazione di immagini. InstantID è un modulo plug and play che gestisce la generazione di immagini e la personalizzazione in modo adeguato su vari stili con solo un’unica immagine di riferimento e assicura anche un’elevata fedeltà. L’obiettivo principale di questo articolo è fornire ai nostri lettori una comprensione approfondita dei fondamenti tecnici e dei componenti del framework InstantID, poiché esamineremo nel dettaglio l’architettura del modello, il processo di formazione e gli scenari di applicazione. Quindi, iniziamo.

InstantID: Generazione di immagini zero-shot con preservazione dell’identità


L’emergere dei modelli di diffusione di testo-immagine ha contribuito notevolmente all’avanzamento della tecnologia di generazione di immagini. L’obiettivo principale di questi modelli è la generazione personalizzata e personalizzata, e la creazione di immagini con soggetto, stile e identità di carattere coerenti utilizzando una o più immagini di riferimento. La capacità di questi framework di creare immagini coerenti ha creato potenziali applicazioni in diversi settori, tra cui l’animazione di immagini, la generazione di ritratti di intelligenza artificiale, il commercio elettronico, la realtà virtuale e aumentata, e molto altro.

Tuttavia, nonostante le loro notevoli capacità, questi framework affrontano una sfida fondamentale: spesso lottano per generare immagini personalizzate che preservino i dettagli intricati degli oggetti umani in modo accurato. È degno di nota che la generazione di immagini personalizzate con dettagli intrinseci è un compito difficile, poiché l’identità facciale umana richiede un livello di fedeltà e dettaglio più elevato, insieme a una semantica più avanzata rispetto agli oggetti generici o agli stili che si concentrano principalmente su colori o texture grossolane. I modelli di generazione di immagini basati su testo esistenti dipendono da descrizioni testuali dettagliate e lottano nel raggiungere una forte rilevanza semantica per la generazione di immagini personalizzate. Inoltre, alcuni grandi framework di generazione di immagini basati su testo pre-addestrati aggiungono controlli di condizionamento spaziale per migliorare la controllabilità, facilitando il controllo strutturale fine-grano utilizzando elementi come pose del corpo, mappe di profondità, schizzi dell’utente, mappe di segmentazione semantica e altro. Tuttavia, nonostante queste aggiunte e miglioramenti, questi framework sono in grado di raggiungere solo una parziale fedeltà dell’immagine generata rispetto all’immagine di riferimento.

Per superare questi ostacoli, il framework InstantID si concentra sulla sintesi di immagini istantanea con preservazione dell’identità e tenta di colmare il divario tra efficienza e fedeltà introducendo un semplice modulo plug and play che consente al framework di gestire la personalizzazione delle immagini utilizzando solo un’unica immagine facciale e mantenendo un’elevata fedeltà. Inoltre, per preservare l’identità facciale dall’immagine di riferimento, il framework InstantID implementa un nuovo encoder di viso che mantiene i dettagli intricati dell’immagine aggiungendo condizioni spaziali deboli e condizioni semantiche forti che guidano il processo di generazione di immagini incorporando prompt testuali, immagini di riferimento e immagini facciali.

Ci sono tre caratteristiche distintive che separano il framework InstantID dai framework di generazione di immagini basati su testo esistenti.

  • Compatibilità e plug and play: Invece di formare tutti i parametri del framework UNet, il framework InstantID si concentra sulla formazione di un adattatore leggero. Di conseguenza, il framework InstantID è compatibile e plug and play con modelli pre-addestrati esistenti.
  • Tuning-free: La metodologia del framework InstantID elimina la necessità di fine-tuning, poiché richiede solo un’unica propagazione in avanti per l’inferenza, rendendo il modello altamente pratico e economico per il fine-tuning.
  • Prestazioni superiori: Il framework InstantID dimostra un’elevata flessibilità e fedeltà, poiché è in grado di fornire prestazioni all’avanguardia utilizzando solo un’unica immagine di riferimento, paragonabili ai metodi basati sulla formazione che si affidano a più immagini di riferimento.

Nel complesso, i contributi del framework InstantID possono essere categorizzati nei seguenti punti.

  1. Il framework InstantID è un metodo di adattamento innovativo e di preservazione dell’identità per modelli di diffusione di testo-immagine pre-addestrati, con l’obiettivo di colmare il divario tra efficienza e fedeltà.
  2. Il framework InstantID è compatibile e plug and play con modelli personalizzati con fine-tuning utilizzando lo stesso modello di diffusione nella sua architettura, consentendo la preservazione dell’identità nei modelli pre-addestrati senza alcun costo aggiuntivo.

InstantID: Metodologia e architettura

Come menzionato in precedenza, il framework InstantID è un adattatore leggero efficiente che conferisce ai modelli di diffusione di testo-immagine pre-addestrati le capacità di preservazione dell’identità senza sforzo.

Parlando dell’architettura, il framework InstantID è costruito sulla base del modello Stable Diffusion, noto per la sua capacità di eseguire il processo di diffusione con un’elevata efficienza computazionale in uno spazio latente a bassa dimensionalità invece che nello spazio dei pixel con un auto-encoder. Per un’immagine di input, l’encoder mappa l’immagine a una rappresentazione latente con un fattore di campionamento e dimensioni latenti. Inoltre, per desumare un rumore normalmente distribuito con rumore latente, condizione e tempo di attuale, il processo di diffusione adotta un componente di denoising UNet. La condizione è un’incorporazione di prompt testuali generati utilizzando un componente di encoder di testo CLIP pre-addestrato.

Inoltre, il framework InstantID utilizza anche un componente ControlNet che è in grado di aggiungere il controllo spaziale a un modello di diffusione pre-addestrato come condizione, estendendosi ben oltre le capacità tradizionali dei prompt testuali. Il componente ControlNet integra anche l’architettura UNet del framework Stable Diffusion utilizzando una replica addestrata del componente UNet. La replica del componente UNet presenta zero layer di convoluzione all’interno dei blocchi centrali e dei blocchi dell’encoder. Nonostante le loro somiglianze, il componente ControlNet si distingue dal modello Stable Diffusion; entrambi differiscono nell’ultimo elemento residuale. Il componente ControlNet codifica le informazioni di condizione spaziale come pose, mappe di profondità, schizzi e altro aggiungendo i residui al blocco UNet, e quindi incorpora questi residui nella rete originale.

Il framework InstantID trae anche ispirazione da IP-Adapter o Image Prompt Adapter che introduce un approccio innovativo per ottenere capacità di prompt di immagine in esecuzione parallela con i prompt testuali senza richiedere di modificare i modelli di testo-immagine originali. Il componente IP-Adapter impiega anche una strategia di cross-attenzione decoupled unica che utilizza layer di cross-attenzione aggiuntivi per incorporare le caratteristiche dell’immagine lasciando invariati gli altri parametri.

Metodologia

Per fornire una panoramica generale, il framework InstantID mira a generare immagini personalizzate con diversi stili o pose utilizzando solo un’unica immagine di riferimento con un’elevata fedeltà. La seguente figura fornisce una panoramica del framework InstantID.

Come può essere osservato, il framework InstantID ha tre componenti essenziali:

  1. Un componente di incorporazione di ID che cattura informazioni semantiche robuste delle caratteristiche facciali nell’immagine.
  2. Un modulo di adattamento leggero con un componente di cross-attenzione decoupled per facilitare l’uso di un’immagine come prompt visivo.
  3. Un componente IdentityNet che codifica le caratteristiche dettagliate dall’immagine di riferimento utilizzando un controllo spaziale aggiuntivo.

Incorporazione di ID

A differenza dei metodi esistenti come FaceStudio, PhotoMaker, IP-Adapter e altri che si affidano a un encoder di immagine CLIP pre-addestrato per estrarre prompt visivi, il framework InstantID si concentra sulla fedeltà e sui dettagli semantici più forti nel compito di preservazione dell’identità. È degno di nota che le limitazioni intrinseche del componente CLIP risiedono principalmente nel suo processo di formazione su dati debolmente allineati, il che significa che le caratteristiche codificate dell’encoder CLIP catturano principalmente informazioni semantiche ampie e ambigue come colori, stile e composizione. Sebbene queste caratteristiche possano agire come supplemento generale agli incorporamenti di testo, non sono adatte per compiti di preservazione dell’identità precisi che pongono l’accento su una forte semantica e un’elevata fedeltà. Inoltre, la ricerca recente sui modelli di rappresentazione facciale, in particolare sulla riconoscimento facciale, ha dimostrato l’efficienza della rappresentazione facciale in compiti complessi come la ricostruzione e il riconoscimento facciale. Sulla base di ciò, il framework InstantID mira a sfruttare un modello di viso pre-addestrato per rilevare e estrarre incorporamenti di ID dalle immagini di riferimento, guidando il modello per la generazione di immagini.

Adattatore di immagine

La capacità dei modelli di diffusione di testo-immagine pre-addestrati nei compiti di prompt di immagine migliora notevolmente i prompt testuali, soprattutto per scenari che non possono essere descritti adeguatamente dai prompt testuali. Il framework InstantID adotta una strategia simile a quella utilizzata dal modello IP-Adapter per il prompt di immagine, che introduce un modulo di adattamento leggero abbinato a un componente di cross-attenzione decoupled per supportare le immagini come prompt di input. Tuttavia, a differenza degli incorporamenti CLIP allineati grossolanamente, il framework InstantID si discosta impiegando incorporamenti di ID come prompt di immagine nel tentativo di raggiungere un’integrazione di prompt più ricca e sfumata.

IdentityNet

Sebbene i metodi esistenti siano in grado di integrare i prompt di immagine con i prompt testuali, il framework InstantID sostiene che questi metodi migliorano solo le caratteristiche grossolane con un livello di integrazione insufficiente per la generazione di immagini con preservazione dell’identità. Inoltre, l’aggiunta dei token di immagine e di testo nei layer di cross-attenzione direttamente tende a indebolire il controllo dei token di testo, e un tentativo di rafforzare la forza dei token di immagine potrebbe risultare nell’impedire le capacità dei token di testo nei compiti di editing. Per contrastare queste sfide, il framework InstantID opta per ControlNet, un metodo di incorporamento di caratteristiche alternativo che utilizza le informazioni spaziali come input per il modulo di controllo, consentendo di mantenere la coerenza con le impostazioni UNet nei modelli di diffusione.

Il framework InstantID apporta due modifiche all’architettura tradizionale di ControlNet: per gli input condizionali, il framework InstantID opta per 5 punti chiave facciali invece dei punti chiave facciali fine-grani di OpenPose. In secondo luogo, il framework InstantID utilizza incorporamenti di ID invece di prompt testuali come condizioni per i layer di cross-attenzione nell’architettura di ControlNet.

Formazione e inferenza

Durante la fase di formazione, il framework InstantID ottimizza i parametri di IdentityNet e dell’Adattatore di immagine mentre congela i parametri del modello di diffusione pre-addestrato. L’intera pipeline di InstantID viene addestrata su coppie di immagini e testo che presentano soggetti umani e impiega un obiettivo di formazione simile a quello utilizzato nel framework di diffusione stabile con condizioni di immagine specifiche del compito. L’aspetto saliente del metodo di formazione di InstantID è la separazione tra i layer di cross-attenzione dell’immagine e del testo all’interno dell’adattatore di immagine, una scelta che consente al framework InstantID di regolare i pesi di queste condizioni di immagine in modo flessibile e indipendente, assicurando così un processo di inferenza e formazione più mirato e controllato.

InstantID: Esperimenti e risultati

Il framework InstantID implementa la diffusione stabile e la addestra su LAION-Face, un dataset open-source su larga scala composto da oltre 50 milioni di coppie di immagini e testo. Inoltre, il framework InstantID raccoglie oltre 10 milioni di immagini umane con automazioni generate automaticamente dal modello BLIP2 per ulteriormente migliorare la qualità della generazione di immagini. Il framework InstantID si concentra principalmente su immagini con un’unica persona e impiega un modello di viso pre-addestrato per rilevare e estrarre incorporamenti di ID dalle immagini umane, e invece di addestrare i dataset di visi ritagliati, addestra le immagini umane originali. Inoltre, durante la formazione, il framework InstantID congela il modello di testo-immagine pre-addestrato e aggiorna solo i parametri di IdentityNet e dell’Adattatore di immagine.

Generazione di immagini solo con immagine

Il modello InstantID utilizza un prompt vuoto per guidare il processo di generazione di immagini utilizzando solo l’immagine di riferimento, e i risultati senza prompt sono dimostrati nell’immagine seguente.

La generazione con ‘prompt vuoto’ come dimostrato nell’immagine sopra dimostra la capacità del framework InstantID di mantenere caratteristiche semantiche facciali ricche come identità, età e espressione in modo robusto. Tuttavia, è degno di nota che l’uso di prompt vuoti potrebbe non essere in grado di replicare i risultati su altre semantiche come il genere in modo preciso. Inoltre, nell’immagine sopra, le colonne 2-4 utilizzano un’immagine e un prompt, e come può essere visto, l’immagine generata non dimostra alcun deterioramento nelle capacità di controllo del testo e assicura anche la coerenza dell’identità. Infine, le colonne 5-9 utilizzano un’immagine, un prompt e un controllo spaziale, dimostrando la compatibilità del modello con modelli di controllo spaziale pre-addestrati, consentendo al modello InstantID di introdurre controlli spaziali in modo flessibile utilizzando un componente ControlNet pre-addestrato.

È anche degno di nota che il numero di immagini di riferimento ha un impatto significativo sull’immagine generata, come dimostrato nell’immagine sopra. Sebbene il framework InstantID sia in grado di fornire buoni risultati utilizzando un’unica immagine di riferimento, più immagini di riferimento producono un’immagine di qualità migliore poiché il framework InstantID prende la media dei incorporamenti di ID come prompt di immagine. Proseguendo, è essenziale confrontare il framework InstantID con i metodi esistenti che generano immagini personalizzate utilizzando un’unica immagine di riferimento. La figura seguente confronta i risultati generati dal framework InstantID e dai modelli all’avanguardia esistenti per la generazione di immagini personalizzate con un’unica immagine di riferimento.

Come può essere visto, il framework InstantID è in grado di preservare le caratteristiche facciali grazie all’incorporamento di ID che porta con sé informazioni semantiche ricche, come identità, età e genere. Sarebbe sicuro dire che il framework InstantID supera i framework esistenti nella generazione di immagini personalizzate, poiché è in grado di preservare l’identità umana mantenendo il controllo e la flessibilità stilistica.

Pensieri finali

In questo articolo, abbiamo parlato di InstantID, una soluzione basata su modello di diffusione per la generazione di immagini. InstantID è un modulo plug and play che gestisce la generazione di immagini e la personalizzazione in modo adeguato su vari stili con solo un’unica immagine di riferimento e assicura anche un’elevata fedeltà. Il framework InstantID si concentra sulla sintesi di immagini istantanea con preservazione dell’identità e tenta di colmare il divario tra efficienza e fedeltà introducendo un semplice modulo plug and play che consente al framework di gestire la personalizzazione delle immagini utilizzando solo un’unica immagine facciale e mantenendo un’elevata fedeltà.

Un ingegnere per professione, uno scrittore per passione. Kunal è uno scrittore tecnico con un profondo amore e comprensione di AI e ML, dedicato a semplificare concetti complessi in questi campi attraverso la sua documentazione coinvolgente e informativa.