Intelligenza Artificiale
Paint3D: modello di diffusione senza illuminazione per la generazione di immagini

Il rapido sviluppo di modelli generativi di intelligenza artificiale, in particolare di modelli di intelligenza artificiale generativa profonda, ha portato a funzionalità significativamente avanzate nella generazione di linguaggio naturale, nella generazione 3D, nella generazione di immagini e nella sintesi vocale. Questi modelli hanno rivoluzionato la produzione 3D in diversi settori. Tuttavia, molti di essi si trovano ad affrontare una sfida: il loro cablaggio complesso e le mesh generate spesso non sono compatibili con le pipeline di rendering tradizionali come il Physically Based Rendering (PBR). I modelli basati sulla diffusione, in particolare senza texture di illuminazione, dimostrano un'impressionante diversificazione nella generazione di asset 3D, migliorando i framework 3D nel cinema, nei videogiochi e nella realtà aumentata/virtuale.
Questo articolo presenta Paint3D, un nuovo framework per la produzione di mappe di texture UV 2K ad alta risoluzione e diversificate per mesh 3D non texturizzate, basate su input visivi o testuali. La sfida principale di Paint3D è la generazione di texture di alta qualità senza illuminazione incorporata, consentendo all'utente di modificarle o ri-illuminarle all'interno delle moderne pipeline grafiche. Utilizza un modello di diffusione 2D pre-addestrato per la fusione di texture multi-vista, generando mappe di texture iniziali grossolane. Tuttavia, queste mappe mostrano spesso artefatti di illuminazione e aree incomplete a causa delle limitazioni del modello 2D nel disabilitare gli effetti di luce e nel rappresentare completamente le forme 3D. Approfondiremo il funzionamento, l'architettura e i confronti di Paint3D con altri framework generativi profondi. Iniziamo.
Paint3D: un'introduzione
Le capacità dei modelli di Deep Generative AI nella generazione del linguaggio naturale, nella generazione 3D e nelle attività di sintesi delle immagini sono ben note e implementate in applicazioni della vita reale, rivoluzionando il settore della generazione 3D. Nonostante le loro notevoli capacità, moderne e profonde IA generativa i framework generano mesh caratterizzate da cablaggi complessi e trame di illuminazione caotiche che sono spesso incompatibili con le pipeline di rendering convenzionali tra cui PBR o rendering basato sulla fisica. Come i modelli di intelligenza artificiale generativa profonda, anche la sintesi delle texture ha fatto rapidi progressi, soprattutto nell’utilizzo di modelli di diffusione 2D. I modelli di sintesi delle texture utilizzano la profondità dell'immagine pre-addestrata modelli di diffusione in modo efficace per utilizzare le condizioni del testo per generare texture di alta qualità. Tuttavia, questi approcci affrontano problemi con texture pre-illuminate che possono avere un impatto significativo sui rendering finali dell'ambiente 3D e introdurre errori di illuminazione quando le luci vengono modificate all'interno dei flussi di lavoro comuni, come dimostrato nell'immagine seguente.

