I-16146 Genova, Italy
22institutetext: CNR-SPIN, via Dodecaneso 33,
I-16146 Genova, Italy
An iterative approach to Hough transform without re-voting
Abstract
Many bone shapes in the human skeleton are characterized by profiles that can be associated to equations of algebraic curves. Fixing the parameters in the curve equation, by means of a classical pattern recognition procedure like the Hough transform technique, it is then possible to associate an equation to a specific bone profile. However, most skeleton districts are more accurately described by piecewise defined curves. This paper utilizes an iterative approach of the Hough transform without re-voting, to provide an efficient procedure for describing the profile of a bone in the human skeleton as a collection of different but continuously attached curves.
Keywords:
Hough transform, algebraic plane curves, image processing1 Introduction
The Hough transform is a well known pattern recognition technique to detect features in images when specified in some parametric form [5]. The classical Hough transform is most commonly used for the detection of simple curves such as straight lines, circles, ellipses [5, 3]. However, in recent papers its effectiveness has been proved in the case of more complex classes of curves, specifically, families of irreducible algebraic plane curves like elliptic curves, conchoids of Slüse, oblique bifolium, curves with 3 convexities, Wassenaar curves, quartic curves with a tacnode, and piriform curves [1, 6]. Some of these curves have been successfully applied for identifying profiles of interest on CT slices of the human skeleton, including lumbar vertebrae and the spinal canal at different heights of the vertebral column [6].
The basic idea to perform this identification is that points on a curve in the image space are mapped into curves (more generally hypersurfaces) in a parameter space which intersect at a uniquely determined point. The coordinates of this intersection point identify the curve in the image space. The procedure that computationally realizes this identification is based on a discretization of the parameter space and on the definition of an accumulator matrix counting for the number of points mapped into curves passing through (i.e., voting) its cells. The set of parameters corresponding to the maximum in the accumulator allows the recognition of the desired curve in the image space.
From a mathematical viewpoint, the use of the Hough transform to recognize curves of more complexity in an image requires to prove the duality type result that associates a unique point in the parameter space to many different points on a curve in the image space [1]. From a computational viewpoint, the number of parameters in the curve equation defines the dimension of the parameter space. Thus, the computational effort of the voting procedure accordingly increases as the dimension of the accumulator matrix. Further, more practically, many recognition tasks in real applications require the identification of profiles that cannot be associated to a single curve but are more realistically represented by piecewise defined curves. For example, the identification of bone profiles in the human skeleton requires a method to assign an appropriate piece of curve to a specific portion of the real skeleton profile. Therefore, an approximation of the whole district shape can be obtained by using an iterative approach to Hough transform in order to iteratively approximate different parts of the same bone profile with different curves.
In order to realize such a procedure, one can eliminate those points in the profile that have been recognized by using the Hough transform according to a specific family of curves, and re-applying the method by searching for a different curve from the family using the remaining set of points. However, this procedure is computationally expensive and therefore in this paper we introduced a layered accumulator matrix that allowed us to discard the contribution of some points in the voting procedure without re-voting. This way, we reached the twofold objective of iteratively approximating the entire profile with a piecewise defined curve without dramatically increasing the computational cost of the algorithm.
The paper is organized as follows. In Section 2 we recall some theoretical results [1] on the Hough transform of algebraic curves. We also prove that, for the family of curves in the form used in the presented application, the requested conditions for the uniqueness of the intersection point in the parameter space are verified. In Section 3 we define the layered accumulator and we present the recognition algorithm according to this new accumulator definition. In Section 4 we present some numerical results considering the recognition of a lumbar vertebra in a X-ray CT image. Finally, in Section 5 our conclusions are offered.
2 Hough transform of algebraic curves
This section surveys some definitions and basic facts introduced in [1] and [6], to which refer for more details and examples. Although these results hold over an infinite integral ring , having in mind applications to imaging, we assume . We introduce a family of irreducible polynomials
(1) |
where the coefficients are polynomials in the independent parameters varying in an euclidean open set , and with the degree, , of not depending on .
Let be the corresponding family of zero loci of and assume that each is a curve in the affine plane . So we want a family of irreducible curves which share the degree. If is a point in the image space , the polynomial
(2) |
defines a hypersurface in the parameter space , where are affine indeterminates. We say that this hypersurface is the Hough transform of the point with respect to the family .
In [1, Theorem 2.2] it is proved that, given a family of irreducible curves defined as above, the Hough transforms , when varies on a curve , all pass through the same point and, if there exists another point where the Hough transforms intersect, then . Moreover, the following two conditions are equivalent.
-
1.
For any pair of curves and in , the equality implies .
-
2.
For each curve in , one has .
A family of curves which meets one of the above equivalent conditions is said Hough regular. The curves of those families share the same property of the straight lines as in the original definition of the Hough transform (see [3]). Therefore Hough regularity has a crucial computational role in the solution of the pattern recognition problem since for a Hough regular family of curves it is possible to formulate a computationally effective generalization of the algorithm for line detection, able to automatically extract in the image a profile described by the curves from the family. Clearly, the above equivalent properties are not true in general. For example, for the family of conics of equation we have that . It is therefore of special interest to find Hough regular families of curves. To this aim, we observe that, if
are the equations of and respectively, then reads for some , that is,
(3) |
for each pair of indices , (see [4, Theorem 1, p. 365]). Relations (3) can be used to check the Hough regularity of the family, i.e., that implies .
In the following example we describe the family of curves we deal with throughout the paper.
Example 1
Consider the family of unbounded cubic curves of equation
(4) |
for some real parameters , with . Non-singular curves from the family are elliptic curves, that is, of genus . Equation (4) is a slight modification of the so called Weierstrass form, and allows us to better pattern after a vertebra profile. Let us show that the family is Hough regular. Assuming , equation (3) reads
The second, third and fourth relations clearly give and . Then by the last relation. Thus the first one yields .
For any point in the image plane , the Hough transform of the point with respect to is the quartic hypersurface in the parameter space of equation
(5) |
3 Piecewise Hough transform
Let , , be the set of points of interest in the image space, and let be their Hough transforms in the parameter space . The first step of the standard recognition algorithm is based on a discretization of a subset of the parameter space, i.e., on the definition of a set of cells
(6) |
where is a point in , is a sampling point, is a multi-index identifying both a specific cell and the corresponding sampling point, and are the sampling distance and the number of samples considered along the -component, respectively. Following the standard approach, the accumulator matrix is then defined as
(7) |
and it is usually computed by means of the iterative process
(8) |
with initialization and final result , for each . The search for the maximum of at position allows us to identify the set of parameters and finally the curve best approximating the set of points in the image.
This approach can be effectively applied to the recognition of significant profiles in medical and astronomical images [1, 6]. However, in practical applications, a better accuracy can be achieved by approximating the profile of interest using more than one curve, each one fitting a specific portion of the profile.
A possible approach is based on the search of successive maxima in the accumulator matrix, starting from the absolute one and moving on in descending order, up to a fixed threshold. This scheme has the main drawback that local maxima often cluster in the same region of the parameter space, thus identifying curves characterized by very similar sets of parameters, well approximating the same subsets of points in the same portion of the profile.
We propose here an alternative approach based on the principle one man one vote, i.e., each point in the dataset is allowed voting for just one curve. Once a curve has been recognized, all the points voting for it have to be removed from the dataset and the computation of the accumulator matrix has to be repeated without their contribution. In order to realize this idea without increasing the computational effort associated to the computation of the process defined by (8), we introduce a layered accumulator matrix , where the -th layer is a binary matrix containing the votes of the -th point of the original dataset to the whole set of cells. That is,
(9) |
By definition is then set to if and only if the Hough transform of the point passes across the cell . The usual accumulator can be easily computed from summing over all the layers:
(10) |
Then a first curve can be recognized in the usual way. However, the main advantage of this re-formulation is that one can easily identify the points which voted for the cell by looking for the non-zero entries , and then remove the corresponding layers from . Calling the whole set of values the index can assume in the original dataset, and the subset containing the indices of the removed layers, we can re-compute the usual accumulator without the contribution of points , , and without re-voting, by simply computing
(11) |

