```html Авторлар: Jun Gao, NVIDIA, University of Toronto, Vector Institute (jung@nvidia.com) Tianchang Shen, NVIDIA, University of Toronto, Vector Institute (frshen@nvidia.com) Zian Wang, NVIDIA, University of Toronto, Vector Institute (zianw@nvidia.com) Wenzheng Chen, NVIDIA, University of Toronto, Vector Institute (wenzchen@nvidia.com) Kangxue Yin, NVIDIA (kangxuey@nvidia.com) Daiqing Li, NVIDIA (daiqingl@nvidia.com) Or Litany, NVIDIA (olitany@nvidia.com) Zan Gojcic, NVIDIA (zgojcic@nvidia.com) Sanja Fidler, NVIDIA, University of Toronto, Vector Institute (sfidler@nvidia.com) Аннотация Көптеген салалар массивті 3D виртуалды әлемдерді модельдеуге көшкен сайын, 3D контенттің саны, сапасы және әртүрлілігі бойынша масштабталатын контент жасау құралдарына деген қажеттілік айқын болып отыр. Біздің жұмысымызда біз 3D рендеринг қозғалтқыштарымен тікелей тұтынылуы мүмкін текстуралы мештерді синтездейтін өнімді 3D генеративті модельдерді оқытуды мақсат етеміз, осылайша оларды тікелей төменгі ағын қолданбаларында қолдануға болады. 3D генеративті модельдеу бойынша бұрынғы жұмыстар не геометриялық егжей-тегжейлердің жетіспеушілігімен, не өндіре алатын меш топологиясының шектеулілігімен, әдетте текстураларды қолдамайды, не синтез процесінде нейрондық рендерлерді пайдаланады, бұл оларды жалпы 3D бағдарламалық жасақтамада қолдануды қиындатады. Бұл жұмыста біз күрделі топологиясы, бай геометриялық бөлшектері және жоғары дәлдікті текстуралары бар тікелей текстуралы 3D мештерді жасайтын enerative модель GET3D-ні енгіземіз. Біз 2D суреттер жинақтарынан біріктірілген нейрондық бетті модельдеу, дифференциалды рендеринг және 2D генеративті қарсыласқан желілердегі соңғы жетістіктерді қолданамыз. GET3D автомобильдерден, креслолардан, жануарлардан, мотоциклдерден және адам кейіпкерлерінен бастап ғимараттарға дейінгі жоғары сапалы 3D текстуралы мештерді жасай алады, бұл бұрынғы әдістерге қарағанда айтарлықтай жақсартылған нәтижелерге қол жеткізеді. Біздің жоба парақшамыз: G https://nv-tlabs.github.io/GET3D 1 Кіріспе Әртүрлі, жоғары сапалы 3D мазмұны ойын, робототехника, сәулет және әлеуметтік платформалар сияқты бірнеше салалар үшін барған сайын маңызды бола түсуде. Алайда, 3D активтерін қолмен жасау өте уақытты қажет етеді және арнайы техникалық білімді, сондай-ақ көркемдік модельдеу дағдыларын талап етеді. Басты қиындықтардың бірі - масштаб. Біз Turbosquid [ ] немесе Sketchfab [ ] сияқты 3D маркетплейстерінде 3D модельдерін таба алсақ та, әртүрлі көрінетін көптеген 3D модельдерді жасау, айталық, ойынды немесе фильмді кейіпкерлер тобымен толтыру үшін әлі де айтарлықтай уақытты алады. 4 3 Мазмұн жасау процесін жеңілдету және оны әртүрлі (жаңадан бастаушы) пайдаланушылар үшін қолжетімді ету үшін, жоғары сапалы және әртүрлі 3D активтерін жасай алатын генеративті 3D желілері жақында белсенді зерттеу саласына айналды [ , , , , , , , , , , ]. Алайда, ағымдағы нақты қолданбалар үшін практикалық пайдалы болу үшін 3D генеративті модельдер идеалды түрде келесі талаптарды орындауы керек: Олар егжей-тегжейлі геометрия мен кез келген топологиясы бар пішіндерді жасау мүмкіндігіне ие болуы керек, Шығарылым - бұл текстуралы меш болуы керек, бұл Blender [ ] және Maya [ ] сияқты стандартты графикалық бағдарламалық жасақтама пакеттері қолданатын негізгі өкілдік, және Біз 2D суреттерді қадағалау үшін қолдана алуымыз керек, өйткені олар нақты 3D пішіндерге қарағанда кеңірек қолжетімді. 5 14 43 46 53 68 75 60 59 69 23 (a) (b) 15 1 (c) 3D генеративті модельдеу бойынша бұрынғы жұмыстар жоғарыда аталған талаптардың ішінарасына назар аударған, бірақ бүгінгі күнге дейін ешбір әдіс барлығын орындамайды (Кесте ). Мысалы, 3D нүкте бұлттарын жасайтын әдістер [ , 68, 75] әдетте текстураларды жасамайды және оларды пост-обработкада мешке түрлендіру қажет. 1 5 Воксельдерді жасайтын әдістер көбінесе геометриялық бөлшектердің жетіспеушілігімен ерекшеленеді және текстура жасамайды [ , , , ]. Нейрондық өрістерге негізделген генеративті модельдер [ , ] геометрияны экстракциялауға бағытталған, бірақ текстураны елемейді. Олардың көпшілігі нақты 3D қадағалауды да талап етеді. Ақыр соңында, текстуралы 3D мештерді тікелей шығаратын әдістер [ , ] әдетте алдын ала анықталған пішін үлгілерін талап етеді және күрделі топологиясы немесе әртүрлі генусы бар пішіндерді жасай алмайды. 66 20 27 40 43 14 54 53 Жақында нейрондық көлемді рендеринг [ ] және 2D генеративті қарсыласқан желілер (GAN) [ , , , , ] саласындағы жедел прогресс 3D-ға бағытталған сурет синтезінің [ , , , , , ] өркендеуіне әкелді. Алайда, бұл жұмыс бағыты синтез процесінде нейрондық рендерингті қолдана отырып, көп көріністі үйлесімді суреттерді синтездеуді мақсат етеді және мағыналы 3D пішіндер жасауға болатынына кепілдік бермейді. Астындағы нейрондық өріс өкілдігінен наурыздық куб алгоритмі [ ] арқылы мешті потенциалды түрде алуға болатын болса да, сәйкес текстураны экстракциялау қиын емес. 45 34 35 33 29 52 7 57 8 49 51 25 39 Бұл жұмыста біз практикалық пайдалы 3D генеративті модельге қойылатын барлық талаптарды шешуге бағытталған жаңа тәсілді енгіземіз. Атап айтқанда, біз GET3D, жоғары геометриялық және текстуралық бөлшектер мен кез келген меш топологиясы бар тікелей шығарылатын xplicit extured мештерді жасайтын 3D пішіндерге арналған enerative модель GET3D-ні ұсынамыз. Біздің тәсіліміздің негізінде дифференциалды *нақты* бетті экстракциялау әдісі [ ] және дифференциалды рендеринг әдісі [ , ] қолданылатын генеративті процесс жатыр. Біріншісі бізге кез келген топологиясы бар тікелей мештерді оңтайландыруға және шығаруға мүмкіндік береді, ал екіншісі бізге 2D суреттермен моделімізді оқытуға мүмкіндік береді, осылайша 2D сурет синтезі үшін әзірленген қуатты және жетілген дискриминаторларды пайдаланады. Біздің моделіміз тікелей мештерді жасайтын және жоғары тиімді (дифференциалды) графикалық рендерді қолданатын болғандықтан, біз моделімізді 1024 × 1024 дейінгі сурет ажыратымдылығымен оқытуға оңай масштабтай аламыз, бұл бізге жоғары сапалы геометриялық және текстуралық бөлшектерді үйренуге мүмкіндік береді. E T 3D G 60 47 37 Біз ShapeNet [ ], Turbosquid [ ] және Renderpeople [ ] сияқты автомобильдер, креслолар, жануарлар, адам кейіпкерлері және ғимараттар сияқты күрделі геометриясы бар бірнеше категориялар бойынша заманауи 3D пішін генерациясының мемлекеттік-заманауи өнімділігін көрсетеміз.GET3D ретіндегі меш шығарылымы өкілдігі, сонымен қатар басқа тапсырмаларға оңай бейімделуге болады, соның ішінде: жетілдірілген дифференциалды рендеринг [ ] арқылы бөлінген материалдық және көрініс-тәуелді жарықтандыру эффектілерін жасауды үйрену, қадағалаусыз, CLIP [ ] эмбеддингін қолдана отырып, мәтін бойынша басқарылатын 3D пішін генерациясы. 9 4 2 (a) 12 (b) 56 2 Байланысты жұмыстар Біз геометрия мен сыртқы көрініс үшін 3D генеративті модельдердегі, сондай-ақ 3D-ға бағытталған генеративті сурет синтезіндегі соңғы жетістіктерді шолып өтеміз. Соңғы жылдары, 2D генеративті модельдер жоғары ажыратымдылықтағы сурет синтезінде фотореалистік сапаға қол жеткізді [ , , , , , , ]. Бұл прогресс 3D контент генерациясы бойынша зерттеулерге де шабыт берді. Алғашқы тәсілдер 2D CNN генераторларын 3D воксель торына тікелей кеңейтуді мақсат етті [ , , , , ], бірақ 3D сверткалардың жоғары жадты тұтынуы және есептеу күрделілігі жоғары ажыратымдылықта генерация процесін тежеді. Балама ретінде, басқа жұмыстар нүкте бұлттары [ , , , ], инплицитті [ , ], немесе октет [ ] өкілдіктерін зерттеді. Алайда, бұл жұмыстар негізінен геометрияны жасауға бағытталған және сыртқы көріністі елемейді. Олардың шығарылым өкілдіктері стандартты графикалық қозғалтқыштармен үйлесімді ету үшін пост-обработканы қажет етеді. 3D генеративті модельдер 34 35 33 52 29 19 16 66 20 27 40 62 5 68 75 46 43 14 30 Біздің жұмысымызға жақын, Textured3DGAN [ , ] және DIBR [ ] текстуралы 3D мештерді жасайды, бірақ олар генерацияны шаблон мешті деформациялау ретінде қалыптастырады, бұл оларды күрделі топологияны немесе әртүрлі генусы бар пішіндерді жасаудан айырады, біздің әдіс жасай алады. PolyGen [ ] және SurfGen [ ] мештерді кез келген топологиямен жасай алады, бірақ текстураларды синтездемейді. 54 53 11 48 41 Нейрондық көлемді рендеринг [ ] және инплицитті өкілдіктердегі [ , ] табысқа жетуінен шабыттанған соңғы жұмыстар 3D-ға бағытталған сурет синтезі [ , , , , , , , , , ] мәселесін шешуге кірісті. Алайда, нейрондық көлемді рендеринг желілері әдетте сұраныс бойынша баяу жұмыс істейді, бұл ұзақ оқыту уақытына [ , ] әкеледі және шектеулі ажыратымдылықтағы суреттерді жасайды. GIRAFFE [ ] және StyleNerf [ ] нейрондық рендерингті төмен ажыратымдылықта орындап, содан кейін нәтижелерді 2D CNN арқылы жоғарылату арқылы оқыту және рендеринг тиімділігін жақсартады. Алайда, өнімділік артуы көп көріністі үйлесімділіктің төмендеуі есебінен жүреді. Қос дискриминаторды [ ] пайдалана отырып, EG3D бұл мәселені ішінара жеңілдете алады. Соған қарамастан, нейрондық рендерингке негізделген әдістерден текстуралы бетті экстракциялау қиын міндет болып табылады. Керісінше, GET3D тікелей стандартты графикалық қозғалтқыштарда қолдануға болатын текстуралы 3D мештерді шығарады. 3D-ға бағытталған генеративті сурет синтезі 45 43 14 7 57 49 26 25 76 8 51 58 67 7 57 49 25 8 3 Әдіс Енді біз текстуралы 3D пішіндерді синтездеуге арналған GET3D фреймворкын ұсынамыз. Біздің генерация процесі екі бөлікке бөлінеді: геометриялық бұтақ, ол кез келген топологияның мешін дифференциалды түрде шығарады, және текстуралық бұтақ, ол түстерді шығару үшін бет нүктелерінде сұраныс жасауға болатын текстуралық өрісті жасайды. Соңғысы басқа бет қасиеттеріне, мысалы, материалдарға дейін кеңейтілуі мүмкін (4.3.1-бөлім). Оқыту кезінде, 2D жоғары ажыратымдылықтағы суреттерді рендерлеу үшін тиімді дифференциалды растеризатор қолданылады. Барлық процесс дифференциалды, бұл 2D дискриминатордан екі генератор бұтағына градиенттерді тарату арқылы суреттерден (объектіге қызығушылықты көрсететін маскалармен) қарсыластық оқытуға мүмкіндік береді. Біздің моделіміз 2-суретте көрсетілген. Келесіде, біз алдымен 3D.1-бөлімде 3D генераторымызды, содан кейін 3.2-бөлімде дифференциалды рендеринг және жоғалту функцияларын ұсынамыз. 3.1 3D текстуралы мештердің генеративті моделі Біз ∈ N (0*,* ) гаустық бөлінуінен үлгіні мешіне текстурасымен, = ( ) таратуды үйренуді мақсат етеміз. z I M E M, E G z Бірдей геометрия әртүрлі текстураларға ие бола алатындықтан, ал бірдей текстура әртүрлі геометрияға қолданыла алатындықтан, біз екі кездейсоқ кіріс векторларын 1 ∈ R512 және 2 ∈ R512 үлгілейміз. StyleGAN [ , , ] сияқты, біз 1 және 2-ні аралық латентті векторларға 1 = geo( 1) және 2 = tex( 2) бейсызықты түрлендіру желілерін geo және tex пайдаланамыз, олар 3D пішіндер мен текстураның генерациясын басқаратын *стильдерді* шығару үшін одан әрі қолданылады. Біз 3.1.1-бөлімде геометрия үшін генераторды және 3.1.2-бөлімде текстура генераторын ресми түрде ұсынамыз. z z 34 35 33 z z w f z w f z f f 3.1.1 Геометрия генераторы Біз геометрия генераторын жақында ұсынылған дифференциалды бет өкілдігі DMTet [ ] енгізу үшін жобалаймыз. DMTet геометрияны иілетін тетраэдр торына [ , ] анықталған белгісі бар аралық функция (SDF) ретінде көрсетеді, бұл бетті наурыздық тетраэдрлер [ ] арқылы дифференциалды түрде қалпына келтіруге болады. Торды оның төбелерін жылжыту арқылы иілу оның ажыратымдылығын жақсы пайдалануға мүмкіндік береді. Бет экстракциясы үшін DMTet-ті қолдану арқылы біз кез келген топологиясы және генусы бар тікелей мештерді жасай аламыз. Келесіде біз DMTet-ті қысқаша қорытындылаймыз және толық мәліметтер үшін түпнұсқа мақалаға сілтеме жасаймыз. 60 22 24 17 , 3D кеңістігін objekts орналасқан жерде, мұнда тетраэдр торының төбелері болып табылады. Әрбір тетраэдр ∈ төрт төбесі { } арқылы анықталады, мұнда ∈ {1*, . . . , K*}, - жалпы тетраэдр саны, және ∈ ∈ R3. Оның 3D координаталарына қосымша , әрбір төбе SDF мәні ∈ R және бастапқы каноникалық координатадан төбенің иілуі ∆ ∈ R3 қамтиды. Бұл өкілдік иілітілген төбелер ′ = + ∆ бойынша барицентрлік интерполяция арқылы үздіксіз кеңістіктегі SDF мәндерін есептейтін дифференциалды наурыздық тетраэдрлер [ ] арқылы нақты мешті қалпына келтіруге мүмкіндік береді. V T T V T T T k T v ak , v bk , v ck , v dk k K v ik V T , v ik i v i s i v i v v i v i 60 Біз 1 ∈ R512-ні әрбір төбе үшін SDF мәндері мен иілулерге шартты 3D свертка және толық қосылған қабаттар арқылы түрлендіреміз. Атап айтқанда, біз алдымен 1-ге шартталғанFeature томдарын шығару үшін 3D свертка қабаттарын пайдаланамыз. Содан кейін біз трилинейарлық интерполяцияны қолданып, әрбір төбе ∈ үшін Feature-ді сұраныс жасаймыз және оны SDF мәні және иілу ∆ шығаратын MLP-лерге береміз. Жоғары ажыратымдылықта модельдеу қажет болған жағдайларда (мысалы, дөңгелектерінде жұқа құрылымдары бар мотоциклдер), біз [ ] бойынша көлемді бөлуді одан әрі қолданамыз. Желі архитектурасы w v i w v i V T s i v i 60 Барлық төбелер үшін және ∆ алынғаннан кейін, біз нақты мешті экстракциялау үшін дифференциалды наурыздық тетраэдрлер алгоритмін пайдаланамыз. Наурыздық тетраэдрлер тетраэдр ішіндегі беттің топологиясын белгілеріне негізделгенін анықтайды. Атап айтқанда, егер sign( ) /= sign( ) болса, мұнда тетраэдр жиегіндегі төбелердің индекстерін білдіреді, меш жағы экстракцияланады, ал сол жақтың төбелері сызықтық интерполяция ретінде анықталады, mi,j = v 0 i sj−v 0 j si sj−si . Аталған теңдеу тек si 6= sj болғанда ғана бағаланатынына назар аударыңыз, сондықтан ол дифференциалды болып табылады және mi,j градиенті SDF мәндері si және иілулер ∆vi бойынша кері таратылуы мүмкін. Бұл өкілдік арқылы, si әртүрлі белгілерін болжау арқылы кез келген топологиясы бар пішіндерді оңай жасауға болады. Дифференциалды меш экстракциясы s i v i s i s i s j i, j m i,j 3.1.2 Текстура генераторы Шығарылатын мешке үйлесімді текстура картасын тікелей жасау қиын емес, өйткені жасалған пішіннің кез келген генусы мен топологиясы болуы мүмкін. Сондықтан біз текстураны текстуралық өріс [ ] ретінде параметрлендіреміз. 50 Атап айтқанда, біз текстуралық өрісті 3D орналасуы ∈ R3 бет нүктесін, 2-ге шартталған, сол орналасудағы RGB түсі ∈ R3-ке ауыстыратын функция арқылы модельдейміз. Текстуралық өріс геометрияға байланысты болғандықтан, біз бұл түрлендіруді геометриялық латентті код 1-ге қосымша шарттаймыз, яғни = ( *,* 1 ⊕ 2), мұнда ⊕ конкатенацияны білдіреді. p w c f t w c f t p w w Біз өзіміздің текстуралық өрісімізді 3D объектілерді [ ] қалпына келтіру және 3D-ға бағытталған суреттерді [ ] жасау үшін тиімді және экспрессивті болып табылатын үш осьты ортогональды Feature жазықтығы өкілдігі арқылы көрсетеміз. Атап айтқанда, біз [ , ] бойынша сәйкес келеміз және латентті код 1 ⊕ 2-ні × × ( × 3) өлшемді үш осьты ортогональды Feature жазықтықтарына ауыстыру үшін шартты 2D сверткалық нейрондық желіні пайдаланамыз, мұнда = 256 - кеңістіктік ажыратымдылықты, ал = 32 - арналар санын білдіреді. Желі архитектурасы 55 8 8 35 w w N N C N C Feature жазықтықтары берілген, бет нүктесі үшін Feature векторы f t ∈ R 32 , f t = P e ρ p