surface reconstruction from point clouds using optimal ... · guillaume matheron surface...

44
Introduction Previous work Dual formulation Wavelet approach Reconstruction Conclusion References Surface reconstruction from point clouds using optimal transportation Guillaume Matheron June-August 2015 Internship supervised by Pierre Alliez and David Cohen-Steiner Guillaume Matheron Surface reconstruction from point clouds

Upload: others

Post on 30-Sep-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Surface reconstruction from pointclouds using optimal transportation

Guillaume Matheron

June-August 2015

Internship supervised by Pierre Alliez and David Cohen-Steiner

Guillaume Matheron Surface reconstruction from point clouds

Page 2: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Input

Multiple and increasing variety of data sources

Guillaume Matheron Surface reconstruction from point clouds

Page 3: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Drones

Guillaume Matheron Surface reconstruction from point clouds

Page 4: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Satellites

Guillaume Matheron Surface reconstruction from point clouds

Page 5: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Cars

Guillaume Matheron Surface reconstruction from point clouds

Page 6: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Community data

Snavely [2009]

Guillaume Matheron Surface reconstruction from point clouds

Page 7: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Acquisition

Stereography / PhotogrametryDepth cameras

Challenge : Noise and outliers

Guillaume Matheron Surface reconstruction from point clouds

Page 8: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Surface reconstruction

Set of points → surface representationSuited for simulation, storage, visualization...

Guillaume Matheron Surface reconstruction from point clouds

Page 9: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Problem statement

Discrete set of points → 2-manifold surfaceIll-stated problem

Idea : Interpret both as mass distributions.Error metric for mass distributions : Wasserstein distance

Guillaume Matheron Surface reconstruction from point clouds

Page 10: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Optimal transportation

Wasserstein distance :

Wk(λ, µ)k = inf

{∫d(x− y)kdπ(x, y) | π ∈ Π(λ, µ)

}

Guillaume Matheron Surface reconstruction from point clouds

Page 11: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Transportation as error metric

Digne et al. [2013]

Guillaume Matheron Surface reconstruction from point clouds

Page 12: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Digne et al. [2013]

Guillaume Matheron Surface reconstruction from point clouds

Page 13: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Finding the transport plan

"Easy" for discrete distributions using Linear Programming(LP), but computationally intensiveContinuous distributions (faces) split into "bins"

→ (Digne et al. [2013])Guillaume Matheron Surface reconstruction from point clouds

Page 14: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Kantorovich-Rubinstein’s dual formulation

W1(λ, µ) = inf

{∫d(x− y)dπ(x, y) | π ∈ Π(λ, µ)

}W1(λ, µ) = sup

{∫f(λ− µ) | f continuous 1-Lipschitz

}→ Quickly find an approximation of the best function f .

Guillaume Matheron Surface reconstruction from point clouds

Page 15: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Previous work

We have :

µ : discrete distribution (samples)λ : piecewise-constant distribution (faces)

We use an analog of the Wasserstein metric :

E =1

N

N∑j=1

(∫fjdµ−

M∑i=1

wi

∫fjdλi

)2

Where :fj is a set of chosen functionsWe solve for wi

Guillaume Matheron Surface reconstruction from point clouds

Page 16: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

E =1

N

N∑j=1

(∫fjdµ−

M∑i=1

wi

∫fjdλi

)2

rewritten as :

E =

N∑j=1

(bj −

M∑i=1

wiaj,i

)2

Minimum reached when :

∀k, 0 =

N∑j=1

aj,k

(bj −

M∑i=1

wiaj,i

)→ Solution of linear system

Guillaume Matheron Surface reconstruction from point clouds

Page 17: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Choice of fj : bounded radial functions.aj,i =

∫fjdλi intensive to compute → Integrable in closed

form on triangles (Hubert [2012])

Open questions :Placement of fj : very heuristicProblem of validation

Guillaume Matheron Surface reconstruction from point clouds

Page 18: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Proposal

W1(λ, µ) = sup

{∫fd(λ− µ) | f continuous 1-Lipschitz

}LP program in 1D (discrete) :

minimize f(1)(λ(1)− µ(1)) + · · ·+ f(N)(λ(N)− µ(N))with respect to f(1), · · · f(N)such as |f(2)− f(1)| ≤ 1

...|f(N)− f(N − 1)| ≤ 1

(1)

Guillaume Matheron Surface reconstruction from point clouds

Page 19: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Test case in 1D using Maple

Figure: The f function always has a slope of 1 (Lipschitz conditionattained)

Guillaume Matheron Surface reconstruction from point clouds

Page 20: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Generalization to 2D

Project samples and triangles on an N ×N lattice

LP with N2 variablesGuillaume Matheron Surface reconstruction from point clouds

Page 21: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Visualize fAccurate and fastProblem : Lipschitz constraints defined in only two directionsComplexity lower than previous approach for similar resolutions

Guillaume Matheron Surface reconstruction from point clouds

Page 22: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Wavelet Approach (Shirdhonkar and Jacobs [2008])W1 ≈

∑i

|T (λ)i − T (µ)i| 2−2·j(i)

T (λ)i : i-th coefficient of the Discrete Wavelet Transform (DWT) ofλ.→ Linear time in the number of cells ! (O(N2))

