Modelli e piattaforme di IA

DynamiCrafter: Animazione di Immagini Open-Domain con Priori di Diffusione Video

mm
Aggiungi Unite.AI alle tue fonti preferite su Google

Il computer vision è uno dei campi più emozionanti e più studiati all’interno della comunità dell’intelligenza artificiale oggi, e nonostante il rapido miglioramento dei modelli di computer vision, una sfida di lunga data che ancora preoccupa gli sviluppatori è l’animazione di immagini. Anche oggi, i framework di animazione di immagini lottano per convertire le immagini fisse nelle loro rispettive controparti video che mostrano dinamiche naturali mentre preservano l’aspetto originale delle immagini. Tradizionalmente, i framework di animazione di immagini si concentrano principalmente sull’animazione di scene naturali con moti specifici di dominio o dinamiche stocastiche come capelli umani o moti del corpo, o dinamiche stocastiche come fluidi e nuvole. Sebbene questo approccio funzioni fino a un certo punto, limita l’applicabilità di questi framework di animazione a contenuti visivi più generici.

Inoltre, gli approcci convenzionali di animazione di immagini si concentrano principalmente sulla sintesi di moti oscillanti e stocastici, o sulla personalizzazione per categorie di oggetti specifiche. Tuttavia, un difetto notevole di questo approccio è che le forti ipotesi imposte su questi metodi limitano in ultima analisi la loro applicabilità, specialmente in scenari generali come l’animazione di immagini open-domain. Negli ultimi anni, i modelli Text to Video hanno dimostrato un notevole successo nel generare video vividi e diversi utilizzando prompt testuali, e questa dimostrazione dei modelli Text to Video è ciò che forma la base per il framework DynamiCrafter.

Il framework DynamiCrafter è un tentativo di superare le limitazioni attuali dei modelli di animazione di immagini e di espandere la loro applicabilità a scenari generici che coinvolgono immagini open-world. Il framework DynamiCrafter tenta di sintetizzare contenuti dinamici per immagini open-domain, convertendole in video animati. L’idea chiave dietro DynamiCrafter è incorporare l’immagine come guida nel processo generativo, cercando di sfruttare il priori di moto dei modelli di diffusione video esistenti. Per un’immagine data, il modello DynamiCrafter implementa prima un trasformatore di query che proietta l’immagine in uno spazio di rappresentazione del contesto ricco e allineato con il testo, facilitando al modello video di digerire il contenuto dell’immagine in modo compatibile. Tuttavia, il modello DynamiCrafter lotta ancora per preservare alcuni dettagli visivi nei video risultanti, un problema che il modello DynamiCrafter supera alimentando l’immagine completa al modello di diffusione concatenando l’immagine con i rumori iniziali, quindi supplementando il modello con informazioni più precise sull’immagine.

Questo articolo si propone di coprire il framework DynamiCrafter in profondità, ed esploriamo il meccanismo, la metodologia, l’architettura del framework insieme al suo confronto con framework di generazione di immagini e video di stato dell’arte. Quindi, iniziamo.

DynamiCrafter: Animazione di Immagini Open-Domain

Animare un’immagine fissa spesso offre un’esperienza visiva coinvolgente per il pubblico, poiché sembra portare l’immagine fissa in vita. Nel corso degli anni, numerosi framework hanno esplorato vari metodi di animazione di immagini fisse. I framework di animazione iniziali hanno implementato approcci basati sulla simulazione fisica che si concentravano sulla simulazione del moto di oggetti specifici. Tuttavia, a causa della modellazione indipendente di ogni categoria di oggetti, questi approcci non erano né efficaci né avevano generalizzabilità. Per replicare moti più realistici, sono emersi metodi basati su riferimenti che trasferivano informazioni di moto o di aspetto da segnali di riferimento come video al processo di sintesi. Sebbene gli approcci basati su riferimenti abbiano fornito risultati migliori con una migliore coerenza temporale rispetto agli approcci basati sulla simulazione, richiedevano ulteriore guida che limitava le loro applicazioni pratiche.

