Modele i platformy AI
Paint3D: Wprowadzenie
Nadejście głębokich modeli generatywnych AI znacznie przyspieszyło rozwój AI o zdumiewających możliwościach w generowaniu języka naturalnego, generowaniu 3D, generowaniu obrazów i syntezie mowy. Modele generatywne 3D przekształciły wiele branż i aplikacji, rewolucjonizując obecny krajobraz produkcji 3D. Jednak wiele obecnych głębokich modeli generatywnych napotyka na wspólną przeszkodę: złożone połączenia i generowane siatki z teksturami oświetlenia są często niezgodne z tradycyjnymi potokami renderowania, takimi jak PBR (Physically Based Rendering). Modele oparte na dyfuzji, które generują aktywa 3D bez tekstur oświetlenia, posiadają zdumiewające możliwości generowania różnorodnych aktywów 3D, co powoduje rozszerzenie istniejących ram 3D w branżach takich jak filmmaking, gry i rzeczywistość rozszerzona/wirtualna.
W tym artykule omówimy Paint3D, nowatorską ramę coarse-to-fine, która jest w stanie produkować różnorodne, wysokiej rozdzielczości mapy tekstur 2K UV dla nieutexturowanych siatek 3D, warunkowo na podstawie wejść wizualnych lub tekstowych. Głównym wyzwaniem, które Paint3D rozwiązuje, jest generowanie wysokiej jakości tekstur bez wbudowanego oświetlenia, umożliwiając użytkownikom edycję lub ponowne oświetlenie w ramach nowoczesnych potoków graficznych. Aby rozwiązać ten problem, ramka Paint3D wykorzystuje wstępnie wytrenowany model dyfuzji 2D do wielowidokowej fuzji tekstur i generowania obrazów warunkowych, początkowo produkując grubą mapę tekstury. Jednak ponieważ modele 2D nie mogą całkowicie wyłączyć efektów oświetlenia ani w pełni reprezentować kształtów 3D, mapa tekstury może wykazywać artefakty oświetlenia i niekompletne obszary.
W tym artykule będziemy badać ramkę Paint3D, jej działanie i architekturę, oraz porównywać ją z ramami generatywnymi deep learning. Zatem, zacznijmy.
Paint3D: Wprowadzenie
Modele generatywne AI wykazały wyjątkowe możliwości w generowaniu języka naturalnego, generowaniu 3D i syntezie obrazów, oraz zostały zaimplementowane w aplikacjach rzeczywistych, rewolucjonizując branżę generowania 3D. Jednak pomimo ich zdumiewających możliwości, nowoczesne ramy generatywne AI często produkują siatki z złożonymi połączeniami i chaotycznymi teksturami oświetlenia, które są niezgodne z tradycyjnymi potokami renderowania, w tym z PBR (Physically Based Rendering). Podobnie, synteza tekstur znacznie się rozwinęła, zwłaszcza z użyciem modeli dyfuzji 2D. Modele te skutecznie wykorzystują wstępnie wytrenowane modele dyfuzji głębokości do obrazu i warunki tekstowe do generowania wysokiej jakości tekstur. Jednak istnieje znaczące wyzwanie: wstępnie oświetlone tekstury mogą negatywnie wpłynąć na końcowe renderowania środowiska 3D, wprowadzając błędy oświetlenia, gdy światła są dostosowywane w ramach typowych potoków, jak pokazano na poniższym obrazie.

Jak można zaobserwować, mapy tekstur bez wstępnego oświetlenia pracują niezawodnie z tradycyjnymi potokami renderowania, dostarczając dokładne wyniki. W przeciwieństwie do tego, mapy tekstur z wstępnym oświetleniem zawierają niewłaściwe cienie, gdy jest stosowane ponowne oświetlenie. Ramy generowania tekstur wytrenowane na danych 3D oferują alternatywny podejście, generując tekstury poprzez zrozumienie geometrii konkretnego obiektu 3D. Chociaż te ramy mogą dostarczyć lepsze wyniki, brakuje im zdolności generalizacji niezbędnych do zastosowania modelu do obiektów 3D spoza ich danych szkoleniowych.
Obecne modele generowania tekstur napotykają na dwa krytyczne wyzwania: osiągnięcie szerokiej generalizacji w różnych obiektach przy użyciu wskazówek obrazowych lub różnorodnych podpowiedzi oraz eliminację połączonego oświetlenia z wyników wstępnego szkolenia. Wstępnie oświetlone tekstury mogą zakłócać końcowe wyniki obiektów teksturyzowanych w silnikach renderowania. Ponadto, ponieważ wstępnie wytrenowane modele dyfuzji 2D dostarczają tylko wyniki 2D w dziedzinie widoku, brakuje im wszechstronnego zrozumienia kształtów, co prowadzi do nieścisłości w utrzymaniu spójności widoku dla obiektów 3D.
Aby rozwiązać te wyzwania, ramka Paint3D rozwija dwuetapowy model dyfuzji tekstur dla obiektów 3D, który generalizuje się w różnych wstępnie wytrenowanych modelach generatywnych i zachowuje spójność widoku podczas generowania tekstur bez oświetlenia.
Paint3D jest dwuetapowym modelem generowania tekstur coarse-to-fine, który wykorzystuje silne prowadzenie podpowiedzi i możliwości generowania obrazów wstępnie wytrenowanych modeli AI do teksturyzowania obiektów 3D. W pierwszym etapie Paint3D pobiera obrazy wielowidokowe z wstępnie wytrenowanego modelu dyfuzji obrazu 2D, umożliwiając generalizację wysokiej jakości, bogatych wyników tekstur z różnorodnych podpowiedzi. Następnie model generuje początkową mapę tekstury, projekując te obrazy na powierzchnię siatki 3D. W drugim etapie model koncentruje się na generowaniu tekstur bez oświetlenia, wdrażając podejścia zastosowane w modelach dyfuzji specjalizujących się w usuwaniu wpływów oświetlenia i udoskonalaniu obszarów niekompletnych zorientowanych na kształt. W trakcie całego procesu ramka Paint3D niezawodnie generuje wysokiej jakości tekstury 2K semantycznie, eliminując wewnętrzne efekty oświetlenia.

