Upload
claire-davis
View
66
Download
0
Tags:
Embed Size (px)
DESCRIPTION
efficient simplification of point-sampled geometry. Mark Pauly Markus Gross Leif Kobbelt ETH Zurich RWTH Aachen. outline. introduction surface model & local surface analysis point cloud simplification hierarchical clustering - PowerPoint PPT Presentation
Citation preview
efficient simplification of point-sampled geometry
Mark Pauly Markus Gross Leif Kobbelt
ETH Zurich RWTH Aachen
outline
introduction surface model & local surface analysis point cloud simplification
– hierarchical clustering– iterative simplification– particle simulation
measuring surface error comparison conclusions
introduction
3d content creation
acquisition renderingprocessing
many applications require coarser approximations– storage– transmission– editing– rendering
surface simplification for complexity reduction
introduction
3d content creation
acquisition renderingprocessing
registration
raw scans
point cloud reconstruction
triangle mesh
introduction
3d content creation
acquisition renderingprocessing
registration
raw scans
point cloud reconstruction
triangle mesh
simplificationreduced point
cloud
introduction
3d content creation
acquisition renderingprocessing
registration
raw scans
point cloud
simplificationreduced point
cloud
surface model
moving least squares (mls) approximation
Gaussian weight function locality
idea: locally approximate surface with polynomial– compute reference plane
– compute weighted least-squares fit polynomial
implicit surface definition using a projection operator
surface model
moving least squares (mls) approximation
idea: locally approximate surface with polynomial– compute reference plane
– compute weighted least-squares fit polynomial
Gaussian weight function locality
implicit surface definition using a projection operator
local surface analysis
local neighborhood (e.g. k-nearest)
local surface analysis
local neighborhood (e.g. k-nearest)
pp
pp
pp
pp
C
n
T
n
11
covariance matrix
eigenproblem
lll vvC
pcentroid
local surface analysis
local neighborhood (e.g. k-nearest)
eigenvectors span covariance ellipsoid
surface variation
smallest eigenvector is least-squares normal
in
0)(p
measures deviation from tangent plane curvature
local surface analysis
example
original mean curvature variation n=20 variation n=50
surface simplification
hierarchical clustering iterative simplification particle simulation
hierarchical clustering
top-down approach using binary space partition
recursively split the point cloud if:– size is larger than a user-specified threshold or– surface variation is above maximum threshold
split plane defined by centroid and axis of greatest variation
replace clusters by centroid
hierarchical clustering
2d example
covariance ellipsoid split plane
centroid
root
hierarchical clustering
2d example
hierarchical clustering
2d example
hierarchical clustering
2d example
hierarchical clustering
4,280 Clusters436 Clusters43 Clusters
surface simplification
hierarchical clustering iterative simplification particle simulation
iterative simplification
iteratively contracts point pairseach contraction reduces the number of points by one
contractions are arranged in priority queue according to quadric error metric
quadric measures cost of contraction and determines optimal position for contracted sample
equivalent to QSlim except for definition of approximating planes
compute fundamental quadrics
compute initial point-pair contraction candidates
iterative simplification
2d example
compute edge costs
iterative simplification
2d example
6 0.02
2 0.03
14 0.04
5 0.04
9 0.09
1 0.11
13 0.13
3 0.22
11 0.27
10 0.36
7 0.44
4 0.56
priority queue
edge cost
iterative simplification
2d example
6 0.02
2 0.03
14 0.04
5 0.04
9 0.09
1 0.11
13 0.13
3 0.22
11 0.27
10 0.36
7 0.44
4 0.56
priority queue
edge cost
iterative simplification
2d example
2 0.03
14 0.04
5 0.06
9 0.09
1 0.11
13 0.13
3 0.25
11 0.27
10 0.36
7 0.49
4 0.56
priority queue
edge cost
iterative simplification
2d example
14 0.04
5 0.06
9 0.09
1 0.11
13 0.13
3 0.25
11 0.27
10 0.36
7 0.49
4 0.56
priority queue
edge cost
iterative simplification
2d example
14 0.04
5 0.06
9 0.09
1 0.11
13 0.13
3 0.25
11 0.27
10 0.36
7 0.49
4 0.56
priority queue
edge cost
iterative simplification
2d example
5 0.06
9 0.09
1 0.11
13 0.13
3 0.25
11 0.27
10 0.36
7 0.49
4 0.56
priority queue
edge cost
iterative simplification
2d example
5 0.06
9 0.09
1 0.11
13 0.13
3 0.25
11 0.27
10 0.36
7 0.49
4 0.56
priority queue
edge cost
iterative simplification
2d example
9 0.09
1 0.11
13 0.13
3 0.25
11 0.27
10 0.36
7 0.49
4 0.56
priority queue
edge cost
iterative simplification
2d example
9 0.09
1 0.11
13 0.13
3 0.25
11 0.27
10 0.36
7 0.49
4 0.56
priority queue
edge cost
iterative simplification
2d example
11 0.27
10 0.36
7 0.49
4 0.56
priority queue
edge cost
iterative simplification
296,850 points 2,000 points remaining
contraction pairs
surface simplification
hierarchical clustering iterative simplification particle simulation
particle simulation
resample surface by distributing particles on the surface
particles move on surface according to inter-particle repelling forces
particle relaxation terminates when equilibrium is reached (requires damping)
can also be used for up-sampling!
mls surface
particle simulation
2d example
particle simulation
2d example initialization
– randomly spread particles
particle simulation
2d example initialization
– randomly spread particles
repulsion– linear repulsion force
)()()( iii rkF ppppp
projection– project particles onto
surface
particle simulation
2d example initialization
– randomly spread particles
repulsion– linear repulsion force
)()()( iii rkF ppppp
particle simulation
2d example initialization
– randomly spread particles
repulsion– linear repulsion force
)()()( iii rkF ppppp
projection– project particles onto
surface
particle simulation
original model296,850 points
uniform repulsion2,000 points
adaptive repulsion3,000 points
measuring error
measure distance between two point-sampled surfaces S and S’ using a sampling approach
compute set Q of points on S
maximum error: two-sided Hausdorff distance
mean error:
area-weighted integral of point-to-surface distances
size of Q determines accuracy of error measure
),(max),(max SdSS Q qq
Q
SdQ
SSq
q ),(1
),(avg
measuring error
d(q,S’) measures the distance of point q to surface S’ using the mls projection operator
S
'S
),( Sd q
q
'q
comparison: surface error
error estimate for Michelangelo’s David simplified from 2,000,000 points to 5,000 points
0046.0max 4
avg 1014.6
hierarchical clustering iterative simplification particle simulation
0052.0max 4
avg 1043.5 0061.0max
4avg 1069.5
comparison: performance
execution time as a function of input model size (simplification to 1% of input model size)
0
50
100
150
200
250
300
350
400
450
500
0 500 1000 1500 2000 2500 3000 3500
input size
time (sec)
hierarchical clustering
iterative simplification
particle simulation
comparison: performance
execution time as a function of target model size (input: dragon, 435,545 points)
0
10
20
30
40
50
60
70
020406080100120140160180
hierarchical clustering
iterative simplification
particle simulation
target size
time (sec)
smoothing effect
simplification up-sampling
point cloud vs. mesh simplification
simplification reconstruction3.5 sec. 2.45 sec
reconstruction simplification112.8 sec. 3.5 sec.
conclusions
point cloud simplification can be useful to – reduce the complexity of geometric models early in the 3d
content creation pipeline– build LOD surface representations– create surface hierarchies
the right method depends on the application check out: www.pointshop3d.com
acknowledgement: European graduate program on combinatorics, geometry, and computation