Negli ultimi anni, la maggior parte dei framework di animazione si concentra principalmente sull’animazione di scene naturali con moti stocastici, specifici di dominio o oscillanti. Sebbene l’approccio implementato da questi framework funzioni fino a un certo punto, i risultati che questi framework generano non sono soddisfacenti, con un margine di miglioramento significativo. I risultati notevoli raggiunti dai modelli generativi Text to Video negli ultimi anni hanno ispirato gli sviluppatori del framework DynamiCrafter a sfruttare le potenti capacità generative dei modelli Text to Video per l’animazione di immagini.

L’idea chiave dietro il framework DynamiCrafter è incorporare un’immagine condizionale nel tentativo di governare il processo di generazione video dei modelli di diffusione video condizionati da testo. Tuttavia, l’obiettivo finale dell’animazione di immagini rimane non banale, poiché l’animazione di immagini richiede la preservazione dei dettagli e la comprensione dei contesti visivi essenziali per creare dinamiche. Tuttavia, modelli di diffusione video controllabili multi-modalità come VideoComposer hanno tentato di abilitare la generazione video con guida visiva da un’immagine. Tuttavia, questi approcci non sono adatti per l’animazione di immagini, poiché risultano in cambiamenti temporali improvvisi o in una bassa conformità visiva all’immagine di input a causa dei loro meccanismi di iniezione di immagine meno comprensivi. Per superare questo ostacolo, il framework DynamiCrafter propone un approccio di iniezione a doppio flusso, consistente in una guida ai dettagli visivi e in una rappresentazione del contesto allineata con il testo. L’approccio di iniezione a doppio flusso consente al framework DynamiCrafter di garantire che il modello di diffusione video sintetizzi contenuti dinamici preservati nei dettagli in modo complementare.

Per un’immagine data, il framework DynamiCrafter proietta prima l’immagine nello spazio di rappresentazione del contesto allineato con il testo utilizzando una rete di apprendimento del contesto progettata appositamente. Per essere più specifici, lo spazio di rappresentazione del contesto consiste in un trasformatore di query apprendibile per promuovere ulteriormente la sua adattabilità ai modelli di diffusione, e in un encoder di immagine CLIP pre-addestrato per estrarre caratteristiche di immagine allineate con il testo. Il modello utilizza quindi le caratteristiche del contesto ricche utilizzando strati di cross-attenzione, e il modello utilizza la fusione a cancellazione per combinare queste caratteristiche di testo con gli strati di cross-attenzione. Tuttavia, questo approccio scambia le rappresentazioni del contesto apprese con dettagli visivi allineati con il testo che facilitano la comprensione semantica del contesto dell’immagine, consentendo dinamiche ragionevoli e vivide da sintetizzare. Inoltre, nel tentativo di supplementare ulteriori dettagli visivi, il framework concatena l’immagine completa con il rumore iniziale al modello di diffusione. Di conseguenza, l’approccio di iniezione a doppio flusso implementato dal framework DynamiCrafter garantisce la conformità visiva e il contenuto dinamico plausibile all’immagine di input.

Proseguendo, i modelli di diffusione o DM hanno dimostrato prestazioni notevoli e capacità generative in Text to Image. Per replicare il successo dei modelli T2I ai modelli di generazione video, sono proposti i modelli di diffusione video o VDM che utilizzano un’architettura U-Net a fattorizzazione spazio-temporale nel dominio dei pixel per modellare video a bassa risoluzione. Trasferire le conoscenze dei framework T2I ai framework T2V aiuterà a ridurre i costi di addestramento. Sebbene i modelli VDM abbiano la capacità di generare video di alta qualità, accettano solo prompt testuali come guida semantica unica che potrebbe non riflettere le vere intenzioni dell’utente o potrebbe essere vaga. Tuttavia, i risultati della maggior parte dei modelli VDM raramente aderiscono all’immagine di input e soffrono del problema della variazione temporale irrealistica. L’approccio DynamiCrafter si basa su modelli di diffusione video condizionati da testo che sfruttano il loro ricco priori dinamico per animare immagini open-domain. Ciò avviene incorporando progetti personalizzati per una migliore comprensione semantica e conformità all’immagine di input.

DynamiCrafter: Metodo e Architettura

