Loading...

PPT – A Recursive Algorithm for Calculating the Relative Convex Hull PowerPoint presentation | free to download - id: 685243-NTIwM

The Adobe Flash plugin is needed to view this content

A Recursive Algorithm for Calculating the

Relative Convex Hull

Gisela Klette AUT University Computing

Mathematical Sciences Auckland, New Zealand

Motivation

- The calculation of relative convex hulls of

simple polygons is - a special subject in computational geometry

(shortest paths), - in image analysis (MLP calculation of features),

- in robotics (shortest path of a robot in a

constrained environment), ...

Motivation Image Analysis

- MLP is a digital length estimator of the

circumference of a digital object that is

multigrid convergent - MLP is characteristic for the digital convexity

of the shape - MLP is a tangent estimator

Motivation Robotics Path Planning

B

Informally The relative convex hull of A

relative to B is the shortest path between A and

B.

A

Definition 1

A subset S in R2 of points is convex iff S is

equal to the intersection of all half planes

containing S. The convex hull CH(S) of a set of

points S is the smallest (by area) convex

polygon P that contains S.

CH(S)

S

Definition 2

A cavity of a polygon A is the topological

closure of any connected component of CH(A) \ A.

CAV1

CAV2

CAV4

CAV3

Polygon with 4 cavities

Definition 3

A cover is a straight line segment in the

frontier of CH(A) that is not part of the

frontier of A.

cover4

Definition 4

A polygon A is B-convex iff any straight line

segment in B that has both end points in A, is

also contained in A. The convex hull of A

relatively to B is the intersection of all

B-convex polygons containing A.

Definition 5

The minimum length polygon (MLP) of a 2D digital

object coincides with the

relative convex hull of an inner grid polygon

relatively to an outer grid polygon,

normally defined in a way like simulating an

inner and outer Jordan digitization.

Properties of MLP

- - The inner and the outer polygon of a Jordan

digitization have the constraint that they are at

Hausdorff distance 1. - Mappings exist between vertices and between

cavities in A and in B. - Convex vertices of the inner polygon and concave

vertices of the outer polygon are candidates for

the MLP. - MLP is uniquely defined for a given digitized

object

Algorithm, general case

Toussaint, G.T. An optimal algorithm for

computing the relative convex hull of a set of

points in a polygon. In EURASIP, Signal

processing lll Theories and Applications, Part

2, pages 853856, North-Holland, 1986.

Computation of the relative convex hull

- Find an extreme vertex p in A
- Construct a polygon B\A with one newly created

double-oriented edge between A and B - Triangulate the new polygon
- Find the shortest path from p to p

Time Complexity O(n log log n)

Algorithm, MLP

Klette, R., Kovalevsky, V.V., Yip., B. Length

estimation of digital curves. In Vision

Geometry, SPIE 3811, pages 117129,

1999. Klette, R., Rosenfeld, A. Digital

Geometry. Morgan Kaufmann, San Francisco, 2004.

Computation of MLP

- Trace frontier of A and include concave vertices

of B - Start at extreme vertex
- Compute positive and negative sides
- As long as next vertex is between positive and

negative sides update the sides - Otherwise a new vertex for
- CHB(A) has been found

Time Complexity O(n)

Arithmetic MLP (AMLP)

Provencal, X., Lachaud, J.-O. Two linear-time

algorithms for computing the minimum length

polygon of a digital contour. In DGCI 2009, LNCS

5810, pages 104117, Springer, Heidelberg, 2009.

Computation of MLP

- Input contour words (Freeman code)
- Compute tangential cover
- Decompose into zones (convex, concave, inflexion)
- Compute convex hull for each polyline per zone

Time Complexity O(n), only for polyominos

Combinatorial MLP (CMLP)

Provencal, X., Lachaud, J.-O. Two linear-time

algorithms for computing the minimum length

polygon of a digital contour. In DGCI 2009, LNCS

5810, pages 104117, Springer, Heidelberg, 2009.

CMLP

Digital contour

Time Complexity O(n), only for polyominos

Result 1

- The B-convex hull of a simple polygon A is

equal to - the convex hull of A
- iff
- the convex hull of A is completely contained in

B.

Result 2

All vertices of the convex hull of a simple

polygon A inside a simple polygon B are

vertices of the B-convex hull of A.

Result 3

All the vertices of the convex hull of Inew

belong to the relative convex hull of A between

ps and pe.

Inew ps, q3, q4,q11, pe

New algorithm

The relative convex hull CHB(A) for simple

polygons A and B is only different from CH(A) if

there is at least one cavity in A and one in B

such that the intersection of those cavities is

not empty.

New recursive algorithm

- Compute the convex hulls for the inner and the

outer polygon (Melkman algorithm for example) - Copy vertices of the inner polygon one by one to

the CHB(A) until it finds a cavity - Check the outer polygon for a cavity
- Construct the new polygons and find the convex

hulls - Copy all vertices of the inner polygon to the

CHB(A) - Stop if the base case of the recursion is

reached.

New recursive algorithm

Covers

Relative convex hull

First cavity

Second cavity

Discussion

- Recursive algorithm works for arbitrary simple

polygons A and B in O(n2), worst case. - It is a recursive procedure that is very simple

and of low time complexity. - The algorithm runs in linear time if the maximum

depth of stacked cavities of A is limited by a

constant. We continue to study the expected time

complexity of the algorithm under some general

assumptions of variations (i.e., distribution)

for possible input polygons A and B. - The depth of stacked cavities could be used as a

shape descriptor.