Skip to main content

Advertisement

Log in

Automated Reconstruction of Dendritic and Axonal Trees by Global Optimization with Geometric Priors

  • Original Article
  • Published:
Neuroinformatics Aims and scope Submit manuscript

Abstract

We present a novel probabilistic approach to fully automated delineation of tree structures in noisy 2D images and 3D image stacks. Unlike earlier methods that rely mostly on local evidence, ours builds a set of candidate trees over many different subsets of points likely to belong to the optimal tree and then chooses the best one according to a global objective function that combines image evidence with geometric priors. Since the best tree does not necessarily span all the points, the algorithm is able to eliminate false detections while retaining the correct tree topology. Manually annotated brightfield micrographs, retinal scans and the DIADEM challenge datasets are used to evaluate the performance of our method. We used the DIADEM metric to quantitatively evaluate the topological accuracy of the reconstructions and showed that the use of the geometric regularization yields a substantial improvement.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14

Similar content being viewed by others

Notes

  1. Additional results are available online at http://cvlab.epfl.ch/research/medical/lm/retinal/.

References

  • Al-Kofahi, K.A., Lasek, S., Szarowski, D. H., Pace, C. J., Nagy, G., Turner, J. N., et al. (2002). Rapid automated three-dimensional tracing of neurons from confocal image stacks. Transactions on Information Technology in Biomedicine, 6(2), 171–187.

    Article  PubMed  Google Scholar 

  • Ascoli, G. A., Svoboda, K., & Liu Y. (2010). Digital reconstruction of axonal and dendritic morphology DIADEM challenge. http://diademchallenge.org/.

  • Blum, C. (2007). Revisiting dynamic programming for finding optimal subtrees in trees. European Journal of Operational Research, 177(1), 102–115.

    Article  Google Scholar 

  • Blum, C., & Blesa M. (2005). Combining ant colony optimization with dynamic programming for solving the K-cardinality tree problem. In Computational intelligence and bioinspired systems. Lecture notes in computer science (Vol. 3512, pp. 25–33).

  • Cai, H., Xu, X., Lu, J., Lichtman, J., Yung, S., & Wong, S. (2006). Repulsive force based snake model to segment and track neuronal axons in 3D microscopy image stacks. NeuroImage, 32(4), 1608–1620.

    Article  PubMed  Google Scholar 

  • Can, A., Shen, H., Turner, J., Tanenbaum, H., & Roysam, B. (1999). Rapid automated tracing and feature extraction from retinal fundus images using direct exploratory algorithms. Transactions on Information Technology in Biomedicine, 3(2), 125–138.

    Article  PubMed  CAS  Google Scholar 

  • Dorigo, M., & Stütale, T. (2004). Ant colony optimization. Cambridge, MA: MIT Press.

    Book  Google Scholar 

  • Duhamel, C., Gouveia, L., Moura, P., & Souza, M. (2008). Models and heuristics for a minimum arborescence problem. Networks, 51(1), 34–47.

    Article  Google Scholar 

  • Fan, D. (2006). Bayesian inference of vascular structure from retinal images. Ph.D. thesis, Dept. of Computer Science, U. of Warwick, Coventry, UK.

  • Felzenszwalb, P., & Huttenlocher, D. (2005). Pictorial structures for object recognition. International Journal of Computer Vision, 16(1), 55–79.

    Article  Google Scholar 

  • Felzenszwalb, P., & McAllester, D. (2006). A min-cover approach for finding salient curves. In Conference on computer vision and pattern recognition (pp. 61–74).

  • Fischler, M., & Heller, A. (1998). Automated techniques for road network modeling. In DARPA image understanding workshop (pp. 501–516).

  • Frangi, A. F., Niessen, W. J., Vincken, K. L., & Viergever, M. A. (1998). Multiscale vessel enhancement filtering. Lecture Notes in Computer Science, 1496, 130–137.

  • Garg, N. (1996). A 3-approximation for the minimum tree spanning K vertices. In IEEE symposium on foundations of computer science (Vol. 27, pp. 302–309). Washington, DC, USA: IEEE Computer Society.

    Google Scholar 

  • Gonzalez, G., Aguet, F., Fleuret, F., Unser, M., & Fua, P. (2009). Steerable features for statistical 3D dendrite detection. In Conference on medical image computing and computer assisted intervention (Vol. 12, pp. 625–32).

  • Gonzalez, G., Fleuret, F., & Fua, P. (2008). Automated delineation of dendritic networks in noisy image stacks. In European conference on computer vision. Lecture notes in computer science (Vol. 5305, pp. 214–227). Berlin/Heidelberg: Springer.

    Google Scholar 

  • Huang, K., & Yan, M. (2006). Robust optic disk detection in retinal images using vessel structure and radon transform. In SPIE (Vol. 6144).

  • Jacob, M., & Unser, M. (2004). Design of steerable filters for feature detection using canny-like criteria. IEEE Transactions on Pattern Analysis and Machine Intelligence, 26(8), 1007–1019.

    Article  PubMed  Google Scholar 

  • Law, M., & Chung, A. (2008). Three dimensional curvilinear structure detection using optimally oriented flux. In European conference on computer vision (pp. 368–382).

  • Lee, T., Kashyap, R., & Chu, C. (1994). Building skeleton models via 3-D medial surface axis thinning algorithms. CVGIP: Graphical Models and Image Processing, 56(6), 462–478.

    Article  Google Scholar 

  • Leordeanu, M., Hebert, M., & Sukthankar, R. (2007). Beyond local appearance: Category recognition from pairwise interactions of simple features. In Conference on computer vision and pattern recognition (pp. 1 –8).

  • Meijering, E., Jacob, M., Sarria, J. C. F., Steiner, P., Hirling, H., & Unser, M. (2004). Design and validation of a tool for neurite tracing and analysis in fluorescence microscopy images. Cytometry Part A, 58A(2), 167–176.

    Article  Google Scholar 

  • Platt, J. (2000). Advances in large margin classifiers. Chap probabilistic outputs for SVMs and comparisons to regularized likelihood methods. Cambridge, MA: MIT Press.

    Google Scholar 

  • Santamaría-Pang, A., Colbert, C. M., Saggau, P., & Kakadiaris, I. (2007). Automatic centerline extraction of irregular tubular structures using probability volumes from multiphoton imaging. In Conference on medical image computing and computer assisted intervention (pp. 486–494).

  • Schoelkopf, B., Burges, C., & Smola, A. (1999). Advances in Kernel methods. In Support vector learning. Cambridge, MA: MIT Press.

    Google Scholar 

  • Staal, J., Abramoff, M., Niemeijer, M., Viergever, M., & van Ginneken, B. (2004). Ridge based vessel segmentation in color images of the retina. IEEE Transactions on Medical Imaging, 23, 501–509.

    Article  PubMed  Google Scholar 

  • Sun, K., Sang, N., & Zhang, T. (2007). Marked point process for vascular tree extraction on angiogram. In Conference on computer vision and pattern recognition (pp. 467–478).

  • Vasilkoski, Z., & Stepanyants, A. (2009). Detection of the optimal neuron traces in confocal microscopy images. Journal of Neuroscience Methods, 178(1), 197–204.

    Article  PubMed  Google Scholar 

  • Weaver, C., Hof, P., Wearne, S., & Brent, L. (2004). Automated algorithms for multiscale morphometry of neuronal dendrites. Neural Computation, 16(7), 1353–1383.

    Article  PubMed  Google Scholar 

  • Xie, J., Zhao, T., Lee, T., Myers, G., & Peng, H. (2010). Automatic neuron tracing in volumetric microscopy images with anisotropic path searching. In Conference on medical image computing and computer assisted intervention.

  • Xu, J., Wu, J., Feng, D., & Cui, Z. (2009). DSA image blood vessel skeleton extraction based on anti-concentration diffusion and level set method. Computational intelligence and intelligent systems, 51, 188–198.

    Article  Google Scholar 

  • Yedidya, T., & Hartley, R. (2008). Tracking of blood vessels in retinal images using Kalman filter. In Digital image computing: Techniques and applications (pp. 52–58).

