Presentation is loading. Please wait.

Presentation is loading. Please wait.

Computation on Parametric Curves Yan-Bin Jia Department of Computer Science Iowa State University Ames, IA 50011-1040, USA Dec 16, 2002.

Similar presentations


Presentation on theme: "Computation on Parametric Curves Yan-Bin Jia Department of Computer Science Iowa State University Ames, IA 50011-1040, USA Dec 16, 2002."— Presentation transcript:

1 Computation on Parametric Curves Yan-Bin Jia Department of Computer Science Iowa State University Ames, IA 50011-1040, USA jia@cs.iastate.edu Dec 16, 2002

2 Why Curved Objects?  Frequent subjects of maneuver (pen, mouse, cup, etc.)  Actions and mechanics are inherently continuous / differential and subject to local geometry of bodies  Contact kinematics  Dynamics  Control  Shape localization, recognition, reconstruction  Not well studied compared to polygonal and polyhedral objects

3 Outline of the Talk 1. Constructing common tangents of two curves 2. Computing all pairs of antipodal points Primitive used by other algorithms antipodal grasp

4 Previous Work Antipodal Grasp & Points Hong et al. 1990; Chen & Burdick 1992; Ponce et al. 1993; Blake & Taylor 1993 Curve Processing Goodman 1991; Kriegman & Ponce 1991; Manocha & Canny 1992; Sakai 1999; Jia 2001 Computational Geometry Preparata & Hong 1977; Yao 1982; Chazelle et al. 1993; Matousek & Schwarzkopf 1996; Ramos 1997; Bespamyatnikh 1998 Grasping & Fixturing Salisbury & Roth 1983; Mishra et al. 1987; Nguyen 1988; Markenscoff et al. 1992; Trinkle 1992; Brost & Goldberg 1994; Bicchi 1995, Kumar & Bicchi 2000

5 Common Tangent of Two Segments Assumptions for clarity (removable): i) Curvature everywhere positive or everywhere negative iii) Total curvatures  (– ,  ) ( and with equal absolute value) T S T(s ) b b a total curvature ii) Opposite normals at corresponding endpoints s b t a b t s a T(s ) a

6 How Many Common Tangents? Theorem a)have at most two common tangents incident on points with opposite normals. b) are always on the same side of every common tangent or always on different sides. Two segments satisfying conditions (i)—(iv)

7 Four Configurations How to distinguish them? (  N, translation of tangents, etc)

8 An Iterative Procedure t 1 2 t s 0 t 0 s 2 s 1 Sequences { s } and { t } converge quadratically to s* and t*. kk s* t* To find common tangencies with the same normal, reverse the normal vector field on one segment. ( k  15, # low-level iterations  300 )

9 Preprocessing I Step 1 Compute all simple inflections. Step 2 Split every segment whose total curvature  [– ,  ]. simple Inflection:  = 0 but   0  > 0  < 0  > 0 Step 3 Shortening either or both segments Assumptions i)-iii) satisfied.

10 Application I – Convex Hull Van Dis & Jia 2002 O(n)O(n) #inflections

11  Application II – Antipodal Points closed cubic spline (10 pairs)  = 3/(1+0.5 cos(3  )) limacon  = 4 + 2.5 cos  elliptic lemniscate  = (6 cos  + 3 sin  ) 2 2 2 2 1/2

12 Antipodal Points Two points whose inward normals are i) collinear ii) pointing at each other. t* s*s* a simple close curve

13 Existing Methods formulation  nonlinear programming + heuristics  Incomplete – not guaranteed to find one, not to mention all of them.  Inefficient – many initial estimates often needed. Why not exploit global & local (differential) geometry together?

14 Antipodal Angle s N(s)N(s) t N(t ) r(s)r(s) s and t are antipodal if and only if  (s) = 0.  : antipodal angle simple antipodal points s* and t* if  (s*) = 0 but  (s*)  0. s*s* t*t* N(s) + N(t) = 0 Locally, define opposite points by Assumption iv) Normals at opposite points (s, t) point towards each other.

15 Opposite Angle Sign at Endpoints  antipodal angle increases monotonically as s increases.  no antipodal points otherwise. t a S T s a s b b t  (s ) a b  unique pair of antipodal points if  (s ) 0. ab Bisection over [s, s ]. a b s* t* Both segments are concave.

16 Same Angle Sign at Endpoints  Otherwise, termination at the other endpoints.  If exist, linear convergence to the closest pair. t* s* a s t a s = 0 t = 0 t 2 t 1 s 1 2 s 0 1 monotone sequences s,s, … t, t, … a s t b Marching I (convex-convex)

17 Cont’d The ray of N(t ) or N(t ) must intersect segment S a b s = 0 t = 0 s 1 t 2 2 s t* s* t b b s t 1 0 1 monotone sequences: s,s, … t, t, … t a a s  Same convergence result Marching II (convex-concave)

18 Recursively Finding All pairs bisection march t* 1 s* 1 t* 2 2 s* Case 1 Case 2 (bisection) Recursion tree: Case 1 (march) s*, t* 1 s*, t* 2

19 Preprocessing II Step 4 Compute common tangent lines b t s a s b t a a pair of normals pointing away from each other Steps 1, 2, 3

20 Conclusion Design of algorithms for curve computing Completeness – up to numerical resolution  Interleaving marching with numerical bisection (exploiting of local geometry)  Dissecting the curve into monotone segments (preprocessing of global geometry)  Provable convergence rates (depending on curvatures) Efficiency – O(n + m) two-level calls of numerical primitives 2 #inflections#antipodal pairs running time is tight

21 Extension  Algebraic Curves  2-D Surfaces  Optimization along Curves, Surfaces


Download ppt "Computation on Parametric Curves Yan-Bin Jia Department of Computer Science Iowa State University Ames, IA 50011-1040, USA Dec 16, 2002."

Similar presentations


Ads by Google