Digital image object shapes are considered in,e.g.,  and more recently in [15, §5.4],[16, §7.3ff], [17, 2, 18]. In this paper, the basic approach in detecting shapes in 2D images is to decompose them based on selected vertices (pixel locations), into collections of filled triangles called simplicial complexes (briefly, complexes) that cover image object shapes. As a result, we can consider the geodesics (locally length-minimizing curves) embedded in complexes. This provides us with a means of assessing the acuity of such complexes in approximating the shapes of image objects.
Briefly, a geometric simplicial complex is the convex hull of a set of vertices , i.e., the smallest convex set containing . Geometric simplexes in this paper are restricted to vertices (0-simplexes), line segments (1-simplexes) and filled triangles (2-simplexes) in the Euclidean plane, since our main interest is in the extraction of features of simplexes superimposed on shapes in planar digital images.
An important form of simplicial complex is a collection of simplexes called a nerve, introduced by P. Alexandroff [3, §33, p. 39]. A planar complex is a nerve, provided the simplexes in have nonempty intersection equal to a vertex (called the nucleus of the nerve). An Alexandroff nerve of a complex (denoted by ) is a collection of 2-simplexes in the triangulation of a plane region, defined by
The nucleus of a nerve complex is a vertex common to the 2-simplexes in a nerve . A collection of 2-simplexes in a nerve with nucleus have nonempty intersection, since they share the nucleus.
The Alexandroff nerve complex has recently been extended with collections of triangles called -spokes.
[2, def. 8] A -spoke denoted by , and is a topological structure which generalizes the notion of a nerve complex. A in a simplicial complex is a simplex (or a Delta()-set) that has a non empty intersection with a simplex (or a Delta()-set) in the . This is a recursive definition with the base case equal to the nerve complex nucleus. This can be formally defined as each element of the set for and for it is equal to the nucleus. ◼
Using this notion of a -spoke, we can further define a -spoke complex
[2, def. 9] A -spoke complex () is the union of all the -spokes () in an image. ◼
Sample rectilinear and curvilinear spokes complexes are shown in Fig. 1. ◼
Spoke complexes provide the backbone of triangulated image object spaces.
[2, def. 13] An object space, , is defined as the union of all the k-spoke complexes with a vertex as the nucleus, i.e., . ◼
The notion of -spokes leads to useful geometric structures called -spoke chains.
The -spoke chain is denoted by . It is defined as, . ◼
This section briefly introduces structures useful in characterizing image object shapes.
2.1. Object Boundary and Interior Spokes
In this paper we introduce a boundary operator which extracts the boundary of a triangulated topological space.
Let be a topological space that has been triangulated, and be the object space. Then, the boundary operator , where . Here the are the -simplices. ◼
Let us talk about the regularity of the boundary of the object space (). For this purpose we define boundary spokes().
Each of the is a face of a . Each of these -simplexes is called the boundary spoke . ◼
Here an important observation should be noted.
It is possible that the boundary spokes belong to with different values of . This leads to an observation about the regularity of an object space . Building on this observation we define the regularity of the Object space . ◼
Object Space Regularity Condition.
For an object space , if all for the same , then is said to be regular. ◼
If the condition in the Def. 7 is not satisfied, the object space is termed irregular. Since, we have theorized that the boundary spokes () can be in different -spoke complexes (), a different topological structure is required to characterize them.
For the boundary spokes , the boundary spoke complex is defined as, . ◼
In addition to the notion of the boundary, a closely related notion of the interior follows.
The interior of the object space is defined as , i.e., is the object space without its boundary. ◼
We draw a parallel by extending the notion of the boundary spoke complex to interior spoke complex.
The interior spoke complex(denoted by intskcx(Op)) is defined by , where are the -simplices in . ◼
Object Space Boundary and Interior.
For this example, consider the topological space in Fig. 1.1. Here, the object space is a subset of a topological space , which is the Euclidean plane. The object space has been triangulated by selecting vertices (all the green points in the figure) from the space. In Fig. 1.1, the point denoted by a green diamond is the nucleus(point ) of the maximum nuclear cluster. Next, consider -spokes, introduced in Def. 1. There are spokes which have the nucleus in common and are represented by yellow triangles, and spokes represented as gray triangles. Similarly, there are two spoke complexes (cf. Def. 2) with triangles each, namely, (union of yellow s) and the (union of gray s). The object space () is the union of these spoke complexes as per Def. 3.
Now consider the boundary of the object space . To clarify the concept of the boundary of the object space as defined in the Def. 5, we identify all the -simplices(lines) that cannot be expressed as the intersection of -simplices in . All such -simplices are coloured blue in Fig. 1.1. The union of all these simplices is the boundary of the object space(). Next, the boundary spoke complexes , introduced in Def. 8. We can observe that each of the -simplices that form the boundary () are a face of one of the -simplices of the object space . Each of these -simplices is a boundary spoke () and the union of these spokes gives us the boundary spoke complex of the object space(). In the figure, the is the union of all the triangles except the ones bounded by red lines. We can see that the triangles in the boundary spoke complex () are components of different spoke complexes. Hence, from Def. 7, this object space is irregular.
Finally, consider the notion of interior (int) and the interior spoke complex () of the object space . The interior of the object space(), Def. 9, is the whole object space except the boundary, which is the blue line. Moreover, the union of the triangles with red boundary form the interior spoke complex () as defined in Def. 10.
Similar observations for the boundary and interior of in the curvilinear triangulation in Fig. 1.2. ◼
2.2. B-splines and Non-Uniform Rational B-splines (NURBS)
Example 2 illustrates some topological structures useful in image object shape analysis using rectilinear triangulation of an object space. These structures are built on the notion of sets and thus directly carry over to curvilinear triangulation, achieved using B-splines.
-dimensional vector be defined as
-dimensional vector be defined as, where is a non-decreasing sequence with . The vector is called a knot vector. A set of control points are also defined as . The degree of the spline is defined as The basis functions are defined as:
The curve defined by is a B-spline. ◼
In this paper, B-Splines are extended with weights to obtain a useful form of NURBS (NonUniform Rational B-Spline). The following definition of NURBS has been adapted from [21, def. 4.3 p. 130].
Let be a set of control points, be a set of weights and be the basis functions as per Def. 11, where the degree of the spline is . Further, let be a parameter in the range . Then a non-uniform rational B-spline (NURBS) is defined as:
In addition, rational B-spline basis functions are defined as follows:
NURBS can be used to represent straight lines and conic sections[21, § 4.5]. Recall that a convex hull of a set of points is defined as follows.
For a set of points and a weight for each point, the convex hull of the set is defined as: ◼
Next, consider a few important properties of NURBS.
[21, p.131] Let be NURBS curve.Then,
Strong Convex Hull Property: For , lies within the union of convex hulls formed by successive control points , where is the degree of the curve.
Projective Invariance: is invariant under a projective transformation, , i.e. applying to the control points applies it to .
Two Properties of NURBS.
Theorem 1 Properties are illustrated with the following examples.
The strong convex hull property of the NURBS is used extensively in this work. This property states that a NURBS of degree lies in the convex hull of successive control points. We can see in the Fig. 2.1, that a NURBS lies in the convex hull of control points , then in the convex hull of and finally in the convex hull of .
This illustrates the strong convex hull property for NURBS shown of degree . Thus this NURBS lies in the convex hulls of successive control points.
The second property that we will be discussing in this work is the invariance of NURBS under projective transformations. This means that applying the projection to the NURBS curve would yield the same result as applying it to the control points alone. The weights would also be transformed as a result of theorem 1. To aid the description of this property, we use Fig. 2.2. Let us look at the NURBS(in blue) defined by the control points shown in green. The black diamond marks the optical center of the projective transform. The projected NURBS(in black) is defined by the control points shown in red. It must be noted that instead of transforming the whole blue NURBS into the black NURBS by the projective transformation , we can just transform the green control points to the red control points with the same transformation. Then we can just construct the NURBS(using Def. 12) using modified weights. The whole projective transformation can be seen as analogous to film projection by a light source.
2.3. Object Space Equipped with Proximities
Let be an object space with the vertex as the nucleus. We will equip this object space with different proximity relations, namely Lodato(), strong() and descriptive() proximities. Moreover, we define a few more terminologies. Let denote a list of filled triangles in the topological space . The image function () defines color intensity of the image at each point in the topological space , which is an euclidean plane for the case of planar . The operator is a set of complex numbers() representing the gradient magnitude and orientation of the image function () at each of the vertices, is the set of edge lengths and the is the set containing areas of the filled triangles.
Consider the notion of a filled triangle, which is the intersection of closed half planes . A filled triangle can be represented as a planar region defined by three inequalities.
A filled triangle () is defined as intersection of planar regions specified by following inequalities:
where all . ◼
We can consider topological structures on such closed sets (). However, we can not talk about strong nearness() between adjacent filled triangles. This is obvious from the axiom (snN4) in [17, § 2.3 p. 5], which states that
From the definition of -spokes(1) and -spoke complex, it is obvious that the intersection between two -spoke complexes with different values of can only have a vertex or an edge as an intersection. Both the edge and the vertex are elements of the boundary of the spokes involved. Suppose and are two adjacent spoke complexes in the same object space . Then, . This leads to and thus we can only say that from axiom (P3)[17, § 2.3 p. 5] but we cannot conclude, that . Hence, we can say that two adjacent spoke complexes in an object space() are near but not strongly near, since the interiors of adjacent spokes do not overlap.
In practice in the triangulation of digital images, filled triangles are sub-regions of an image and neighbouring image regions are strongly near. To see this, observe that adjacent pixels have overlapping receptive fields. Thus we must extend the notion of closed filled triangles defined in Def. 14 to the notion of open filled triangles. To do this, it is necessary to formulate a notion of open triangles which can ensure that the adjacent filled triangles have intersecting interiors and are thus strongly near.
A straightforward strategy is to replace the with in Def. 14. This strategy is also displayed in Fig. 3. This leads to a difficulty that the adjacent filled triangles formed as a result would not have a intersection. This is due to the fact the close filled triangles had either a vertex or an edge as intersection, which were boundary elements. The open filled triangles defined in this way result in intersecting vertices and edges to be excluded from both the triangles. This problem can be addressed by adding an arbitrarily small constant to each of the inequalities and then changing the to . This will construct the open triangles with non-empty intersections and thus the resulting adjacent spoke complexes will be strongly near. Open filled triangles are defined as follows.
Open Filled Triangles.
An open filled triangle is defined as the region in the intersection prescribed by the following three inequalities with appropriate signs:
where all and is an arbitrarily small constant. ◼
This type of an open filled triangle is shown in Fig. 3.
Now extending this to the case of curvilinear triangles(). Observe that the curvilinear triangles () are a generalization of the rectilinear triangles(). We can consider . Here is a projection. By looking at both the Figs. 1.1 and 1.2 we can see that the combinatorial properties (number faces of degree and ) of both the and are the same. Moreover, each of the straight lines in the is replaced by a curved line to give . Thus, the intersection properties of the adjacent triangles are the same for both the and . Moreover, we can generalize the concept of open and closed filled triangles to include the concept of . We replace the system of linear inequalities with a system of nonlinear inequalities.
A curvilinear open filled triangle is defined as the region in the intersection prescribed by the following three inequalities with appropriate signs:
where all and is an arbitrarily small constant. is a continuous function. ◼
A rectilinear open filled triangle is a special case of the curvilinear open filled triangle for .
Based on this remark, we can drop the word curvilinear or rectilinear for open filled triangles. Hence, from here on we mention both cases as filled open triangles and the curvilinear or rectilinear nature of the triangle will be dictated by the context of the discussion.
2.4. Homotopy Equivalence
Now, we discuss the preliminaries of the homotopy theory. We present the notion of homotopy equivalence.
A map is called a homotopy equivalence between the two spaces, and , provided there is a map , such that and . The is the composition of two maps.
Let us discuss when the two continuous maps are homotopic.
Suppose there are two continuous maps . These two maps are considered to be homotopic (), if there exists a family of continuous maps , continuously depending on the parameter such that, and .
The family of functions in (the space of all the functions from space to space ) is a path from function to function .
Let us look at the two NURBS shown in Fig. 2.2. Here, we can can consider both the NURBS as separate topological spaces. The blue curve is and the black curve is , both of which exist in a D euclidean space. Here we can see that a simple scaling operation can be used to project on to . Thus the map can be represented as a matrix: . Moreover, we can also represent a projection from onto as . The map can be represented as a matrix: . We can see that and as the center of projection for both the maps is the same. Thus, as per Def. 17, is homotopically equivalent to .
Let us now define the concept of an inclusion and a retract.
Let then a map is the embedding of the space in is called an inclusion. Further, let us define a map such that . Then, the map is called the retract.
Let us clarify this concept with the help of an example.
Suppose there are two sets and in a topological space . Then the union of is the inclusion operator . Then we can define a thresholding function, on the set , such that the values of set remain unchanged and the rest all goes to zero. Then, it can be seen that . Thus, the function is an example of a retract by the Def. 19.
2.5. Useful Results
In this section we present results regarding rectilinear() and curvilinear () object spaces.
Suppose that and the are the rectilinear and the curvilinear object space associated with the nucleus . From the Def. 6 at least one of the faces of a is in the boundary. Moreover, the edge that forms the boundary is just included in one triangle. There are three possibilities for a . It can have , or all of its edges in the boundary. The following argument is true irrespective of the number of edges a contributes to the boundary. From the Alg.2 and the definition of boundary spoke(Def. 6)the NURBS that forms the boundary of the has just the vertices of the as the control points. This is due to the fact that boundary is only included in one triangle. From theorem 1 we know that the NURBS lies in the convex hull of these control points. Moreover, it is obvious that the rectilinear boundary spoke is the convex hull of its vertices. Thus the is the union of the straight edges contributed by . From this we can conclude that the NURBS that forms curves towards the interior of the boundary spoke. This results in the conclusion that . ∎
is invariant under a projective transformation applied to the digital image.
Let be a triangulated topological space with a as a set of key points. The basic building block of this triangulation and the resulting object space,, are NURBS which define the open filled curvilinear triangles() as per Def. 16. It is obvious from the construction of the curvilinear triangulation(Alg. 2 ) that control points for all the NURBS are in the set . When is mapped to by a projective transformation , the set is also mapped to under the same projection. From theorem 1, it is clear that applying a projective transformation to the NURBS is equivalent to applying it to the control points and the weight vectors. Thus all the NURBS that form the result from the projected control points and the weight vectors (where the were the weight vectors of the original NURBS). As a result the open filled triangles () defined by the NURBS are also projective invariant. As a consequence it can be concluded that the object space which is the union of these is also invariant under projective transformations. ∎
Next, we briefly illustrate the invariance of the curvilinear object space under projective transformations.
In this example, we look at a simplified case of projection represented in Fig. 6, where the original object space is considered to lie on an Euclidean plane(). The projection is assumed to lie on a manifold . This assumption gives us flexibility in the sense that a manifold can be a curved surface that is locally euclidean in a small neighborhood. Examples of such surfaces include the surface of ball, a vase, curved screens etc. In this picture the point f, is the center of projection for the projective transformation. This can be seen as projecting a film( a euclidean plane ) onto the screen(which can be curved ), by a light source at point f. It follows from the theorem 3, that instead of projecting the whole object space we can just project the vertices in this space and then construct the new object space . This construction is specified in the [2, Alg. ]. It must be noted that the weight vectors associated with the NURBS would also change with the projection. This can be seen from the proof of the theorem 1. ◼
We comment on the occurrence of object spaces,, in the triangulated topological space . These comments apply to both the rectilinear() and curvilinear() object spaces. All the triangles in the space are a part of an object space . Maximal nuclear cluster is a nerve in , that has the maximal number of sets. The common intersection of the maximal nuclear cluster is called its nucleus. There is an object space associated with each such nucleus. In this study we restrict ourselves to the case where a single maximal nuclear cluster exists. Based on this we formulate a lemma.
Every triangle in a triangulated space , with more than triangles is a part of a spoke chain. ◼
Suppose is a set of points and is the resulting triangulation. Then for any two points , there exists a Delaunay triangulation path between them. This means that we can go from to by traversing the edges of the triangles in . This is evident from the theorem in . This means that each triangle has a neighbor with which it shares either a vertex or an edge. Which by definition is a nerve. The presence of a nerve necessitates the existence of a maximal nuclear cluster. Different topological structures associated with the nucleus of the maximal nuclear cluster. The existence of a maximal nuclear cluster by definition([2, Defs., ]) requires the existence of a -spoke(-spoke). Any triangle in that has the nucleus in common is -spoke and the remaining triangles that do not have the nucleus as a vertex will be a -spoke,for . This follows directly from definition 1. A -spoke, lies in a -spoke chain() from definition 4. ∎
Let us consider an object space in a triangulated topological space . A similar situation is depicted in the Fig. 5.1. According to our assumption that there is only one maximal nuclear cluster and its associated object space. As per theorem in , in a triangulated space a Delaunay path exists between any two points in a set . The set is used to triangulate , and the is the triangulation. This means that we can go from any point in to an other point in by traversing the edges of the triangulation . We can see that the set is the set of the vertices of the triangles in . Thus, we can conclude that no triangle, or a group of them is isolated in . The whole space is connected by Delaunay paths. Thus, between any two points in there is an edge of a triangle. Thus by the arguments in the proof of lemma 1, it can be concluded that every triangle in that contains more than triangles is a part of a spoke chain. In Fig. 5.1, we can see that there are three triangles, two of which are in the (in red color) and the other one is in (in gray color). If we add any more triangles or remove any so as to keep the total number of triangles more than 1, each triangle would be in a spoke chain. The number of spoke chains can change based on the location of triangles added or removed. The basic assumption is that there is only one maximal nuclear cluster. If we remove the gray triangle we still have two red triangles in . Moreover, we can obtain the Fig. 5.2 by adding triangles to Fig. 5.1. Here, again it can be observed that all the triangles are a part of one of the spoke chains, (in yellow), (in gray), (in red), and (in blue). These arguments also hold for the curvilinear object space . ◼
Suppose is an object space in the triangulated topological space . Then,
From Def. 2, -spoke complexes for each value of are mutually disjoint sets. From Def. 4, it is clear that -spoke chains() are constructed by picking one spoke from each of the -spoke complexes(). Thus we can construct all the possible -spoke chains() in the triangulated space , by picking an element from each of the -spoke complexes. Thus, all the elements in the union of the would lie in the union of all the . Thus, .
It is evident from the definition 4 that a contains triangles and the triangle at level is a -spoke. From definition 2 this -spoke is a part of the -spoke complex. Suppose that is the set of all such , then the union of all the triangles in these spokes at level would be the union of all the -spokes in , which by definition is the -spoke complex. Thus it can be concluded that all the triangles in the union of the are in the union of all the . Thus, .
Suppose is a triangulated topological space then an object space can be defined as follows.
Let, be an object space in the triangulated topological space . This situation is depicted in Fig. 5.2. We can see that the object space is the union of the four spoke chains. These are the (in yellow), (in gray), (in red), and (in blue). These spoke chains by definition(Def. 4) include the nucleus. This is the depiction of lemma 3. Moreover, we can see that the same object space is depicted in Fig. 1.1. In that figure, this object space is depicted as the union of two spoke complexes. These are the (in yellow) and (in gray). This leads to the conclusion that the object space can be define as the union of its constituent spoke complexes or the constituent spoke chains. This is the same as lemma 2. This argument would also work for the curvilinear object spaces, . ◼
If a triangulated space has only triangle then it is a degenerate case of an object space,
Based on the above discussion we can formulate the following lemma.
The object space is a nerve complex, with the -spoke chains () as its constituent subsets. ◼
Suppose is a triangulated topological space. It follows directly from lemma 3, that the object space is the union of all the . Moreover, following from the assumption that there is only one maximal nuclear cluster in and from the definition of -spokes(Def. 1) and the -spoke chains(Def. 4), it is obvious that the common intersection of all the is the nucleus(or the -spoke). Thus the whole object space is a nerve complex. ∎
Let,there be an object space, in a triangulated topological space . This situation is depicted in Fig. 5.2. We can see that there are four spoke chains in . These are the (in yellow), (in gray), (in red), and (in yellow). The nucleus is included in each of the spoke chains by definition(Def. 4). Thus the object space is a collection of sets, the spoke chains, with a common intersection i.e. the nucleus. Thus the object space is a nerve, represented as in the figure. This argument holds for both curvilinear() and rectilinear object spaces(). ◼
Next, we present the Borsuk Nerve Theorem.
 If U is a collection of subsets in a topological space, the nerve complex is homotopy equivalent to the union of the subsets.
