Reverse Engineering of Point Clouds to Obtain Trimmed NURBS
description
Transcript of Reverse Engineering of Point Clouds to Obtain Trimmed NURBS
![Page 1: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/1.jpg)
Reverse Engineering of Point Clouds to Obtain Trimmed NURBS
Lavanya Sita Tekumalla
Advisor:
Prof. Elaine Cohen
School of Computing University of Utah
Masters Thesis Proposal
![Page 2: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/2.jpg)
Motivation
Motivation: Digitizing Geometry• CAD Modeling• Field of Entertainment
Aim• Reverse Engineering point clouds
to obtain Trimmed NURBS http://www.qcinspect.com/rev.htm
![Page 3: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/3.jpg)
Problem definition
Dealing with Problems associated with point clouds
• Large data sets• Noise• Holes and missing data
![Page 4: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/4.jpg)
Problem Definition
Finding a Suitable Parameterization• Minimum distortion• Handle holes in the data• Intuitive parameterization• A rectangular boundary for fitting
tensor product surfaces• Handling non-rectangular geometry
![Page 5: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/5.jpg)
Problem Definition
Finding a good fitting strategy• Capture detail• Knot placement• Computation speed• Stable
![Page 6: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/6.jpg)
Background Moving Least Squares
• Weighted Least Squares fit
• Moving least square fit at point (xj , yj)– The weighting function defined from the
point of view of (xj , yj)
2( ( ) ) ( )i i j
i
Min f x y w i
![Page 7: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/7.jpg)
BackgroundMLS Projection
• A given point set implicitly defines a surface S
• A projection procedure F such that
• S is the set of all points that project onto themselves
( ) ( ( ))F x F F x
![Page 8: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/8.jpg)
Previous Work Fitting a network of patches
– 1996: Eck et al, M., Hoppe, H. "Automatic reconstruction of B-spline surfaces of arbitrary topological type."
– 1999: I.K. Park, I.D. Yun, S.U. Lee, "Constructing NURBS Surface Model from Scattered and Unorganized Range Data“
– 2000: Benjamin F. Gregorski, Bernd Hamann, Kenneth I. Joy , “Reconstruction of B-spline Surfaces from Scattered Data Points”
![Page 9: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/9.jpg)
Previous WorkKnot placement
• Non-linear optimization- Free knot problem– Jupp et al– Dierekx – Deboor and Rice
• Iterative knot insertion and removal– Dierekx– Baussard et al
![Page 10: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/10.jpg)
Previous WorkParameterization
• Projection- Might not be a bijection• Curves- chord length parameterization• Surfaces
![Page 11: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/11.jpg)
ParameterizationConvex combination maps
• Map the boundary vertices to a convex polygon
• For each interior vertex Pi choose a neighborhood Ni and positive weights λj
– The parameterization maps Pi to Ui
, 1i
i j
j N
,
i
i i j j
j N
U U
![Page 12: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/12.jpg)
Previous WorkParameterizing Triangular meshes• Convex Combination Maps
– Floater• Mesh as a Spring System
– Hormann et al• Harmonic Maps
– Eck et al– Floater
![Page 13: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/13.jpg)
Previous WorkParameterizing triangular meshes• Conformal Maps: Free boundary
– Non linear techniques: • Hormann et al• Sheffer et al
– Linear techniques• Levoy et al
![Page 14: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/14.jpg)
Proposed Research
• A reverse engineering framework to obtain trimmed NURBS from point clouds
• Deal with a single NURBS patch
• Assumption (In the preliminary work): An underlying mesh structure is available.
![Page 15: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/15.jpg)
Proposed Research
A multistage framework• Smoothing for noise removal• Hole filling and triangulation of hole• Parameterization• Extending boundaries- completing
rectangular domain• Fitting by blending local fits
![Page 16: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/16.jpg)
Proposed ResearchSmoothing
• Find the local neighborhood of each point• Project each point onto the surface obtained
using MLS projection procedure
Further Proposed Research:• Smoothing the boundary curve
![Page 17: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/17.jpg)
Preliminary ResultsSmoothing
![Page 18: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/18.jpg)
Proposed ResearchHole filling
• Motivation– Parameterize data– Lack of data – Numerical instabilities– Effect on areas around the hole
• Issues– Need for a local method– Adequate sampling density
![Page 19: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/19.jpg)
Proposed ResearchHole Filling
For each point in the boundary:• Find the local neighborhood• Find a local reference plane and a local
parameterization by projection• Introduce points in the local parameterization• Project each point in the parametric domain onto
its local least squares surface• Triangulate simultaneously(for meshes)
![Page 20: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/20.jpg)
Preliminary ResultsHole Filling – Curve Example
![Page 21: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/21.jpg)
Preliminary ResultsHole Filling- Surface
![Page 22: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/22.jpg)
Preliminary ResultsHole Filling- Mesh
![Page 23: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/23.jpg)
Preliminary ResultsHole Filling
![Page 24: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/24.jpg)
Proposed ResearchParameterization
• Parameterization by harmonic maps • Further Proposed Research
– Fixing the boundary suitably– Iterative reparameterization based on closest
point to the fitted surface – Stretch minimization– Domain specific methods- for circular objects– Meshless parameterization
![Page 25: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/25.jpg)
Preliminary Results Parameterization
![Page 26: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/26.jpg)
Preliminary Results Parameterization
![Page 27: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/27.jpg)
Proposed ResearchCompleting Parametric Domain
•Intutive parameterization
•Complete the parametric domain by introducing points in the domain and projecting them onto the surface
![Page 28: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/28.jpg)
Completing the Parametric DomainExample
Harmonic Map with boundary fixed by projecting the actual
boundary
Data Added in the parameterization to get a
rectangular domain
![Page 29: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/29.jpg)
Proposed ResearchFitting: Knot placementHierarchical Domain Decomposition
![Page 30: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/30.jpg)
Proposed Research Fitting
• Blending local fits
• Moving least squares fit with respect to the mid-point of the patch (xj , yj)
• Basis functions: Cubic b-spline bases truncated in a knot interval.
2( ( ) ) ( )i i j
i
Min f x y w i
![Page 31: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/31.jpg)
Blending Local Fits – Basis Functions
![Page 32: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/32.jpg)
3
, 33 3 3
2 21 1 3
2 1 1 1 1 3 2 1
1 2
2 1 2
( )(0,3)( )( )( )
( ) ( ) ( ) ( )(2,3)( )( )( ) ( )( )( )
( )( )( ) ( )( )(
ii
i i i i i i
i i i i
i i i i i i i i i i i i
i i i
i i i i
t tf Bt t t t t t
t t t t t t t tft t t t t t t t t t t tt t t t t t
t t t t
2, 31
31
3, 31 2 1 1
1, 3
)( )(3,3)
( )( )( )(1,3) 1 ( (0,3) (2,3) (3,3))
ii i
ii
i i i i i i
i
Bt t
t tf Bt t t t t t
f f f f B
The basis functions in the interval ti to ti+1 over an arbitrary (non-uniform) knot vector
Blending Local Fits – Basis Functions
![Page 33: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/33.jpg)
Blending local Fits-Blending control points
![Page 34: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/34.jpg)
Further Proposed ResearchFitting
• Parameters that determine a local fit– Local weighting function– Neighborhood size
• Constrained fit, given a smooth boundary
![Page 35: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/35.jpg)
Further Proposed ResearchAnalysis
• Hole filling Vs A minimum norm least squares solution with SVD
• Blending local fits Vs A global least squares fit– Quality of fit– Efficiency of computation– Numerical stability
• Quantify the quality of fit
![Page 36: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/36.jpg)
Preliminary Results
![Page 37: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/37.jpg)
Preliminary Results
Hierarchical Subdivision of Parametric Domain to Decide Knot Placement
![Page 38: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/38.jpg)
SummaryPreliminary Research
• Smoothing surfaces by MLS projection• Hole filling• Parameterization using harmonic maps• Hierarchical domain decomposition• Fitting by blending local fits
![Page 39: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/39.jpg)
SummaryFurther Proposed Research
• Smoothing boundary curves• Fixing boundary parameterization• Fixing boundaries curves• Extending boundaries to rectangular domain• Avoiding the use of a mesh structure• Stretch minimization• Iterative reparameterization: Parameter correction• Domain specific method for parameterizing circular
objects
![Page 40: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/40.jpg)
SummaryFurther Proposed Research
• Determine the right weighting function and neighborhood size for the MLS process.
• Compare the fitting process with a minimum norm least squares solution- without filling holes
• Compare the fitting process with a global least squares fit– Quality of fit– Efficiency of computation– Numerical stability
• Quantify the quality of fit
![Page 41: Reverse Engineering of Point Clouds to Obtain Trimmed NURBS](https://reader036.fdocuments.us/reader036/viewer/2022062501/5681678b550346895ddca695/html5/thumbnails/41.jpg)
Questions and Suggestions.