PM TTT - 浙江大学数学系

Download Report

Transcript PM TTT - 浙江大学数学系

B-spline curve approximation
zhu ping
08.02.20
Outline
1. Application
2.
Some works
3.
Discussion
Arctile:
1. The NURBS Book. Les Pigel&Wayne Tiller, 2nd 1996
2. Knot Placement for B-Spline Curve Approximation.
Anshuman Razdan, Technical Report 1999
3. Surface approximation to scanned data. Les
Piegl&Wayne Tiller, The Visual Computer 2000
4. Adaptive knot placement in B-spline curve
approximation. Weishi Li, Shuhong Xu, Gang Zhao,
Li Ping Goh, Computer-Aided Design 2005
5. B-spline curve fitting based on adaptive curve
refinement using domiant points. Hyungjun Park,
Joo-Haeng Lee, Computer-Aided Design 2007
A normal method(least square)
(The Nurbs Book) Les Piegl&Wayne Tiller

Les A.Piegl, South Florida University,
research in CAD/CAM,geometric
modeling,computer graphics
Wayne Tiller,in GeomWare,
The NURBS Book
A normal method(least square)
(The Nurbs Book) Les Piegl&Wayne Tiller
Given:
1. Data points;
2. End Interpolation;
Goals:
error bound:
Process
1. Parametrization(chord parameteration)
2. Knot placement
3. Select end conditions
4. Solve the tri-diagonal linear systems of equations.
Knot placement:
m 1
n  p 1
i  int( jd )
  jd  i
u p  j  (1   )ui 1   ui j  1,...., n  p
d
1. Start with the minimum or a small number of knots
2. Start with the maximum or many knots
Error bounds:
1.
max | Qk  C(uk ) |kk 0m
2.
max(min | Qk  C(u) | (0  u  1))kk 0m
Curve appromation is iterative process.
Disvantage:
1. Time-consuming;
2. Relate to initial knots
Knot Placement for B-Spline
Curve Approximation
Anshuman Razdan, Arizona State University
Technical Report, 1999
Associate Professor in the
Division of Computing Studies,
CAD,CAGD&CG
Farin’s student
Assumption:
1. Given a parametric curve.
2. Evaluated at arbitrary discrete values within the
parameter range.
Goals:
1. Closely approximate with a C2 cubic B-spline curve.
Process:
1. Pick appropriate points on the given curve
2. Parametrization
3. Select end conditions
4. Solve the tri-diagonal linear systems of equations
How to obtain sampling points
1. Estimate the number of sampling points;
2. Find samping points on the given curve
Estimate the number of points required to interpolate (ENP)
Approximated by a finite number of circular arc segments
Finding the interpolating points(independent of
parametrization):
1. arc length
2. curvature
(1) curvature extrema
(2)inflection point

Only baesd on arc length :

Based on curvature distribution:
Adaptive Knot Sequence Generation(AKSG)

AKSG:
if
i
i
1
  or

, insert a auxiliary knot in the middle of the
i 1
i 1 
i  xi  xi 1
segment
Adaptive knot placement in Bspline curve approximation

Weishi Li, Shuhong Xu, Gang Zhao, Li Ping Goh
Computer-Aided Design 2005

a heuristic rule for knot placement
approximation
interpolation

Algorithm:
1. smoothing of discrete curvature
2. divide the initial parameter-curvature set into several subsets
3. iteratively bisect each segment untill satisfy the heuristic rule
4. check the adjacent intervals that joint at a feature point
5. interpolate

smoothing of discrete curvature:
Lowpass fliter

divide into several subsets:inflection points

iteratively bisect each segment untill satisfy the heuristic rule:
curvature integration
Newton-Cotes formulae

check the adjacent intervals that joint at a feature point

Example:
B-spline curve fitting based on adaptive
curve refinement using domain points
Hyungjun Park, since 2001,a
faculty member of Industrial
Engineering at Chosun University,
geometric modeling,
CAD/CAM/CG application
Joo-Haeng Lee, a senior
researcher in ETRI
CAD&CG, robotics application

Advantage:
1. compare with KTP and NKTP:when |m-n| is small, it is sensitive to
parameter values.

2. compare with KRM and Razdon’s method:
stability, robustness to noise and error-boundedness
Proposed approach:
1. parameterization;
2. dominant point selection
3. knot placement(adaptive using the parameter values of the selected
dominant points)
4. least-squares minimization

Determination of konts:
1 i  p 2
t pi 1 
tf ( j)

p  1 j i
(i  1,..., n  p  1)
tk are the parameter values of points pk
f ( j ) : d j  pk
Selection of dominant points:
1. Selection of seed points from { pk }
2. Choice of a new dominant point
Based on the adaptive refinement paradigm
fewer dominant points at flat regions and more at
complex regions
 Selection
of seed points:
local curvature maximum(LCM) points, inflection points
LCM:
ki  ki 1 and ki  ki 1
exclude ki  klow  kavg / 4
base curve
251 input points
Base curve with 16 control points
10 initial dominant points

Choice of a new dominant points:
max deviation: || C ( ti )  pi ||
The segment is to be refined.
S s ,e d j  ps d j 1  pe
choosing
0  r 1
shape index
min w | s,w  w,e |
pw
where
s  w e
10 dominant points
13 dominant points

Experimental results
Comparing:
 Future:
1. parameterization
2. optimal selection of dominant points as genetic
algorithm
3. B-spline surface and spatial curve
Thanks !