Download references

Acknowledgements

This work was supported in part by the Swiss National Science Foundation and in part by the MicroNano ERC project. Christian Blum also acknowledges support from the Ramón y Cajal program of the Spanish Government.

We would like to thank Felix Schürmann for his advice and for giving us access to the brightfield dataset and corresponding ground-truth.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Engin Türetken.

Appendix: Pseudo-code for the ACO-RTS Algorithm

Appendix: Pseudo-code for the ACO-RTS Algorithm

In this appendix, we describe in more details our ACO-RTS algorithm and supply pseudo-code for it.

Notations and Overview

ACO-RTS is designed to minimize the primary cost function of Eq. 25 and uses the auxiliary cost function of Eq. 26 during tree construction. To this end, it maintains three sets of trees, namely the best-so-far solutions T bs , the restart-best solutions T rb , and the iteration-best solutions T ib . Each one of these sets contains a group of trees with cardinalities {1, ..., k limit}, where k limit is the maximum cardinality of the trees to be constructed. Its value is updated at each iteration of the algorithm so as to focus the search on the regions of most likely cardinalities and to discard very high ones.

Given a directed graph G = (V,E), let H be the set of all directed paths (e us ,e st ) containing exactly two consecutive edges. The pheromone model \({\cal P}\), first introduced in section “Optimizing the Image-Based Term”, is constructed by assigning a pheromone value τ ust to each one of these edge pairs and τ rv to each edge emanating from the root vertex x r . More formally,

