This paper was converted on www.awesomepapers.org from LaTeX by an anonymous user.
Want to know more? Visit the Converter page.

11institutetext: Dipartimento di Matematica, Università di Genova, via Dodecaneso 35,
I-16146 Genova, Italy
22institutetext: CNR-SPIN, via Dodecaneso 33,
I-16146 Genova, Italy

An iterative approach to Hough transform without re-voting

Giorgio Ricca 11    Mauro C. Beltrametti 11    Anna Maria Massone 22
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 processing

1 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 KK, having in mind applications to imaging, we assume K=K=\bbbr. We introduce a family of irreducible polynomials

fλ(x,y)=i,j=0dxiyjgij(λ),  0i+jd,f_{\lambda}(x,y)=\sum_{i,j=0}^{d}x^{i}y^{j}g_{ij}(\lambda),\;\;0\leq i+j\leq d, (1)

where the coefficients gij(λ)g_{ij}(\lambda) are polynomials in the independent parameters λ=(λ1,,λt)\lambda=(\lambda_{1},\ldots,\lambda_{t}) varying in an euclidean open set 𝒰t\mathcal{U}\subseteq\bbbr^{t}, and with the degree, dd, of fλ(x,y)f_{\lambda}(x,y) not depending on λ\lambda.

Let {\mathcal{F}} be the corresponding family of zero loci 𝒞λ{\mathcal{C}}_{\lambda} of fλ(x,y)f_{\lambda}(x,y) and assume that each 𝒞λ{\mathcal{C}}_{\lambda} is a curve in the affine plane 𝔸(x,y)2(){\mathbb{A}}_{(x,y)}^{2}(\bbbr). So we want a family ={𝒞λ}\mathcal{F}=\{{\mathcal{C}}_{\lambda}\} of irreducible curves which share the degree. If P=(xP,yP)P=(x_{P},y_{P}) is a point in the image space 𝔸(x,y)2(){\mathbb{A}}_{(x,y)}^{2}(\bbbr), the polynomial

i,j=0dxPiyPjgij(Λ1,,Λt)=0,  0i+jd,\sum_{i,j=0}^{d}x^{i}_{P}y^{j}_{P}g_{ij}(\Lambda_{1},\ldots,\Lambda_{t})=0,\;\;0\leq i+j\leq d, (2)

defines a hypersurface in the parameter space 𝔸(Λ1,,Λt)t(){\mathbb{A}}_{(\Lambda_{1},\ldots,\Lambda_{t})}^{t}(\bbbr), where Λ1,,Λt\Lambda_{1},\ldots,\Lambda_{t} are affine indeterminates. We say that this hypersurface is the Hough transform ΓP()\Gamma_{P}(\mathcal{F}) of the point PP with respect to the family \mathcal{F}.

In [1, Theorem 2.2] it is proved that, given a family {\cal{F}} of irreducible curves defined as above, the Hough transforms ΓP()\Gamma_{P}(\mathcal{F}), when PP varies on a curve 𝒞λ{\mathcal{C}}_{\lambda}, all pass through the same point λ\lambda and, if there exists another point λ=(λ1,,λt)\lambda^{\prime}=(\lambda_{1}^{\prime},\ldots,\lambda_{t}^{\prime}) where the Hough transforms ΓP()\Gamma_{P}(\mathcal{F}) intersect, then 𝒞λ=𝒞λ{\mathcal{C}}_{\lambda}={\mathcal{C}}_{\lambda^{\prime}}. Moreover, the following two conditions are equivalent.

  1. 1.

    For any pair of curves 𝒞λ{\mathcal{C}}_{\lambda} and 𝒞λ{\mathcal{C}}_{\lambda^{\prime}} in {\mathcal{F}}, the equality 𝒞λ=𝒞λ{\mathcal{C}}_{\lambda}={\mathcal{C}}_{\lambda^{\prime}} implies λ=λ\lambda=\lambda^{\prime}.

  2. 2.

    For each curve 𝒞λ{\mathcal{C}}_{\lambda} in {\mathcal{F}}, one has P𝒞λΓP()=λ\cap_{P\in{\mathcal{C}}_{\lambda}}\Gamma_{P}(\mathcal{F})=\lambda.

A family {\cal{F}} 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 a2x2+b2y1=0a^{2}x^{2}+b^{2}y-1=0 we have that 𝒞a,b=𝒞a,b{\mathcal{C}}_{a,b}={\mathcal{C}}_{-a,-b}. It is therefore of special interest to find Hough regular families of curves. To this aim, we observe that, if