(a) (b)
A new curve can now be recognized through optimization of the updated accumulator matrix, and so on. The iterative approach inspired by previous considerations is summarized in Algorithm 1. A pictorial representation of the layered accumulator is shown in Fig. 1 (where we refer to the case , so that is a -dimensional matrix).
Notes and Comments.
Some technical details have been omitted from the previous description. For example, at each iteration we check whether the points removed from the dataset (i.e., already approximated) lie in connected components. Moreover, as a final step, we follow an ordered path to properly connect the different branches of the piecewise defined curve. For both issues, we use arguments from graph theory [8].
4 Application to X-ray CT imaging
We applied the piecewise Hough transform algorithm described in the previous section to recognize a lumbar vertebra profile by using the family of elliptic curves of equation (4). In particular, we have considered an axial X-ray CT slice of a human lumbar vertebra (see Fig. 2(a)) and we have applied a standard Canny [2] edge detection algorithm in order to select the set of edge points shown in Fig. 2(b). From this initial dataset we then extracted the edges corresponding to the outer profile of the vertebra by applying an ad hoc -concave hull algorithm. This algorithm looks for the subset of points that uniquely defines a polygon enclosing the whole dataset, without having any angle between two neighboring points exceeding . In our application we set and we extracted the subset of blue points, as seen in Fig. 2(d). Each point is then Hough transformed in a quartic hypersurface of equation (5), in the parameter space . This parameter space is then discretized in order to have a -dimensional accumulator matrix made of cells. As a consequence, the layered accumulator results in a -dimensional matrix with layers of entries each. The iterative scheme described in the previous section (with threshold_value to stop the iterations set to of ) gives us a set of different elliptic curves from the fixed family, best approximating different portions of the outer profile of the vertebra. The whole set of curves is superimposed to the profile edge points in Fig. 2(d), together with green points highlighting the boundaries of each different portion. As for the inner profile, the same process gives us a set of different curves from the family . The piecewise defined curves providing the best approximations for both internal and external vertebra profiles, are then shown in Fig. 2(e) and Fig. 2(c) on the whole set of edge points and on the original X-ray CT image, respectively.

