Multiresolution Analysis of Arbitrary Meshes

advertisement
Automatic Reconstruction
of B-spline Surfaces
of Arbitrary Topological Type
Matthias Eck
University of Darmstadt*
*now at ICEM Systems
Hugues Hoppe
Microsoft Research
SIGGRAPH 96
S
Surface reconstruction
points
P
surface
S
surface
reconstruction



Reverse engineering
Traditional design (wood,clay)
Virtual environments
Previous work
surface topological type
arbitrary
simple
[Schumaker93], …
[Hoppe-etal92],
[Turk-Levoy94], ...
implicit
[Sclaroff-Pentland91],
...
[Moore-Warren91],
[Bajaj-etal95]
subdivision
-
[Hoppe-etal94]
B-spline
[Schmitt-etal86],
[Forsey-Bartels95],...
[Krishnamurthy-96],
[Milroy-etal95],
...
[Milroy-etal95],...
smooth
meshes
Problem statement
reconstruction
procedure
points P




B-spline surface S
automatic procedure
surface of arbitrary topological type
S smooth  G1 continuity
error tolerance e
Main difficulties
S: arbitrary topological type
require network N
of B-spline patches
3 Difficulties:
N
single
B-spline patch
1) Obtaining N
2) Parametrizing P over N
3) Fitting with G1 continuity
Comparison with previous talk
KrishnamurthyLevoy
EckHoppe
patch
network N
curve painting
automatic
partitioning
parametrized
P
hierarchical
remeshing
harmonic maps
continuity
stitching step
G1 construction
Overview of our procedure
5 steps:
1) Initial parametrization of P over mesh M0
2) Reparam. over triangular complex KD
3) Reparam. over quadrilateral complex K
4) B-spline fitting
5) Adaptive refinement
(1) Find an initial parametrization
a) construct initial surface: dense mesh M0
b) parametrize P over M0
Using: [Hoppe-etal92]
P
[Hoppe-etal93]
M0
(2) Reparametrize over domain KD

Use parametrization scheme of [Eck-etal95]:
a) partition M0 into triangular regions
b) parametrize each region using a harmonic map
M0
partitioned M0
base mesh KD
Harmonic map
[Eck-etal95]
triangular region
planar triangle
map minimizing metric distortion
Reparametrize points
M0
KD
using harmonic maps
(3) Reparametrize over K

Merge faces of KD pairwise

cast as graph optimization problem
KD
K
Graph optimization
harmonic
map
two D regions


planar square
For each pair of adjacent D regions,
let edge cost = harmonic map “distortion”
Solve MAX-MIN MATCHING graph problem
K
reparametrize P using harmonic maps
(4) B-spline fitting

Use surface spline scheme of [Peters94]:




G1 surface
tensor product B-spline patches
low degree
Other similar schemes

[Loop94], [Peters96], …
Fitting
using
Overview
of [Peters94] scheme
2 Doo-Sabin
subdiv.
K
M
c
affine
affine
construction
Mx
df
B-spline
bases
S
optimization
(Details: linear constraints, reprojection, fairing, …)
(5) Adaptively refine the surface


Goal: make P and S differ by no more than e
Strategy: adaptively refine K
4 face
refinement templates
K
K#
S#
e: 1.02%  0.74%
Reconstruction results
S
P
20,000 points
29 patches
e= 1.20%
rms = 0.20%
Reconstruction results
29 patches
e= 1.20%
rms = 0.20%
156 patches
e= 0.27%
rms = 0.03%
Approximation results
S0
P
70,000
triangles
S#
30,000
points
153 patches
e= 1.44%
rms = 0.19%
Analysis
KrishnamurthyLevoy
patch
network N
parametrized
P
curve painting
EckHoppe
automatic
partitioning
hierarchical
remeshing
harmonic maps
continuity
stitching step
G1 construction
refinement
displac. map
no
yes
yes
no
Future work

Semi-automated layout of patch network

Allowing creases and corners in B-spline
construction

Error bounds on surface approximation
have: d(P,S)<e want: d(S0,S)<e
Download