Modelli e piattaforme di IA

MagicDance: Generazione di Video di Danza Umana Realistici

mm
Aggiungi Unite.AI alle tue fonti preferite su Google

La visione computerizzata è uno dei campi più discussi nell’industria dell’AI, grazie alle sue potenziali applicazioni in un’ampia gamma di compiti in tempo reale. Negli ultimi anni, i framework di visione computerizzata sono avanzati rapidamente, con modelli moderni ora in grado di analizzare caratteristiche facciali, oggetti e molto altro in scenari in tempo reale. Nonostante queste capacità, il trasferimento del movimento umano rimane una sfida formidabile per i modelli di visione computerizzata. Questo compito comporta il ritargeting dei movimenti facciali e del corpo da un’immagine o video di origine a un’immagine o video di destinazione. Il trasferimento del movimento umano viene ampiamente utilizzato nei modelli di visione computerizzata per lo stile delle immagini o dei video, la modifica del contenuto multimediale, la sintesi di esseri umani digitali e persino la generazione di dati per framework basati sulla percezione.

In questo articolo, ci concentriamo su MagicDance, un modello basato sulla diffusione progettato per rivoluzionare il trasferimento del movimento umano. Il framework MagicDance si concentra specificamente sul trasferimento di espressioni facciali e movimenti umani bidimensionali su video di danza umana impegnativi. Il suo obiettivo è generare nuove sequenze di pose di video di danza per identità di destinazione specifiche, mantenendo l’identità originale. Il framework MagicDance impiega una strategia di addestramento a due fasi, concentrandosi sulla disentanglement del movimento umano e fattori di aspetto come il tono della pelle, le espressioni facciali e i vestiti. Esploreremo il framework MagicDance, esaminandone l’architettura, la funzionalità e le prestazioni rispetto ad altri framework di trasferimento del movimento umano di stato dell’arte. Entriamo nel dettaglio.

MagicDance: Trasferimento di Movimento Umano Realistico

Come menzionato in precedenza, il trasferimento del movimento umano è uno dei compiti di visione computerizzata più complessi a causa della complessità coinvolta nel trasferire movimenti e espressioni umane dall’immagine o video di origine all’immagine o video di destinazione. Tradizionalmente, i framework di visione computerizzata hanno raggiunto il trasferimento del movimento umano addestrando un modello generativo specifico del compito, come GAN o Reti Adversarie Generative su set di dati di destinazione per espressioni facciali e pose del corpo. Sebbene l’addestramento e l’utilizzo di modelli generativi forniscono risultati soddisfacenti in alcuni casi, di solito soffrono di due limitazioni principali.

  1. Dipendono fortemente da un componente di deformazione dell’immagine a causa del quale spesso lottano per interpolare parti del corpo invisibili nell’immagine di origine a causa di un cambiamento di prospettiva o auto-occlusione.
  2. Non possono generalizzare ad altre immagini provenienti da fonti esterne, il che limita le loro applicazioni, in particolare in scenari in tempo reale nel mondo reale.

I moderni modelli di diffusione hanno dimostrato eccezionali capacità di generazione di immagini in diverse condizioni e i modelli di diffusione sono ora in grado di presentare potenti visualizzazioni in una serie di compiti downstream, come la generazione di video e la pittura di immagini, imparando da set di immagini su larga scala. Grazie alle loro capacità, i modelli di diffusione potrebbero essere una scelta ideale per i compiti di trasferimento del movimento umano. Sebbene i modelli di diffusione possano essere implementati per il trasferimento del movimento umano, hanno alcune limitazioni, sia in termini di qualità del contenuto generato, sia in termini di conservazione dell’identità o di sofferenza di incoerenze temporali a causa dei limiti di progettazione e strategia di addestramento. Inoltre, i modelli basati sulla diffusione non dimostrano alcun vantaggio significativo rispetto ai framework GAN in termini di generalizzabilità.