(a) (b) (c)


(d) (e)
5 Conclusions
We describe an iterative approach of the Hough transform technique to provide an efficient procedure for approximating the profile of a bone in the human skeleton as a collection of different but continuously attached curves. The core of the proposed procedure is the definition of a layered accumulator matrix. From its knowledge, it is possible to compute the usual accumulator matrix at each iteration and to recognize and remove from the dataset the points lying on portions of the profile, already well approximated. More importantly, the layered accumulator allows us to iterate the algorithm on an input dataset progressively smaller, without the need of repeating the computationally demanding task of voting. We tested this iterative approach to identify bone profiles in a clinical X-ray tomography image, showing that it accurately recognizes the inner and outer profiles of a human lumbar vertebra. Clinical applications of this recognition method may include either the characterization of the compact bone asset for the prognosis of chronic leukemia or the estimate of the bone marrow asset from integrated CT and nuclear medicine data [7].
References
- [1] Beltrametti, M.C., Massone, A.M., Piana, M.: Hough transform of special classes of curves. SIAM J. Imag. Sci. 6, 391–412 (2013).
- [2] Canny, J.: A computational approach to edge detection. IEEE T. Pattern Anal. PAMI-8, 6, 679–698 (1986).
- [3] Duda, R.O., Hart, P. E.: Use of the Hough transformation to detect lines and curves in pictures. Comm. ACM 15, 1, 11–15 (1972).
- [4] Godement R.: Cours d’Algèbre, Enseignements de Sciences, Hermann, Paris (1963).
- [5] Hough, P.V.C.: Method and Means for Recognizing Complex Patterns. U.S. Patent 3069654 (2001).
- [6] Massone, A.M., Perasso, A., Campi, C., Beltrametti, M.C.: Profile detection in medical and astronomical imaging by means of the Hough transform of special classes of curves. Submitted to J. Math. Imaging Vis. (2013).
- [7] Sambuceti, G., et al.: Estimating the whole bone marrow asset in humans by a computational approach to integrated PET/CT imaging. Eur. J. Nucl. Med. Mol. Imag. 39, 1326–1338 (2012).
- [8] Tarjan, R.E.: Data structures and network algorithms. Society for Industrial and Applied Mathematics, Philadelphia, PA, USA (1983).