Come si può osservare, la mappa texture con illuminazione libera funziona in sincronia con le tradizionali pipeline di rendering fornendo risultati accurati mentre la mappa texture con preilluminazione include ombre inappropriate quando viene applicata la riilluminazione. D'altra parte, i framework di generazione di texture addestrati su dati 3D offrono un approccio alternativo in cui il framework genera le texture comprendendo l'intera geometria di un oggetto 3D specifico. Sebbene possano fornire risultati migliori, i framework di generazione di texture addestrati su dati 3D mancano di capacità di generalizzazione che ostacolano la loro capacità di applicare il modello a oggetti 3D al di fuori dei dati di addestramento.
Gli attuali modelli di generazione di texture devono affrontare due sfide critiche: l'utilizzo della guida dell'immagine o suggerimenti diversi per ottenere un più ampio grado di generalizzazione tra oggetti diversi, e la seconda sfida è l'eliminazione dell'illuminazione accoppiata sui risultati ottenuti dal pre-addestramento. Le texture pre-illuminate possono potenzialmente interferire con i risultati finali degli oggetti con texture all'interno dei motori di rendering e, poiché i modelli di diffusione 2D pre-addestrati forniscono risultati 2D solo nel dominio della vista, mancano di una comprensione completa delle forme che li porta a non essere in grado per mantenere la coerenza della vista per gli oggetti 3D.
A causa delle sfide sopra menzionate, il framework Paint3D tenta di sviluppare un modello di diffusione delle texture a doppio stadio per oggetti 3D che generalizza a diversi modelli generativi pre-addestrati e preserva la coerenza della vista mentre apprende la generazione di texture senza fulmini.
Paint3D è un modello di generazione di texture da grossolane a fini a doppio stadio che mira a sfruttare la forte guida rapida e le capacità di generazione di immagini di utenti pre-addestrati IA generativa modelli per strutturare oggetti 3D. Nella prima fase, il framework Paint3D campiona progressivamente immagini multi-vista da un modello di diffusione di immagini 2D pre-addestrato con consapevolezza della profondità per consentire la generalizzazione di risultati di texture ricchi e di alta qualità da diversi prompt. Il modello genera quindi una mappa di texture iniziale proiettando all'indietro queste immagini sulla superficie mesh 3D. Nella seconda fase, il modello si concentra sulla generazione di texture prive di illuminazione implementando gli approcci impiegati dai modelli di diffusione specializzati nella rimozione delle influenze luminose e nel perfezionamento consapevole della forma delle regioni incomplete. Durante tutto il processo, il framework Paint3D è costantemente in grado di generare semanticamente texture 2K di alta qualità ed elimina gli effetti di illuminazione intrinseci.

Per riassumere, Paint3D è un nuovo modello di intelligenza artificiale generativa da grossolana a fine che mira a produrre mappe di texture UV 2K diverse, senza illuminazione e ad alta risoluzione per mesh 3D non testurizzate per ottenere prestazioni all'avanguardia nella texturizzazione di oggetti 3D con diverse condizioni input inclusi testo e immagini e offre vantaggi significativi per attività di sintesi e modifica grafica.
Metodologia e architettura
Il framework Paint3D genera e perfeziona progressivamente le mappe di texture per generare mappe di texture diverse e di alta qualità per modelli 3D utilizzando gli input condizionali desiderati tra cui immagini e prompt, come dimostrato nell'immagine seguente.