Per superare gli ostacoli affrontati dai framework basati sulla diffusione e GAN nel trasferimento del movimento umano, gli sviluppatori hanno introdotto MagicDance, un framework innovativo che mira a sfruttare il potenziale dei framework di diffusione per il trasferimento del movimento umano, dimostrando un livello senza precedenti di conservazione dell’identità, qualità visiva superiore e generalizzabilità del dominio. Al suo nucleo, il concetto fondamentale del framework MagicDance è dividere il problema in due fasi: controllo dell’aspetto e controllo del movimento, due capacità richieste dai framework di diffusione delle immagini per fornire output di trasferimento del movimento precisi.

La figura sopra fornisce una breve panoramica del framework MagicDance e, come si può vedere, il framework impiega il modello Stable Diffusion e dispiega due componenti aggiuntivi: Appearance Control Model e Pose ControlNet, dove il primo fornisce indicazioni sull’aspetto al modello SD da un’immagine di riferimento tramite attenzione, mentre il secondo fornisce indicazioni sull’espressione/pose al modello di diffusione da un’immagine o video condizionato. Il framework impiega anche una strategia di addestramento multistadio per apprendere questi sottomoduli in modo efficace per disentanglement del controllo della posa e dell’aspetto.

In sintesi, il framework MagicDance è un

  1. Framework innovativo ed efficace costituito da controllo della posa disentangled e pre-addestramento del controllo dell’aspetto.
  2. Il framework MagicDance è in grado di generare espressioni facciali umane realistiche e movimenti umani sotto il controllo di input di condizione di posa e immagini o video di riferimento.
  3. Il framework MagicDance mira a generare contenuti umani coerenti con l’aspetto introducendo un modulo di attenzione multi-sorgente che offre indicazioni accurate per il framework Stable Diffusion UNet.
  4. Il framework MagicDance può anche essere utilizzato come una comoda estensione o plug-in per il framework Stable Diffusion e assicura la compatibilità con i pesi del modello esistente, poiché non richiede ulteriore regolazione dei parametri.

Inoltre, il framework MagicDance mostra eccezionali capacità di generalizzazione sia per l’aspetto che per il movimento.

  1. Generalizzazione dell’aspetto: il framework MagicDance dimostra capacità superiori nella generazione di aspetti diversi.
  2. Generalizzazione del movimento: il framework MagicDance ha anche la capacità di generare una vasta gamma di movimenti.

MagicDance: Obiettivi e Architettura

Per un’immagine di riferimento data, sia di un essere umano reale che di un’immagine stilizzata, l’obiettivo principale del framework MagicDance è generare un’immagine di output o un video di output condizionato sull’input e sugli input di posa {P, F}, dove P rappresenta lo scheletro della posa umana e F rappresenta i punti di riferimento facciali. L’immagine di output o il video di output generato dovrebbe essere in grado di preservare l’aspetto e l’identità degli esseri umani coinvolti, nonché i contenuti di sfondo presenti nell’immagine di riferimento, mantenendo la posa e le espressioni definite dagli input di posa.

Architettura

Durante l’addestramento, il framework MagicDance viene addestrato come un compito di ricostruzione del frame per ricostruire il ground truth con l’immagine di riferimento e l’input di posa proveniente dallo stesso video di riferimento. Durante il test per raggiungere il trasferimento del movimento, l’input di posa e l’immagine di riferimento provengono da fonti diverse.

L’architettura generale del framework MagicDance può essere suddivisa in quattro categorie: Fase Preliminare, Pre-addestramento del Controllo dell’Aspetto, Controllo della Posa Disentangled e Modulo del Movimento.

Fase Preliminare