Podsumowując, Paint3D jest nowatorskim modelem generatywnym AI, zaprojektowanym do produkcji różnorodnych, bez oświetlenia, wysokiej rozdzielczości map tekstur 2K UV dla nieutexturowanych siatek 3D. Ma on na celu osiągnięcie najlepszych wyników w teksturyzowaniu obiektów 3D z różnymi warunkami wejściowymi, w tym tekstowymi i obrazowymi, oferując znaczące korzyści dla zadań syntezy i edycji grafiki.
Metodologia i Architektura
Ramka Paint3D generuje i udoskonala mapy tekstur stopniowo, aby produkować różnorodne i wysokiej jakości tekstury dla modeli 3D przy użyciu warunków wejściowych, takich jak obrazy i podpowiedzi, jak pokazano na poniższym obrazie.

Etapy 1: Postępowe Grube Generowanie Tekstury
W początkowym etapie grubego generowania tekstury Paint3D wykorzystuje wstępnie wytrenowane modele dyfuzji obrazu 2D do pobierania obrazów wielowidokowych, które są następnie projekowane na powierzchnię siatki, tworząc początkowe mapy tekstury. Ten etap rozpoczyna się od generowania mapy głębi z różnych punktów widzenia. Model wykorzystuje warunki głębi do pobierania obrazów z modelu dyfuzji, które są następnie projekowane na powierzchnię siatki 3D. To przemienne renderowanie, pobieranie i projekcja pomaga w stopniowym generowaniu mapy tekstury.
Proces rozpoczyna się od widocznych obszarów siatki 3D, koncentrując się na generowaniu tekstury z pierwszego punktu widzenia, renderując siatkę 3D do mapy głębi. Następnie pobiera się obraz tekstury na podstawie wyglądu i warunków głębi i projekuje go na siatkę. Ta metoda jest powtarzana dla kolejnych punktów widzenia, łącząc poprzednie tekstury, aby renderować nie tylko obraz głębi, ale także częściowo zakolorowany obraz RGB z niezakolorowanymi maskami. Model wykorzystuje encoder inpaintingu obrazu zorientowanego na głębię, aby wypełnić niezakolorowane obszary, generując kompletną grubą mapę tekstury, projekując inpaintowane obrazy na powierzchnię siatki 3D.
Dla bardziej złożonych scen lub obiektów model wykorzystuje wiele punktów widzenia. Początkowo przechwytuje dwie mapy głębi z symetrycznych punktów widzenia i łączy je w siatkę głębi, zastępując pojedynczy obraz głębi dla wielowidokowego pobierania tekstury zorientowanego na głębię.
Etapy 2: Udoskonalenie Tekstury w Przestrzeni UV
Pomimo generowania logicznych map tekstur, pojawiają się wyzwania, takie jak dziury tekstury z procesów renderowania i cienie oświetlenia z modeli dyfuzji 2D. Aby rozwiązać te problemy, Paint3D wykonuje proces dyfuzji w przestrzeni UV na podstawie mapy tekstury, poprawiając atrakcyjność wizualną i rozwiązując problemy.
Jednak udoskonalanie mapy tekstury w przestrzeni UV może wprowadzić nieciągłości z powodu fragmentacji ciągłych tekstur na poszczególne fragmenty. Aby złagodzić to, Paint3D udoskonala mapę tekstury, wykorzystując informacje o sąsiedztwie fragmentów tekstury. W przestrzeni UV mapa położenia reprezentuje informacje o sąsiedztwie 3D fragmentów tekstury, traktując każdy element nie-tła jako współrzędną punktu 3D. Model wykorzystuje dodatkowy encoder mapy położenia, podobny do ControlNet, aby zintegrować te informacje o sąsiedztwie podczas procesu dyfuzji.
Model jednocześnie wykorzystuje położenie encodera warunkowego i innych encoderów do wykonywania zadań udoskonalania w przestrzeni UV, oferując dwie możliwości: UVHD (UV High Definition) i UV inpainting. UVHD poprawia atrakcyjność wizualną i estetykę, wykorzystując encoder udoskonalania obrazu i encoder położenia z modelem dyfuzji. UV inpainting wypełnia dziury tekstury, unikając problemów samozakrycia z renderowania. Etap udoskonalania rozpoczyna się od UV inpainting, a następnie UVHD, aby wyprodukować ostateczną udoskonaloną mapę tekstury.
Poprzez integrację tych metod udoskonalania, ramka Paint3D generuje kompletne, różnorodne, wysokiej rozdzielczości i bez oświetlenia mapy tekstur UV, czyniąc ją solidnym rozwiązaniem do teksturyzowania obiektów 3D.
Paint3D: Eksperymenty i Wyniki
Model Paint3D wykorzystuje model Stable Diffusion text2image do pomocy w zadaniach generowania tekstur, podczas gdy komponent encodera obrazu zarządza warunkami obrazu. Aby poprawić kontrolę nad zadania warunkowe, takimi jak inpainting obrazu, obsługa głębi i obrazów o wysokiej rozdzielczości, ramka Paint3D wykorzystuje encodery domenowe ControlNet. Model jest wdrożony w ramach PyTorch, z renderowaniem i projekcją tekstur wykonywanymi na Kaolin.
Porównanie Tekstury z Teksturami
Aby ocenić wydajność Paint3D, rozpoczynamy od analizy generowania tekstur przy warunkach tekstowych, porównując ją z ramami najlepszymi, takimi jak Text2Tex, TEXTure i LatentPaint. Jak pokazano na poniższym obrazie, ramka Paint3D nie tylko wyróżnia się generowaniem wysokiej jakości detali tekstury, ale także skutecznie syntetyzuje mapę tekstury bez oświetlenia.
Wykorzystując silne możliwości modelu Stable Diffusion i encoderów ControlNet, Paint3D dostarcza lepszą jakość tekstury i wszechstronność. Porównanie podkreśla zdolność Paint3D do produkcji detali tekstury o wysokiej rozdzielczości bez wbudowanego oświetlenia, czyniąc ją wiodącym rozwiązaniem do zadań teksturyzowania 3D.