$$ \begin{array}{rll} \label{eq:PheromoneModel} \mathcal{P} &=& \{ \tau_{ust} \in [\tau_{\min}, \; \tau_{\max}] \mid e_{st} \in E, e_{us} \in E \}\\ &\cup& \{ \tau_{rv} \in [\tau_{\min}, \; \tau_{\max}] \mid e_{rv} \in E_{r} \}, \end{array} $$
(27)

where τ min  ∈ ℝ and τ max  ∈ ℝ are lower and upper limits for the pheromone values and E r is the set of edges emanating from x r . In this work, τ min and τ max are set to 0.01 and 0.99, respectively. In effect, this model amounts to introducing a likelihood distribution over edge pairs, which improves convergence by resolving conflicts at crossovers.

Figure 15 shows a simplified flowchart of the algorithm. At each iteration, n a directed trees are probabilistically constructed by combining the pheromone information and the auxiliary cost of Eq. 25. The tree cardinality is bounded by the variable k limit, whose value is dynamically updated at run-time. Tree construction always starts at the root vertex x r , with edges being probabilistically selected and iteratively added to the tree. Edge pairs whose contribution to the auxiliary cost is small are given higher priority and care is taken not to violate the branching factor limit.

Fig. 15
figure 15

ACO-RTS algorithm flowchart

We rely on dynamic programming (Blum 2007) to find the best l-cardinality tree for all l from 1 to k limit in each one of the n a trees that have been built. For each cardinality, we select from the resulting n a trees the one that minimizes the auxiliary objective function and store it in T ib . Each l-cardinality tree in T rb or T bs is then updated by the l-cardinality tree in T ib , if the latter has a lower auxiliary cost. The best cardinality k * for the next iteration is then taken to be the one that minimizes the primary objective function of Eq. 25 among the trees in T bs . The cardinality limit k limit is taken to be the average of k * and |V| − 1, the maximum possible cardinality of a tree. The pheromone values are updated by using the k *-cardinality trees in T ib , T rb and T bs so that values corresponding to edge pairs belonging to these k *-cardinality trees are increased while others are decreased. Finally, when the algorithm has run for a preset amount of time, it returns the k *-cardinality tree in T bs .

Pseudo Code

Figure 16 depicts the pseudo-code that implements the approach outlined above. It includes the following functions:

  • ConstructDirectedTree(\({\cal P}, k_{\rm limit}, x_r\)): This function constructs a klimit-cardinality tree T = (V T ,E T ) with vertices \(V_T \subseteq V\), edges \(E_T \subseteq E\), and pairs of consecutive edges \(H_T \subseteq H\). The construction starts from the given root vertex x r , that is, initially T = ({x r }, ∅ ). At each step, a tree is stochastically selected from a neighborhood of the current solution. This neighborhood is generated by adding an edge and its target vertex to the tree under construction such that the tree property is maintained (i.e., no cycles are formed) and no bifurcation with a branching factor greater than a predefined threshold b th is introduced. The set of candidate edges is generated as follows.

Fig. 16
figure 16

ACO-RTS: pseudo-code for ant colony optimization for the reconstruction of tree-like structures

As a convention, let the source vertex of an edge e st  ∈ E be denoted by x s and the target vertex by x t . Let also \(N \subseteq V\) be the set of vertices such that N ∩ V T  = ∅ and for each x t  ∈ N, there exists at least one edge e st  ∈ E with x s  ∈ V T . Moreover, let \(E^t \subseteq E\) denote the set of edges that can connect the vertex x t to T such that the following conditions hold:

  1. 1.

    For each \(e_{st} \in E^t\), \(deg^+(x_s) < b_{th}\), where \(deg^+(x_s)\) denotes the out-degree of vertex x s in tree T.

  2. 2.

    There does not exist an edge e sl  ∈ E T such that x s and x l are co-located vertices as defined in section “Sampling the Image”.