fλ(x,y)=i,j=0dxiyjgij(λ)andfλ(x,y)=i,j=0dxiyjgij(λ)f_{\lambda}(x,y)=\sum_{i,j=0}^{d}x^{i}y^{j}g_{ij}(\lambda)\;\;\;\;{\rm and}\;\;\;\;f_{\lambda^{\prime}}(x,y)=\sum_{i,j=0}^{d}x^{i}y^{j}g_{ij}(\lambda^{\prime})

are the equations of 𝒞λ{\mathcal{C}}_{\lambda} and 𝒞λ{\mathcal{C}}_{\lambda^{\prime}} respectively, then 𝒞λ=𝒞λ{\mathcal{C}}_{\lambda}={\mathcal{C}}_{\lambda^{\prime}} reads fλ(x,y)=kfλ(x,y)f_{\lambda}(x,y)=kf_{\lambda^{\prime}}(x,y) for some k:={0}k\in\bbbr^{*}:=\bbbr-\{0\}, that is,

gij(λ)=kgij(λ),k,g_{ij}(\lambda)=kg_{ij}(\lambda^{\prime}),\;\;k\in\bbbr^{*}, (3)

for each pair of indices ii, jj (see [4, Theorem 1, p. 365]). Relations (3) can be used to check the Hough regularity of the family, i.e., that 𝒞λ=𝒞λ\mathcal{C}_{\lambda}=\mathcal{C}_{\lambda^{\prime}} implies λ=λ\lambda=\lambda^{\prime}.

In the following example we describe the family of curves we deal with throughout the paper.

Example 1

Consider the family \mathcal{F} of unbounded cubic curves of equation

𝒞a,b,m,n:y2=m(xn)3a(xn)b,{\mathcal{C}}_{a,b,m,n}:y^{2}=m(x-n)^{3}-a(x-n)-b, (4)

for some real parameters λ=(a,b,m,n)\lambda=(a,b,m,n), with m0m\neq 0. Non-singular curves from the family are elliptic curves, that is, of genus 11. 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 𝒞a,b,m,n=𝒞a,b,m,n{\mathcal{C}}_{a,b,m,n}={\mathcal{C}}_{a^{\prime},b^{\prime},m^{\prime},n^{\prime}}, equation (3) reads

anbmn3=g00(λ)=kg00(λ)=k(anbmn3),1=g02(λ)=kg02(λ)=k,m=g30(λ)=kg30(λ)=km3mn=g20(λ)=kg20(λ)=3kmn3n2ma=g10(λ)=kg10(λ)=k(3n2ma).\begin{array}[]{l}an-b-mn^{3}=g_{00}(\lambda)=kg_{00}(\lambda^{\prime})=k(a^{\prime}n^{\prime}-b^{\prime}-mn^{3}),\\ -1=g_{02}(\lambda)=kg_{02}(\lambda^{\prime})=-k,\\ m=g_{30}(\lambda)=kg_{30}(\lambda^{\prime})=km^{\prime}\\ -3mn=g_{20}(\lambda)=kg_{20}(\lambda^{\prime})=-3km^{\prime}n^{\prime}\\ 3n^{2}m-a=g_{10}(\lambda)=kg_{10}(\lambda^{\prime})=k(3n^{\prime 2}m^{\prime}-a^{\prime}).\end{array}

The second, third and fourth relations clearly give m=mm=m^{\prime} and n=nn=n^{\prime}. Then a=aa=a^{\prime} by the last relation. Thus the first one yields b=bb=b^{\prime}.

For any point P=(xP,yP)P=(x_{P},y_{P}) in the image plane 𝔸(x,y)2(){\mathbb{A}}_{(x,y)}^{2}(\bbbr), the Hough transform of the point PP with respect to {\mathcal{F}} is the quartic hypersurface in the parameter space 𝔸(A,B,M,N)4(){\mathbb{A}}_{(A,B,M,N)}^{4}(\bbbr) of equation

ΓP():M(xPN)3A(xPN)ByP2=0.\Gamma_{P}(\mathcal{F}):M(x_{P}-N)^{3}-A(x_{P}-N)-B-y_{P}^{2}=0. (5)

3 Piecewise Hough transform

Let PjP_{j}, j=1,,νj=1,\ldots,\nu, be the set of points of interest in the image space, and let ΓPj()\Gamma_{P_{j}}(\mathcal{F}) be their Hough transforms in the parameter space 𝔸(Λ1,,Λt)t(){\mathbb{A}}_{(\Lambda_{1},\ldots,\Lambda_{t})}^{t}(\bbbr). The first step of the standard recognition algorithm is based on a discretization of a subset 𝒯\mathcal{T} of the parameter space, i.e., on the definition of a set of cells