I modelli di diffusione latente o LDM rappresentano modelli di diffusione progettati in modo unico per operare all’interno dello spazio latente facilitato dall’utilizzo di un autoencoder e il framework Stable Diffusion è un esempio notevole di LDM che impiega un Autoencoder Quantizzato-Variazionale e un’architettura U-Net temporale. Il modello Stable Diffusion impiega un trasformatore basato su CLIP come codificatore di testo per elaborare input testuali convertendo input testuali in incorporamenti. La fase di addestramento del framework Stable Diffusion espone il modello a una condizione testuale e a un’immagine di input con il processo che coinvolge la codifica dell’immagine in una rappresentazione latente, e la sottopone a una sequenza predefinita di passaggi di diffusione diretti da un metodo gaussiano. La sequenza risultante produce una rappresentazione latente rumorosa che fornisce una distribuzione normale standard con l’obiettivo di apprendimento principale del framework Stable Diffusion che è la denoising delle rappresentazioni latenti rumorose iterative in rappresentazioni latenti.

Pre-addestramento del Controllo dell’Aspetto

Un problema significativo con il framework ControlNet originale è la sua incapacità di controllare l’aspetto tra movimenti variabili nello spazio in modo coerente, sebbene tenda a generare immagini con pose che assomigliano a quelle nell’immagine di input, con l’aspetto generale influenzato in modo predominante dagli input testuali. Sebbene questo metodo funzioni, non è adatto per il trasferimento del movimento che coinvolge compiti in cui non sono gli input testuali, ma l’immagine di riferimento che serve come fonte principale per le informazioni sull’aspetto.

Il modulo di pre-addestramento del Controllo dell’Aspetto nel framework MagicDance è progettato come un ramo ausiliario per fornire indicazioni per il controllo dell’aspetto in un approccio layer-by-layer. Piuttosto che affidarsi agli input testuali, l’intero modulo si concentra sull’utilizzo degli attributi di aspetto dall’immagine di riferimento con l’obiettivo di migliorare la capacità del framework di generare le caratteristiche di aspetto in modo preciso, in particolare in scenari che coinvolgono dinamiche di movimento complesse. Inoltre, solo il modello di controllo dell’aspetto è addestrabile durante il pre-addestramento del controllo dell’aspetto.

Controllo della Posa Disentangled

Una soluzione ingenua per controllare la posa nell’immagine di output è integrare il modello ControlNet pre-addestrato con il modello di controllo dell’aspetto pre-addestrato direttamente senza regolazione. Tuttavia, l’integrazione potrebbe risultare nel framework che lotta con il controllo della posa indipendente dall’aspetto, che può portare a una discrepanza tra le pose di input e le pose generate. Per affrontare questa discrepanza, il framework MagicDance regola il modello Pose ControlNet congiuntamente con il modello di controllo dell’aspetto pre-addestrato.

Modulo del Movimento

Quando lavorano insieme, il controllo della posa disentangled e il modello di controllo dell’aspetto possono raggiungere un trasferimento di immagine a movimento preciso ed efficace, sebbene possa risultare in incoerenza temporale. Per garantire la coerenza temporale, il framework integra un modulo di movimento aggiuntivo nell’architettura principale del modello Stable Diffusion UNet.

MagicDance: Pre-addestramento e Set di Dati

Per il pre-addestramento, il framework MagicDance utilizza un set di dati TikTok che consiste in oltre 350 video di danza di lunghezze variabili tra 10 e 15 secondi che catturano una persona che balla, con la maggior parte di questi video che contengono il viso e il torso dell’essere umano. Il framework MagicDance estrae ogni video individuale a 30 FPS e esegue OpenPose su ogni frame individualmente per inferire lo scheletro della posa, le pose delle mani e i punti di riferimento facciali.

Per il pre-addestramento, il modello di controllo dell’aspetto viene pre-addestrato con una dimensione del batch di 64 su 8 GPU NVIDIA A100 per 10.000 passi con una dimensione dell’immagine di 512 x 512, seguito da una regolazione congiunta dei modelli di controllo della posa e dell’aspetto con una dimensione del batch di 16 per 20.000 passi. Durante l’addestramento, il framework MagicDance campiona casualmente due frame come target e riferimento rispettivamente, con le immagini ritagliate nella stessa posizione e altezza. Durante la valutazione, il modello ritaglia l’immagine centralmente invece di ritagliarle casualmente.

MagicDance: Risultati

