Pattern Recognition, Vol. 30, No. 10, pp. 1719-1728, 1997 © 1997 Pattern Recognition Society. Published by Elsevier Science Ltd Printed in Great Britain. All rights reserved 0031-3203/97 $17.00+.00
Pergamon
PH: S0031-3203(97)00001-0
DISCRETE COMBINATORIAL GEOMETRY YUKIKO KENMOCHI, ATSUSHI IMIYA* and AKIRA ICHIKAWA Department of Information and Computer Sciences, Chiba University, 1-33 Yayoi-cho, Inage-ku, Chiba 263, Japan (Received 21 June 1995; in revised form 10 December 1996)
Abstract--In computer vision, one of the ultimate aims is the determination of geometric properties of 3dimensional objects in our real world from measured data. As an expression intermediate between measured raw data and geometric properties, we need a method of representing objects in computers. For the object representations, geometry which uses only finite-precision numbers is necessary because in computers we can only manipulate finite-precision numbers. In this paper, we develop a new geometry, which we call discrete combinatorial geometry due to the discreteness of the space of finite-precision numbers, applying fundamental definitions of classical combinatorial geometry. Using discrete combinatorial geometry, we introduce a new method for representing curves, surfaces and objects in computers. We also show that our new representation is based on the fact that the boundary of a surface consists of curves and the boundary of an object consists of surfaces. © 1997 Pattern Recognition Society. Published by Elsevier Science Ltd. Combinatorial geometry Boundary
Si.mplex
Complex
1. I N T R O D U C T I O N
In computer vision, one of the ultimate aims is the determination of geometric properties of 3-dimensional objects in our real world from measured data. In order to calculate geometric properties from measured raw data, a representation of objects in computers is necessary. Because computers store and calculate data using finite-precision arithmetic, we need a method of representing geometric objects in a computer memory in terms of only finite-precision data. Data described using finiteprecision arithmetic are equivalent to data described using only integers. This equivalence leads to the conclusion that geometric data can be mathematically described by sets of lattice points in a 3-dimensional space, since every coordinate of lattice points is integer. We call these sets of lattice points discrete objects because the sets of lattice points are acquired from objects in a 3dimensional world. The term "discrete objects" is named after the discreteness of the space of lattice points. Some authors have proposed methods for representing discrete objects. First, Kong and Rosenfeld (1) and Voss (2) constructed a method of representing discrete objects using the graph theory approach. A graph is related to the data structure of a discrete object in a computer memory, so that the nodes and the vertices of the graph correspond to pointers and addresses in the computer, respectively. This approach, however, does not take into account the topological and geometric structures of discrete objects. Second, Herman (3~ and Udupa (4) proposed a method of representing discrete objects which contains topological structures of the objects. In their method, a discrete object * Author to whom correspondence should be addressed. E-mail:
[email protected] u.ac.jp.
Curve
Surface
Object
is represented by a set of voxels, or unit cubes, the centers of which are lattice points. In addition, the boundary of a discrete object is represented by a set of voxel faces which separate the object from its surroundings. Thus, the boundary of a discrete object is represented not by a set of voxels but by a set of pairs of voxels, because a voxel face is determined by two adjacent voxels. Third, in 3-dimensional computer graphics, the marching cube method (5) is well known to construct the surface of a discrete object. This method generates a set of triangles surrounding a discrete object in a lattice space, so that the vertices of triangles are determined by interpolating values between lattice points, assuming that each lattice point has a gray value. However, this method sometimes generates unexpected holes in the surfaces of discrete objects. Lastly, Francon constructed discrete combinatorial surfaces (6) as 2-dimensional manifolds in a lattice space. He applied classical combinatorial topology in 3dimensional Euclidean space to the definition of combinatorial manifolds in a lattice space. Our method of representing discrete objects is similar to Francon's method and we also apply classical combinatorial topology. (7) In combinatorial topology, simplexes are one of the fundamental properties used to define geometric and topological properties of objects. Simplexes have their dimensionalities and the dimensionalities can be from 0 to 3 in a 3-dimensional space. Simplexes of each dimension must be regarded as unit elements of the dimension. In 3-dimensional Euclidean space, 0-, 1-, 2- and 3-dimensional simplexes are defined as isolated points, line segments, triangles and tetrahedra, respectively. Thus, curves, surfaces and objects are described by sets of 1-, 2- and 3-dimensional simplexes, respectively.
1719
Y. KENMOCHI et al.
1720
In a lattice space, Francon defined simplexes under the condition that the vertices of simplexes must be lattice points. Although he proved the existence of simplexes of lattice points, he did not derive a method for the construction of these simplexes. In this paper, we show a method of constructing simplexes in a lattice space using a condition which is stricter than the condition defined by Francon. Under our condition, all vertices of simplexes must be lattice points, and besides, vertices of a simplex must be neighboring to each other. According to our method, we can define the finite number of simplexes in a lattice space, whereas the number of simplexes is infinite in Francon's method. Consequently, we can form discrete objects, surfaces and curves using a constructive method because we obtain the complete set of simplexes. It is desired to represent 1-dimensional curves and 2dimensional surfaces in a lattice space as well as 3dimensional discrete objects because of the fact that the boundary of an object consists of surfaces and the boundary of a surface consists of curves. Therefore, we introduce a new representation of not only discrete objects, but also curves and surfaces. In Section 2, we define simplexes in a lattice space with a number of dimensions from 0 to 3 after giving the definition of neighborhoods in the space. In Section 3, we introduce definitions of the fundamental properties in discrete combinatorial geometry. In Sections 4, 5 and 6, we define curves, surfaces and objects in a lattice space, respectively, using properties of discrete combinatorial geometry. We also prove that the boundaries of our combinatorial surfaces and objects consist of combinatorial curves and surfaces, respectively.
2. DISCRETE SIMPLEX
Let Z be the set of all integers; Z 3 is a set of lattice points, which have only integer coordinates, in a 3dimensional Euclidean space R 3. We refer to Z 3 as a discrete space. It is obvious that Z 3 is a subset of R 3. In this section, we focus on one of the fundamental properties of combinatorial topology, simplexes. According to classical combinatorial topology, ~7) n-dimensional simplexes are defined as n-dimensional elements in R 3 where n is from 0 to 3: 0-, 1-, 2- and 3-dimensional simplexes are isolated points, line segments, triangles and tetrahedra, respectively. In this section, we define the simplexes in Z 3. In order to define the simplexes in Z 3, knowledge of neighborhood properties is necessary. In Z 3, three kinds of neighborhood are defined as follows.
and Nz6(x) = {(p,q, +(k-r)
r)l(i _p)2 + (j _
q)2
2<3,p,q,rEZ}.
They are called the 6-, 18- and 26-neighborhoods, respectively. In Z 3, we can choose two points, such that the distance between them is a minimum, if they are neighboring to each other. This is because we can choose only lattice points in Z 3. The existence of the minimum distances implies the existence of minimum simplexes in Z 3, such that the distances between the vertices are minima. We call these minimum simplexes in Z 3 discrete simplexes. Discrete simplexes in Z 3 have dimensions from 0 to 3 as well as simplexes in R 3. We define discrete simplexes of dimensions from 0 to 3 in the rest of this section. Hereafter, we abbreviate the term n-dimensional discrete simplex to n-simplex if the discreteness is obvious.
Definition 2 (0-simplex). A 0-simplex consists of an isolated point x in Z 3, that is represented by [x].
Definition 3 (1-simplex). A l-simplex consists of two points x0, xl in Z 3, such that Xo c Nm(xl) where m=6, 18 or 26. It is represented by [x0,xl]. Because one of the three neighborhoods is considered in Z 3, 1-simplexes are defined depending on the choice of neighborhood. If we are concerned with the 6-, 18- and 26-neighborhoods, we obtain one, two and three 1-simplexes, respectively, as shown in the second line of Fig. 1. Here, we ignore the congruent 1-simplexes that differ from those in Fig. 1 by translations/rotations. For defining simplexes of more than one dimension, a unit cubic region, the vertices of which are eight lattice points and the sidelength of which is 1, is necessary. The region including a lattice point, x = (i,j,k), is denoted by
D(x)={(i+el,j+e2,k+e3)lep=Oorl}.
these n + 1 points are determined by Procedure 1. The 2simplex is denoted by [x0,xl,... ,xn].
Procedure 1 input: An initial point x0. output: A set of sequential points, xo,xl,...,xn, where n=2 or 3.
begin 1. Select two points, x~ and xz, such that
Xl E Nm(XO)
in Z3; three neighborhoods of x are defined as
+ ( k - r ) 2 <_l,p,q, r C Z } ,
and (1)
+ (k - r) 2 < 2, p, q, r E Z},
X2 E Nm(XO).
2. Ifx2~Nm(xl), select x3 in D(xo), such that
Nls(x) : {(p,q,r)l(i _ p ) 2 + (j _ q)2 (2)
(4)
Definition 4 (2-simplex). A 2-simplex consists of n + l points, Xo,Xl,... ,xn, in Z 3 where n=2 or 3, such that
Definition 1 (neighborhoods). L e t x = (i,j, k) be a point N6(x) = {(p,q,r)l(i _ p ) 2 + (j _ q)2
(3)
x3~Nm(XO)
Discrete combinatorial geometry
i
1721
18-neighborhood
6-neighborhoodJ
26-neighborhood
o
f
f
f
r,~
o
f
f
f
f
r~
r~
j=
o
Cq
r~ .,,-4 r,~
J
X
o
c~
vertices of a cube are lattice points in Z 3
Fig. 1. All possible discrete simplexes in Z 3 for the 6-, 18- and 26-neighborhoods.
and X3 ~- Nm(Xl) o N t o ( X 2 ) . end In this procedure, m can be 6, 18 or 26. Procedure 1 is used to create the finite number of 2-simplexes for each neighborhood, as shown in the third line of Fig. 1. If the 6-neighborhood is considered,
a square 2-simplex consisting of four vertices is obtained. If the 18-neighborhood is considered, two triangular 2-simplexes consisting of three vertices and one rectangular 2-simplex are obtained. If the 26neighborhood is considered, three triangular 2-simplexes are obtained. Note that Fig. 1 shows all possible 2-simplexes for each neighborhood if we ignore the congruent 2-simplexes, which differ from those in Fig. 1 by translations/rotations.
Y. KENMOCHI et al.
1722
Definition 5 (3-simplex). A 3-simplex consists of n + l points, x 0 , x l , . . . ,xn, in Z 3 where n=3, 4 or 7, such that these n + l points are determined by Procedure 2. The 3simplex is denoted by [ x 0 , x l , . . . , x n ] .
Procedure 2 input: An initial point Xo. output: A set of sequential points, x 0 , x l , . . . , x , , where n=3, 4 or 7.
begin 1. Select a sufficient number of points, XhX2,... ,xs, where s = 2 or 3, such that [x0, x l , . . . , xs] becomes a 2simplex in D(xo). 2. For each pair of adjacent points, xi and xi+t, where i = 0, 1 , . . . , s and xs+ 1 XO, determine a 2-simplex including the two adjacent points in D(xo), such as [xi,Xi+l,Yi(o),... ,Yi(t3] where ti = 0 or 1. Two points, which are included in two adjacent 2-simplexes, respectively, must satisfy the relation, =
Yi(ti) : YI+I(0), where i = O, 1 , . . . , s and Ys+l(O) = Yo(o). 3. IfYi(o) for i = O, 1 , . . . , s are equivalent points, set these Yi(o)S to be Xs+l. Otherwise, set these Yo(o),Yl(o),..- ,Ys(o) to be x~+l,xs+2,... ,x2s+2.
end
neighborhood. In this example, because 2-simplexes which are created in step 2 of Procedure 2 are all squares, new points determined in step 2 are eight points, Yi(o) and Yi0) for i = 0, 1,2,3. These eight points satisfy the relations indicated in step 2, which are described by Yi(1) = Yi+l(0)
(6)
for i = 0, 1,2,3 where Y4(0) =Y0(0)- Thus, in step 3 of Procedure 2, these eight points are reduced to four points and they are set to be x4, xs, x6 and x7. Note that these four points constitute a 2-simplex Ix4, xs, x6, x7]. Using Procedure 2, we can create a finite number of 3simplexes for each neighborhood, as shown in the last line of Fig. 1. If the 6-neighborhood is considered, only a cubic 3-simplex which includes eight lattice points at the vertices of a cube is determined. If the 18-neighborhood is considered, two tetrahedral 3-simplexes, each of which includes four vertices, and one pentahedral 3-simplex, which includes five vertices, are determined. If the 26neighborhood is considered, three tetrahedral 3-simplexes are determined. Note that all possible 3-simplexes are shown in Fig. 1, as well as 2-simplexes, if we ignore the congruent 3-simplexes which differ from those in Fig. 1 by translations/rotations.
3. DISCRETE COMBINATORIAL GEOMETRY
In this procedure, m can be 6, 18 or 26. Figure 2 illustrates two examples of the process of 3simplex construction by Procedure 2. The example (a) shows a case for the 18- and 26-neighborhoods. In this example, because 2-simplexes which are created in step 2 of Procedure 2 are all triangles, new points determined in step 2 are three points, Y0(0),Yl(0) and Y2(0)- These three points must satisfy the relations indicated in step 2, which are described as Yo(0) = Yl(0) = Y2(o).
(5)
Thus, in step 3 of Procedure 2, these three points are set to be x3. Example (b) shows a case of the 6-
In combinatorial geometry, an n-dimensional geometric object, where n can be from 0 to 3 in a 3dimensional space, is described by a combination of n-dimensional simplexes. This combination of simplexes is called a complex, which is one of the fundamental properties in combinatorial topology as well as a simplex. In this section, we define complexes in Z 3, which we call discrete complexes, and other topological properties in Z 3. Those topological properties in R 3 were defined by Aleksandrov. (7) However, some of them are necessary to be redefined in Z 3 because of the discreteness of Z 3. In addition, it is also required to generalize the dimensions of those properties, so that we can use the properties of any dimension from 0 to 3 in Z 3.
1(0)=Y2(0) Xl
x2
X l ~
X2
YO(O)=Y3=(1) .=Y3(o)=Y2(1)
yl(o)=yo(1]ld~r
(b)
l~J~ x3 ~'1~" ,,.¢l==,==zr ^1 x2
~
1
~
X2
~ , ~ _ x7
x5q ~ , '
] ~ ~ Y2(°)=Y1(1),~ll~ 6====W~-x3 Gm==zl~-x3 Xl x2 xI x2
Fig. 2. Two examples of the process of 3-simplex construction by Procedure 2: (a) an example for the 18and 26-neighborhoods, (b) an example for the 6-neighborhood.
Discrete combinatorial geometry
1723
In order to extend the techniques for combining simplexes to form a complex in R 3 to Z 3, it is necessary to consider discrete simplexes, not in Z 3 but in R 3, even if discrete simplexes themselves exist in Z 3. In other words, it is necessary to embed discrete simplexes into R 3. This is because we need to analyze how to combine discrete simplexes, not in Z 3 but in R 3. We refer to these discrete simplexes embedded in R 3 as embedded simplexes.
Definition 6 (embedded simplex). The embedded simplex of an r-simplex, [xo,xl,... ,x~], is defined as
(7)
Fig. 3. An example of a 3-complex for the 26-neighborhood.
Obviously, an embedded simplex is equivalent to the convex hull of the vertices of the discrete simplex. Here, note that the embedded simplex does not include its boundary. Although both embedded simplexes and ordinary simplexes exist in R 3, they are clearly different. For instance, an ordinary simplex [xO,Xl,...,xn] always consists of n + l linearly independent vertices, such that n vectors, xi - xo for i = 1 , 2 , . . . , n, are linearly independent, whereas the vertices of an embedded simplex are not always linearly independent. In order to define discrete complexes, the following function is also necessary.
n and less than n. An example of 3-complexes for the 26neighborhood is illustrated in Fig. 3. The discrete simplexes which constitute the 3-complex in Fig. 3 are all discrete simplexes for the 26-neighborhood in Fig. 1. Because of the second condition, the embedded simplexes of the discrete simplexes included in a discrete complex do not have any common points except for the points in their faces. In other words, discrete simplexes do not intersect each other except at the lattice points. We introduce two properties of discrete complexes, namely, pureness and connectivity.
Definition
Definition 9 (pure n-complex). An n-complex K is pure
7 (face). The face of an r-simplex [x0,x~,... ,xn], is defined as the set of all s-simplexes where s < r, which are included in the r-simplex. The face of [xo,xl . . . . ,x,] is denoted by
[a] C face([b]),
(9)
where [b] is one of the n-simplexes in K.
face(Ix0,xl,... ,x,])
: {[Xi(o),Xi(i),...
if every s-simplex in K, [a], where s < r, satisfies
,Xi(p) ] IXi(k) = Xj, p < n}, (8)
where 0 < k < p and 0 < j _< n. Each element of a face is called an s-face if the element is an s-simplex. Using this term, we can say that a 1simplex includes 0-faces, a 2-simplex includes 0- and 1faces, and a 3-simplex includes 0-, 1- and 2-faces. For example, a 3-simplex for the 6-neighborhood includes eight 0-faces, twelve 1-faces and six 2-faces as shown in Fig. 1. Note that there is only one 3-simplex for the 6neighborhood.
Definition 8 (discrete complex). A finite set of discrete simplexes, K, is called a discrete complex, if the following conditions are satisfied: 1. If [a] E K, face([a]) C K. 2. If [all, [a2] E K and lall n
la21 ¢ 0, [all = [a2].
Here [a] and lal are a discrete simplex and the corresponding embedded simplex, respectively. The dimension of a discrete complex K is equivalent to the maximum dimension of all simplexes which belong to K. Hereafter, we abbreviate n-dimensional discrete complexes to n-complexes if their discreteness is obvious, as well as n-simplexes. An n-complex is a combination of discrete simplexes, the dimensions of which are
Definition 10 (connected n-complex). An n-complex K is connected if we can define a path between two arbitrary elements in K, [a] and [b], such as [al] = [a], [a2],..., [an] = [b],
(10)
where [a,] c K and [ai] n [ai+l] # 0. In a pure n-complex, discrete simplexes of dimensions less than n do not exist unless they belong to the faces of n-simplexes. The 3-complex in Fig. 3 is not pure because it includes 1- and 2-simplexes which do not belong to any 3-simplex. If we delete these 1- and 2-simplexes from the 3-complex in Fig. 3, the pure 3-complex in Fig. 4 is obtained. Because the definition of discrete complexes is not related to the connectivity of a discrete complex, a discrete complex can consist of several connected elements, that is, connected discrete complexes. Both 3complexes in Fig. 3 and Fig. 4 are connected. Another local topological property in Z 3 is introduced using discrete complexes.
Definition 11 (star). Let x be a vertex of a discrete complex K. The star o f x with respect to K is defined as a ( x ) = {[a]lx C [a], [a] E K ) .
(11)
If we want to emphasize the set K, a(x) can also be
Y. KENMOCHI et al.
1724
Fig. 4. An example of a pure 3-complex for the 26neighborhood. This 3-complex is derived from the 3-complex in Fig. 3 by removing the 1- and 2-simplexes which do not belong to any of the 3-simplexes in the 3-complex in Fig. 3. denoted by a(x : K). The star is a function of each lattice point x, and provides a set of all discrete simplexes including x. Using the star, we can analyze the local topological properties of each lattice point. In order to classify the topological properties derived from the star, the following function is required.
Definition 12 (outer boundary). The outer boundary of the star of a lattice point x is defined as L~(x)J =
u face([a])\~r(x). [a]c~(.)
(12)
•
a point whose star is semi-linear
0
a point whose star is linear
•
a point whose star is neither linear nor semi-linear
Fig. 5. Examples of points whose stars are linear and semilinear. The 6-neighborhood is assumed in this figure.
which are neither linear nor semi-linear in a connected and pure 1-complex, the 1-complex must not include intersection points of a curve. In other words, Definition 15 implies that a discrete curve has no intersection point because the star of every point is either linear or semilinear. Furthermore, if we remove points, the stars of which are semi-linear from a discrete curve, we can also define a discrete curve without a boundary, which we call a discrete closed curve.
4. DISCRETE CURVE
In order to define curves in Z 3, which we call discrete curves, we define two topological properties of each lattice point using the star. They are referred to as linear and semi-linear stars, respectively.
Definition 16 (discrete closed curve). Let K be a connected and pure 1-complex. If the star of every point included in K is linear, then K is a discrete closed curve. In a similar way, we can define the boundary of a discrete curve.
Definition 13 (linear star). If a point x in Z 3 satisfies the Definition 17 (discrete curve boundary). Let K be a
formula:
L~(x)] = {Ix,l, Ix2]},
(13)
then or(x) is linear.
discrete curve; the boundary of K, OK, is a set of points, the stars of which are semi-linear. The following theorem is derived from the above definitions.
Definition 14 (semi-linear star). If a point x in Z 3 satisfies the formula: L~r(x)J = {Ix1]},
(14)
then c~(x) is semi-linear. Figure 5 illustrates points of stars which are linear and semi-linear. We assume the 6-neighborhood in Fig. 5. This figure shows that a point is an endpoint of a curve if its star is semi-linear and that it is an intermediate point of a curve if its star is linear. If a point is neither linear nor semi-linear, the point is at an intersection of a curve. Using these two properties of stars, we can define discrete curves in Z 3.
Definition 15 (discrete curve). Let K b e aconnected and pure 1-complex. If the star of every point included in K is linear or semi-linear, then K is a discrete curve. According to the definition, unit segments of discrete curves are 1-simplexes. If we remove points, the stars of
Theorem 1. If a discrete curve K is not closed, then the boundary of K is a set of two 0-simplexes, such as OK = {[Xl], [x2]}.
(15)
Proof. Since K is not closed, OK is not an empty set according to Definition 17. First, we assume that OK has only one element, a 0-simplex, [x]. Because K is a discrete curve, the stars of all points in K\tgK must be linear. Therefore, we can trace a path from x to all the points in K \ 0 K along the curve, which becomes infinitely long. However, this leads to a contradiction because K is a finite set. Thus, OK is not a set with only one element. Next, we assume that OK is a set of at least three 0-simplexes. All the elements of OK are connected via paths consisting of discrete simplexes in K, because K is connected. This implies that there exist some points in KqOK, the stars of which are not linear or
Discrete combinatorial geometry even semi-linear. However, this leads to a contradiction because the star of every vertex in K must be either linear or semi-linear. Thus, OK is not a set of more than two 0simplexes. Consequently, OK is a set of two 0-simplexes.
1725
the star of a point is neither cyclic nor semi-cyclic, then the point is at an intersection of discrete surfaces. Using these two topological properties, we can define discrete surfaces.
(Q.E.D.) Definition 5. DISCRETE SURFACE
In order to define surfaces in Z 3, which we call discrete surfaces, we define two topological properties of lattice points using stars. These properties are called cyclic and semi-cyclic stars and the terms were introduced by Aleksandrov. (7)
20 (discrete surface). Let K be a connected and pure 2-complex. If the star of every point included in K is cyclic or semi-cyclic, then K is a discrete surface. Because the star of every point in a discrete surface is either cyclic or semi-cyclic according to Definition 20, a discrete surface cannot intersect itself. If we remove all points, the stars of which are semi-cyclic in a discrete surface, then the discrete surface becomes a discrete surface without a boundary.
Definition
18 (cyclic star). If La(x)J is a discrete closed curve, then cr(x) is cyclic.
Definition
19 (semi-cyclic star) If L~r(x)j is a discrete curve which is not closed, then a(x) is semi-cyclic. Figure 6 illustrates points of which stars are cyclic and semi-cyclic. We assume the 6-neighborhood in Fig. 6. This figure shows that a point becomes a boundary point of a discrete surface if its star is semi-cyclic, and an interior point of a discrete surface if its star is cyclic. If
Definition
21 (discrete closed surface). Let K be a connected and pure 2-complex. If the star of every point included in K is cyclic, then K is a discrete closed surface. We can define the boundary of a discrete surface in a similar way to Definition 21.
Definition 22
(discrete surface boundary). Let K be a discrete surface and H be a set of points in K, the stars of
a point whose star is semi-cyclic 0
a point whose star is cyclic a point whose star is neither cyclic nor semi-cyclic
Fig. 6. Examples of points whose stars are cyclic and semi-cyclic. The 6-neighborhood is assumed in this figure.
Y. KENMOCHI et al.
1726
which are semi-cyclic. The boundary of K is described by
According to equation (20), ~r(x : OK) is linear. Consequently, OK is a finite number of discrete closed curves. (Q.E.D.)
OK = B0 U B1,
(16)
Bo = {Ix] Ix c H},
(17)
6. DISCRETE OBJECT
(18)
In this section, we define 3-dimensional objects in Z 3, which we call discrete objects, using the topological properties of stars. We also present the relationship between discrete objects and discrete surfaces, which is similar to the relationship between discrete surfaces and discrete curves in Theorem 2. Two topological properties of lattice points are defined using stars as follows.
where
B 1 ~- {Ix,y] Ix C H, [y] E
O(L~(x)A)}.
The above definitions lead to the following theorem.
Theorem 2. If a discrete surface K is not closed, then the boundary of K, OK, consists of a finite number of discrete closed curves. Proof. For a point x in OK, discrete simplexes included in cr(x : OK) are classified into the following two types: 1. A 0-simplex [x]. 2. A 2-simplex [x,y], where [y] c 0(L~(x : K)J).
(19)
which leads to Lo-(x : 0K)J = {[~l], ~2]}-
La(x)J
is a discrete
closed surface, then cr(x) is spherical.
Because cr(x : K) is semi-cyclic, [a(x : K)] is a discrete curve with a boundary. Thus, 0([~r(x : K)J) consists of two points, Yl and Y2. Therefore,
a(x : OK) = {[x]} U {[x,yl], [x,y2]},
Definition 23 (spherical star). If
(20)
Definition 24 (semi-spherical star). If La(x)J is a discrete surface which is not closed, then tr(x) is semi-spherical. Figure 7 illustrates the points of stars which are spherical and semi-spherical. We assume the 26-neighborhood in Fig. 7. The term spherical star is used because a point whose star is spherical is topologically equivalent to the central point of a sphere. Therefore, a point whose star is spherical corresponds to an interior point of a
0
a point whose star is semi-spherical
0
a point whose star is spherical
Q
a point whose star is neither spherical nor semi-spherical Fig. 7. Examples of points whose stars are spherical and semi-spherical. The 26-neighborhood is assumed in this figure.
Discrete combinatorial geometry
1727
0
a point whose star is semi-spherical
0
a point whose star is spherical
Fig. 8. An example of discrete objects in Z 3 for the 26-neighborhood.
discrete object. Similarly, a point whose star is semispherical is topologically equivalent to a boundary point of a sphere. Therefore, it corresponds to a boundary point of a discrete object. These topological properties of spherical and semi-spherical points are shown in Fig. 7. Figure 7 also indicates that a point whose star is neither spherical nor semi-spherical is at an intersection point of discrete objects. Using these two properties of stars, we can define discrete objects.
Definition 25 (discrete object). Let K be a connected and pure 3-complex. If the star of every vertex in K is spherical or semi-spherical, then K is a discrete object. Figure 8 illustrates an example of discrete objects for the 26-neighborhood. For discrete curves and surfaces, we can define discrete closed curves and surfaces by removing points whose stars are semi-linear and semicyclic, respectively. However, we cannot remove points whose stars are semi-spherical in discrete objects; there is no discrete object without a boundary in Z 3. The proof is shown as follows.
Theorem 3. Let K be a discrete object. A set of points in K, the stars of which are semi-spherical, is never empty in Z 3. Proof. Assuming that the set of all points in K, whose stars are semi-spherical, is empty, the star of every point in K must be spherical. If the star of every point in K is spherical, then we must embed the infinite number of 3simplexes in Z 3, such that there is no space between them, because all of these points are topologically equivalent to the center of a sphere. However, this leads to a contradiction because K consists of a finite number of 3-simplexes and their faces. Consequently, K includes some points whose stars are semi-spherical. (Q.E.D.)
Theorem 3 implies that a discrete object always has a boundary, which is defined as follows.
Definition 26 (discrete object boundary). Let K be a discrete object and H be a set of points in K whose stars are semi-spherical. The boundary of K is defined as OK = B0 U B1 U B2,
(21)
where Bns are sets of n-simplexes described by Bo = {Ix]Ix ~ H},
(22)
B, = {[x,y]lx • H, [y] c O(ta(x)])},
(23)
B2 = {[x0,xl,... ,x,] Ix0 C H, [xi,xi+l] E 0(L(x0);) for i = 1 , 2 , . . . , n -
1}.
(24)
Analogous to Theorem 2, we can show that a union of three sets, Bo, Bl and B2, form discrete closed surfaces.
Theorem 4. If K is a discrete object, then the boundary OK consists of a finite number of discrete closed surfaces. Proof. For a point x in OK, the discrete simplexes included in a(x : 0K) are classified into the following three types: 1. A 0-simplex Ix]. 2. A 1-simplex Ix,Y] where [y] c cO([a(x : K)A). 3. A 2-simplex [ x , y l , . . . ,y,], such that [~i,Yi+x] E 0([Er(x : K)J) for i = 1 , 2 , . . . , n -- 1. Because ~r(x: K) is semi-spherical, [~r(x : K)J is a discrete surface with a boundary. According to Theorem 2, 0([a(x : K)J) consists of a finite number of discrete closed curves. Assuming that 0([a(x : K)J) consists of more than one discrete closed curve, that is, [a(x : K)] contains several holes in the discrete surface, then
Y. KENMOCHI et al.
1728
~r(x : K) cannot be semi-spherical. Thus, 0 ( [ a ( x : K)J) consists of only one discrete closed curve. Let p be the number of points in 0( [cr(x : K)J ), which are neighboring to x;
a(x : 0 K ) = { [ x ] } U{[x,Yi(1)]li= 1 , 2 , . . . , p } U{[x,Yi(1), . . . ,Yi(n)] l i = 1 , 2 , . . . ,p}, (25) where Yi(n) = Yi+I(I) and Yp(n) = Yl(1). Let q be the total number of points in 0(L~r(x : K)J), where q > p; equation (25) leads to [O'(X : 0K)J
of a finite number of discrete closed curves, and the boundary of a discrete object consists of a finite number of discrete closed surfaces. In references (8,9), we applied our method for representing discrete objects using real data and presented algorithms that can be used to extract the boundary of a discrete object. Because our representations preserve the topological structures of the objects of interest, we can correctly calculate geometric parameters such as the Euler numbers of objects and the curvatures of curves and surfaces on the boundaries of objects.
: {[~i] I i : 1 , 2 , . . . , q}
u {[v,y(i+l)] Ii= 1,2,...,q},
(26)
where Yq+l : Y l . Because La(x : 0K)J is a discrete closed curve, ~r(x : OK) is cyclic. Consequently, OK includes a finite number of discrete closed surfaces. (Q.E.D.)
7. CONCLUSIONS We presented new representations of 1-dimensional curves, 2-dimensional surfaces and 3-dimensional objects in a discrete space using combinatorial geometry. Because n-dimensional objects are described by combinations of n-dimensional simplexes in combinatorial geometry, we defined n-dimensional discrete simplexes, first, where n is from 0 to 3. Although Fran0on proved the existence of simplexes in a discrete space, c*) we derived the procedures for creating discrete simplexes of each dimension. We also showed that there exists a finite number of discrete simplexes depending on the neighborhoods in a discrete space. In terms of combinations of these 1-, 2- and 3-simplexes, we defined discrete curves, surfaces and objects, respectively. In addition, we proved that the boundary of a discrete curve consists of two lattice points, the boundary of a discrete surface consists
REFERENCES
1. T.Y. Kong and A. Rosenfeld, Digital topology: Introduction and survey, Comput. Vision Graphics Image Process. 48, 357-393 (1989). 2. K. Voss, Discrete images, objects, and functions in Z n, Algorithms and Combinatorics, 11, Springer-Vedag, Berlin, Heidelberg (1993). 3. G.T. Herman, Discrete multidimensional Jordan surfaces, CVGIP: Graphical Models and Image Process. 54, 507515 (1992). 4. J.K. Udupa, Multidimensional digital boundaries, CVGIP: Models and Image Process. 56, 311-323 (1994). 5. W. E. Lorensen and H. E. Cline, Marching cubes a highresolution 3D surface construction algorithm, Computer Graphics (SIGGRAPH87) 21, 163-169 (1988). 6. Fran~on, J. Discrete combinatorial surface, Graphical Models and Image Process. 57, 20-26 (1995). 7. E S. Aleksandrov, Combinatorial Topology, 1, Graylock Press, Rochester, NY (1956). 8. Y. Kenmochi, A. Imiya and A. Ichikawa, Boundary extraction of discrete objects, to appear in Computer Vision and Image Understanding (1995). 9. Y. Kenmochi, A. Imiya and N. Ezquerra, Polyhedra Generation from Lattice Points, Serge Miguet, Annick Montanvert and St6phane Ub6da, eds, pp. 127-138. Lecture notes in computer science 1176: Discrete Geometry for Computer Imagery, Proc. 6th Int. Workshop, DGCI'96, Lyon, France, Springer-Verlag, Berlin, Heidelberg (1996).
About the Author--YUKIKO KENMOCHI obtained her B.E. and M.E. degrees from the Department of Information and Computer Sciences, Chiba University in 1993 and 1995, respectively. She is now preparing her doctoral dissertation on discrete geometry.
About the Author--ATSUSHI IMIYA obtained his B.E., M.E. and Ph.D degrees from Tokyo Institute of
Technology in 1980, 1982 and 1985, respectively. He was with the Department of Electrical and Computer Engineering, Kanagawa University from 1985 to 1990. Since the summer term of 1990, he has been an associate professor of the Department of Information and Computer Sciences, Chiba University. He is currently a secretary of CVCV-WG in SIG-CV of IPSJ.
About the Author--AKIRA ICHIKAWA received his B.E. and Ph.D. degrees in Electrical Engineering from Keio University in 1964 and 1981, respectively. In 1964 he joined the research staff of the Hitachi Central Research Laboratory, where he engaged in all areas of speech processing as the leader of the speech processing and human interface research group. Since 1992 he has been a professor of the Department of Information and Computer Sciences, Chiba University. He received the IEICE Paper Award in 1989. He served as a Director of the IEICE from 1986 to 1987, and a Councillor of the Acoustical Society of Japan from 1991 to 1995. He is a member of the IEICE, IEEE, ESCA, Acoustical Society of Japan, Information Processing Society of Japan and the Association for Natural Language Processing, etc.