b-spline curve approximation

44
B-spline curve approximation zhu ping 08.02.20

Upload: darius-mccall

Post on 31-Dec-2015

46 views

Category:

Documents


4 download

DESCRIPTION

B-spline curve approximation. zhu ping. 08.02.20. 1. Application 2. Some works 3. Discussion. Outline. Arctile:. The NURBS Book. Les Pigel&Wayne Tiller, 2nd 1996 Knot Placement for B-Spline Curve Approximation. Anshuman Razdan, Technical Report 1999 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: B-spline curve approximation

B-spline curve approximation

zhu ping

08.02.20

Page 2: B-spline curve approximation

Outline

1. Application

2. Some works

3. Discussion

Page 3: B-spline curve approximation

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

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

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

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

Curve appromation is iterative process.

Disvantage:

1. Time-consuming;

2. Relate to initial knots

Page 8: B-spline curve approximation

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

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

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

Estimate the number of points required to interpolate (ENP)

Approximated by a finite number of circular arc segments

Page 12: B-spline curve approximation

Finding the interpolating points(independent of parametrization):

1. arc length

2. curvature

(1) curvature extrema

(2)inflection point

Page 13: B-spline curve approximation

Only baesd on arc length :

Page 14: B-spline curve approximation

Based on curvature distribution:

Page 15: B-spline curve approximation
Page 16: B-spline curve approximation
Page 17: B-spline curve approximation

Adaptive Knot Sequence Generation(AKSG)

Page 18: B-spline curve approximation
Page 19: B-spline curve approximation

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

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

a heuristic rule for knot placement

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

approximation interpolation

Page 22: B-spline curve approximation

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

smoothing of discrete curvature:

Lowpass fliter

Page 24: B-spline curve approximation

divide into several subsets:inflection points

Page 25: B-spline curve approximation

iteratively bisect each segment untill satisfy the heuristic rule:

curvature integration

Newton-Cotes formulae

Page 26: B-spline curve approximation

check the adjacent intervals that joint at a feature point

Page 27: B-spline curve approximation

Example:

Page 28: B-spline curve approximation
Page 29: B-spline curve approximation
Page 30: B-spline curve approximation

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
Page 32: B-spline curve approximation

Advantage:

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

Page 33: B-spline curve approximation

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

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

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

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

Base curve with 16 control points

10 initial dominant points

Page 38: B-spline curve approximation

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

10 dominant points 13 dominant points

Page 40: B-spline curve approximation

Experimental results

Comparing:

Page 41: B-spline curve approximation
Page 42: B-spline curve approximation
Page 43: B-spline curve approximation

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

Thanks !