I risultati sperimentali condotti sul framework MagicDance sono dimostrati nell’immagine seguente e, come si può vedere, il framework MagicDance supera i framework esistenti come Disco e DreamPose per il trasferimento del movimento umano in tutti i metriche. I framework che consistono in un “*” davanti al loro nome utilizzano l’immagine di destinazione direttamente come input e includono più informazioni rispetto agli altri framework.

È interessante notare che il framework MagicDance raggiunge un punteggio Face-Cos di 0,426, un miglioramento del 156,62% rispetto al framework Disco e un aumento del 400% rispetto al framework DreamPose. I risultati indicano la robusta capacità del framework MagicDance di preservare le informazioni sull’identità e il visibile aumento delle prestazioni indica la superiorità del framework MagicDance rispetto ai metodi di stato dell’arte esistenti.

Le figure seguenti confrontano la qualità della generazione di video umani tra il framework MagicDance, Disco e TPS. Come si può osservare, i risultati generati dai framework GT, Disco e TPS soffrono di identità della posa umana e espressioni facciali incoerenti.

Inoltre, l’immagine seguente dimostra la visualizzazione del trasferimento di espressioni facciali e pose umane sul set di dati TikTok con il framework MagicDance che è in grado di generare espressioni e movimenti realistici e vividi sotto diversi punti di riferimento facciali e input di scheletri di pose, mantenendo con precisione le informazioni sull’identità dall’immagine di input di riferimento.

È degno di nota che il framework MagicDance vanta eccezionali capacità di generalizzazione per immagini di riferimento out-of-domain di pose e stili non visti, con un’impressionante controllabilità dell’aspetto anche senza ulteriore regolazione sul dominio di destinazione, con i risultati dimostrati nell’immagine seguente.

Le immagini seguenti dimostrano le capacità di visualizzazione del framework MagicDance in termini di trasferimento di espressioni facciali e movimento umano zero-shot. Come si può vedere, il framework MagicDance si generalizza ai movimenti umani in tempo reale in modo perfetto.

MagicDance: Limitazioni

OpenPose è un componente essenziale del framework MagicDance, poiché gioca un ruolo cruciale per il controllo della posa, influenzando significativamente la qualità e la coerenza temporale delle immagini generate. Tuttavia, il framework MagicDance trova ancora difficile rilevare i punti di riferimento facciali e gli scheletri di pose in modo preciso, specialmente quando gli oggetti nelle immagini sono parzialmente visibili o mostrano movimenti rapidi. Questi problemi possono risultare in artefatti nell’immagine generata.

Conclusione

In questo articolo, abbiamo parlato del framework MagicDance, un modello basato sulla diffusione che mira a rivoluzionare il trasferimento del movimento umano. Il framework MagicDance tenta di trasferire espressioni facciali e movimenti umani bidimensionali su video di danza umana impegnativi con l’obiettivo specifico di generare nuove sequenze di pose di video di danza umana per identità di destinazione specifiche, mantenendo l’identità costante. Il framework MagicDance è una strategia di addestramento a due fasi per la disentanglement del movimento umano e aspetto come il tono della pelle, le espressioni facciali e i vestiti.

MagicDance è un approccio innovativo per facilitare la generazione di video umani realistici incorporando il trasferimento di espressioni facciali e del movimento, abilitando la generazione di animazioni coerenti nel mondo reale senza necessità di ulteriore regolazione, dimostrando un significativo avanzamento rispetto ai metodi esistenti. Inoltre, il framework MagicDance dimostra eccezionali capacità di generalizzazione su sequenze di movimento complesse e identità umane diverse, stabilendo il framework MagicDance come il leader nel campo del trasferimento del movimento umano e della generazione di video assistita dall’AI.

Kunal Kejriwal è un ingegnere backend specializzato in Python, PostgreSQL, Redis e infrastrutture cloud su GCP e AWS. Con tre anni di esperienza nella costruzione e nella scalabilità di sistemi di produzione, scrive di infrastruttura AI, sistemi distribuiti e dell'architettura alla base del deployment di workload di machine learning.