Then, the set of candidate edges is taken to be

$$ \label{eq:CandidateEdges} \mathcal{C} = \{ \underset{e_{st} \in E^t}{\operatorname{argmin}} \{w(e_{st})\} \mid x_t \in N\}, $$
(28)

where w(e st ) is the effective weight of an edge e st , which can be expressed in terms of the cost terms of Eq. 26.

$$ w(e_{st}) = \begin{cases} d_{st} + b_{st} & \text{ , if } x_{s} = x_{r} \;, \\ d_{st} + a_{ust} & \text{ , if } x_{s} \neq x_{r}, e_{us} \in E_T \; . \end{cases} $$
(29)

At each construction step, with a constant probability q ∈ [0,1], the algorithm chooses an edge \(e_{st} \in \mathcal{C}\) that deterministically minimizes τ ust / w(e st ), where \(\tau_{ust} \in {\cal P}\) denotes the pheromone value assigned to the edge pair e st and e us  ∈ E T . Otherwise, with probability 1 − q, \(e_{st} \in \mathcal{C}\) is chosen probabilistically in proportion to τ ust / w(e st ).

The resulting trees may contain incorrect connections at crossovers. We observed that, while growing the tree from the root vertex, one of the crossing branches usually grows more rapidly than the other and dominates the crossover region by taking the ownership of the continuation edges. This is mainly caused by contrast differences in the original data and local classifier errors, which lead to high-cost edges not being selected to bridge gaps along the branches.

To correct such errors, we introduce an additional neighborhood structure, which we name crossover neighborhood. Two trees are said to be crossover-neighbors if one can be obtained from the other by simply changing possession of continuation edges at two co-located crossover vertices. Figure 17 gives an example of such a neighborhood for a crossover with three continuation edges. After each construction step, we search over this neighborhood of the constructed tree and minimize the primary cost function. Note that, this minimization reduces to the minimization of the sum of the pairwise edge weights in this case, since all the trees in the neighborhood have the same set of edges, and hence the unary edge costs are common.

  • DynamicTree(T,klimit): This runs a dynamic programming algorithm (Blum 2007), which we extended to handle directed graphs. For each l = 1,...,klimit, it returns the best l-cardinality tree rooted at x r . The quality of a tree is determined by the auxiliary cost function.

  • Update(T a , T b , klimit): This function updates the set of trees T a by the set T b for each cardinality. That is, for l = 1,..., klimit, if F g (T a [l]) > F g (T b [l]), then T a [l] = T b [l], where T a [l] and T b [l] denote the l-cardinality trees in T a and T b , respectively.

  • PheromoneUpdate(cf, bs_update, \({\cal P}\), \(T_{ib}[k^*]\), \(T_{rb}[k^*]\), \(T_{bs}[k^*]\)): The pheromone values are updated using the three solutions \(T_{ib}[k^*]\), \(T_{rb}[k^*]\) and \(T_{bs}[k^*]\) that have the same k* cardinality. Their influence on the update depends on the state of convergence of the algorithm. This procedure is the same as the one described in Blum and Blesa (2005) for the k-cardinality tree problem, except that the pheromone values are assigned to edge pairs instead of individual edges. We refer the interested reader to our earlier publication for further details.

  • ComputeConvergenceFactor(\({\cal P}, T_{rb}[k^*], k^*\)): In this procedure, the convergence factor of the algorithm is computed based on the convergence of the restart-best tree with cardinality k*. We take it to be

    $$ \label{eq:ConvergenceFactor} cf = \frac{ {\displaystyle \sum\limits_{h \in {\cal P}_{T_{rb}[k^*]}}}{\tau_h} }{ k^* . \tau_{\max} } \; , $$
    (30)

    where \({\cal P}_{T_{rb}[k^*]}\) denotes the set of pheromone values of the edges and edge pairs included in \(T_{rb}[k^*]\) and τ max is the upper limit for the pheromone values. Note that, the convergence factor can only assume values in the interval [0 1].

Fig. 17
figure 17

Crossover neighborhood for a junction with two branches and three continuation edges. The green circles are vertices. The blue dotted lines represent one of the crossing branches and the red solid lines represent the other one

Rights and permissions

Reprints and permissions

About this article

Cite this article

Türetken, E., González, G., Blum, C. et al. Automated Reconstruction of Dendritic and Axonal Trees by Global Optimization with Geometric Priors. Neuroinform 9, 279–302 (2011). https://doi.org/10.1007/s12021-011-9122-1

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s12021-011-9122-1

Keywords

Navigation