b-spline curve approximation zhu ping 08.02.20. outline 1. application 2. some works 3. discussion

44
B-spline curve approximation zhu ping 08.02.20

Upload: alexis-grant

Post on 25-Dec-2015

228 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

B-spline curve approximation

zhu ping

08.02.20

Page 2: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

Outline

1. Application

2. Some works

3. Discussion

Page 3: 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

Page 4: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

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

Page 5: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

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.

Page 6: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

Knot placement:

1. Start with the minimum or a small number of knots

2. Start with the maximum or many knots

Error bounds:

1.

2.

1

1

1

int( )

(1 ) 1,....,p j i i

md

n p

i jd jd i

u u u j n p

0max | ( ) |k mk k kQ C u

0max(min | ( ) | (0 1))k mk kQ C u u

Page 7: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

Curve appromation is iterative process.

Disvantage:

1. Time-consuming;

2. Relate to initial knots

Page 8: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

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&CGFarin’s student

Page 9: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

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.

Page 10: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

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

Page 11: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

Estimate the number of points required to interpolate (ENP)

Approximated by a finite number of circular arc segments

Page 12: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

Finding the interpolating points(independent of parametrization):

1. arc length

2. curvature

(1) curvature extrema

(2)inflection point

Page 13: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

Only baesd on arc length :

Page 14: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

Based on curvature distribution:

Page 15: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion
Page 16: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion
Page 17: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

Adaptive Knot Sequence Generation(AKSG)

Page 18: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion
Page 19: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

AKSG:

if , insert a auxiliary knot in the middle of the

segment

1

1

1 1

i i

i ior

i i

i x x

Page 20: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

Adaptive knot placement in B-spline curve approximation Weishi Li, Shuhong Xu, Gang Zhao, Li Ping Goh

Computer-Aided Design 2005

Page 21: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

a heuristic rule for knot placement

Su BQ,Liu DY:<<Computational geometry—curve and surface modeling>>

approximation interpolation

Page 22: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

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

Page 23: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

smoothing of discrete curvature:

Lowpass fliter

Page 24: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

divide into several subsets:inflection points

Page 25: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

iteratively bisect each segment untill satisfy the heuristic rule:

curvature integration

Newton-Cotes formulae

Page 26: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

check the adjacent intervals that joint at a feature point

Page 27: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

Example:

Page 28: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion
Page 29: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion
Page 30: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

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

Page 31: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion
Page 32: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

Advantage:

1. compare with KTP and NKTP:when |m-n| is small, it is sensitive to parameter values.

Page 33: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

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

Page 34: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

Determination of konts:

2

1 ( )

1 ( 1,..., 1)

1

i p

p i f jj i

t t i n pp

are the parameter values of pointskt

kpkp

jd ( ) :f j

Page 35: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

Selection of dominant points:

1. Selection of seed points from

2. Choice of a new dominant point

Based on the adaptive refinement paradigm

fewer dominant points at flat regions and more at

complex regions

{ }kp

Page 36: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

Selection of seed points:

local curvature maximum(LCM) points, inflection points

LCM: and1i ik k 1i ik k

exclude / 4i low avgk k k

base curve

251 input points

Page 37: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

Base curve with 16 control points

10 initial dominant points

Page 38: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

Choice of a new dominant points:

max deviation:

The segment is to be refined.

,s eS j sd p 1j ed p

|| ( ) ||i iC t p

, ,min | |w s w w e where s w e

choosing wp

0 1r shape index

Page 39: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

10 dominant points 13 dominant points

Page 40: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

Experimental results

Comparing:

Page 41: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion
Page 42: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion
Page 43: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

Future:

1. parameterization

2. optimal selection of dominant points as genetic

algorithm

3. B-spline surface and spatial curve

Page 44: B-spline curve approximation zhu ping 08.02.20. Outline 1. Application 2. Some works 3. Discussion

Thanks !