A 3D thinning algorithm erodes a 3D binary image layer by layer to extract the skeletons. This paper presents a correction to Ma and Sonka's thinning algorithm, A fully parallel 3D thinning algorithm and its applications, which fails to preserve connectivity of 3D objects. We start with Ma and Sonka's algorithm and examine its verification of connectivity preservation. Our analysis leads to a group of different deleting templates, which can preserve connectivity of 3D objects.
Thinning is a useful technique having potential applications in a wide variety of problems. It creates a compact representation (skeleton) of the models that may be used for further processing. 3D skeletons can be used in many applications [1][2] such as 3D pattern matching, 3D recognition and 3D database retrieval.
A 3D binary image is a mapping that assigns the value of 0 or 1 to each point in the 3D space. Points having the value of 1 are called black (object) points, while 0’s are called white (background) ones. Black points form objects of the binary image. The thinning operation iteratively deletes or removes some object points (that is, changes some black points to white) until only some restrictions prevent further operation.
Note that the white points will never be changed to black ones in any circumstances. Most of the existing thinning algorithms are parallel, since the medial axis transform (MAT) can be defined as fire front propagation, which is by nature parallel [3]. There are three categories of parallel thinning algorithms in literature, sub-iteration parallel thinning algorithm [4][5][6], sub-field parallel thinning algorithm [7][8] and fully parallel thinning algorithm [9]. Brief surveys of algorithms in each category can be found in the literature [6,9]. The rest of this paper is organized as follows. In Section 2, some basic concepts will be presented. Section 3 will briefly discuss Ma and Sonka’s algorithm [9]. The problematic part in this algorithm is analyzed and the modification is presented in Section 4, before the work is concluded in Section 5.
We first describe some terms and notation:
Let p and q be two different points with coordinates (px , py , pz) and (qx , qy, qz), respectively, in a 3D binary image P. The Euclidean distance between p and q is defined as:
Then p and q are: It is very important for thinning algorithms to preserve connectivity for 3D objects [4,9]. If a thinning algorithm fails to preserve connectivity, the skeletons extracted from the object will be disconnected, which is unacceptable in many applications. A sequential thinning algorithm can preserve connectivity easily if it is only allowed to delete simple points [10][11][12]. However, a parallel thinning algorithm may delete many black points in every iteration, even if it is only allowed to delete simple points, the algorithm may not preserve connectivity. This problem was investigated in [13][14][15].
In 1996, Ma and Sonka proposed a fully 3D thinning algorithm [ 9], which was applied to many applications such as medical image processing [16] and 3D reconstruction [17].
The algorithm is based on some pre-defined templates (Class A, B, C and D). If the neighborhood of an object point matches one of the templates, it will be removed. Figure 2 shows the four basic template cores.
In this figure, a " • " is used to denote an object point, a " o " is used to denote a background point. An unmarked point is a “don’t care” point, which can represent either an object point or a background point.
A 3D parallel thinning algorithm should preserve connectivity. However, by studying the configuration in Figure 7, we find that the algorithm fails to preserve connectivity. In Figure 7 A " • " is an object point. A " o " is a background point. All other points in 3D space are background points. In Ma and Sonka’s algorithm, point c will be deleted by template a5 in Class A, point d will be deleted by template d7 in Class D and point e will be deleted by template a6 in Class A. Hence, the object will be disconnected.
Lohou discovered this problem and gave a counter example of Ma and Sonka’s algorithm in [18]. Some other researchers, such as Chaturvedi [16] who applied this algorithm and found it disconnected small segments, but did not know how to fix this problem. In this section, we will show the reason for the problem and how to modify the templates in Class D to preserve connectivity.
Ma and Sonka proposed a general theorem [9] and used it to prove that the 3D thinning algorithm preserves connectivity in the VERIFICATION section in that paper. According to our observation, we note that LEMMA 3.5 in the VERIFICATION section is problematic. " LEMMA 3.5: Let p, q be two 6-adjacent object points in a 3D binary image where both p and q satisfy Ω . Then either q∉ Ω (p) or p ∉ Ω (q)."
Ω is used to denote the set of deleting templates in Class A, B, C or D. An object point satisfies Ω if it satisfies any one of the deleting templates in Ω . “q ∈ Ω (p)” means that q must be an object point for p to satisfy Ω . ‘‘q∉ Ω (p)" means p still satisfies Ω after q is deleted.
For the 3D object in Figure 7, c and d are two 6-adjacent points. According to LEMMA 3.5, either c∉ Ω (d) or d∉ Ω (c). However, if c is deleted, d will not satisfy any of the deleting templates. And if d is deleted, c will not satisfy any of the deleting templates. Therefore, although c and d are 6-adjacent, c ∈ Ω (d) and d∈ Ω (c). We can prove that
This content is AI-processed based on open access ArXiv data.