Now, we extend this theorem to both rectilinear and curvilinear object spaces .
The object space is homotopy equivalent to union of -spoke chains i.e.
Let us consider the object space shown in Fig. 5.2. From theorem 6 it can be concluded that the object space , is homotopy equivalent to the union of the spoke chains, (in yellow),(in gray), (in red), and (in blue). One must note that the nucleus is in every spoke chain by definition(Def. 4). This figure depicts only rectilinear object spaces,, but the theorem also holds for curvilinear object spaces,. ◼
Now let us discuss the homotopy properties of object spaces . We are discussing the classical homotopy theory which considers only the boundaries of spaces. Thus, the discussion that follows only considers the boundaries and not the interiors. We begin by introducing a lemma which states that curves with the same endpoints are homotopic.
Suppose and are two continuous functions in between two points, then ( is homotopic to ).
Suppose is a unit circle and is a unit disc. Then it is obvious that . Then we can construct an inclusion . Now we construct a map . The map is a retract which implies that . We know that is a convex set, and are functions which define non-intersecting curves in with the same end-points. We can define a family of functions , as with . is an index set . We can see that and and the family of functions varies continuously with parameter . By Def. 18, it can be seen that functions an are homotopic. ∎
Next, consider a well-known result for the composition of homotopic maps mentioned below:
[1, Thm. 2.1.24] Let and be maps such that and . The composite maps and are homotopic.
The is the family of continuous maps from topological space to . Now using what has been presented we can formulate an other theorem.
Suppose there is a triangulated topological space with as the set of sites. A rectilinear object space is homotopically equivalent to . The point is the nucleus of the triangulation.
Both the object spaces are a union of lines(for ) or curves(for ) with end points in the set . Thus a rectilinear object space can be represented as the composition of functions, . A curvilinear object space can be represented as . Each of the maps in the composition, is a representation of one of the rectilinear or the curvilinear edges in the object space. Here, it must be noted that and () are between the same endpoints. Hence from lemma 4 . Using this fact and the Thm. 7, we can conclude that is homotopically equivalent to . ∎
3. Detecting Object Shapes in Images
In this section we will present the results of computational experiments conducted. The aim of the experiments is to attempt to isolate the objects from digital images by triangulating based on sites. Then we will present the theorems presented in Sec. 2.5, as they appear in the real digital images. We present our analysis using two example images, each of which has an object with curved edges. The area of interest in these images is a single object, but the images are very complex. They represent a real world scene and the objects themselves are not necessarily of uniform intensity. Such an object presents challenges for object detection algorithms.
In this paper we are using the algorithms for generating rectilinear and curvilinear triangulations detailed in . The basic assumptions are that the image under analysis only contains one object. The sites used to generate the triangulations are generated via SIFT features. The maximal nuclear cluster of the triangulation is used to determine the nucleus,, of the object space,. All other topological structures defined previously in this paper are also defined with respect to the nucleus. Now, we will discuss each of the images and the results of our analysis individually.
We begin with the image of the car featured in Fig. 7. It can be seen from the image that the seen is quite complex. The object of interest, the black car, is present in the image along with a few other vehicles, namely two buses and a car. A person is also present in the scene. Moreover, there are detailed architectural constructs in the background. The complexity of the scene is enhanced by the overlap between objects, which leads to partial visibility. This makes the detection of the object difficult. We can observe in Fig. 7.1, that the sites are mostly concentrated on the black car. Since the sites used in this analysis are attracted to regions of high contrast in the image, we can see some of the sites outside of the region of interest. These sites lie on the bus in the background and the car behind the object of interest.
Apart from this, we can see that the sites generally capture the corners and the important regions that lie on the object of interest. The sites lie on the spokes in the rim of the car, the corners of the car body, the graphics drawn on the car and the person sitting inside the car. In Fig. 7.1, we use the conventional Delaunay triangulation based on the sites. Since, the object of interest has curved contours, the rectilinear triangulation based on the Delaunay triangulation fails to conform to the object boundaries. The rectilinear triangulations give an approximation of the object skeleton, which may be suitable in some cases. There is a need to advance this representation of the object to a better one, which can conform to curved objects.
This brings us to the curvilinear triangulations as depicted in Fig. 7.2. The sites used to generate these triangulations are identical to the ones used for rectilinear triangulations(Fig. 7.1). These curvilinear triangulations are based on NURBS defined in Def. 12. The algorithm used to obtain these triangulations has been detailed in . It can be seen that the curvilinear triangulations conform to the object contours better than the rectilinear triangulation. Here we will mention that we can construct object spaces() from both the rectilinear and the curvilinear triangulations. This is done by locating the maximal nuclear cluster of the triangulation which is the same for both the rectilinear and the curvilinear. This is evident from the construction of the algorithm used that the combinatorial properties of both the curvilinear and the rectilinear triangulations are the same. The maximal nuclear cluster is the largest collection of triangles that share a common vertex and hence is the same for both the triangulations. It is also evident from this argument and the definitions that all the topological constructs defined in this paper, namely spokes(sk), spoke complexes() and the spoke chains() have the same combinatorial properties. These two triangulations differ in the geometrical properties with respect to curvature of edges, area and perimeter. That is, the corresponding triangles in the rectilinear and the curvilinear triangulations can have different edge lengths, edge curvature, perimeter, and area. The difference in the geometrical properties of the triangles in the rectilinear and curvilinear triangles can be seen in Fig. 7.4(area of triangles in terms of pixels covered) and Fig. 7.5(length of the edges in terms of the pixel dimensions).
Until now we have discussed several ways of covering the object n the digital image. We extend the concept of triangulations of a topological space , by introducing the idea of using open filled triangles(). The rectilinear open filled triangles are defined in Def. 15, and the curvilinear open filled triangles are defined in Def. 16. These triangles have been used in this study to define different topological structures such as spokes(sk),spoke complexes(), spoke chains() and object spaces(). All of these structures can be used to cover the object in the digital image and talk about the interior as well as the boundary. Now, we try to cover the object in the image by extending the idea of maximal nuclear cluster, which is the nerve(Nrv) of the highest order(number of constituent sets). It is evident from the theorem in  that any two sites of a Delaunay triangulation are path connected. This would also apply to the curvilinear triangulations as they are constructed by replacing the edges with NURBS. This theorem directly dictates that every site in the triangulation is a part of a triangle.
A nerve of order is a degenerate example of a nerve and contains only one triangle. Thus, if a site is only included in a single triangle, that triangle would form a nerve of order . So, if we consider all the nerves of orders ranging from to the maximal order, all the sites and their corresponding triangles would be included in this union. Thus, this union would equal the whole triangulation. As each set is a subset of itself, the union of all nerves contains the whole triangulation as a subset. Thus, by definition such a union is a cover of the triangulation.
Let us now discuss a homotopic equivalence between the rectilinear and the curvilinear nerves. This connection has been proven in a more general setting of the object space(), where the vertex is the nucleus. The proof is detailed in Thm. 8. This proof can be restricted to the setting of an individual nerve. A nerve in both the rectilinear and the curvilinear triangulations can be represented as a composition of maps similar to the object spaces in Thm. 8. Each of the functions can be used to represent an edge in the nerve. It must be noted that we are studying a classical notion of homotopy which does not consider the interior of the triangles. Thus, we can conclude that a nerve in the rectilinear triangulation is homotopically equivalent to a corresponding nerve in the curvilinear triangulation. This relation is similar to the relationship established in Thm. 8.
After having discussed the image of the car, we are going to move on to the next image. Now, we will discuss the image of a boat featured in Fig. 8. We have discussed the results and the methodology of analysis in detail while discussing the image of the car(Fig. 7). Now, we will only discuss the results obtained for this image.
This image is also a complex scene from the real world consisting of multiple regions of uniform intensity bounded by high contrast. These include the boat, the ocean, and the mountains. Each of these regions could attract the majority of the sites and thus camouflage the object of interest, namely the boat. Apart from these uniform regions, we have small high contrast regions e.g. the people. These regions of high contrast are going to attract the sites and thus result in a contamination of the object space. To keep our focus on the image and to test the viability of the method to extract an object with curved boundaries, we imply background removal to focus the sites on the region of interest. This has done a pretty good job apart from confusing the shadow with the object, as shown in Fig. 8.1. The same set of sites was used to generate the curvilinear triangulation displayed in Fig. 8.2. It can be seen that even though the difference between the rectilinear and curvilinear triangulations is small, it is evident at curved boundaries, such as the swimming saftey tube. The difference between the edge lengths between the two triangulations is barely noticeable as shown in Fig. 8.5. There is a noticeable difference in the areas of the certain triangles as shown in Fig. 8.4.
4. Geodesic based metric for shape approximation
In the previous section we have studied the rectilinear() and the curvilinear triangulations() as tools to extract objects from digital images. We need to develop a measure for the quality of the approximation for each of the triangulations. We are interested in the topological and geometrical features of the object. Thus, we need to develop methods which can compare the original and the approximated objects in terms of topological and geometrical features. The geometrical features determine if the approximation matches the original object in vision and perception. This is due to the fact that a circle, triangle and a square are topologically equivalent. These shapes are distinguished in terms of their geometries. Thus a topological space can have many geometries associated with it.
With this in view, the geometrical features gain importance in figuring out if the approximation matches the original object. If the object spaces approximated by the triangulations are the same as the original object, they are guaranteed to be homotopically equivalent. This means they are same in terms of homology, connectedness and other homotopy invariants. This is due to the fact that the object space is homotopically equivalent to the union of spoke chains() from the Thm. 6. Thus, the homotopy invariant properties of the unions of these spoke chains are the same as those of the original object. The spoke chains can be extracted from the triangulations based on the definitions given in this paper. Now, we only need to check that the geometrical features of the approximation and the original object match.
For this we need a method to efficiently compare the geometrical features of the approximation by triangulation and the original image. We choose multiple geometric measures namely, maximum diameter, mean diameter and the area. The assumption is that the object is not homogeneous in all orientations and hence the diameter would vary. Objects such as a circle have the same diameter irrespective of the orientation. We choose to compare the maximum and the average diameter. To calculate the diameters of the triangulation, the idea of a minimizing geodesic comes in handy. A geodesic is the shortest line connecting two points in an arbitrary manifold(a curved surface) and is the generalization of a straight line. Next, we introduce a minimizing geodesic.
Suppose, there is a curve , which maps an interval to a metric space . is a geodesic if there exists a constant , and a small neighborhood of such that, for any . In case of natural parameterization, i.e. , of the curve the constant . If this equality holds for all , then the curve is called the minimizing geodesic, which is the shortest path between and
. The idea of geodesics has often been used in computer vision to extract boundaries of objects, and to determine deformations between them. In this study we focus on the case of geodesics in a triangulation(). For this purpose, we view as a weighted graph() with the edge lengths being assigned to each edge as its weight.
The graph for the rectilinear and the curvilinear triangulation only varies in the edge weights. The graph is a metric space as we can define a notion of a distance between any two vertices. The distance is defined as the sum of weights of the edges that are traversed in getting from one vertex to an other. We are interested in the minimizing geodesics, we look for the shortest distances between the vertices. This problem can be formulated as a special case of the minimum cost network flow problem. This problem is defined over a directed graph , with as the source and the as the sink vertex. Every edge has a capacity ,flow and cost . The cost of flow along an edge is and the required flow from to is denoted by . Let us define the following optimization problem:
Now, we modify this problem to yield the optimization problem that we need to solve in order to get the shortest distances between the vertices of the graph. We assume that the graph is undirected, all the flows in the graph are , the capacities are infinite and the cost is assumed to be the weight of the edge. The problem is solved repeatedly for all the pairs of vertices in as source() and sink(), to obtain the optimum value of . This is the length of the minimizing geodesic in the graph connecting the respective source and sink vertices. Thus we can calculate the distance matrix , in which the -th element gives the shortest distance between the nodes and . The maximum value in this matrix corresponds to the graph diameter().
Now, that we have detailed the notion of distance in graph as an optimization problem we need a method to solve it. The method used is the well known Dijkstra’s algorithm detailed in Alg.1. It returns a vector containing the minimum distances from a given source node to all the nodes in the graph. This vector can be considered a row of the distance matrix , and thus iterating over all the vertices in the graph would give us the whole matrix. We will explain the working of the Dijkstra’s algorithm using an example.
Let us take the example of the graph shown in Fig. 9. We will use this simple graph to illustrate the functioning of Dijkstra’s algorithm detailed in Alg. 1. We take the vertex as the source node,initiate the , and the vector . As the vertex is the closest to vertex , we proceed to that node and update , and . Now, as the the neighborhood of vertex is , we update the , the and the . The new . We see that vertices in have the same distance from source vertex, we can go to either one of them. We visit them in order and go to vertex . Now the updated values of and and . We update , and , to obtain the new . Now we proceed to vertex and update the values of , and . Then we update and . This gives us the new , and as we terminate the iterations and return this vector as the list of shortest distances from vertex to every other vertex in the graph.
Repeating this process for every node and using the vectors returned as the rows we have the complete distance matrix of the graph as follows:
Each entry of the corresponds to the smallest distance between the vertices and . We can see that the graph diameter , the maximal entry of is . ◼