W porównaniu, ramka Latent-Paint jest skłonna do generowania rozmytych tekstur, co prowadzi do nieoptymalnych efektów wizualnych. Z drugiej strony, chociaż ramka TEXTure generuje wyraźne tekstury, brakuje jej gładkości i wykazuje widoczne szwy i łączenia. Wreszcie, ramka Text2Tex generuje gładkie tekstury w sposób godny uwagi, ale nie jest w stanie odtworzyć tej wydajności dla generowania drobnych tekstur z intratnymi detalami. Poniższy obraz porównuje ramkę Paint3D z ramami najlepszymi ilościowo.

Jak można zaobserwować, ramka Paint3D przewyższa wszystkie istniejące modele, a nawet o znaczną różnicę, z poprawą o prawie 30% w bazie FID i około 40% w bazie KID. Poprawa w bazach FID i KID demonstruje zdolność Paint3D do generowania wysokiej jakości tekstur w różnych obiektach i kategoriach.
Porównanie Obrazu z Teksturą
Aby wygenerować zdolności generatywne Paint3D przy użyciu podpowiedzi wizualnych, wykorzystujemy model TEXTure jako bazę. Jak wcześniej wspomniano, model Paint3D wykorzystuje encoder obrazu z modelu text2image z Stable Diffusion. Jak można zobaczyć na poniższym obrazie, ramka Paint3D syntetyzuje wyśmienite tekstury w sposób godny uwagi, a jednocześnie jest w stanie utrzymać wysoką wierność w odniesieniu do warunku obrazu.

Z drugiej strony, ramka TEXTure jest w stanie wygenerować teksturę podobną do Paint3D, ale nie jest w stanie oddać szczegółów tekstury w warunku obrazu dokładnie. Ponadto, jak pokazano na poniższym obrazie, ramka Paint3D dostarcza lepsze wyniki FID i KID w porównaniu z ramką TEXTure, z pierwszym spadkiem z 40,83 do 26,86, a drugim spadkiem z 9,76 do 4,94.

Końcowe Myśli
W tym artykule omówiliśmy Paint3D, nowatorską ramę coarse-to-fine, która jest w stanie produkować bez oświetlenia, różnorodne i wysokiej rozdzielczości mapy tekstury 2K UV dla nieutexturowanych siatek 3D, warunkowo na podstawie wejść wizualnych lub tekstowych. Głównym punktem ramki Paint3D jest to, że jest w stanie generować bez oświetlenia, wysokiej rozdzielczości mapy tekstury 2K UV, które są semantycznie spójne bez warunków wejściowych obrazu lub tekstu. Dzięki swojemu podejściu coarse-to-fine, ramka Paint3D produkuje bez oświetlenia, różnorodne i wysokiej rozdzielczości mapy tekstury, a także dostarcza lepszą wydajność niż obecne ramy najlepsze.