𝐂𝐧:={λ𝒯|λk[λk,nkdk2,λk,nk+dk2),k=1,,t,nk=1,,Nk},{\bf C}_{\bf n}:=\big{\{}\lambda\in\mathcal{T}\;|\;\lambda_{k}\in\big{[}\lambda_{k,n_{k}}-\frac{d_{k}}{2},\lambda_{k,n_{k}}+\frac{d_{k}}{2}\big{)},\;k=1,\ldots,t,\;n_{k}=1,\ldots,N_{k}\big{\}}, (6)

where λ=(λ1,λ2,,λt)\lambda=(\lambda_{1},\lambda_{2},\ldots,\lambda_{t}) is a point in 𝒯\mathcal{T}, λ𝐧=(λ1,n1,λ2,n2,,λt,nt)\lambda_{\bf n}=(\lambda_{1,n_{1}},\lambda_{2,n_{2}},\ldots,\lambda_{t,n_{t}}) is a sampling point, 𝐧=(n1,n2,,nt){\bf n}=(n_{1},n_{2},\ldots,n_{t}) is a multi-index identifying both a specific cell and the corresponding sampling point, dkd_{k} and NkN_{k} are the sampling distance and the number of samples considered along the kk-component, respectively. Following the standard approach, the accumulator matrix H=(H𝐧)H=(H_{\bf n}) is then defined as

H𝐧=Hn1,n2,,nt:=#{Pj|ΓPj()𝐂𝐧, 1jν},H_{\bf n}=H_{n_{1},n_{2},\cdots,n_{t}}:=\#\{P_{j}\;|\;\Gamma_{P_{j}}(\mathcal{F})\cap{\bf C}_{\bf n}\neq\emptyset,\;1\leq j\leq\nu\}, (7)

and it is usually computed by means of the iterative process

