Inverse Graphics GAN:Learning to Generate 3D Shapes from Unstructured 2D Data
역 그래픽 GAN : 구조화되지 않은 2D 데이터에서 3D 모양을 생성하는 방법 학습
Abstract
Recent work has shown the ability to learn generative models for 3D shapes from only unstructured 2D images.
최근 연구는 구조화되지 않은 2D 이미지에서만 3D 모양에 대한 생성 모델을 학습하는 능력을 보여주었습니다.
However, training such models requires differentiating through the rasterization step of the rendering process, therefore past work has focused on developing bespoke rendering models which smooth over this non-differentiable ocess in various ways.
그러나 이러한 모델을 훈련하려면 렌더링 프로세스의 래스터 화 단계를 통한 차별화가 필요하므로 과거 작업은 다양한 방식으로이 차별화 할 수없는 작업을 원활하게 처리하는 맞춤형 렌더링 모델을 개발하는 데 중점을 두었습니다.
Such models are thus unable to take advantage of the photo-realistic, fully featured, industrial renderers built by the gaming and graphics industry.
따라서 이러한 모델은 게임 및 그래픽 산업에서 구축 한 사실적이고 완전한 기능을 갖춘 산업용 렌더러를 활용할 수 없습니다.
In this paper we introduce the first scalable training technique for 3D generative models from 2D data which utilizes an off-the-shelf non-differentiable renderer.
이 논문에서는 기성품의 미분화 렌더러를 활용하는 2D 데이터의 3D 생성 모델을위한 최초의 확장 가능한 교육 기법을 소개합니다.
To account for the non-differentiability, we introduce a proxy neural renderer to match the output of the non-differentiable renderer.
비 미분 성을 설명하기 위해 비 미분 렌더러의 출력과 일치하는 프록시 신경 렌더러를 도입합니다.
We further propose discriminator output matching to ensure that the neural renderer learns to smooth over the rasterization appropriately.
우리는 신경 렌더러가 래스터 화를 적절하게 매끄럽게하는 방법을 배울 수 있도록 판별 기 출력 일치를 제안합니다.
We evaluate our model on images rendered from our generated 3D shapes, and show that our model can consistently learn to generate better shapes than existing models when trained with exclusively unstructured 2D images.
생성 된 3D 모양에서 렌더링 된 이미지에 대해 모델을 평가하고, 우리 모델이 비정형 2D 이미지로 훈련 된 경우 기존 모델보다 더 나은 모양을 생성하는 방법을 지속적으로 학습 할 수 있음을 보여줍니다
1. Introduction
Generative adversarial networks (GANS) have produced impressive results on 2D image data (Karras et al., 2019; Brock et al., 2019).
GANS (Generative Adversarial Network)는 2D 이미지 데이터에서 인상적인 결과를 가져 왔습니다 (Karras et al., 2019; Brock et al., 2019).
Many visual applications, such as gaming, require 3D models as inputs instead of just images, however, and directly extending existing GAN models to 3d, requires access to 3D training data (Wu et al., 2016;Riegler et al., 2017).
게임과 같은 많은 시각적 응용 프로그램에는 이미지 대신 입력으로 3D 모델이 필요하지만 기존 GAN 모델을 3d로 직접 확장하려면 3D 교육 데이터에 대한 액세스가 필요합니다 (Wu et al., 2016; Riegler et al., 2017) .
This data is expensive to generate and so exists in abundance only for only very common classes.
이 데이터는 생성하는 데 비용이 많이 들고 매우 일반적인 클래스에 대해서만 풍부하게 존재합니다.
Ideally we’d like to be able to learn to generate 3D models while training with only 2D image data which is much more widely available and much cheaper and easier to obtain.
이상적으로는 훨씬 더 널리 사용 가능하고 훨씬 저렴하고 쉽게 얻을 수있는 2D 이미지 데이터만으로 학습하면서 3D 모델을 생성하는 방법을 배울 수 있기를 바랍니다.
Training with only 2D data allows us to use any 3D representation.
2D 데이터만으로 훈련하면 모든 3D 표현을 사용할 수 있습니다.
Our interest is in creating 3D models for gaming applications which typically rely on 3D meshes, but direct mesh generation is not ammenable to generating arbitary topologies since most approaches are based on deforming a template mesh.
우리의 관심은 일반적으로 3D 메시에 의존하는 게임 애플리케이션 용 3D 모델을 만드는 데 있지만 대부분의 접근 방식이 템플릿 메시 변형에 기반하기 때문에 직접 메시 생성은 임의 토폴로지 생성에 적합하지 않습니다.
So we instead choose to work with voxel representations because they can represent arbitrary topologies, can easily be converted to meshes using the marching cubes algorithm, and can be made differentiable by representing the occupancy of each voxel by a real number ∈ [0, 1] which identifies the probability of voxel occupancy.
따라서 우리는 임의의 토폴로지를 나타낼 수 있고 행진 큐브 알고리즘을 사용하여 메시로 쉽게 변환 할 수 있으며 각 복셀의 점유를 실수로 표현하여 구분할 수 있기 때문에 복셀 표현으로 작업하기로 선택했습니다 ∈ [0, 1] 복셀 점유 확률을 식별합니다.
In order to learn with an end-to-end differentiable model, we need to differentiate through the process of rendering the 3D model to a 2D image, but the rasterization step in rendering is inherently non-differentiable.
end-to-end 차별화 가능한 모델로 학습하기 위해서는 3D 모델을 2D 이미지로 렌더링하는 과정을 통해 차별화해야하지만 렌더링의 래스터 화 단계는 본질적으로 미분 할 수 없습니다.
As a result, past work on 3D generation from 2D images has focused on differentiable renderers which are hand built from scratch to smooth over this non-differentiable step in various ways.
그 결과, 2D 이미지에서 3D 생성에 대한 과거의 작업은 처음부터 손으로 만든 차별화 가능한 렌더러에 초점을 맞춰 다양한 방식으로이 구분할 수없는 단계를 부드럽게 처리했습니다.
However, standard photo realistic industrial renderers created by the gaming industry (e.g. UnReal Engine, Unity) are not differentiable, and so with such methods we cannot use these renderers, and must rely instead on the simple differentiable renderers build by the research community.
그러나 게임 업계에서 만든 표준 사진 사실적인 산업용 렌더러 (예 : UnReal Engine, Unity)는 차별화 할 수 없으므로 이러한 방법으로는 이러한 렌더러를 사용할 수 없으며 대신 연구 커뮤니티에서 구축 한 단순하고 차별화 가능한 렌더러에 의존해야합니다.
In particular two aspects of the rendering process are non-differentiable: (1) the rasterization step inside of the renderer is inherently non-differentiable as a result of occlusion and (2) sampling the continuous voxel grid to generate a mesh is also not differentiable.
특히 렌더링 프로세스의 두 가지 측면은 미분 할 수 없습니다. (1) 렌더러 내부의 래스터 화 단계는 오 클루 전의 결과로 본질적으로 미분 할 수 없으며 (2) 메시를 생성하기 위해 연속 복셀 그리드를 샘플링하는 것도 미분 할 수 없습니다. .
This is second step is required because typical industrial renderers take a mesh as input and we can easily convert a binary voxel grid to a mesh, but continuous voxel inputs do not have a meaningful mesh representation.
일반적인 산업용 렌더러가 메시를 입력으로 사용하고 이진 복셀 그리드를 메시로 쉽게 변환 할 수 있지만 연속 복셀 입력에는 의미있는 메시 표현이 없기 때문에 이는 두 번째 단계입니다.
So rendering a continuous voxel grid using an off-the-shelfrenderer requires first sampling a binary voxel grid from the distribution defined by the continuous voxel grid.
따라서 기성 제품을 사용하여 연속 복셀 그리드를 렌더링하려면 먼저 연속 복셀 그리드로 정의 된 분포에서 이진 복셀 그리드를 샘플링해야합니다.
In this paper we introduce the first scalable training technique for 3D generative models from 2D data which utilises an off-the-shelf non-differentiable renderer.
이 백서에서는 기성품의 미분화 렌더러를 활용하는 2D 데이터의 3D 생성 모델을위한 최초의 확장 가능한 교육 기술을 소개합니다.
Examples of the result of our method can be seen in Figure 1.
우리 방법의 결과의 예는 그림 1에서 볼 수 있습니다.
Key to our method is the introduction of a proxy neural renderer based on the recent successes of neural rendering (Nguyen-Phuoc et al., 2018) which directly renders the continuous voxel grid generated by the 3D generative model.
우리 방법의 핵심은 3D 생성 모델에 의해 생성 된 연속 복셀 그리드를 직접 렌더링하는 신경 렌더링 (Nguyen-Phuoc et al., 2018)의 최근 성공을 기반으로 프록시 신경 렌더러를 도입하는 것입니다.
It addresses the two challenges of the non-differentiability of the off-the-shelf render as follows:
다음과 같이 기성품 렌더링의 비 차별성이라는 두 가지 문제를 해결합니다.
Differentiate through the Neural Renderer: 신경 렌더러를 통한 차별화 :
The proxy neural renderer is trained to match the rendering output of the off-the-shelf renderer given a 3D mesh input.
프록시 신경 렌더러는 3D 메시 입력이 주어진 경우 기성품 렌더러의 렌더링 출력과 일치하도록 훈련되었습니다
This allows back-propagation of the gradient from the GAN discriminator through the neural renderer to the 3D generative model, enabling training using gradient descent.
이를 통해 GAN 판별 기에서 신경 렌더러를 통해 3D 생성 모델로 기울기를 역 전파 할 수 있으므로 기울기 하강을 사용하여 훈련 할 수 있습니다.
Discriminator Output Matching: 판별기 출력 일치 :
In order to differentiate through the voxel sampling step we also train the proxy neural renderer using a novel loss function which we call discriminator output matching.
복셀 샘플링 단계를 통해 구별하기 위해 판별 기 출력 일치라고하는 새로운 손실 함수를 사용하여 프록시 신경 렌더러를 훈련시킵니다.
This accounts for the fact that the neural renderer can only be trained to match the off-the-shelf renderer for binary inputs, which leaves it free to generate arbitrary outputs for the (typically) non-binary voxel grids created by the generator.
이것은 신경 렌더러가 바이너리 입력에 대해 기성품 렌더러와 일치하도록 훈련 될 수 있다는 사실을 설명합니다. 이로 인해 생성기에 의해 생성 된 (일반적으로) 바이너리가 아닌 복셀 그리드에 대해 임의의 출력을 생성 할 수 있습니다.
We constrain this by computing the discriminator loss of an image rendered by the neural renderer when passed through the discriminator.
판별기를 통과 할 때 신경 렌더러가 렌더링 한 이미지의 판별 기 손실을 계산하여 이를 제한합니다
This loss is matched to the average loss achieved by randomly thresholding the volume, rendering the now binary voxels with the off-the-shelf renderer, and passing the resulting image through the discriminator.
이 손실은 볼륨을 무작위로 임계 값을 지정하고, 기성품 렌더러로 현재 바이너리 복셀을 렌더링하고, 결과 이미지를 판별기를 통해 전달하여 얻은 평균 손실과 일치합니다.
This addresses the instance-level non-differentiability issue and instead targets the differentiable loss defined on the population of generated discrete 3D shapes, forcing the neural renderer to generate images which represent the continuous voxel grids as smoothly interpolation between the binary choice from the perspective of the discriminator.
이것은 인스턴스 수준의 비 미분 성 문제를 해결하고 대신 생성 된 이산 3D 모양의 모집단에 정의 된 미분 가능한 손실을 목표로하여 신경 렌더러가 연속적인 복셀 그리드를 나타내는 이미지를 생성하도록 강제합니다. 판별 자.
We evaluate our model on a variety of synthetic image data sets generated from 3D models in ShapeNet (Chang et al., 2015) as well as the natural image dataset of Chanterelle mushrooms introduced in Henzler et al. (2019), and show that our model generates 3D meshes whose renders generate improved 2D FID scores compared to both Henzler et al. (2019) and a 2D GAN baseline.
우리는 ShapeNet (Chang et al., 2015)의 3D 모델에서 생성 된 다양한 합성 이미지 데이터 세트와 Henzler et al.에 소개 된 Chanterelle 버섯의 자연 이미지 데이터 세트에서 모델을 평가합니다. (2019), 그리고 우리 모델이 Henzler et al.에 비해 향상된 2D FID 점수를 생성하는 3D 메시를 생성한다는 것을 보여줍니다. (2019) 및 2D GAN 기준선.
2. Related Work
Geometry Based Approaches (or 3D Reconstruction): 기하학 기반 접근 (또는 3D 재구성) :
Reconstructing the underlying 3D scene from only 2D images has been one of the long-standing goals of computer vision.
2D 이미지만으로 기본 3D 장면을 재구성하는 것은 컴퓨터 비전의 오랜 목표 중 하나였습니다.
Classical work in this area has focused on geometry based approaches in the single instanced setting where the goal was only to reconstruct a single 3D object or scene depicted in one or more 2D images (Bleyer et al., 2011; De Bonet & Viola, 1999; Broadhurst et al., 2001; Galliani et al., 2015; Kutulakos & Seitz, 2000; Prock & Dyer, 1998; Schonberger et al. ¨ , 2016; Seitz et al., 2006; Seitz & Dyer, 1999).
이 영역의 고전적인 작업은 하나 이상의 2D 이미지에 묘사 된 단일 3D 개체 또는 장면을 재구성하는 것이 목표 인 단일 인스턴스 설정에서 기하학 기반 접근 방식에 초점을 맞추 었습니다 (Bleyer et al., 2011; De Bonet & Viola, 1999) ; Broadhurst et al., 2001; Galliani et al., 2015; Kutulakos & Seitz, 2000; Prock & Dyer, 1998; Schonberger et al. ¨, 2016; Seitz et al., 2006; Seitz & Dyer, 1999).
This early work was not learning based, however, and so was unable to reconstruct any surfaces which do not appear in the image(s).
그러나 이 초기 작업은 학습 기반이 아니므로 이미지에 나타나지 않는 표면을 재구성 할 수 없었습니다.
Learning to Generate from 3D Supervision: 3D 감독에서 생성하는 방법 학습 :
Learningbased 3D reconstruction techniques use a training set of samples to learn a distribution over object shapes.
학습 기반 3D 재구성 기술은 학습 샘플 세트를 사용하여 물체 모양에 대한 분포를 학습합니다.
Much past work has focused on the simplest learning setting in which we have access to full 3D supervision.
과거의 많은 연구는 우리가 완전한 3D 감독에 접근 할 수있는 가장 단순한 학습 환경에 초점을 맞추 었습니다.
This includes work on generating voxels (Brock et al., 2016; Choy et al., 2016; Riegler et al., 2017; Wu et al., 2016; Xie et al., 2019), generating point-clouds (Achlioptas et al., 2018; Fan et al., 2017; Jiang et al., 2018; Yang et al., 2019; Achlioptas et al., 2018; Li et al., 2018), generating meshes (Groueix et al., 2018; Pan et al., 2019; Wang et al., 2018) and generating implicit representations (Atzmon et al., 2019; Chen & Zhang, 2019; Genova et al., 2019; Huang et al., 2018; Mescheder et al., 2019; Michalkiewicz et al., 2019; Park et al., 2019; Saito et al., 2019; Xu et al., 2019).
여기에는 복셀 생성 작 (Brock et al., 2016; Choy et al., 2016; Riegler et al., 2017; Wu et al., 2016; Xie et al., 2019), 점 구름 생성 (Achlioptas et al., 2019)이 포함됩니다. al., 2018; Fan et al., 2017; Jiang et al., 2018; Yang et al., 2019; Achlioptas et al., 2018; Li et al., 2018), 메쉬 생성 (Groueix et al., 2018 ; Pan et al., 2019; Wang et al., 2018) 및 암시 적 표현 생성 (Atzmon et al., 2019; Chen & Zhang, 2019; Genova et al., 2019; Huang et al., 2018; Mescheder et al. ., 2019; Michalkiewicz et al., 2019; Park et al., 2019; Saito et al., 2019; Xu et al., 2019).
Creating 3D training data is much more expensive, however, because it requires either skilled artists or a specialized capture setup.
그러나 3D 교육 데이터를 생성하려면 숙련 된 아티스트 나 전문 캡처 설정이 필요하기 때문에 훨씬 더 비쌉니다.
So in contrast to all of this work we focus on learning only from unstructured 2D image data which is more readily available and cheaper to obtain.
따라서이 모든 작업과는 대조적으로, 우리는 더 쉽게 구할 수 있고 더 저렴하게 얻을 수있는 구조화되지 않은 2D 이미지 데이터에서만 학습하는 데 중점을 둡니다.
Learning to Generate from 2D Supervision: 2D 감독에서 생성하는 방법 배우기 :
Past work on learning to generate 3D shapes by training on only 2D images has mostly focused on differentiable renderers.
2D 이미지 만 학습하여 3D 모양을 생성하는 방법을 배우는 과거 작업은 주로 차별화 가능한 렌더러에 초점을 맞추 었습니다.
We can categorize this work based on the representation used.
사용 된 표현에 따라이 작업을 분류 할 수 있습니다.
Mesh techniques (Kanazawa et al., 2018; Chen & Zhang, 2019; Genova et al., 2018; Henderson & Ferrari, 2019) are based on deforming a single template mesh or a small number of pieces (Henderson & Ferrari, 2019), while Loper & Black (2014) and Palazzi et al. (2018) use only a lowdimensional pose representation, so neither is amenable to generating arbitrary topologies.
메시 기술 (Kanazawa et al., 2018; Chen & Zhang, 2019; Genova et al., 2018; Henderson & Ferrari, 2019)은 단일 템플릿 메시 또는 적은 수의 조각을 변형하는 것을 기반으로합니다 (Henderson & Ferrari, 2019). , Loper & Black (2014) 및 Palazzi et al. (2018)은 저 차원 포즈 표현 만 사용하므로 임의의 토폴로지를 생성 할 수 없습니다.
Concurrent work on implicit models (Niemeyer et al., 2019; Liu et al., 2019) can directly learn an implicit model from 2D images without ever expanding to another representation, but these methods rely on having camera intrinsics for each image, which is usually unavailable with 2D image data. Our work instead focuses on working with unannotated 2D image data.
암시 적 모델에 대한 동시 작업 (Niemeyer et al., 2019; Liu et al., 2019)은 다른 표현으로 확장하지 않고 2D 이미지에서 암시 적 모델을 직접 학습 할 수 있지만 이러한 방법은 각 이미지에 대한 카메라 내장 함수를 사용하는 데 의존합니다. 일반적으로 2D 이미지 데이터에는 사용할 수 없습니다. 대신 우리의 작업은 주석이없는 2D 이미지 데이터 작업에 중점을 둡니다.
The closet work to ours uses voxel representations (Gadelha et al., 2017; Henzler et al., 2019).
우리의 옷장 작업은 복셀 표현을 사용합니다 (Gadelha et al., 2017; Henzler et al., 2019).
Voxels can represent arbitrary topologies and can easily be converted to a mesh using the marching cubes algorithm. Furthermore, although it is not a focus of this paper, past work has shown that the voxel representation can be scaled to relatively high resolutions through the use of sparse representations (Riegler et al., 2017).Gadelha et al. (2017) employs a visual hull based differential renderer that only considers a smoothed version of the object silhouette, while Henzler et al. (2019) relies on a very simple emission-absorption based lighting model.
복셀은 임의의 토폴로지를 나타낼 수 있으며 행진 큐브 알고리즘을 사용하여 쉽게 메시로 변환 할 수 있습니다. 또한이 논문의 초점은 아니지만 과거의 연구는 희소 표현을 사용하여 복셀 표현이 상대적으로 높은 해상도로 확장 될 수 있음을 보여주었습니다 (Riegler et al., 2017) .Gadelha et al. (2017)은 객체 실루엣의 부드러운 버전 만 고려하는 시각적 헐 기반 차동 렌더러를 사용하는 반면 Henzler et al. (2019)는 매우 간단한 방출 흡수 기반 조명 모델에 의존합니다.
As we show in the results, both of these models struggle to take advantage of lighting and shading information which reveals surface differences, and so they struggle to correctly represent concavities like bathtubs and sofas.
결과에서 볼 수 있듯이 두 모델 모두 표면 차이를 나타내는 조명 및 음영 정보를 활용하는 데 어려움을 겪고 있으므로 욕조 및 소파와 같은 오목한 부분을 정확하게 표현하는 데 어려움을 겪습니다.
In contrast to all previous work, our goal is to be able to take advantage of fully-featured industrial renderers which included many advanced shading, lighting and texturing features.
이전의 모든 작업과 달리 우리의 목표는 많은 고급 셰이딩, 조명 및 텍스처링 기능을 포함하는 모든 기능을 갖춘 산업용 렌더러를 활용할 수있는 것입니다.
However these renderers are typically not built to be differentiable, which is challenging to work with in machine learning pipelines.
그러나 이러한 렌더러는 일반적으로 차별화 할 수 있도록 제작되지 않았으므로 기계 학습 파이프 라인에서 작업하기가 어렵습니다.
The only work we are aware of which uses an off-the-shelf render for 3D generation with 2D supervision is Rezende et al. (2016).
2D 감독이있는 3D 생성을 위해 기성 렌더링을 사용하는 유일한 작업은 Rezende et al입니다. (2016).
In order to differentiate through the rendering step they use the REINFORCE gradients (Williams, 1992).
렌더링 단계를 통해 차별화하기 위해 REINFORCE 그라디언트를 사용합니다 (Williams, 1992).
However, REINFORCE scales very poorly with number of input dimensions,allowing them to show results on simple meshes only.
그러나 REINFORCE는 입력 차원의 수에 따라 크기가 매우 약하여 단순한 메시에서만 결과를 표시 할 수 있습니다.
In contrast, our method scales much better since dense gradient information can flow through the proxy neural renderer.
대조적으로, 우리의 방법은 조밀 한 그라디언트 정보가 프록시 신경 렌더러를 통해 흐를 수 있기 때문에 훨씬 더 잘 확장됩니다.
Neural Rendering 신경 렌더링
With the success of 2D generative models, it has recently become popular to skip the generation of an explicit 3D representation Neural Rendering techniques focus only on simulating 3D by using a neural network to generate 2D images directly from a latent space with control over the camera angle (Eslami et al., 2018; Nguyen-Phuoc et al., 2019; Sitzmann et al., 2019) and properties of objects in the scene (Liao et al., 2019).
2D 생성 모델의 성공으로 인해 최근에는 명시 적 3D 표현 생성을 건너 뛰는 것이 인기를 얻었습니다. 신경 렌더링 기술은 신경망을 사용하여 3D 시뮬레이션에만 초점을 맞추고 있습니다. 카메라 각도 (Eslami et al., 2018; Nguyen-Phuoc et al., 2019; Sitzmann et al., 2019) 및 장면에있는 물체의 속성 (Liao et al., 2019).
In contrast, our goal is to generate the 3D shape itself, not merely controllable 2D renders of it.
대조적으로, 우리의 목표는 단순히 제어 가능한 2D 렌더링이 아닌 3D 모양 자체를 생성하는 것입니다.
This is important in circumstances like gaming where the underingly rendering framework is may be fixed, or where we need direct access to the underlying 3D shape itself, such as in CAD/CAM applications.
이는 기본 렌더링 프레임 워크가 고정되어 있거나 CAD / CAM 응용 프로그램과 같이 기본 3D 모양 자체에 직접 액세스해야하는 게임과 같은 상황에서 중요합니다.
We do however build directly on RenderNet Nguyen-Phuoc et al. (2018) which is a neural network that can be trained to generate 2D images from 3D shapes by matching the output of an off-the-shelf renderer.
그러나 RenderNet Nguyen-Phuoc 등에서 직접 빌드합니다. (2018) 기성 렌더러의 출력을 일치시켜 3D 모양에서 2D 이미지를 생성하도록 훈련 할 수있는 신경망입니다.
Differentiating Through Discrete Decisions 이산적 결정을 통한 차별화 문제
Recent work has looked at the problem of differentiating through discrete decisions.
이산 적 의사 결정을 통한 차별화 최근 연구는 이산 적 의사 결정을 통한 차별화 문제를 살펴 보았습니다.
Maddison et al. (2017) and Jang et al. (2017) consider smoothing over the discrete decision and Tucker et al. (2017) extends this with sampling to debias the gradient estimates.
Maddison et al. (2017) 및 Jang et al. (2017) 이산 결정에 대한 평활화 고려 및 Tucker et al. (2017)은이를 샘플링으로 확장하여 기울기 추정치를 편향하지 않게합니다.
In section 3 we discuss why these methods cannot be applied in our setting. Liao et al. (2018) discusses why we cannot simply differentiate through the Marching Cubes algorithm, and also suggests using continuous voxel values to generate a probability distribution over 3D shapes.
섹션 3에서는 이러한 방법을 우리 환경에 적용 할 수없는 이유를 논의합니다. Liao et al. (2018)은 Marching Cubes 알고리즘을 통해 단순히 차별화 할 수없는 이유를 논의하고 연속 복셀 값을 사용하여 3D 모양에 대한 확률 분포를 생성 할 것을 제안합니다.
However in their setting they have ground truth 3D data so they directly use these probabilities to compute a loss and do not have to differentiate through the voxel sampling process as we do when training from only 2D data.
그러나 설정에서 그들은 지상 진실 3D 데이터를 가지고 있으므로 이러한 확률을 직접 사용하여 손실을 계산하고 2D 데이터에서만 훈련 할 때처럼 복셀 샘플링 프로세스를 통해 구별 할 필요가 없습니다.
3. IG-GAN
We wish to train a generative model for 3D shapes such that rendering these shapes with an off-the-shelf renderer generates images that match the distribution of 2D training image dataset.
기성 렌더러로 이러한 모양을 렌더링하면 2D 훈련 이미지 데이터 세트의 분포와 일치하는 이미지가 생성되도록 3D 모양에 대한 생성 모델을 훈련하려고합니다.
The generative model Gθ(·) takes in a random input vector z ∼ p(z) and generate a continuous voxel representation of the 3D object xc = Gθ(z).
생성 모델 Gθ (·)는 임의의 입력 벡터 z ∼ p (z)를 취하여 3D 객체 xc = Gθ (z)의 연속 복셀 표현을 생성합니다.
Then the voxels xc are fed to a non-differentiable renderering process, where the voxels first are thresholded to discrete values xd ∼ p(xd|xc), then the discrete-value voxels xd are renderred using the off-the-shelf renderer (e.g. OpenGL) y = Rd(xd). In summary, this generating process samples a 2D image y ∼ pG(y) as follows: (1)
그런 다음 복셀 xc는 미분 할 수없는 렌더링 프로세스에 공급됩니다. 여기서 복셀은 먼저 이산 값 xd ~ p (xd | xc)로 임계 값을 설정 한 다음 이산 값 복셀 xd는 기성품 렌더러를 사용하여 렌더링됩니다 ( 예 : OpenGL) y = Rd (xd). 요약하면,이 생성 프로세스는 2D 이미지 y ∼ pG (y)를 다음과 같이 샘플링합니다. (1)
Like many GAN algorithms, a discriminator Dφ is then trained on both images sampled from the 2D data distribution pD(y) and generated images sampled from pG(y).
많은 GAN 알고리즘과 마찬가지로 판별 기 Dφ는 2D 데이터 분포 pD (y)에서 샘플링 된 이미지와 pG (y)에서 샘플링 된 생성 된 이미지 모두에서 훈련됩니다.
We consider maximising e.g. the classification-based GAN cross-entropy objective when training the discriminator (2)
예를 들어 최대화를 고려합니다. 판별자를 훈련 할 때 분류 기반 GAN 교차 엔트로피 목표 (2)
A typical GAN algorithm trains the generator Gθ(·) by maximising a loss defined by the discriminator, e.g. For 2D image GAN training, optimisation is usually done by gradient descent, where the gradient is computed via the reparameterisation trick (Salimans et al., 2013; Kingma & Welling, 2014; Rezende et al., 2014). Unfortunately, the reparameterisation trick is not applicable in our setting since the generation process (1) involves sampling discrete variable xd thus non-differentiable. An initial idea to address this issue would be to use the REINFORCE gradient estimator (Williams, 1992) for the generative model loss (3): with SG(xc) = ∇θ log pG(xc) short-hands the score function of pG(xc).
일반적인 GAN 알고리즘은 판별 자에 의해 정의 된 손실을 최대화하여 생성기 Gθ (·)를 훈련시킵니다. 2D 이미지 GAN 훈련의 경우 최적화는 일반적으로 경사 하강 법으로 수행되며, 여기서 경사는 재 매개 변수화 트릭을 통해 계산됩니다 (Salimans et al., 2013; Kingma & Welling, 2014; Rezende et al., 2014). 불행히도, 생성 프로세스 (1)는 이산 변수 xd 샘플링을 포함하므로 미분 할 수 없기 때문에 재 매개 변수화 트릭은 우리 설정에 적용 할 수 없습니다. 이 문제를 해결하기위한 초기 아이디어는 생성 모델 손실 (3)에 대해 REINFORCE 기울기 추정기 (Williams, 1992)를 사용하는 것입니다. (xc).
Here the expectation term Ep(xd|xc) [log Dφ(Rd(xd))] is often called the “reward” of generating xc ∼ pG(xc).
여기서 기대 항 Ep (xd | xc) [log Dφ (Rd (xd))]는 xc ∼ pG (xc) 생성의 "보상"이라고도합니다.
Intuitively, the gradient ascent update using (4) would encourage the generator to generate xc with high reward, thus fooling the discriminator.
직관적으로 (4)를 사용하는 경사 상승 업데이트는 생성기가 높은 보상으로 xc를 생성하도록 장려하여 판별자를 속일 수 있습니다.
But again REINFORCE is not directly applicable as the score function SG(xc) is intractable (the distribution pG(xc) is implicitly defined by neural network transformations of noise variables).
그러나 점수 함수 SG (xc)는 다루기 어렵 기 때문에 REINFORCE는 직접 적용 할 수 없습니다 (분포 pG (xc)는 잡음 변수의 신경망 변환에 의해 암시 적으로 정의 됨).
A second attempt for gradient approximation would replace the discrete sampling step xd ∼ p(xd|xc) with continuous value approximations (Jang et al., 2017; Maddison et al., 2017), with the hope that this enables the usage of the reparameterisation trick.
기울기 근사에 대한 두 번째 시도는 이산 샘플링 단계 xd ∼ p (xd | xc)를 연속 값 근사값으로 대체 할 것입니다 (Jang et al., 2017; Maddison et al., 2017). 재 매개 변수화 트릭.
However, the off-the-shelf renderer is treated as black-box so we do not assume the back-propagation mechanism is implemented there.
그러나 기성품 렌더러는 블랙 박스로 취급되므로 역 전파 메커니즘이 구현되어 있다고 가정하지 않습니다.
Even worse, the discrete variable sampling step is necessary as offthe-shelf renderer can only work with discrete voxel maps.
더 나쁜 것은 기성 렌더러가 이산 복셀 맵에서만 작동 할 수 있으므로 이산 변수 샘플링 단계가 필요하다는 것입니다.
Therefore the instance-level gradient is not defined on the discrete voxel grid, and gradient approximation methods based on continuous relaxations cannot be applied neither.
따라서 인스턴스 수준의 기울기는 이산 복셀 그리드에 정의되지 않으며 연속 완화를 기반으로하는 기울기 근사 방법도 적용 할 수 없습니다.
To address the non-differentiability issues, we introduce a proxy neural renderer Rϕ(·) as a pathway for backpropagation in generator training. In detail, we define a neural renderer y˜ = Rϕ(xc) which directly renders the continuous voxel representation xc into the 2D image y˜.
비미분성 문제를 해결하기 위해 생성기 훈련에서 역 전파 경로로 프록시 신경 렌더러 Rϕ (·)를 소개합니다. 구체적으로, 연속 복셀 표현 xc를 2D 이미지 y ~로 직접 렌더링하는 신경 렌더러 y ~ = Rϕ (xc)를 정의합니다.
To encourage realistic renderings that are closed to the results from the off-the-shelf renderer, the neural renderer is trained to minimise the `2 error of rendering on discrete voxels: (5)
기성품 렌더러의 결과에 가까운 사실적인 렌더링을 장려하기 위해 신경 렌더러는 개별 복셀 렌더링의 '2 오류'를 최소화하도록 훈련되었습니다. (5)
If the neural renderer matches closely with the off-the-shelf renderer on rendering discrete voxel grids, then we can replace the non-differentiable renderer Rd(·) in (4) with the neural renderer Rϕ(·):
신경 렌더러가 개별 복셀 그리드를 렌더링 할 때 상용 렌더러와 밀접하게 일치하는 경우 (4)의 미분 할 수없는 렌더러 Rd (·)를 신경 렌더러 Rϕ (·)로 대체 할 수 있습니다.
The intractability of SG(xc) remains to be addressed.
SG (xc)의 난치성 문제는 해결해야합니다.
Notice that the neural renderer can take in both discrete and continuous voxel grids as inputs, therefore the instance-level gradient ∇x log Dφ(Rϕ(x)) is welldefined and computable for both x = xd and x =xc.
신경 렌더러는 이산 및 연속 복셀 그리드를 모두 입력으로 사용할 수 있으므로 인스턴스 수준 기울기 ∇x log Dφ (Rϕ (x))는 x = xd 및 x = xc 모두에 대해 잘 정의되고 계산 가능합니다.
This motivates the “reward approximation” approach Ep(xd|xc)[log Dφ(Rϕ(xd))] ≈ log Dφ(Rϕ(xc)) which sidesteps the intractability of SG(xc) via the reparameterisation trick:
이는 "보상 근사"접근 방식 Ep (xd | xc) [log Dφ (Rϕ (xd))] ≈ log Dφ (Rϕ (xc))에 동기를 부여하여 재 매개 변수화 트릭을 통해 SG (xc)의 난치성을 회피합니다.
The reward approximation quality is key to the performance of generative model, as gradient ascent using (7) would encourage the generator to create continuous voxel grids xc for which the neural renderer would return realistic rendering results.
보상 근사 품질은 생성 모델의 성능에 핵심입니다. (7)을 사용하는 기울기 상승은 생성자가 신경 렌더러가 사실적인 렌더링 결과를 반환하는 연속 복셀 그리드 xc를 생성하도록 장려하기 때문입니다.
Notice the neural renderer is free to render arbitrary outcomes for continuous voxel grids if it is only trained by minimising L2(ϕ) on discrete voxel grids.
신경 렌더러는 이산 복셀 그리드에서 L2 (ϕ)를 최소화하여 훈련 된 경우에만 연속 복셀 그리드에 대해 임의의 결과를 렌더링 할 수 있습니다.
Therefore xc is not required to resemble the desired 3D shape in order to produce satisfactory neural rendering results.
따라서 xc는 만족스러운 신경 렌더링 결과를 생성하기 위해 원하는 3D 모양을 닮을 필요가 없습니다.
Since the 3D generative model Gθ(·) typically creates non-discrete voxel grids, the generated 2D images using the off-the-shelf renderer will match poorly to the training images.
3D 생성 모델 Gθ (·)는 일반적으로 비 이산 복셀 그리드를 생성하기 때문에 기성품 렌더러를 사용하여 생성 된 2D 이미지는 훈련 이미지와 제대로 일치하지 않습니다.
We address this issue by training the neural renderer with a novel loss function which we call discriminator output matching (DOM).
우리는 판별 기 출력 매칭 (DOM)이라고 부르는 새로운 손실 함수로 신경 렌더러를 훈련하여이 문제를 해결합니다.
Define F(·) = log Dφ(·), the DOM loss is (8) Using neural networks of enough capacity, the optimal neural renderer achieves perfect reward approximation, i.e. log Dφ(Rϕ∗ (xc)) = Ep(xd|xc) [log Dφ(Rd(xd))]. This approach forces the neural renderer to preserve the population statistics of the discrete rendered images defined by the discriminator.
정의 F (·) = log Dφ (·), DOM 손실은 (8) 충분한 용량의 신경망을 사용하여 최적의 신경 렌더러가 완벽한 보상 근사를 달성합니다. 즉, log Dφ (Rϕ ∗ (xc)) = Ep (xd | xc) [log Dφ (Rd (xd))]. 이 접근 방식은 신경 렌더러가 판별 자에 의해 정의 된 개별 렌더링 된 이미지의 모집단 통계를 보존하도록합니다.
Therefore to fool the discriminator, the 3D generative model must generate continuous voxel grids which correspond to meaningful representations of the underlying 3D shapes.
따라서 판별자를 속이기 위해 3D 생성 모델은 기본 3D 모양의 의미있는 표현에 해당하는 연속 복셀 그리드를 생성해야합니다.
In practice the neural renderer is trained using a combination of the two loss functions (9) We name the proposed proposed method inverse graphics GAN (IG-GAN), as the neural renderer in back-propagation time “inverts” the off-the-shelf renderer and provide useful gradients for the 3D generative model training.
실제로 신경 렌더러는 두 가지 손실 함수의 조합을 사용하여 훈련됩니다. (9) 제안 된 방법을 역 전파 시간의 신경 렌더러가 오프-더-전파를 "반전"하므로 제안 된 방법을 역 그래픽 GAN (IG-GAN)이라고합니다. 선반 렌더러를 사용하고 3D 생성 모델 학습에 유용한 그라디언트를 제공합니다.
The model is also visualised in Figure 2, which is trained in an endto-end fashion.
이 모델은 그림 2에서도 시각화되며, 이는 종단 간 방식으로 학습됩니다.
To speed up the generative model training, the neural renderer can be pretrained on a generic data set, like tables or cubes, that can differ significantly from the 2D images that the generative model is eventually trained on.
생성 모델 학습의 속도를 높이기 위해 신경 렌더러는 생성 모델이 최종적으로 학습되는 2D 이미지와 크게 다를 수있는 테이블 또는 큐브와 같은 일반 데이터 세트에서 사전 학습 될 수 있습니다.
4. Experimental Setup
4.1. Implementation Details
Off-the-shelf Renderer 기성품 렌더러
Our rendering engine is based on the Pyrender (Matl) which is built on top of OpenGL.
우리의 렌더링 엔진은 OpenGL 위에 구축 된 Pyrender (Matl)를 기반으로합니다.
Architecture 아키텍처
We employ a 3D convolutional GAN architecture for the generator (Wu et al., 2016) with a 643 voxel resolution.
우리는 643 복셀 해상도의 생성기 (Wu et al., 2016)에 3D 컨볼 루션 GAN 아키텍처를 사용합니다.
To incorporate the viewpoint, the rigid body transformation embeds the 643 grid into a 1283 resolution.
관점을 통합하기 위해 강체 변환은 643 그리드를 1283 해상도에 포함합니다.
We render the volumes with a RenderNet (Nguyen-Phuocet al., 2018) architecture, with the modification of using 2 residual blocks in 3D and 4 residual blocks in 2D only.
우리는 RenderNet (Nguyen-Phuocet al., 2018) 아키텍처로 볼륨을 렌더링하며, 3D에서 2 개의 잔여 블록을 사용하고 2D에서만 4 개의 잔여 블록을 사용하도록 수정했습니다
The discriminator architecture follows the design in DCGAN (Radford et al., 2016), taking images of 1282 resolution.
판별기 아키텍처는 DCGAN (Radford et al., 2016)의 설계를 따르며 1282 해상도의 이미지를 촬영합니다.
Additionally, we add spectral normalization to the discriminator (Miyato et al., 2018) to stablize training.
또한, 우리는 훈련을 안정화하기 위해 판별 자 (Miyato et al., 2018)에 스펙트럼 정규화를 추가합니다.
Hyperparameters 하이퍼 파라미터
We employ a 1:1:1 updating scheme for generator, discriminator and the neural renderer, using learning rates of 2e−5 for the neural renderer and 2e−4 for both generator and discriminator.
우리는 생성기, 판별 기 및 신경 렌더러에 대해 1 : 1 : 1 업데이트 체계를 사용하며, 신경 렌더러에 대해 2e-5, 생성기와 판별기에 모두 2e-4의 학습률을 사용합니다.
The Discriminator Output Matching loss is weighted by λ = 100 over the L2 loss, as in (9).
판별기 출력 정합 손실은 (9)에서와 같이 L2 손실에 대해 λ = 100으로 가중치가 부여됩니다.
We found that training was stable against changes in λ and extensive tuning was not necessary.
우리는 훈련이 λ의 변화에 대해 안정적이며 광범위한 조정이 필요하지 않음을 발견했습니다.
The binerization distribution p(xd|xc) was chosen as a global thresholding, with the threshold being distributed uniformly in [0, 1].
이진화 분포 p (xd | xc)는 전역 임계 값으로 선택되었으며 임계 값은 [0, 1]에 균일하게 분포되어 있습니다.
4.2. Datasets
We evaluate our model on a variety of synthetic datasets generated from 3D models in the ShapeNet (Chang et al., 2015) database as well as on a real data set consisting of chanterelle mushrooms, introduced in (Henzler et al., 2019).
우리는 ShapeNet (Chang et al., 2015) 데이터베이스의 3D 모델에서 생성 된 다양한 합성 데이터 세트와 (Henzler et al., 2019)에 소개 된 살구 버섯으로 구성된 실제 데이터 세트에서 모델을 평가합니다.
We synthesize images from three different categories of ShapeNet objects, Chairs, Couches and Bathtubs.
ShapeNet 객체, 의자, 소파 및 욕조의 세 가지 범주에서 이미지를 합성합니다.
For each of these categories, we generate three different datasets:
500:
이러한 각 범주에 대해 세 가지 데이터 세트를 생성합니다. 500 :
A very small dataset consisting of 500 images taken from 500 different objects in the corresponding data set, each rendered from a single viewpoint.
해당 데이터 세트에있는 500 개의 서로 다른 개체에서 가져온 500 개의 이미지로 구성된 매우 작은 데이터 세트로, 각각 단일 시점에서 렌더링됩니다.
One per Model: 모델 당 하나 :
A more extensive one where we sample each object in the 3D data set once from a single viewpoint for the Chairs and Couches data, and from four viewpoints for Bathtubs, due to the small number of objects in this category.
이 범주의 개체 수가 적기 때문에 의자 및 소파 데이터에 대한 단일 관점과 욕조에 대한 4 개의 관점에서 3D 데이터 집합의 각 개체를 한 번 샘플링하는 더 광범위한 항목입니다.
This results in data sets containing 6777 chairs, 3173 couches and 3424 images of bathtubs.
그 결과 6777 개의 의자, 3173 개의 소파 및 3424 개의 욕조 이미지가 포함 된 데이터 세트가 생성됩니다.
Unlimited: Finally, we render each objects from a different viewpoint throughout each training epoch.
무제한 : 마지막으로 각 교육 시대에 걸쳐 서로 다른 관점에서 각 개체를 렌더링합니다.
This leads to a theoretically unlimited data set of images.
이것은 이론적으로 무제한의 이미지 데이터 세트로 이어집니다.
However, all images are generated from the limited number of objects contained in the corresponding ShapeNet category.
그러나 모든 이미지는 해당 ShapeNet 범주에 포함 된 제한된 수의 개체에서 생성됩니다.
In order to render the ShapeNet volumes, we light them from two beam light sources that illuminate the object from 45◦ below the camera and 45◦ to its left and right.
ShapeNet 볼륨을 렌더링하기 위해 카메라 아래 45 °, 왼쪽 및 오른쪽 45 °에서 물체를 비추는 두 개의 빔 광원에서 조명합니다.
The camera always points directly at the object, and we uniformly sample from all 360◦ of rotation, with an elevation between 15 and 60 degrees for bathtubs and couches and -30 and 60 degrees for chairs.
카메라는 항상 물체를 직접 가리키며 360도 회전에서 균일하게 샘플링합니다. 욕조와 소파는 15 ~ 60도, 의자는 -30 ~ 60 도입니다.
The limitation on elevation angle is chosen to generate a dataset that is as realistic as possible, given the object category.
고도 각에 대한 제한은 객체 범주가 주어지면 가능한 한 현실적인 데이터 세트를 생성하기 위해 선택됩니다.
LVP:
We also consider a limited viewpoint (LVP) setting for the chairs dataset where the azimuth rotation is limited to 60◦ in each direction from center, and elevation is limited to be between 15 ad 60 degrees.
또한 방위각 회전이 중심에서 각 방향으로 60 °로 제한되고 고도가 15도에서 60도 사이로 제한되는 의자 데이터 세트에 대해 제한된 시점 (LVP) 설정을 고려합니다.
This setting is meant to further simulate the viewpoint bias observed in natural photographs.
이 설정은 자연 사진에서 관찰되는 관점 편향을 더욱 시뮬레이션하기위한 것입니다.
Chanterelle Mushrooms:
We prepare the Chanterelle data by cropping and resizing the images to 1282 resolution and by unifying the mean intensity in an additive way.
이미지를 1282 해상도로 자르고 크기를 조정하고 평균 강도를 추가 방식으로 통합하여 Chanterelle 데이터를 준비합니다.
Note that the background of the natural images has been masked out in the original open-sourced dataset.
자연 이미지의 배경은 원래 오픈 소스 데이터 세트에서 마스킹되었습니다.
4.3. Baselines
We compare to the following state-of-the-art methods for learning 3D voxel generative models from 2D data:
우리는 2D 데이터에서 3D 복셀 생성 모델을 학습하기위한 다음과 같은 최첨단 방법과 비교합니다.
Visual Hull:
This is the model from Gadelha et al. (2017) which learned from a smoothed version of object silhouettes.
이것은 Gadelha et al.의 모델입니다. (2017) 객체 실루엣의 매끄러운 버전에서 배웠습니다.
Absorbtion Only: 흡수 만 해당 :
This is the model from Henzler et al. (2019) which assumes voxels absorb light based on their fraction of occupancy.
Henzler et al.의 모델입니다. (2019) 복셀이 점유 비율에 따라 빛을 흡수한다고 가정합니다.
2D-DCGAN:
For comparison we also show results from a DCGAN (Radford et al., 2016) trained on 2D images only.
비교를 위해 2D 이미지에서만 훈련 된 DCGAN (Radford et al., 2016)의 결과도 표시합니다.
While this baseline is solving a different task and is not able to produce any 3D objects, it allows a comparison of the generated image quality.
이 기준선은 다른 작업을 해결하고 3D 개체를 생성 할 수 없지만 생성 된 이미지 품질을 비교할 수 있습니다.
We show results from our reimplementation of these models because we found Gadelha et al. (2017) performed better by using recently developed GAN stabalization techniques, i.e. spectral normalization (Miyato et al., 2018), and the code for Henzler et al. (2019) was not available at the time we ran our original results. A discussion of the EmissionAbsorption model also proposed in Henzler et al. (2019) is provided in the supplemental material 1.
최근에 개발 된 GAN 안정화 기술 (예 : 스펙트럼 정규화 (Miyato et al., 2018))과 Henzler et al.의 코드를 사용하여 Gadelha (2017)가 더 잘 수행되었음을 확인했기 때문에 이러한 모델을 다시 구현 한 결과를 보여줍니다. (2019)는 원래 결과를 실행했을 때 사용할 수 없었습니다. Henzler et al.에서도 제안 된 EmissionAbsorption 모델에 대한 논의. (2019)는 보충 자료 1에서 제공됩니다.
To provide the most favorable comparison for the baselines, each baseline is trained on a dataset of images synthesized from ShapeNet using the respective choice of rendering (Visual Hull or Absorbtion-Only) from the 3D objects.
기준선에 대해 가장 유리한 비교를 제공하기 위해 각 기준선은 3D 개체에서 렌더링 (Visual Hull 또는 Absorbtion-Only)의 각 선택을 사용하여 ShapeNet에서 합성 된 이미지 데이터 세트에서 훈련됩니다.
4.4. Evaluation Metrics
We chose to evaluate the quality of the generated 3D models by rendering them to 2D images and computing Frchet Inception Distances (FIDs) (Heusel et al., 2017).
생성 된 3D 모델을 2D 이미지로 렌더링하고 FID (Frchet Inception Distances)를 계산하여 생성 된 3D 모델의 품질을 평가하기로 결정했습니다 (Heusel et al., 2017).
This focuses the evaluation on the observed visual quality, preventing if from considering what the model generates in the unobserved insides of the objects.
이것은 관찰 된 시각적 품질에 대한 평가에 초점을 두어 관찰되지 않은 물체 내부에서 모델이 생성하는 것을 고려하지 않도록합니다.
All FID scores reported in the main paper use an Inception network (Szegedy et al.,2016) retrained to classify Images generated with our renderer because we found this to better align with our sense of the visual quality given the domain gap between ImageNet and our setting.
주요 논문에보고 된 모든 FID 점수는 렌더러로 생성 된 이미지를 분류하기 위해 재교육 된 Inception 네트워크 (Szegedy et al., 2016)를 사용합니다.
We have trained the Inception network to classify rendered images of the 21 largest object classes in ShapeNet, achieving 95.3% accuracy.
ImageNet과 우리 사이의 도메인 간격을 고려할 때 이것이 시각적 품질에 대한 감각과 더 잘 일치한다는 것을 알았 기 때문입니다. 환경. Inception 네트워크를 훈련시켜 ShapeNet에서 가장 큰 21 개 객체 클래스의 렌더링 된 이미지를 분류하여 95.3 %의 정확도를 달성했습니다.
In the supplemental material we show FID scores using the traditional Inception network trained on ImageNet (Deng et al., 2009), and qualitatively they are very similar.
보충 자료에서 우리는 ImageNet (Deng et al., 2009)에서 훈련 된 전통적인 Inception 네트워크를 사용하여 FID 점수를 보여 주며, 질적으로 매우 유사합니다.
5. Results
5.1. Quantitative Evaluation 정량적 평가
We can see clearly from Table 1 that our approach (IG-GAN) significantly out-performs the baselines on all dasasets.
표 1에서 우리의 접근 방식 (IG-GAN)이 모든 dasaset에서 기준선을 훨씬 능가한다는 것을 분명히 알 수 있습니다.
The largest of these gains is obtained on the data sets containing many concavities, like couches and bathtubs.
이러한 이득 중 가장 큰 것은 소파 및 욕조와 같은 오목한 부분이 많은 데이터 세트에서 얻을 수 있습니다.
Furthermore the advantage of the proposed method becomes more significant when the dataset is smaller and the viewpoint is more restrictive.
또한 제안 된 방법의 장점은 데이터 세트가 작고 관점이 더 제한적일 때 더욱 중요해집니다.
Since our method can more easily take advantage of the lighting and shading cue provided by the images, we believe it can extract more meaningful information per training sample, hence producing better results in these settings.
우리의 방법은 이미지에서 제공하는 조명 및 음영 신호를 더 쉽게 활용할 수 있으므로 훈련 샘플 당 더 의미있는 정보를 추출 할 수 있으므로 이러한 설정에서 더 나은 결과를 얻을 수 있습니다.
On the Unlimited dataset the baseline methods seem to be able to mitigate some of their disadvantage by simply seeing enough views of each training model, but still our approach generates considerably better FID scores even in this setting.
무제한 데이터 세트에서 기준 방법은 단순히 각 훈련 모델에 대한 충분한 뷰를 확인하여 단점 중 일부를 완화 할 수있는 것처럼 보이지만 여전히 우리의 접근 방식은이 설정에서도 훨씬 더 나은 FID 점수를 생성합니다.
We note that the very poor results from the 2D-DCGAN stem from computing FIDs using our retrained Inception network, which seems to easily pick up on any unrealistic artifacts generated by the GAN.
2D-DCGAN의 매우 열악한 결과는 재교육 된 Inception 네트워크를 사용하여 FID를 계산하는 데서 비롯되며 GAN에 의해 생성 된 비현실적인 아티팩트를 쉽게 포착하는 것 같습니다.
The supplemental materials show the FID scores using the standard Inception net, and while IG-GAN still outperforms the 2D-DCGAN considerably, the resulting scores are closer.
2D-DCGAN의 매우 열악한 결과는 재교육 된 Inception 네트워크를 사용하여 FID를 계산하는 데서 비롯되며 GAN에 의해 생성 된 비현실적인 아티팩트를 쉽게 포착하는 것 같습니다.
5.2. Qualitative Evaluation 질적 평가
From Figure 3 we can see that IG-GAN produces highquality samples on all three object categories.
그림 3에서 IG-GAN은 세 가지 개체 범주 모두에서 고품질 샘플을 생성하는 것을 볼 수 있습니다.
Furthermore, we can see from Figure 6 that the generated 3D shapes are superior to the baselines.
또한 그림 6에서 생성 된 3D 모양이 기준선보다 우수하다는 것을 알 수 있습니다.
This is particularly evident in the context of concave objects like bathtubs or couches.
이것은 욕조 또는 소파와 같은 오목한 물체의 맥락에서 특히 분명합니다.
Here, generative models based on visual hull or absorption rendering fail to take advantage of the shading cues needed to detect the hollow space inside the object, leading to e.g. seemingly filled bathtubs.
여기에서 시각적 선체 또는 흡수 렌더링을 기반으로 한 생성 모델은 물체 내부의 빈 공간을 감지하는 데 필요한 음영 신호를 활용하지 못해 예를 들어 겉보기에 가득 찬 욕조.
The shortcoming of the baseline models has already been noticed by Gadelha et al. (2017).
기준 모델의 단점은 Gadelha et al. (2017).
Our approach, on the other hand, successfully detects the interior structure of concave objects using the differences in light exposures between surfaces, enabling it to accurately capture concavities and hollow spaces.
반면 우리의 접근 방식은 표면 간의 빛 노출 차이를 사용하여 오목한 물체의 내부 구조를 성공적으로 감지하여 오목한 부분과 빈 공간을 정확하게 포착 할 수 있습니다.
On the chair dataset, the advantages of our proposed method are evident on flat surfaces.
의자 데이터 세트에서 제안 된 방법의 장점은 평평한 표면에서 분명합니다.
Any uneven surfaces generated by mistake are promptly detected by our discriminatorwhich can easily differences in light exposure, forcing the generator to produce clean and flat surfaces.
실수로 생성 된 고르지 않은 표면은 우리의 판별기에 의해 즉시 감지되어 빛 노출의 차이가 쉽게 발생하여 생성기가 깨끗하고 평평한 표면을 생성하도록합니다.
The baseline methods however are unable to render such impurities in a way that is evident to the discriminator, leading to generated samples with grainy and uneven surfaces.
그러나 기준 방법은 판별 자에게 분명한 방식으로 이러한 불순물을 렌더링 할 수 없으므로 입자가 많고 고르지 않은 표면이있는 샘플이 생성됩니다.
This effect is most obvious on the chairs with limited views (LVP), as shown in Figure 4.
이 효과는 그림 4에 표시된 것처럼 제한된 뷰 (LVP)가있는 의자에서 가장 분명합니다.
A large selection of randomly generated samples from all methods can be found in the supplemental material.
모든 방법에서 무작위로 생성 된 샘플의 큰 선택은 보충 자료에서 찾을 수 있습니다.
Training on Natural Images 자연 이미지 학습
Finally, we demonstrate that the proposed method is able to produce realistic samples when trained on a dataset of natural images.
마지막으로 제안 된 방법이 자연 이미지 데이터 세트에 대해 학습 될 때 사실적인 샘플을 생성 할 수 있음을 보여줍니다.
Figure 5 shows samples from a model trained on the Chanterelle mushrooms dataset from Henzler et al. (2019).
그림 5는 Henzler 등의 Chanterelle 버섯 데이터 세트에서 훈련 된 모델의 샘플을 보여줍니다. (2019).
5.3. Ablations
Discriminator output matching 판별기 출력 매칭
We study the effect of the proposed discriminator output matching (DOM) loss in various scenarios.
다양한 시나리오에서 제안 된 판별 기 출력 매칭 (DOM) 손실의 효과를 연구합니다.
In Table 2, we report the FID scores on the models trained without the DOM loss, from this comparison we see that the DOM loss plays a crucial role in learning to generate high-quality 3D objects.
표 2에서는 DOM 손실없이 훈련 된 모델에 대한 FID 점수를보고합니다.이 비교를 통해 DOM 손실이 고품질 3D 개체를 생성하는 방법을 배우는 데 중요한 역할을한다는 것을 알 수 있습니다.
In Figure 7 we can see that that the non-binary volumes sampled from the generator can be rendered to a variety of different images by OpenGL, depending on the random choice of threshold.
그림 7에서는 생성기에서 샘플링 된 비 바이너리 볼륨이 임의의 임계 값 선택에 따라 OpenGL에 의해 다양한 이미지로 렌더링 될 수 있음을 알 수 있습니다.
Without the DOM loss, the trained neural renderer simply averages over these potential outcomes, considerably smoothing the result in the process and losing information about fine structures in the volume.
DOM 손실이 없으면 훈련 된 신경 렌더러는 이러한 잠재적 결과에 대해 단순히 평균을내어 프로세스의 결과를 상당히 평활화하고 볼륨의 미세 구조에 대한 정보를 손실합니다.
This leads to weak gradients being passed to the generator, considerably deteriorating sample quality.
이로 인해 약한 기울기가 생성기로 전달되어 샘플 품질이 상당히 저하됩니다.
Another setting from Table 2 shows the discriminator trained using generated samples rendered by the neural renderer instead of OpenGL.
표 2의 또 다른 설정은 OpenGL 대신 신경 렌더러에서 렌더링 한 생성 된 샘플을 사용하여 훈련 된 판별자를 보여줍니다.
This inherently prevents the mode collapse observed in the above setting.
이것은 본질적으로 위의 설정에서 관찰 된 모드 붕괴를 방지합니다.
However, it leads to the generator being forced by the discriminator to produce binary voxel maps early on in training.
그러나, 훈련 초기에 이진 복셀 맵을 생성하도록 판별기에 의해 생성기가 강제됩니다.
This seems to lead to the generator getting stuck in a local optima, hence deteriorating sample quality.
이로 인해 발생기가 로컬 최적화에 멈춰서 샘플 품질이 저하되는 것으로 보입니다.
Pre-training 사전 훈련
We investigate the effect of various pretrainings of the neural renderer.
신경 렌더러의 다양한 사전 훈련 효과를 조사합니다.
All other experiments were conducted with the neural renderer pre-trained on the Tables data from ShapeNet (see Table 1).
다른 모든 실험은 ShapeNet의 테이블 데이터에 대해 사전 훈련 된 신경 렌더러로 수행되었습니다 (표 1 참조).
As a comparison, we run the proposed algorithm on the chair data using a neural renderer pre-trained on either the Chair data itself or a simple data set consisting of randomly sampled cubes.
비교를 위해 의자 데이터 자체 또는 무작위로 샘플링 된 큐브로 구성된 간단한 데이터 세트에 대해 사전 훈련 된 신경 렌더러를 사용하여 의자 데이터에 대해 제안 된 알고리즘을 실행합니다.
As shown in Table 3, the quality of the results produced by our method is robust to changes in the pre-training of the neural renderer.
표 3에서 볼 수 있듯이, 우리의 방법으로 생성 된 결과의 품질은 신경 렌더러의 사전 훈련의 변화에 견고합니다.
In contrast, if we use a fixed pre-trained renderer it produces reasonable results if pre-trained directly on the domain of interest, but deteriorates significantly if trained only on a related domain.
반대로 고정 된 사전 훈련 된 렌더러를 사용하는 경우 관심 영역에서 직접 사전 훈련 된 경우 합리적인 결과를 생성하지만 관련 도메인에서만 훈련 된 경우 크게 저하됩니다
Note that we assume no access to 3D data in the domain of interest so in practice we cannot pre-train in this way.
관심 영역의 3D 데이터에 대한 액세스 권한이 없다고 가정하므로 실제로 이러한 방식으로 사전 학습 할 수 없습니다.
6. Conclusion
We have presented the first scalable algorithm using an arbitrary off-the-shelf renderer to learn to generate 3D shapes from unstructured 2D data.
비정형 2D 데이터에서 3D 모양을 생성하는 방법을 배우기 위해 임의의 기성품 렌더러를 사용하는 최초의 확장 가능한 알고리즘을 제시했습니다.
We have introduced a novel loss term, Discriminator Output Matching, that allows stably training our model on a variety of datasets, thus achieving significantly better FID scores than previous work. In particular, Using light exposure and shadow information in our rendering engine, we are able to generate high-quality convex shapes, like bathtubs and couches, that prior work failed to capture.
우리는 다양한 데이터 세트에서 모델을 안정적으로 훈련시켜 이전 작업보다 훨씬 더 나은 FID 점수를 달성 할 수있는 새로운 손실 용어 인 판별 기 출력 매칭을 도입했습니다. 특히, 렌더링 엔진에서 빛 노출과 그림자 정보를 사용하여 이전 작업에서 포착하지 못한 고품질의 볼록한 모양 (예 : 욕조 및 소파)을 생성 할 수 있습니다.
The presented framework is general and in-concept can be make to work with any off-the-shelf renderer. In practice,our work can be extend by using more sophisticated photorealistic rendering engines, to be able to learn even more detailed information about the 3D world from images.
제시된 프레임 워크는 일반적이며 기성품 렌더러와 함께 작동하도록 개념에 맞게 만들 수 있습니다. 실제로 우리의 작업은 이미지에서 3D 세계에 대한 더 자세한 정보를 배울 수 있도록보다 정교한 사실적 렌더링 엔진을 사용하여 확장 할 수 있습니다.
By incorporating color, material and lighting prediction into our model we hope to be able to extend it to work with more general real world datasets.
색상, 재료 및 조명 예측을 모델에 통합함으로써보다 일반적인 실제 데이터 세트와 함께 작동하도록 확장 할 수 있기를 바랍니다.