Per un’immagine fissa data, il framework DynamiCrafter tenta di animare l’immagine in video, ovvero produrre un breve clip video. Il clip video eredita i contenuti visivi dall’immagine e mostra dinamiche naturali. Tuttavia, c’è la possibilità che l’immagine possa apparire in una posizione arbitraria della sequenza di frame risultante. L’apparizione di un’immagine in una posizione arbitraria è una sfida particolare osservata nei compiti di generazione video condizionata da immagine con requisiti di conformità visiva elevati. Il framework DynamiCrafter supera questa sfida sfruttando i priori generativi dei modelli di diffusione video pre-addestrati.

Dinamiche di Immagine da Priori di Diffusione Video

Di solito, i modelli di diffusione video open-domain condizionati da testo sono noti per mostrare contenuti visivi dinamici modellati condizionati su descrizioni testuali. Per animare un’immagine fissa con priori generativi di Text to Video, i framework devono prima iniettare le informazioni visive nel processo di generazione video in modo comprensivo. Inoltre, per la sintesi dinamica, il modello T2V deve digerire l’immagine per la comprensione del contesto, mentre deve anche essere in grado di preservare i dettagli visivi nei video generati.

Rappresentazione del Contesto Allineato con il Testo

Per guidare la generazione video con il contesto dell’immagine, il framework DynamiCrafter tenta di proiettare l’immagine in uno spazio di incorporamento allineato che consente al modello video di utilizzare le informazioni dell’immagine in modo compatibile. A seguire, il framework DynamiCrafter utilizza l’encoder di immagine per estrarre caratteristiche di immagine dall’immagine di input, poiché le incorporazioni testuali sono generate utilizzando un encoder di testo CLIP pre-addestrato. Ora, sebbene i token semantici globali dell’encoder di immagine CLIP siano allineati con le didascalie delle immagini, rappresentano principalmente il contenuto visivo a livello semantico, quindi non riescono a catturare l’intera estensione dell’immagine. Il framework DynamiCrafter implementa token visivi completi dall’ultimo livello dell’encoder CLIP per estrarre informazioni più complete, poiché questi token visivi dimostrano alta fedeltà nei compiti di generazione di immagini condizionate. Inoltre, il framework utilizza le incorporazioni del contesto e del testo per interagire con le caratteristiche intermedie della U-Net utilizzando gli strati di cross-attenzione duali. La progettazione di questo componente facilita la capacità del modello di assorbire le condizioni dell’immagine in modo dipendente dal livello. Inoltre, poiché gli strati intermedi dell’architettura U-Net si associano di più con le pose o le forme degli oggetti, ci si aspetta che le caratteristiche dell’immagine influenzino principalmente l’aspetto dei video, specialmente poiché gli strati finali sono più collegati all’aspetto.

Guida ai Dettagli Visivi

Il framework DynamiCrafter utilizza una rappresentazione del contesto ricca di informazioni che consente al modello di diffusione video nella sua architettura di produrre video che assomigliano all’immagine di input in modo stretto. Tuttavia, come dimostrato nell’immagine seguente, il contenuto generato potrebbe mostrare alcune discrepanze a causa della limitata capacità dell’encoder di immagine CLIP pre-addestrato di preservare completamente le informazioni di input, poiché è stato progettato per allineare le caratteristiche linguistiche e visive.

Per migliorare la conformità visiva, il framework DynamiCrafter propone di fornire al modello di diffusione video ulteriori dettagli visivi estratti dall’immagine di input. Per raggiungere ciò, il modello DynamiCrafter concatena l’immagine condizionale con il rumore iniziale per frame e li alimenta al componente U-Net di denoising come guida.

Paradigma di Addestramento

Il framework DynamiCrafter integra l’immagine condizionale attraverso due flussi complementari che svolgono un ruolo significativo nella guida ai dettagli e nel controllo del contesto. Per facilitare ciò, il modello DynamiCrafter utilizza un processo di addestramento a tre passaggi

  1. Nel primo passaggio, il modello addestra la rete di rappresentazione del contesto.
  2. Nel secondo passaggio, il modello adatta la rete di rappresentazione del contesto al modello Text to Video.
  3. Nel terzo e ultimo passaggio, il modello ottimizza la rete di rappresentazione del contesto congiuntamente con il componente di Guida ai Dettagli Visivi.