→ → w = 0.35046

λ− µ → T (λ− µ) (coefficients arranged in matrix) → ResultGuillaume Matheron Surface reconstruction from point clouds

Page 23: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Experiments

Global minimum not where we want it to be

Problem : normalization (weight of triangle = weight of all samples< weight of "good" samples)

Guillaume Matheron Surface reconstruction from point clouds

Page 24: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Adjusting normalization

Problem : normalization (weight of triangle = weight of all samples< weight of "good" samples)

W1 ≈∑i

|kT (λ)i − T (µ)i| 2−2·j(i)

Best k ?

Guillaume Matheron Surface reconstruction from point clouds

Page 25: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Convex optimization

Φ(k) =∑i∈E|kT (λ)i − T (µ)i| 2−2j(i)

Let Φi(k) = |kT (λ)i − T (µ)i|.

Figure: Φi

Guillaume Matheron Surface reconstruction from point clouds

Page 26: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Convex optimization (cont.)

Φ is convex

Figure: Φ

O(log2(N2)) evaluations of Φ :

Complexity O(N2 log2N)Guillaume Matheron Surface reconstruction from point clouds

Page 27: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Explicit enumeration

Φ(k) =∑i∈E|kT (λ)i − T (µ)i| 2−2j(i)

Let kl =T (µ)lT (λ)l

.

Set of singular points : k ∈ {kl | l ∈ E}.

Compute and sort all singular points (set of kl)Find smallest Φ(kl) via dichotomy (Φ is convex)

Complexity : O(N2 log2N)

Guillaume Matheron Surface reconstruction from point clouds

Page 28: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Results

Fixed normalization 0.0146 (best) 0.0231Adjusted normalization 0.0267 0.0067 (best)

Guillaume Matheron Surface reconstruction from point clouds

Page 29: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Implementation

Wavelet transform using GSL

gs l_wave le t2d_nst rans fo rm_matr i x_forward ( . . . ) ;

Multi-threading using OpenMP

#pragma omp p a r a l l e l f o rf o r ( i n t i = 0 ; i < n ; i++) {

/ / ( . . . )#pragma omp atomict o t a l S imp l e xWe i gh t += w;

}

LP solving using Coin|Or

Guillaume Matheron Surface reconstruction from point clouds

Page 30: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Reconstruction

Use metric to build surface from pointsMethods :

Vertex relocationCoarse-to-fine (refinement, subdivision)Fine-to-coarse (edge collapse, decimation)

Guillaume Matheron Surface reconstruction from point clouds

Page 31: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Vertex relocation

Input pointsGuillaume Matheron Surface reconstruction from point clouds

Page 32: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Vertex relocation

Initialization

Guillaume Matheron Surface reconstruction from point clouds

Page 33: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Vertex relocation

Relocating vertices along gradient of W1

Guillaume Matheron Surface reconstruction from point clouds

Page 34: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Vertex relocation

After relocation

Guillaume Matheron Surface reconstruction from point clouds

Page 35: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Coarse-to-fine approach

Needs guided refinement operators.Problem : we don’t have the transport plan

Guillaume Matheron Surface reconstruction from point clouds

Page 36: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Fine-to-coarse approach

Input pointsGuillaume Matheron Surface reconstruction from point clouds

Page 37: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Fine-to-coarse approach

Delaunay triangulation

Guillaume Matheron Surface reconstruction from point clouds

Page 38: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Fine-to-coarse approach

Removing vertices while minimizing ∆W1

Guillaume Matheron Surface reconstruction from point clouds

Page 39: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Fine-to-coarse approach

After decimation (5 vertices left)

Guillaume Matheron Surface reconstruction from point clouds

Page 40: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Fine-to-coarse approach

Remove three edges, minimizing ∆W1

Guillaume Matheron Surface reconstruction from point clouds

Page 41: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Limitations

Remove edges→ Greedy and operator-guided for now→ LP at each computation of W1 ?Stopping criteria ?

Guillaume Matheron Surface reconstruction from point clouds

Page 42: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Conclusion

Computational aspects of optimal transportationWavelets are fast→ scalable in 3D

Guillaume Matheron Surface reconstruction from point clouds

Page 43: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Future work

Local re-approximation of W1

Complexity-distortion tradeoff

Guillaume Matheron Surface reconstruction from point clouds

Page 44: Surface reconstruction from point clouds using optimal ... · Guillaume Matheron Surface reconstruction from point clouds. Introduction Previous work Dual formulation Wavelet approach

IntroductionPrevious work

Dual formulationWavelet approach

ReconstructionConclusionReferences

Bibliography

J. Digne, D. Cohen-Steiner, P. Alliez, F. de Goes, and M. Desbrun.Feature-Preserving Surface Reconstruction and Simplification fromDefect-Laden Point Sets. Journal of Mathematical Imaging andVision, 2013.

E. Hubert. Convolution Surfaces based on Polygons for Infinite andCompact Support Kernels. Graphical Models, 2012.

S. Shirdhonkar and D. W. Jacobs. Approximate earth mover’sdistance in linear time. 2008.

K. N. Snavely. Scene Reconstruction and Visualization from InternetPhoto Collections. PhD thesis, 2009.

Guillaume Matheron Surface reconstruction from point clouds