pointflow: 3d point cloud generation with continuous ... · pointgrow: autoregressively learned...

20
PointFlow: 3D Point Cloud Generation with Continuous Normalizing Flows Guandao Yang, Xun Huang, Zekun Hao, Ming-Yu Liu, Serge Belongie, Bharath Hariharan ICCV 2019 Presented by Te Gusi,Su Jiajun

Upload: others

Post on 29-Sep-2020

1 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: PointFlow: 3D Point Cloud Generation with Continuous ... · Pointgrow: Autoregressively learned point cloud generation with self-attention. 3. 3D Point Cloud Generative Adversarial

PointFlow: 3D Point Cloud Generation with

Continuous Normalizing Flows

Guandao Yang, Xun Huang, Zekun Hao, Ming-Yu Liu,

Serge Belongie, Bharath Hariharan

ICCV 2019

Presented by Te Gusi,Su Jiajun

Page 2: PointFlow: 3D Point Cloud Generation with Continuous ... · Pointgrow: Autoregressively learned point cloud generation with self-attention. 3. 3D Point Cloud Generative Adversarial

Table of contents

Background

Challenge

Method

Experiment

Conclusion

Page 3: PointFlow: 3D Point Cloud Generation with Continuous ... · Pointgrow: Autoregressively learned point cloud generation with self-attention. 3. 3D Point Cloud Generative Adversarial

Background

3D DataRobot Perception

Augmented Reality

Shape Design

Page 4: PointFlow: 3D Point Cloud Generation with Continuous ... · Pointgrow: Autoregressively learned point cloud generation with self-attention. 3. 3D Point Cloud Generative Adversarial

Background

3D Data

3D Geometry Representations

LiDAR Depth Sensor

Mesh Volumetric Depth Map

Point Cloud

Page 5: PointFlow: 3D Point Cloud Generation with Continuous ... · Pointgrow: Autoregressively learned point cloud generation with self-attention. 3. 3D Point Cloud Generative Adversarial

Background

3D Data

3D Geometry Representations

Generative Learning

Auto Encoder[1]

GAN[2]

Autoregressive Model[3]

Page 6: PointFlow: 3D Point Cloud Generation with Continuous ... · Pointgrow: Autoregressively learned point cloud generation with self-attention. 3. 3D Point Cloud Generative Adversarial

Challenge

1. Modeling distribution of distributionEach sample is a distribution of points

Overall shape is also a distribution

2. Estimating probability densitiesImplicit density of GAN models

Page 7: PointFlow: 3D Point Cloud Generation with Continuous ... · Pointgrow: Autoregressively learned point cloud generation with self-attention. 3. 3D Point Cloud Generative Adversarial

Methods

Continuous Normalizing Flow + VAE

Page 8: PointFlow: 3D Point Cloud Generation with Continuous ... · Pointgrow: Autoregressively learned point cloud generation with self-attention. 3. 3D Point Cloud Generative Adversarial

Methods

Let 𝑓𝑓1, … , 𝑓𝑓𝑛𝑛 denote a series of invertible transformations, 𝑦𝑦 denotes a latent variable.

Probability density

Continuous Normalizing Flow

Page 9: PointFlow: 3D Point Cloud Generation with Continuous ... · Pointgrow: Autoregressively learned point cloud generation with self-attention. 3. 3D Point Cloud Generative Adversarial

Methods

Extend to the continuous model by defining continuous-time dynamic𝜕𝜕𝑦𝑦 𝑡𝑡𝜕𝜕𝑡𝑡

= 𝑓𝑓(𝑦𝑦 𝑡𝑡 , 𝑡𝑡)

Continuous normalizing flow(CNF) is formulated by

We can apply ordinary differential equation(ODE) solver to estimate the output

Continuous Normalizing Flow

Page 10: PointFlow: 3D Point Cloud Generation with Continuous ... · Pointgrow: Autoregressively learned point cloud generation with self-attention. 3. 3D Point Cloud Generative Adversarial

Methods

The variational auto-encoder (VAE) is a framework that allows one to learn P(X) from a dataset of observations of X.

Variational Auto Encoder

Page 11: PointFlow: 3D Point Cloud Generation with Continuous ... · Pointgrow: Autoregressively learned point cloud generation with self-attention. 3. 3D Point Cloud Generative Adversarial

