Point Cloud Surface Representations - Computer...
Transcript of Point Cloud Surface Representations - Computer...
![Page 1: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/1.jpg)
Point Cloud Surface Representations
Mark Pauly2003
see also EG2003 course on Point-based Computer Graphics available at:http://graphics.stanford.edu/~mapauly/Pdfs/PointBasedComputerGraphics_EG03.pdf
![Page 2: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/2.jpg)
2
Papers• Hoppe, DeRose, Duchamp, McDonald, Stuetzle:
Surface Reconstruction from Unorganized Points, SIGGRAPH 92
• Carr, Beatson, Cherrie, Mitchell, Fright, McCallum, Evans: Reconstruction and Representation of 3D Objects with Radial Basis Functions, SIGGRAPH 01
• Kalaiah, Varshney: Statistical Point Geometry, Symposium on Geometry Processing, 2003
![Page 3: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/3.jpg)
3
Introduction• Many applications need a definition of
surface based on point samples• Reduction• Up-sampling• Interrogation (e.g. ray tracing)
• Desirable surface properties• Manifold• Smooth• Local (efficient computation)
![Page 4: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/4.jpg)
4
Introduction• Terms
• Regular/Irregular, Approximation/Interpolation, Global/Local
• Standard interpolation/approximation techniques• Triangulation, Least Squares (LS), Radial Basis
Functions (RBF)• Problems
• Sharp edges, feature size/noise• Functional -> Manifold
![Page 5: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/5.jpg)
5
Terms: Regular/Irregular
• Regular (on a grid) or irregular (scattered)• Neighborhood is unclear for irregular data
![Page 6: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/6.jpg)
6
Terms: Approximation/Interpolation
• Noisy data -> Approximation
• Perfect data -> Interpolation
![Page 7: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/7.jpg)
7
Terms: Global/Local• Global approximation
• Local approximation
• Locality comes at the expense of smoothness
![Page 8: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/8.jpg)
8
Triangulation• Exploit the topology in a triangulation (e.g.
Delaunay) of the data• Interpolate the data points on the triangles
• Piecewise linear C0
![Page 9: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/9.jpg)
9
Triangulation: Piecewise linear
• Barycentric interpolation on simplices(triangles)• given d+1 points xi with values fi and a point x
inside the simplex defined by xi
• Compute αi fromx = Σi αi ·xi and Σi αi = 1
• Thenf = Σi αi ·fi
![Page 10: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/10.jpg)
10
Least Squares• Fits a primitive to the data• Minimizes squared distances between the
pi’s and primitive g
( )( )∑ −i
iig xypgp 2min
2)( cxbxaxg ++=
![Page 11: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/11.jpg)
11
Least Squares - Example• Primitive is a polynomial
•
• Linear system of equations that can be solved using normal equations
• Leads to a system of dim(c) equations.
( ) Txxxg c⋅= ,...,,1)( 2
( )( )( )( )∑
∑−=
⇒−
i
Tiii
ji
i
Tiii
xxyx
xxy
pppp
ppp
c
c
,...,,120
,...,,1min
2
22
![Page 12: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/12.jpg)
12
Radial Basis Functions• Represent interpolant as
• Sum of radial functions r• Centered at the data points pi
( ) ( )∑ −=i
ii xprwxf
![Page 13: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/13.jpg)
13
Radial Basis Functions• Solve
to compute weights wi
• Linear system of equations
( )∑ −=i
jiij xxypprwp
( ) ( ) ( )( ) ( ) ( )( ) ( ) ( )
=
−−−−−−
y
y
y
xxxx
xxxx
xxxx
ppp
www
rpprpprpprrpprpprpprr
2
1
0
2
1
0
1202
2101
2010
00
0
![Page 14: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/14.jpg)
14
Radial Basis Functions• Solvability depends on radial function• Several choices assure solvability
• (thin plate spline)
• (Gaussian)• h is a data parameter• h reflects the feature size or anticipated
spacing among points
( ) dddr log2=
( ) 22 / hdedr −=
![Page 15: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/15.jpg)
15
Interpolation• Monomial, Lagrange, RBF share the same
principle:• Choose basis of a function space• Find weight vector for base elements by solving
linear system defined by data points• Compute values as linear combinations
• Properties• One costly preprocessing step• Simple evaluation of function in any point
![Page 16: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/16.jpg)
16
Interpolation• Problems
• Many points lead to large linear systems• Evaluation requires global solutions
• Solutions• RBF with compact support
• Matrix is sparse• Still: solution depends on every data point,
though drop-off is exponential with distance• Local approximation approaches
![Page 17: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/17.jpg)
17
Typical Problems• Sharp corners/edges
• Noise vs. feature size
![Page 18: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/18.jpg)
18
Functional -> Manifold• Standard techniques are applicable
if data represents a function
• Manifolds are more general• No parameter domain• No knowledge about neighbors
![Page 19: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/19.jpg)
19
Implicits• Each orientable n-manifold can be
embedded in n+1 – space • Idea: Represent n-manifold as zero-set of a
scalar function in n+1 – space • Inside:• On the manifold:• Outside:
( ) 0<xf( ) 0=xf( ) 0>xf
![Page 20: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/20.jpg)
20
Implicits - Illustration
• Image courtesy Greg Turk
![Page 21: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/21.jpg)
21
Implicits from point samples• Function should be zero in
data points•
• Use standard approximation techniques to find f
• Trivial solution:• Additional constraints are
needed
( ) 0=if p
0=f
0
![Page 22: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/22.jpg)
22
Implicits from point samples• Constraints define inside
and outside• Simple approach (Turk,
O’Brien)• Sprinkle additional
information manually• Make additional
information soft constraints
++
−+− −
+− −+
−+
+
![Page 23: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/23.jpg)
23
Implicits from point samples• Use normal information • Normals could be
computed from scan• Or, normals have to be
estimated
![Page 24: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/24.jpg)
24
Detour: Local Surface Analysis
• Estimate local surface properties from local neighborhoods:• No explicit connectivity between samples (as with
triangle meshes)
• Replace geodesic proximity with spatial proximity (requires sufficiently high sampling density!)
• Compute neighborhood according to Euclidean distance
![Page 25: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/25.jpg)
25
Neighborhood• K-nearest neighbors
• Can be quickly computed using spatial data-structures (e.g. kd-tree, octree, bsp-tree)
• Requires isotropic point distribution
![Page 26: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/26.jpg)
26
Neighborhood• Improvement: Angle criterion (Linsen)
• Project points onto tangent plane• Sort neighbors according to angle• Include more points if angle between subsequent
points is above some threshold
![Page 27: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/27.jpg)
27
Neighborhood• Local Delaunay triangulation (Floater)
• Project points into tangent plane• Compute local Voronoi diagram
![Page 28: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/28.jpg)
28
Covariance Analysis• Covariance matrix of local neighborhood N:
• with centroid
Ni j
i
i
T
i
i
nn
∈
−
−⋅
−
−= ,
11
pp
pp
pp
ppC
∑∈
=Ni
iNpp 1
![Page 29: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/29.jpg)
29
Covariance Analysis• Consider the eigenproblem:
• C is a 3x3, positive semi-definite matrixAll eigenvalues are real-valuedThe eigenvector with smallest eigenvalue defines the least-squares plane through the points in the neighborhood, i.e. approximates the surface normal
}2,1,0{, ∈⋅=⋅ llll vvC λ
![Page 30: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/30.jpg)
30
Covariance Analysis• Covariance ellipsoid spanned by the
eigenvectors scaled with corresponding eigenvalue
![Page 31: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/31.jpg)
31
Normal Estimation• Estimate normal direction by least squares fit• Compute consistent orientation by
incremental propagation
![Page 32: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/32.jpg)
32
Implicits from point samples+1• Compute non-zero
anchors in the distance field
• Use normal information directly as constraints
+1
+1 +1
+1+1
+1+1
( ) 1=+ iif np +1
+1+1
+1
![Page 33: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/33.jpg)
33
Implicits from point samples
• need to constrain distance to avoid self-intersections
( ) 1=+ iii df np
![Page 34: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/34.jpg)
34
Computing Implicits• Given N points and normals
and constraints
• Let • An RBF approximation
• leads to a system of linear equations
ii np ,
( ) ( ) iii dff == cp ,0
iNi cp =+
( ) ( )∑ −=i
ii rwf xpx
![Page 35: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/35.jpg)
35
Computing Implicits• Practical problems: N > 10000• Matrix solution becomes difficult• Different solutions
• Sparse matrices allow iterative solution• Fast multi-pole methods• Smaller number of RBFs
![Page 36: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/36.jpg)
36
Computing Implicits• Sparse matrices
• Needed:
• Compactly supported RBFs
( ) ( ) ( )( ) ( ) ( )( ) ( ) ( )
−−−−−−
00
0
120
2101
2010
rpprpprpprrpprpprpprr
0)(',0)( ==→> crdrcd
cc
![Page 37: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/37.jpg)
37
Computing Implicits• Fast multi-pole methods
• approximate solution using far- and near-field expansion
• hierarchical clustering of nodes• introduces fitting error and evaluation error
O(1) + O(NlogN)setup
O(N)EvaluationO(NlogN)O(N^3)Solve systemO(N)O(N^2)Storage
Fast MethodsDirect Methods
![Page 38: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/38.jpg)
38
Computing Implicits• RBF center reduction exploits the
redundancy in many point sampled models• Greedy approach (Carr et al.)
• Start with random small subset• Add RBFs where approximation quality is not
sufficient
![Page 39: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/39.jpg)
39
Computing Implicits• RBF center reduction: Example
![Page 40: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/40.jpg)
40
Implicits - Conclusions• Scalar field is underconstrained
• Constraints only define where the field is zero, not where it is non-zero
• Additional constraints are needed• Signed fields restrict surfaces to be
unbounded• All implicit surfaces define solids
![Page 41: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/41.jpg)
41
Paper• Hoppe, DeRose, Duchamp, McDonald,
Stuetzle: Surface Reconstruction from Unorganized Points, SIGGRAPH 92
![Page 42: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/42.jpg)
42
Summary• Goal:
• Reconstruct polygonal surface from unorganized set of point samples
• Approach: • Approximate signed distance function• Use contouring method (marching cubes) to
extract triangle mesh
![Page 43: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/43.jpg)
43
More Details
• Use linear distance fieldper point• Direction is defined by
normal• Normal estimated using
covariance analysis• In every point in space
use the distance field ofthe closest point (Voronoi decomposition)
![Page 44: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/44.jpg)
44
More Details• X={x0,..,.xn} sample of an unknown surface S• δ-noisy: xi = yi + ei, yi on S, |ei| < δ• ρ-dense: Any sphere with radius ρ and
center on S contains at least one sampe xi
justification for using k-nearest neighbors• Algorithm complexity:
• k-nearest neighbors: O(k*logN)• normal orientation: O(NlogN)• contouring: O(m), m = #visited cubes
![Page 45: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/45.jpg)
45
Results+ shapes of arbitrary
topology+ simple and efficient
computation- crude approximation of
signed distance field- no topological
guarantees
![Page 46: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/46.jpg)
46
Paper• Carr, Beatson, Cherrie, Mitchell, Fright,
McCallum, Evans: Reconstruction and Representation of 3D Objects with Radial Basis Functions, SIGGRAPH 01
![Page 47: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/47.jpg)
47
Summary• Goal:
• Reconstruct implicit surface from unorganized point set
• Approach:• RBF implicit representation• Fast computation of matrix solution using multi-
pole method and RBF center reduction• RBF approximation of noisy data
![Page 48: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/48.jpg)
48
More Details• RBF interpolation
• s(xi)=fi, i=1,...,N• additional constraints using normal information• “smoothest” interpolant:
according to rotation-invariant semi-norm ||.||• for noisy surface look for least-squares
approximation
ss Ss∈= minarg*
∑=
−+N
iiis fxs
Ns
1
22 ))((1min ρ
![Page 49: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/49.jpg)
49
More Details• RBF center reduction
1. Choose subset of nodes and fit RBF s(x)2. Evaluate residual ei = fi – s(xi) for all xi
3. If {max {|ei|} < fitting accuracy, stop4. else append new centers where ei is large5. recompute s(x) and goto 2
![Page 50: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/50.jpg)
50
Results+ Reconstruction from large point sets+ Irregular sampling distributions+ Smooth extrapolation for hole filling
![Page 51: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/51.jpg)
51
Results- Smoothing operation does not preserve
features - Still relatively slow: Fitting time in order of
hours, surface time in order of minutes
![Page 52: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/52.jpg)
52
Paper• Kalaiah, Varshney: Statistical Point
Geometry, Symposium on Geometry Processing, 2003
![Page 53: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/53.jpg)
53
Summary• Goal:
• Efficiently represent point clouds using statistical methods
• Approach:• Octree subdivision• PCA on positions, normals, and color• k-means clustering and quantization
![Page 54: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/54.jpg)
54
More Details• Subdivide point cloud into clusters using
octree hierarchy
![Page 55: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/55.jpg)
55
More Details• Apply principal component analysis (PCA)
on each cluster (covariance analysis)• Treat positions, normals, colors separately• Represent each cluster by mean +
covariance ellipsoid• Collection of ellipsoids provides statistical
representation of original point cloud
![Page 56: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/56.jpg)
56
More Details• Application: Randomized Rendering
• sample PCA ellipsoids using trivariate Gaussian
Gaussian randomdistribution
PCA ellipsoid
![Page 57: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/57.jpg)
57
More Details• Randomized rendering
![Page 58: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/58.jpg)
58
More Details• Compression:
![Page 59: Point Cloud Surface Representations - Computer Graphicsgraphics.stanford.edu/.../cs468-03-fall/TalkPDFs/pauly.pdf · 2003. 10. 15. · • C is a 3x3, positive semi-definite matrix](https://reader035.fdocuments.in/reader035/viewer/2022071011/5fc9caef34294d7640474073/html5/thumbnails/59.jpg)
59
Results+ Statistical approach well suited for large
models+ Can handle (some) noise - Decoupling of position and normals leads to
inferior rendering quality (no coherence)- Compression (probably) not competitive- Hard to apply interrogation or other
operators using this representation