Fat Curves and Representation of Planar Figures L.M. Mestetskii
Department of Information Technologies, Tver State University,
Tver, Russia Computers & Graphics 24 (2000) Computer graphics
in Russia
Slide 2
Outline Abstract Fat curves Boundaries of fat curves Implicit
representation of fat curves Direct rasterization of fat curves
Engraving representation Approximation of an engraving by fat
Bezier curves
Slide 3
Abstract Fat curve Fat curve = curve having a width trace left
by a moving circle of variable radius Engraving Engraving union of
a finite number of fat curves Goal Bezier representation for fat
curves 2D modeling through engraving approximation of arbitrary
bitmap binary images
Slide 4
Problem Transforming the engraving representation into a
discrete one in order to render a figures on raster display devices
(Inverse Problem) Obtaining an engraving representation of figures
given by their discrete or boundary representation
Slide 5
Method Bezier performance of greasy lines Decomposition of fat
curves on parts with simple envelopes Scan-converting of fat curves
based on Sturm polynomials Representation of any binary image as
fat curves on the basis of its continuous skeleton
Slide 6
Fat Curves Set of circles in the Euclidean plane R 2 C: [a, b]
R 2 [0, ), t [a, b] C t = {(x, y): (xu(t)) 2 +(yv(t)) 2 (r(t)) 2,
(x,y) R 2 } Fat curve C = t [a,b] C t axis: P(t) width: r(t) end
circle: C a, C b (initial and final circles) may be considered as
the trace of moving the circle C t P(u,v) r (x,y)
Slide 7
Example of a Fat Curve Planar Bezier curve a set of circles on
the plane: H = {H 0,H 1,,H m } circle H i, radius R i, Center (U i,
V i ), i = 0,,m [Bernstein polynomials]
Slide 8
H0H0 H1H1 H2H2 H3H3 H4H4 H6H6 H5H5 Example of a Fat Curve axis:
P(t) = (u(t), v(t)), width: r(t) axis P(t) is an ordinary Bezier
curve of degree m with the control points formed by the centers of
the circles from H control circles: H 0, H 1,, H 6 control polygon:
H 21 circles of family C t (t = 0.05j, j = 0,,21)
Slide 9
Boundaries of Fat Curves A family of circles Under certain
conditions, the family of circles, which is a family of smooth
curves, has an envelope curve The necessary conditions for a point
(x,y) R 2 to the envelope of a family of curves given by the
equation F(x, y, t) = 0
Slide 10
Find the Envelope Curve (x 1,y 1 ) (x 2,y 2 ) Condition the
first condition is always satisfied the second condition can be
violated (no envelopes)
Slide 11
Find the Envelope Curve A parametric description of two
envelopes Define (x 1,y 1 ) (x 2,y 2 )
Slide 12
Envelopes Consider in more detail the case when the condition
is violated and envelopes do not exist Interval on which is found
as a result of the decomposition of a fat curve
Slide 13
Envelopes Consider a fat curve for which envelopes exist An
envelope of a family of circles can be exterior of interior (dont
belong to the boundary of the fat curve) Criterion for
distinguishing interior envelops direction of axis : (u, v)
direction of envelope : (x, y) exterior (supporting orientation) :
ux + vy > 0 interior (opposing orientation) : ux +vy < 0
interior envelope exterior envelope (x,y)r (u,v)
Slide 14
Envelopes An envelope can change its orientation from
supporting to opposing and conversely x = y = 0 cut a fat curve at
point t [a, b] where x=y=0, we obtain fat curves with constantly
oriented envelopes
Slide 15
Envelopes Two-side fat curve: both envelopes are exterior when
envelopes are self-intersecting or intersect each other, it must be
decomposed into parts to find monotonicity intervals: u(t) = 0 or
v(t) = 0 One-side fat curve: one of the envelopes is interior u=0
v=0
Slide 16
Rules for Decomposing Fat Curves Three rules for decomposing
fat curves separate fat curves for which u 2 +v 2 >= r 2
separate one-side fat curves by finding singular points of
envelopes, i.e., points where x 1 =y 1 =0 or x 2 =y 2 =0 Separate
monotone fat curves by finding points for which u=0 or v=0 exterior
envelope (x,y)r (u,v) u=0 v=0
Slide 17
Implicit Representation of Fat Curves Membership function of
the set point belongs to the fat curve if the following condition
is satisfied for a certain
Slide 18
Direct Rasterization of Fat Curves The discrete tracing of
contour of a domain given by its membership function consists in an
inspection of the points with integer coordinates located along
this contour
Slide 19
Engraving Representation of a Binary Image Obtain a continuous
representation of a figure given by its discrete representation The
solution of this problem involves 3 steps approximate the given
bitmap binary image by a polygonal figure (PF) construct a skeletal
representation of the PF approximate the skeletal representation of
the PF by fat curves
Slide 20
Polygonal Figure Each of the PF is a polygon of the minimum
perimeter that separates the black and white pixels of the bitmap
image Problem constructing an engraving representation of the given
bitmap image construction of an engraving representation of the PF
polygonal figure of the minimum perimeter
Slide 21
Skeletal Representation Consider the set of all circles in the
plane all their interior point are also interior of the PF the
boundary of each circle at least two boundary points of the PF
circles: inscribed empty circles set of centers of such circles
forms the skeleton of the PF skeletal representation of a bitmap
image: skeleton + inscribed empty circles
Slide 22
Sites & Bisector PF consists of vertices and segments:
sites every empty circle touches two or more sites The maximal
connected set of the centers of the inscribed empty circle that
touch these sites: bisector of a pair of sites a segment of a line
or a segment of a parabola
Slide 23
Sites & Bisector A skeleton is an almost complete engraving
There possible combinations of the pairs of sites segment-segment,
point-segment, point-point Segment-segment
Slide 24
Sites & Bisector Point-segment find z, follows from that
sinceand, hence,
Slide 25
Sites & Bisector Point-point The engraving constructed on
the basis of the skeletal representation of a PF will be called the
skeletal engraving
Slide 26
Approximation of an Engraving by Fat Bezier Curves Skeletal
engravings provide a highly accurate description of bitmap binary
images (too many fat curves ) Considered as a problem of the
approximation of a skeletal engraving G by another engraving G The
Hausdorff metric may be conveniently measure the distance between
engravings Find an engraving G such that
Slide 27
Branch Skeleton structure juncture vertices of degree 3 or
higher terminal vertices of degree 1 intermediate vertices of
degree 2 A chain of edges that have common vertices of degree 2
will be called a branch The entire skeleton can be represented as
the union of such branches
Slide 28
Approximation Consider a chain of n fat curves C 1,,C n
corresponding to the same branch of the skeleton find a fat curve C
in a certain class of fat curves that provides the best
approximation for this sequence of circles e.g., in the class of
cubic Bezier curves C B 3 in other word, we must solve the
minimization problem
Slide 29
Fat Curve Fitting Problem Empty circles K 0,K n located at the
vertices of the branch Define
Slide 30
Fat Curve Fitting Problem The approximation fat curve C is
sought in the form of a Bezier curve of degree m H 0,,H m are the
control circles of C(t) The problem is to find a set of control
circles such that it minimizes the quadratic mean distance from the
empty circles K 0,,K n
Slide 31
Fat Curve Fitting Problem In the optimization problem, the
objective function The optimal solution if found by solving a
system of linear equations obtained from the following condition:
If the fat Bezier curve with the control circles H 0,,H m does not
provide the desired accuracy the chain of n fat curves C 0,,C m is
partitioned into two shorter chains, and the approximation problem
is solved separately for each of these chains