Nella fase grossolana, il modello Paint3D utilizza modelli di diffusione di immagini 2D pre-addestrati per campionare immagini multi-vista, quindi crea le mappe di texture iniziali proiettando all'indietro queste immagini sulla superficie della mesh. Nella seconda fase, ovvero la fase di perfezionamento, il modello Paint3D utilizza un processo di diffusione nello spazio UV per migliorare le mappe di texture grossolane, ottenendo così una funzione di alta qualità, di verniciatura e senza illuminazione che garantisce l'attrattiva visiva e la completezza della texture finale. .
Fase 1: generazione progressiva della struttura grossolana
Nella fase progressiva di generazione della texture grossolana, il modello Paint3D genera una mappa di texture UV grossolana per le mesh 3D che utilizzano un modello di diffusione 2D con rilevamento della profondità pre-addestrato. Per essere più specifici, il modello utilizza innanzitutto diverse visualizzazioni della telecamera per eseguire il rendering della mappa di profondità, quindi utilizza le condizioni di profondità per campionare le immagini dal modello di diffusione dell'immagine e quindi proietta queste immagini sulla superficie mesh. Il framework esegue alternativamente gli approcci di rendering, campionamento e retroproiezione per migliorare la coerenza delle mesh di texture, che in definitiva aiuta nella generazione progressiva della mappa di texture.
Il modello inizia a generare la texture della regione visibile con le viste della telecamera focalizzate sulla mesh 3D ed esegue il rendering della mesh 3D su una mappa di profondità dalla prima vista. Il modello quindi campiona un'immagine di trama per una condizione di aspetto e una condizione di profondità. Il modello quindi proietta indietro l'immagine sulla mesh 3D. Per i punti di vista, il modello Paint3D esegue un approccio simile ma con una leggera modifica eseguendo il processo di campionamento delle texture utilizzando un approccio di pittura delle immagini. Inoltre, il modello tiene conto delle regioni con texture dai punti di vista precedenti, consentendo al processo di rendering di produrre non solo un'immagine di profondità, ma anche un'immagine RGB parzialmente colorata con una maschera non colorata nella vista corrente.
Il modello utilizza quindi un modello di pitturazione dell'immagine in grado di riconoscere la profondità con un codificatore di pitturazione per riempire l'area non colorata all'interno dell'immagine RGB. Il modello genera quindi la mappa di texture dalla vista proiettando indietro l'immagine dipinta nella mesh 3D sotto la vista corrente, consentendo al modello di generare progressivamente la mappa di texture e arrivando all'intera mappa di struttura grossolana. Infine, il modello estende il processo di campionamento delle texture a una scena o a un oggetto con più viste. Per essere più specifici, il modello utilizza una coppia di telecamere per catturare due mappe di profondità durante il campionamento iniziale della texture da punti di vista simmetrici. Il modello combina quindi due mappe di profondità e compone una griglia di profondità. Il modello sostituisce l'immagine a profondità singola con la griglia di profondità per eseguire il campionamento delle texture multi-vista in grado di riconoscere la profondità.
Fase 2: perfezionamento della texture nello spazio UV
Sebbene l'aspetto delle mappe a trama grossolana sia logico, deve affrontare alcune sfide come i buchi della trama causati durante il processo di rendering dall'auto-occlusione o le ombre dei fulmini dovute al coinvolgimento di modelli di diffusione dell'immagine 2D. Il modello Paint3D mira a eseguire un processo di diffusione nello spazio UV sulla base di una mappa di texture grossolana, cercando di mitigare i problemi e migliorare ulteriormente l'attrattiva visiva della mappa di texture durante il perfezionamento della texture. Tuttavia, il perfezionamento del modello di diffusione dell'immagine tradizionale con le mappe delle texture nello spazio UV introduce discontinuità della texture poiché la mappa delle texture è generata dalla mappatura UV della texture della superficie 3D che taglia la texture continua in una serie di frammenti individuali nell'UV. spazio. Come risultato della frammentazione, il modello ha difficoltà ad apprendere le relazioni di adiacenza 3D tra i frammenti, il che porta a problemi di discontinuità della trama.
Il modello affina la mappa delle texture nello spazio UV eseguendo il processo di diffusione sotto la guida delle informazioni sull'adiacenza dei frammenti di texture. È importante notare che nello spazio UV è la mappa di posizione che rappresenta le informazioni di adiacenza 3D dei frammenti di texture, con il modello che tratta ogni elemento non di sfondo come una coordinata di punto 3D. Durante il processo di diffusione, il modello fonde le informazioni di adiacenza 3D aggiungendo un codificatore della mappa di posizione individuale al modello di diffusione dell'immagine preaddestrato. Il nuovo codificatore assomiglia al design del framework ControlNet e ha la stessa architettura del codificatore implementato nel modello di diffusione dell'immagine con lo strato a convoluzione zero che collega i due. Inoltre, il modello di diffusione della texture viene addestrato su un set di dati comprendente mappe di texture e posizione, e il modello impara a prevedere il rumore aggiunto al rumore latente. Il modello ottimizza quindi l'encoder di posizione e congela il denoiser addestrato per il suo compito di diffusione dell'immagine.
Il modello utilizza quindi simultaneamente la posizione del codificatore condizionale e di altri codificatori per eseguire attività di perfezionamento nello spazio UV. A questo proposito, il modello ha due funzionalità di perfezionamento: UVHD o UV High Definition e UV inpainting. Il metodo UVHD è strutturato per migliorare l'attrattiva visiva e l'estetica della mappa texture. Per ottenere UVHD, il modello utilizza un codificatore di miglioramento dell'immagine e un codificatore di posizione con il modello di diffusione. Il modello utilizza il metodo di verniciatura UV per riempire i buchi della texture all'interno del piano UV in grado di evitare problemi di auto-occlusione generati durante il rendering. Nella fase di perfezionamento, il modello Paint3D esegue prima l'inpainting UV e poi esegue l'UVHD per generare la mappa texture raffinata finale. Integrando i due metodi di perfezionamento, il framework Paint3D è in grado di produrre mappe di texture UV complete, diversificate, ad alta risoluzione e senza illuminazione.
Paint3D: esperimenti e risultati
Il modello Paint3D utilizza il Diffusione stabile text2image per assisterlo nelle attività di generazione delle texture mentre utilizza il componente codificatore di immagini per gestire le condizioni dell'immagine. Per migliorare ulteriormente la presa sui controlli condizionali come l'inserimento dell'immagine, la profondità e l'alta definizione dell'immagine, il framework Paint3D utilizza codificatori di dominio ControlNet. Il modello è implementato sul framework PyTorch con rendering e proiezioni di texture implementate su Kaolin.
Confronto tra testo e texture
Per analizzare le sue prestazioni, iniziamo valutando l'effetto di generazione della texture di Paint3D quando condizionato utilizzando istruzioni testuali e confrontandolo con framework all'avanguardia tra cui Text2Tex, TEXTure e LatentPaint. Come si può osservare nell'immagine seguente, il framework Paint3D non solo eccelle nel generare dettagli di texture di alta qualità, ma sintetizza anche ragionevolmente bene una mappa di texture priva di illuminazione.