Per adattare le informazioni dell’immagine per la compatibilità con il modello Text-to-Video (T2V), il framework DynamiCrafter suggerisce di sviluppare una rete di rappresentazione del contesto, P, progettata per catturare dettagli visivi allineati con il testo dall’immagine data. Riconoscendo che P richiede molti passaggi di ottimizzazione per la convergenza, l’approccio del framework prevede inizialmente di addestrarlo utilizzando un modello Text-to-Image (T2I) più semplice. Questa strategia consente alla rete di rappresentazione del contesto di concentrarsi sull’apprendimento del contesto dell’immagine prima di integrarlo con il modello T2V attraverso l’addestramento congiunto con P e gli strati spaziali, piuttosto che gli strati temporali, del modello T2V.

Per garantire la compatibilità con T2V, il framework DynamiCrafter unisce l’immagine di input con il rumore per frame, procedendo a ottimizzare sia P che gli strati spaziali del modello di discriminazione visiva. Questo metodo è scelto per mantenere l’integrità delle conoscenze temporali esistenti del modello T2V senza gli effetti negativi della fusione densa di immagini, che potrebbe compromettere le prestazioni e deviare dal nostro obiettivo principale. Inoltre, il framework utilizza una strategia di selezione casuale di un frame video come condizione di immagine per raggiungere due obiettivi: (i) per evitare che la rete sviluppi un modello prevedibile che associa direttamente l’immagine unita a una posizione di frame specifica, e (ii) per incoraggiare una rappresentazione del contesto più adattabile, impedendo di fornire informazioni eccessivamente rigide per un particolare frame.

DynamiCrafter: Esperimenti e Risultati

Il framework DynamiCrafter addestra prima la rete di rappresentazione del contesto e gli strati di cross-attenzione sull’Stable Diffusion. Il framework sostituisce quindi il componente Stable Diffusion con VideoCrafter e ottimizza ulteriormente la rete di rappresentazione del contesto e gli strati spaziali per l’adattamento, con la concatenazione dell’immagine. Al momento dell’inferenza, il framework adotta il campionatore DDIM con guida multi-condizione senza classificatore. Inoltre, per valutare la coerenza temporale e la qualità dei video sintetizzati sia nel dominio temporale che in quello spaziale, il framework riporta la distanza video di Fréchet (FVD) e la distanza video del kernel (KVD), e valuta le prestazioni zero-shot su tutti i metodi dei benchmark MSR-VTT e UCF-101. Per indagare la conformità percettiva tra i risultati generati e l’immagine di input, il framework introduce la conformità dell’input percettivo (PIC) e adotta la metrica di distanza percettiva DreamSim come funzione di distanza.

La figura seguente mostra il confronto visivo del contenuto animato generato con diversi stili e contenuti.

Come si può osservare, tra i diversi metodi, il framework DynamiCrafter aderisce bene alla condizione di immagine di input e genera video temporalmente coerenti. La tabella seguente contiene le statistiche di uno studio condotto con 49 partecipanti sulla percentuale di preferenza per la coerenza temporale (T.C), la qualità del moto (M.C) e la percentuale di selezione per la conformità visiva all’immagine di input (I.C). Come si può osservare, il framework DynamiCrafter supera i metodi esistenti di un margine considerevole.

La figura seguente mostra i risultati ottenuti utilizzando il metodo di iniezione a doppio flusso e il paradigma di addestramento.

Pensieri Finali

In questo articolo, abbiamo parlato di DynamiCrafter, un tentativo di superare le limitazioni attuali dei modelli di animazione di immagini e di espandere la loro applicabilità a scenari generici che coinvolgono immagini open-world. Il framework DynamiCrafter tenta di sintetizzare contenuti dinamici per immagini open-domain, convertendole in video animati. L’idea chiave dietro DynamiCrafter è incorporare l’immagine come guida nel processo generativo, cercando di sfruttare il priori di moto dei modelli di diffusione video esistenti. Per un’immagine data, il modello DynamiCrafter implementa prima un trasformatore di query che proietta l’immagine in uno spazio di rappresentazione del contesto ricco e allineato con il testo, facilitando al modello video di digerire il contenuto dell’immagine in modo compatibile. Tuttavia, il modello DynamiCrafter lotta ancora per preservare alcuni dettagli visivi nei video risultanti, un problema che il modello DynamiCrafter supera alimentando l’immagine completa al modello di diffusione concatenando l’immagine con i rumori iniziali, quindi supplementando il modello con informazioni più precise sull’immagine.

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.