Methods PointFlow Encoder:𝑄𝑄Φ(𝑧𝑧|𝑋𝑋) encodes a point cloud into a shape representation z

Decoder/Generator:𝑃𝑃𝜃𝜃(𝑋𝑋|𝑧𝑧) models the distribution of points given the shape representation

Prior:𝐹𝐹𝜓𝜓(𝑧𝑧|𝑤𝑤) model the shape prior by transforming a simple Gaussian distribution 𝑤𝑤

Page 12: PointFlow: 3D Point Cloud Generation with Continuous ... · Pointgrow: Autoregressively learned point cloud generation with self-attention. 3. 3D Point Cloud Generative Adversarial

ELBO

Posterior Entropy: 𝐿𝐿𝑒𝑒𝑛𝑛𝑒𝑒 Models the entropy of the approximated posterior

Prior: 𝐿𝐿𝑝𝑝𝑝𝑝𝑝𝑝𝑝𝑝𝑝𝑝 Encourages the encoded shape representation to have a high

probability under the prior

Reconstruction likelihood:𝐿𝐿𝑝𝑝𝑒𝑒𝑟𝑟𝑝𝑝𝑛𝑛 Describe the reconstruction log likelihood of the input point

set

Methods PointFlow

Page 13: PointFlow: 3D Point Cloud Generation with Continuous ... · Pointgrow: Autoregressively learned point cloud generation with self-attention. 3. 3D Point Cloud Generative Adversarial

Experiments

Point Cloud to Point Cloud

Chamfer Distance:

Measures the squared distance between each point in one set to its nearest neighbor in the other set.

Earth Mover’s distance:

Measures the squared distance between two bijection set.

Measurements

Page 14: PointFlow: 3D Point Cloud Generation with Continuous ... · Pointgrow: Autoregressively learned point cloud generation with self-attention. 3. 3D Point Cloud Generative Adversarial

Experiments

Sets/Distribution Pairwise

Jensen-Shannon Divergence (JSD)

Coverage (COV)

Minimum matching distance (MMD)

1-nearest neighbor accuracy (1-NNA)

1-NN classifier classifies it as coming from real or fake according to the label of its nearest sample.

Measurements

Page 15: PointFlow: 3D Point Cloud Generation with Continuous ... · Pointgrow: Autoregressively learned point cloud generation with self-attention. 3. 3D Point Cloud Generative Adversarial

Experiments Result

Generation

Page 16: PointFlow: 3D Point Cloud Generation with Continuous ... · Pointgrow: Autoregressively learned point cloud generation with self-attention. 3. 3D Point Cloud Generative Adversarial

Experiments Result

Generation

Examples of generated point clouds

Page 17: PointFlow: 3D Point Cloud Generation with Continuous ... · Pointgrow: Autoregressively learned point cloud generation with self-attention. 3. 3D Point Cloud Generative Adversarial

Experiments Result

Reconstruction

Trained with reconstruction loss only

Page 18: PointFlow: 3D Point Cloud Generation with Continuous ... · Pointgrow: Autoregressively learned point cloud generation with self-attention. 3. 3D Point Cloud Generative Adversarial

Experiments Result

Page 19: PointFlow: 3D Point Cloud Generation with Continuous ... · Pointgrow: Autoregressively learned point cloud generation with self-attention. 3. 3D Point Cloud Generative Adversarial

Conclusion

Propose a point cloud generative model based on normalizing flow

Modeling point cloud and shape with different distribution

Future work could be extended to multimodality

Page 20: PointFlow: 3D Point Cloud Generation with Continuous ... · Pointgrow: Autoregressively learned point cloud generation with self-attention. 3. 3D Point Cloud Generative Adversarial

Reference

1. Panos Achlioptas, Olga Diamanti, Ioannis Mitliagkas, and Leonidas Guibas. Learning representations and generative models for 3d point clouds. In ICML, 2018.

2. Yongbin Sun, Yue Wang, Ziwei Liu, Joshua E Siegel, and Sanjay E Sarma. Pointgrow: Autoregressively learned point cloud generation with self-attention.

3. 3D Point Cloud Generative Adversarial Network Based on Tree Structured Graph Convolutions. Dong Wook Shu, Sung Woo Park, and Junseok Kwon. In ICCV, 2019