```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 소프트웨어에서 사용하기가 쉽지 않습니다. 본 연구에서는 복잡한 토폴로지, 풍부한 기하학적 세부 정보 및 고품질 텍스처를 갖춘 enerative model that directly generates xplicit extured meshes인 GET3D를 소개합니다. 우리는 2D 이미지 컬렉션에서 모델을 훈련하기 위해 미분 가능한 표면 모델링, 미분 가능한 렌더링 및 2D 생성적 적대 신경망의 최근 성공을 활용합니다. GET3D는 자동차, 의자, 동물, 오토바이, 인간 캐릭터부터 건물까지 고품질의 3D 텍스처 메쉬를 생성할 수 있으며, 이전 방법들보다 훨씬 뛰어난 성능을 달성합니다. 저희 프로젝트 페이지: G E T 3D https://nv-tlabs.github.io/GET3D 1 서론 다양하고 고품질의 3D 콘텐츠는 게임, 로보틱스, 건축 및 소셜 플랫폼을 포함한 여러 산업에서 점점 더 중요해지고 있습니다. 그러나 3D 에셋의 수동 제작은 시간이 많이 소요되며 특정 기술 지식과 예술적 모델링 기술이 필요합니다. 주요 과제 중 하나는 바로 규모입니다. Turbosquid [ ] 또는 Sketchfab [ ]과 같은 3D 마켓플레이스에서 3D 모델을 찾을 수는 있지만, 게임이나 영화를 채우기 위해 각기 다른 모습을 가진 수많은 3D 모델을 만드는 데는 여전히 상당한 아티스트 시간이 소요됩니다. 4 3 콘텐츠 제작 프로세스를 용이하게 하고 다양한 (초보) 사용자가 액세스할 수 있도록 고품질의 다양한 3D 에셋을 생성할 수 있는 3D 생성 네트워크는 최근 활발한 연구 분야가 되었습니다 [ , , , , , , , , , , ]. 그러나 현재 실제 애플리케이션에 실질적으로 유용하려면 3D 생성 모델은 이상적으로 다음 요구 사항을 충족해야 합니다: 상세한 기하학 및 임의의 토폴로지를 가진 모양을 생성할 수 있는 능력, 출력은 텍스처 메쉬여야 하며, 이는 Blender [ ] 및 Maya [ ]와 같은 표준 그래픽 소프트웨어 패키지에서 사용되는 기본 표현이며, 명시적인 3D 모양보다 더 널리 사용 가능한 2D 이미지를 감독에 활용할 수 있어야 합니다. 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 인식 이미지 합성을 목표로 하며, 신경 렌더링을 합성 프로세스에 사용하고, 이는 의미있는 3D 모양을 생성할 수 있음을 보장하지 않습니다. 메쉬는 마칭 큐브 알고리즘 [ ]을 사용하여 기본 신경 필드 표현에서 잠재적으로 얻을 수 있지만, 해당 텍스처를 추출하는 것은 간단한 작업이 아닙니다. 45 34 35 33 29 52 7 57 8 49 51 25 39 본 연구에서는 실질적으로 유용한 3D 생성 모델의 모든 요구 사항을 해결하는 것을 목표로 하는 새로운 접근 방식을 소개합니다. 구체적으로, 우리는 고품질 기하학 및 텍스처 세부 정보와 임의의 메쉬 토폴로지를 가진 명시적인 텍스처 3D 메쉬를 직접 출력하는 3D 모양에 대한 생성 모델인 GET3D를 제안합니다. 우리의 접근 방식의 핵심은 미분 가능한 표면 추출 방법 [ ]과 미분 가능한 렌더링 기술 [ , ]을 사용하는 생성 프로세스입니다. 전자는 임의의 토폴로지를 가진 텍스처 3D 메쉬를 직접 최적화하고 출력할 수 있게 하며, 후자는 2D 이미지를 사용하여 모델을 훈련할 수 있게 하여 2D 이미지 합성을 위해 개발된 강력하고 성숙한 판별자를 활용할 수 있게 합니다. 모델은 메쉬를 직접 생성하고 고효율(미분 가능한) 그래픽 렌더러를 사용하므로, 이미지로 훈련을 확장하여 명시적 60 47 37 1024 × 1024의 해상도를 지원하여 고품질의 기하학 및 텍스처 세부 정보를 학습할 수 있습니다. 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 프레임워크를 제시합니다. 생성 프로세스는 두 부분으로 나뉩니다: 임의의 토폴로지를 가진 표면 메쉬를 미분 가능하게 출력하는 기하학 브랜치와 표면 지점에서 쿼리하여 색상을 생성할 수 있는 텍스처 필드를 생성하는 텍스처 브랜치입니다. 후자는 재질과 같은 다른 표면 속성으로 확장될 수 있습니다(섹션 ). 훈련 중에는 효율적인 미분 가능한 래스터라이저를 사용하여 결과 텍스처 메쉬를 2D 고해상도 이미지로 렌더링합니다. 전체 프로세스는 미분 가능하므로, 2D 판별자에서 생성기 브랜치로 기울기를 전파하여 이미지(관심 객체를 나타내는 마스크 포함)로부터 적대적 훈련을 수행할 수 있습니다. 모델은 그림 에 나와 있습니다. 다음에서는 섹션 에서 3D 생성기를 먼저 소개하고, 섹션 에서 미분 가능한 렌더링 및 손실 함수로 진행합니다. 4.3.1 2 3.1 3.2 3.1 3D 텍스처 메쉬의 생성 모델 가우시안 분포에서 샘플을 메쉬 과 텍스처 로 매핑하는 3D 생성기 = ( )를 학습하는 것을 목표로 합니다. M E M, E G z ∈ N (0*,* ) z I 동일한 기하학에 다른 텍스처가 있을 수 있고, 동일한 텍스처가 다른 기하학에 적용될 수 있으므로, 두 개의 임의 입력 벡터 1 ∈ R512 및 2 ∈ R512를 샘플링합니다. StyleGAN [ , , ]에 따라, 비선형 매핑 네트워크 geo 및 tex를 사용하여 1 및 2를 중간 잠재 벡터 1 = geo( 1) 및 2 = tex( 2)로 매핑하고, 이는 3D 모양 및 텍스처 생성을 제어하는 을 생성하는 데 추가로 사용됩니다. 기하학을 위한 생성기는 섹션 에, 텍스처 생성기는 섹션 에 형식적으로 소개합니다. z z 34 35 33 f f z z w f z w f z 스타일 3.1.1 3.1.2 3.1.1 기하학 생성기 최근 제안된 미분 가능한 표면 표현인 DMTet [ ]을 통합하도록 기하학 생성기를 설계했습니다. DMTet은 변형 가능한 사면체 격자 [ , ]에 정의된 부호 거리 필드(SDF)로 기하학을 표현하며, 이를 통해 사면체 마칭 [ ]을 통해 표면을 미분 가능하게 복구할 수 있습니다. 격자의 꼭짓점을 이동하여 변형하면 해상도를 더 잘 활용할 수 있습니다. 표면 추출을 위해 DMTet을 채택함으로써 임의의 토폴로지 및 속성을 가진 명시적인 메쉬를 생성할 수 있습니다. 다음에는 DMTet에 대한 간략한 요약을 제공하고 자세한 내용은 원본 논문을 참조합니다. 60 22 24 17 ( )를 객체가 놓여 있는 전체 3D 공간으로 표시하면, 여기서 는 사면체 격자 의 꼭짓점이고, 각 사면체 ∈ 는 네 개의 꼭짓점 { }으로 정의되며, ∈ {1*, . . . , K*}, 여기서 는 사면체의 총 개수이고, ∈ ∈ R3입니다. 3D 좌표 외에도 각 꼭짓점 는 SDF 값 ∈ R과 초기 표준 좌표에서의 변형 ∆ ∈ R3를 포함합니다. 이 표현은 미분 가능한 사면체 마칭 [ ]을 통해 명시적인 메쉬를 복구할 수 있게 하며, 여기서 연속 공간의 SDF 값은 변형된 꼭짓점 ′ = + ∆ 에서의 값 의 바리센트릭 보간을 통해 계산됩니다. VT , T VT T Tk T v ak , v bk , v ck , v dk k K v ik VT , v ik v i si v i 60 v v i v i si 1 ∈ R512를 각 꼭짓점 에서의 SDF 값 및 변형으로 매핑하기 위해 조건부 3D 컨볼루션 및 완전 연결 레이어의 연속적인 시퀀스를 사용합니다. 구체적으로, 먼저 1에 의해 조건화된 특징 볼륨을 생성하기 위해 3D 컨볼루션 레이어를 사용합니다. 그런 다음 3차 보간을 사용하여 각 꼭짓점 ∈ 에서의 특징을 쿼리하고, 이를 SDF 값 와 변형 ∆ 를 출력하는 MLP로 전달합니다. 고해상도 모델링이 필요한 경우(예: 바퀴의 얇은 구조를 가진 오토바이), [ ]에 따라 볼륨 분할을 추가로 사용합니다. 네트워크 아키텍처 w v i w v i VT si 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의 다른 부호를 예측함으로써 임의의 토폴로지를 가진 모양을 쉽게 생성할 수 있습니다. 미분 가능한 메쉬 추출 si v i si si sj i, j m i,j 3.1.2 텍스처 생성기 출력 메쉬와 일관된 텍스처 맵을 직접 생성하는 것은 생성된 모양이 임의의 속성과 토폴로지를 가질 수 있으므로 간단하지 않습니다. 따라서 텍스처를 텍스처 필드 [ ]로 매개변수화합니다. 50 구체적으로, 텍스처 필드를 3D 표면 지점 ∈ R3의 위치를 2에 대해 조건화하여 해당 위치의 RGB 색상 ∈ R3로 매핑하는 함수 로 모델링합니다. 텍스처 필드는 기하학에 의존하므로, = ( *,* 1 ⊕ 2)가 되도록 기하학 잠재 코드 1을 추가로 조건화합니다. 여기서 ⊕는 연결을 나타냅니다. p w c ft c ft p w w w 3D 객체 [ ] 재구축 및 3D 인식 이미지 [ ] 생성에 효율적이고 표현력이 뛰어난 삼중 평면 표현을 사용하여 텍스처 필드를 표현합니다. 구체적으로, [8, 25, 7, 57]을 따르고, 2D 컨볼루션 신경망을 사용하여 잠재 코드 1 ⊕ 2를 크기 × × ( × 3)의 세 개의 축 정렬 직교 특징 평면으로 매핑합니다. 여기서 = 256은 공간 해상도를 나타내고 = 32는 채널 수를 나타냅니다. 네트워크 아키텍처 55 8 w w N N C N C 특징 평면이 주어지면, 표면 지점 p의 특징 벡터 f t ∈ R 32는 f t = P e ρ(πe(p))로 복구되며, 여기서 πe(p)는 특징 평면 e로의 점 p의 투영이고 ρ(·)는 특징의 쌍선 보간을 나타냅니다. 그런 다음 추가 완전 연결 레이어를 사용하여 집계된 특징 벡터 f t를 RGB 색상 c로 매핑합니다. 3D 인식 이미지 합성 [8, 25, 7, 57]에 대한 다른 연구와 달리, 신경 필드 표현을 사용하는 것과 달리, 텍스처 필드는 표면 지점의 위치에서만 샘플링하면 됩니다(광선을 따라 조밀한 샘플링과는 대조적). 이는 고해상도 이미지를 렌더링하기 위한 계산 복잡성을 크게 줄이고 구성상 다중 뷰 일관적인 이미지를 생성하도록 보장합니다. 3.2 미분 가능한 렌더링 및 훈련 훈련 중에 모델을 감독하기 위해, 미분 가능한 렌더러를 활용하여 다중 뷰 3D 객체 재구축을 수행하는 Nvdiffrec [ ]에서 영감을 얻었습니다. 구체적으로, 추출된 3D 메쉬와 텍스처 필드를 미분 가능한 렌더러 [ ]를 사용하여 2D 이미지로 렌더링하고, 생성된 객체에서 렌더링된 실제 객체 이미지를 구별하려는 2D 판별자로 네트워크를 감독합니다. 47 37 데이터셋의 이미지 획득에 사용된 카메라 분포 C를 알고 있다고 가정합니다. 생성된 모양을 렌더링하기 위해 C에서 카메라 를 무작위로 샘플링하고, 고도로 최적화된 미분 가능한 래스터라이저 Nvdiffrast [ ]를 사용하여 3D 메쉬를 2D 실루엣 및 메쉬 표면의 해당 3D 미분 가능한 렌더링 c 37 점의 좌표를 포함하는 각 픽셀의 이미지로 렌더링합니다. 이 좌표는 텍스처 필드를 쿼리하여 RGB 값을 얻는 데 추가로 사용됩니다. 추출된 메쉬에서 직접 작동하므로 고해상도 이미지를 효율적으로 렌더링할 수 있어 모델을 최대 1024×1024의 이미지 해상도로 훈련할 수 있습니다. 적대적 목적 함수를 사용하여 모델을 훈련합니다. StyleGAN [ ]의 판별자 아키텍처를 채택하고 R1 정규화 [ ]와 함께 동일한 비포화 GAN 목적 함수를 사용합니다. 경험적으로 RGB 이미지와 실루엣 각각에 대해 별도의 두 개의 판별자를 사용하는 것이 둘 다에 작동하는 단일 판별자보다 더 나은 결과를 제공한다는 것을 발견했습니다. 를 판별자로 표시하면, 는 RGB 이미지 또는 실루엣이 될 수 있습니다. 그러면 적대적 목적 함수는 다음과 같이 정의됩니다: 판별자 & 목적 함수 34 42 Dx x 여기서 ( )는 ( ) = − log(1 +exp(− ))로 정의되고, 는 실제 이미지의 분포이며, 은 렌더링을 나타내고, 는 하이퍼파라미터입니다. 은 미분 가능하므로, 기울기는 2D 이미지에서 3D 생성기로 역전파될 수 있습니다. g u g u u px R λ R 보기에서 보이지 않는 내부 부동 면을 제거하기 위해, 인접 꼭짓점의 SDF 값 [ ] 간에 정의된 교차 엔트로피 손실로 기하학 생성기를 추가로 정규화합니다: 정규화 47 여기서 는 이진 교차 엔트로피 손실을 나타내고 는 시그모이드 함수를 나타냅니다. Eq. 의 합은 사면체 격자에서 고유한 모서리 S 의 집합에 대해 정의되며, sign( ) /= sign( )입니다. H σ 2 e si sj 전체 손실 함수는 다음과 같이 정의됩니다: 여기서 는 정규화 수준을 제어하는 하이퍼파라미터입니다. µ 4 실험 모델을 평가하기 위해 광범위한 실험을 수행합니다. 먼저 ShapeNet [ ] 및 Turbosquid [ ] 데이터셋을 사용하여 GET3D이 생성한 3D 텍스처 메쉬의 품질을 비교합니다. 다음으로, 섹션 에서 설계 선택을 완화합니다. 마지막으로, 섹션 에서 다운스트림 애플리케이션에 적용하여 GET3D의 유연성을 입증합니다. 추가 실험 결과 및 구현 세부 정보는 부록에 제공됩니다. 9 4 4.2 4.3 4.1 합성 데이터셋 실험 ShapeNet [ ]에 대한 평가를 위해 복잡한 기하학을 가진 세 가지 범주인 , , 를 사용하며, 각각 7497, 6778, 337개의 모양을 포함합니다. 각 범주를 무작위로 훈련(70%), 검증(10%), 테스트(20%)로 분할하고, 훈련 세트에 중복된 모양을 테스트 세트에서 제거합니다. 훈련 데이터를 렌더링하기 위해 각 모양의 상반구에서 카메라 포즈를 무작위로 샘플링합니다. 및 범주의 경우 24개의 무작위 보기를 사용하고, 의 경우 모양 수가 적기 때문에 100개의 보기를 사용합니다. ShapeNet의 모델은 간단한 데이터셋 9 Car Chair Motorbike Car Chair Motorbike