In confronto, il framework Latent-Paint tende a generare texture sfocate che si traducono in effetti visivi non ottimali. D'altra parte, sebbene la struttura TEXTURE generi texture chiare, manca di morbidezza e presenta giunture e giunture evidenti. Infine, il framework Text2Tex genera texture uniformi molto bene, ma non riesce a replicare le prestazioni nel generare texture fini con dettagli intricati.
L'immagine seguente confronta quantitativamente il framework Paint3D con i framework più avanzati.

Come si può osservare, il framework Paint3D supera tutti i modelli esistenti e con un margine significativo con un miglioramento di quasi il 30% nella linea di base FID e un miglioramento di circa il 40% nella linea di base KID. Il miglioramento dei punteggi di base FID e KID dimostra la capacità di Paint3D di generare texture di alta qualità su diversi oggetti e categorie.
Confronto tra immagini e texture
Per generare le capacità generative di Paint3D utilizzando suggerimenti visivi, utilizziamo il modello TEXture come base di riferimento. Come accennato in precedenza, il modello Paint3D utilizza un codificatore di immagini proveniente dal modello text2image di Stable Diffusion. Come si può vedere nell'immagine seguente, il framework Paint3D sintetizza straordinariamente bene texture raffinate ed è ancora in grado di mantenere un'alta fedeltà rispetto alle condizioni dell'immagine.

D'altra parte, il framework TEXture è in grado di generare una texture simile a Paint3D, ma non riesce a rappresentare accuratamente i dettagli della texture nelle condizioni dell'immagine. Inoltre, come dimostrato nell'immagine seguente, il framework Paint3D fornisce punteggi di base FID e KID migliori rispetto al framework TEXTURE con il primo che diminuisce da 40.83 a 26.86 mentre il secondo mostra un calo da 9.76 a 4.94.

Considerazioni finali
In questo articolo, abbiamo parlato di Paint3D, un nuovo framework da grossolano a fine in grado di produrre mappe di texture UV 2K senza illuminazione, diverse e ad alta risoluzione per mesh 3D non strutturate condizionate da input visivi o testuali. Il punto forte del framework Paint3D è che è in grado di generare texture UV 2K ad alta risoluzione senza illuminazione che sono semanticamente coerenti senza essere condizionate da input di immagini o testo. Grazie al suo approccio da grossolano a fine, il framework Paint3D produce mappe di texture senza illuminazione, diverse e ad alta risoluzione e offre prestazioni migliori rispetto agli attuali framework all'avanguardia.






