```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 감독이 필요합니다. 마지막으로, 텍스처 메쉬를 직접 출력하는 방법 [ , ]은 일반적으로 사전 정의된 모양 템플릿이 필요하며 복잡한 위상이나 가변적인 속성을 가진 모양을 생성할 수 없습니다. 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 생성 모델의 모든 요구 사항을 해결하는 것을 목표로 하는 새로운 접근 방식을 소개합니다. 특히, 우리는 고품질의 기하학적 및 텍스처 디테일과 임의의 메쉬 위상을 가진 명시적인 텍스처 메쉬를 직접 출력하는 3D 모양을 위한 생성 모델인 GET3D를 제안합니다. 우리 접근 방식의 핵심은 미분 가능한 표면 추출 방법 [ ]과 미분 가능한 렌더링 기술 [ , ]을 활용하는 생성 프로세스입니다. 전자는 임의의 위상을 가진 명시적인 텍스처 메쉬를 직접 최적화하고 출력할 수 있게 해주고, 후자는 2D 이미지로 모델을 훈련할 수 있게 하여 2D 이미지 합성을 위해 개발된 강력하고 성숙한 판별기를 활용할 수 있게 합니다. 우리 모델은 메쉬를 직접 생성하고 고도로 효율적인 (미분 가능한) 그래픽 렌더러를 사용하기 때문에 이미지 해상도를 최대 1024 × 1024까지 훈련하도록 모델을 쉽게 확장할 수 있어 고품질의 기하학적 및 텍스처 디테일을 학습할 수 있습니다. 명시적 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 [ ]은 텍스처 메쉬를 생성하지만, 생성 과정을 템플릿 메쉬의 변형으로 공식화하여 복잡한 위상이나 가변적인 속성을 가진 모양을 생성하는 것을 방지합니다. PolyGen [ ]과 SurfGen [ ]은 임의의 위상을 가진 메쉬를 생성할 수 있지만 텍스처를 합성하지는 않습니다. 54 53 11 48 41 신경 볼륨 렌더링 [ ] 및 암시적 표현 [ , ]의 성공에 힘입어 최근 연구들은 3D 인식 이미지 합성 [ , , , , , , , , , ] 문제를 해결하기 시작했습니다. 그러나 신경 볼륨 렌더링 네트워크는 일반적으로 쿼리 속도가 느려 긴 훈련 시간 [ , ]을 초래하고 제한된 해상도의 이미지를 생성합니다. GIRAFFE [ ]와 StyleNerf [ ]는 신경 렌더링을 낮은 해상도에서 수행한 후 2D CNN으로 결과를 업샘플링하여 훈련 및 렌더링 효율성을 향상시킵니다. 그러나 성능 향상은 다중 뷰 일관성 감소를 대가로 합니다. 이중 판별기를 활용함으로써 EG3D [ ]는 이 문제를 부분적으로 완화할 수 있습니다. 그럼에도 불구하고 신경 렌더링 기반의 방법에서 텍스처 표면을 추출하는 것은 간단한 일이 아닙니다. 반대로 GET3D는 표준 그래픽 엔진에서 즉시 사용할 수 있는 텍스처 메쉬를 직접 출력합니다. 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 M E 동일한 기하학 구조가 다른 텍스처를 가질 수 있고, 동일한 텍스처가 다른 기하학 구조에 적용될 수 있으므로, 두 개의 무작위 입력 벡터 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 v v i v i 60 우리는 3D 컨볼루션 및 완전 연결 레이어 시리즈를 통해 1 ∈ R512를 각 꼭짓점 의 SDF 값 및 변형으로 매핑합니다. 구체적으로, 먼저 1에 의해 조건화된 특징 볼륨을 생성하기 위해 3D 컨볼루션 레이어를 사용합니다. 그런 다음 삼중선형 보간을 사용하여 각 꼭짓점 ∈ 에서 특징을 쿼리하고, MLP로 공급하여 SDF 값 와 변형 ∆ 를 출력합니다. 고해상도 모델링이 필요한 경우 (예: 바퀴에 얇은 구조가 있는 오토바이), [ ]에 따라 볼륨 분할을 추가로 사용합니다. 네트워크 아키텍처 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 구체적으로, 텍스처 필드를 함수 로 모델링하여 표면 지점 ∈ R3의 3D 위치를 2에 대해 조건화하여 해당 위치의 RGB 색상 ∈ R3로 매핑합니다. 텍스처 필드는 기하학적 구조에 따라 달라지므로, = ( *,* 1 ⊕ 2)가 되도록 기하학적 잠재 코드 1을 추가로 조건화합니다. 여기서 ⊕는 연결을 나타냅니다. ft p w c c ft p w w w 우리는 3D 객체를 재구성하고 3D 인식 이미지를 생성하는 데 효율적이고 표현력이 좋은 3중 평면 표현 [ ]을 사용하여 텍스처 필드를 표현합니다 [ ]. 구체적으로, [ , ]를 따라서 2D 컨볼루션 신경망을 사용하여 잠재 코드 1 ⊕ 2를 크기 × × ( × 3)의 세 개의 축 정렬된 직교 특징 평면으로 매핑합니다. 여기서 = 256은 공간 해상도를 나타내고 = 32는 채널 수를 나타냅니다. 네트워크 아키텍처 55 8 8 35 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 지점 좌표를 포함하는 각 픽셀의 이미지로 렌더링합니다. 이 좌표는 텍스처 필드를 쿼리하여 RGB 값을 얻는 데 사용됩니다. 추출된 메쉬에서 직접 작동하므로 고해상도 이미지를 효율적으로 렌더링할 수 있어 최대 1024×1024의 이미지 해상도로 모델을 훈련할 수 있습니다. 미분 가능한 렌더링 c 37 적대적 목적 함수를 사용하여 모델을 훈련합니다. 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 텍스처 메쉬의 품질을 기존 방법과 비교합니다. 다음으로, 4.2절에서 설계 선택을 제거합니다. 마지막으로, 4.3절에서 GET3D의 유연성을 다운스트림 애플리케이션에 적용하여 입증합니다. 추가 실험 결과 및 구현 세부 정보는 부록에 제공됩니다. 9 4 4.1 합성 데이터셋 실험 ShapeNet [ ]에 대한 평가를 위해 복잡한 기하학적 구조를 가진 세 가지 범주 ( , , )를 사용합니다. 이들은 각각 7497, 6778, 337개의 모양을 포함합니다. 각 범주를 무작위로 훈련 (70%), 검증 (10 %), 테스트 (20 %)로 분할하고, 훈련 세트에 중복이 있는 모양은 테스트 세트에서 제거합니다. 훈련 데이터를 렌더링하기 위해 각 모양의 상반구에서 카메라 자세를 무작위로 샘플링합니다. 및 범주에 대해서는 24개의 무작위 뷰를 사용하고, 는 모양 수가 적기 때문에 100개의 뷰를 사용합니다. ShapeNet의 모델은 간단한 텍스처만 가지고 있으므로, 텍스처가 더 상세한 TurboSquid [ ]에서 수집한 데이터셋 (442 모양)에서도 GET3D를 평가하고, 이를 위와 같이 훈련, 검증, 테스트로 분할합니다. 마지막으로 GET3D의 다양성을 입증하기 위해 Turbosquid ( 데이터셋 9 자동차 의자 오토바이 자동차 의자 오토바이 4 동물