H𝐧(j)={H𝐧(j1)+1ifΓPj()𝐂𝐧H𝐧(j1)ifΓPj()𝐂𝐧=,j=1,,νH^{(j)}_{\bf n}=\left\{\begin{array}[]{lrlr}H^{(j-1)}_{\bf n}+1&&{\rm if}\quad\Gamma_{P_{j}}({\cal{F}})\cap{\bf C}_{\bf n}\neq\emptyset\\ H^{(j-1)}_{\bf n}&&{\rm if}\quad\Gamma_{P_{j}}({\cal{F}})\cap{\bf C}_{\bf n}=\emptyset,\end{array}\quad\quad j=1,\ldots,\nu\right. (8)

with initialization H𝐧(0)=0H^{(0)}_{\bf n}=0 and final result H𝐧=H𝐧(ν)H_{\bf n}=H^{(\nu)}_{\bf n}, for each 𝐧{\bf n}. The search for the maximum of HH at position 𝐧=(n1,n2,,nt){\bf n^{*}}=(n_{1}^{*},n_{2}^{*},\ldots,n_{t}^{*}) allows us to identify the set of parameters λ=λ𝐧=(λ1,n1,λ2,n2,,λt,nt)\lambda^{*}=\lambda_{{\bf n}^{*}}=(\lambda_{1,n_{1}^{*}},\lambda_{2,n_{2}^{*}},\ldots,\lambda_{t,n_{t}^{*}}) and finally the curve 𝒞λ{\mathcal{C}}_{\lambda^{*}} best approximating the set of points PjP_{j} 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 𝒜=(𝒜𝐧,j)\mathcal{A}=(\mathcal{A}_{{\bf n},j}), where the jj-th layer is a binary matrix containing the votes of the jj-th point PjP_{j} of the original dataset to the whole set of cells. That is,

𝒜𝐧,j=𝒜n1,n2,,nt,j:={1,if ΓPj()𝐂𝐧0,otherwise.\mathcal{A}_{{\bf n},j}=\mathcal{A}_{n_{1},n_{2},\cdots,n_{t},j}:=\begin{cases}1,&\mbox{if }\Gamma_{P_{j}}(\mathcal{F})\cap{\bf C}_{\bf n}\neq\emptyset\\ 0,&\mbox{otherwise}.\end{cases} (9)

By definition 𝒜𝐧,j{0,1}\mathcal{A}_{{\bf n},j}\in\{0,1\} is then set to 11 if and only if the Hough transform ΓPj()\Gamma_{P_{j}}(\mathcal{F}) of the point PjP_{j} passes across the cell 𝐂𝐧{\bf C}_{\bf n}. The usual accumulator HH can be easily computed from 𝒜\mathcal{A} summing over all the layers:

H𝐧=j=1ν𝒜𝐧,j,nk=1,,Nk,k=1,,t.H_{\bf n}=\sum_{j=1}^{\nu}\mathcal{A}_{{\bf n},j},\;\;\;n_{k}=1,\ldots,N_{k},\;\;k=1,\ldots,t. (10)

Then a first curve 𝒞λ{\mathcal{C}}_{\lambda^{*}} 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 𝐂𝐧{\bf C}_{{\bf n}^{*}} by looking for the non-zero entries 𝒜𝐧,j\mathcal{A}_{{\bf n}^{*},j}, and then remove the corresponding layers from 𝒜\mathcal{A}. Calling 𝒮\mathcal{S} the whole set of values the index jj can assume in the original dataset, and 𝒢𝒮\mathcal{G}\subset\mathcal{S} the subset containing the indices of the removed layers, we can re-compute the usual accumulator HH without the contribution of points PjP_{j}, j𝒢j\in\mathcal{G}, and without re-voting, by simply computing

H𝐧=j𝒮𝒢𝒜𝐧,j,nk=1,,Nk,k=1,,t.H_{\bf n}=\sum_{j\in\mathcal{S}\setminus\mathcal{G}}\mathcal{A}_{{\bf n},j},\;\;\;n_{k}=1,\ldots,N_{k},\;\;k=1,\ldots,t. (11)
Refer to caption

(a)            (b)

Figure 1: Accumulator HH and layered accumulator 𝒜\mathcal{A} in the case of a simple dataset PjP_{j}, j=1,2,3j=1,2,3, and a 22-dimensional parameter space discretized in 5×55\times 5 cells. (a) On the top, possible votes of the three points separately. On the bottom, corresponding accumulator matrix HH. (b) The 33-layered accumulator matrix 𝒜\mathcal{A}.

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 𝒜\mathcal{A} is shown in Fig. 1 (where we refer to the case t=2t=2, so that 𝒜\mathcal{A} is a 33-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].

Algorithm 1 The Piecewise Hough transform algorithm
0: A dataset of points PjP_{j}, j𝒮j\in\mathcal{S}
0: A set of curves 𝒞λ{\mathcal{C}}_{\lambda} from a family {\cal{F}} piecewise approximating the input dataset
1: Discretization of the parameter space through a set of cells 𝐂𝐧{\bf C}_{\bf n} (definition (6))
2: Computation of the Hough transforms ΓPj()\Gamma_{P_{j}}(\mathcal{F}) , j𝒮j\in\mathcal{S}
3: Computation of the layered accumulator matrix 𝒜\mathcal{A} (definition (9))
4: Computation of the accumulator matrix HH (equality (10))
5:while #𝒮>threshold_value\#\mathcal{S}>threshold\_value do
6:  Search for the maximum of HH at position 𝐧{\bf n^{*}}
7:  Computation of 𝒞λ=𝒞λ𝐧{\mathcal{C}}_{\lambda^{*}}={\mathcal{C}}_{\lambda_{{\bf n^{*}}}}
8:  𝒢{j𝒮|𝒜𝐧,j0}\mathcal{G}\leftarrow\{j\in\mathcal{S}\;|\;\mathcal{A}_{{\bf n^{*}},j}\neq 0\}
9:  Computation of HH from the layered accumulator 𝒜\mathcal{A} (equality (11))
10:  𝒮𝒮𝒢\mathcal{S}\leftarrow\mathcal{S}\setminus\mathcal{G}
11:end while

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 \mathcal{F} 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 α\alpha-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 π+α\pi+\alpha. In our application we set α=π/4\alpha=\pi/4 and we extracted the subset 𝒮\mathcal{S} of ν=959\nu=959 blue points, as seen in Fig. 2(d). Each point Pj𝒮P_{j}\in\mathcal{S} is then Hough transformed in a quartic hypersurface of equation (5), in the parameter space 𝔸(A,B,M,N)4(){\mathbb{A}}_{(A,B,M,N)}^{4}(\bbbr). This parameter space is then discretized in order to have a 44-dimensional accumulator matrix HH made of NH=324135N_{H}=324135 cells. As a consequence, the layered accumulator 𝒜\mathcal{A} results in a 55-dimensional matrix with ν\nu layers of NHN_{H} entries each. The iterative scheme described in the previous section (with threshold_value to stop the iterations set to 35%35\% of ν\nu) gives us a set of 77 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 99 different curves from the family \mathcal{F}. 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.

Refer to caption

(a)              (b)             (c)

Refer to caption
Refer to caption

(d)              (e)

Figure 2: Detection of external and internal lumbar vertebra profiles by using elliptic curves. (a) Original X-ray CT image. (b) Canny edge detection. (c) Piecewise defined curves providing the best approximation of the vertebra profiles superimposed to the original image. (d) Set of 77 different elliptic curves piecewise approximating the edge points corresponding to the external profile. (e) Piecewise defined curves now superimposed to the whole set of edge points.

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).