modified Candy model, in which the energy functional is minimized using a greedy ... local maxima in the image known as seed points, while a modified Candy.
Rapid Automated Detection of Roots in Minirhizotron Images Guang Zeng∗ and Stanley T. Birchfield∗ and Christina E. Wells† ∗ Department of Electrical and Computer Engineering † Department of Horticulture Clemson University Abstract An approach for rapid, automatic detection of plant roots in minirhizotron images is presented. The problem is modeled as a Gibbs point process with a modified Candy model, in which the energy functional is minimized using a greedy algorithm whose parameters are determined in a data-driven manner. The speed of the algorithm is due in part to the selection of seed points, which discards more than 90% of the data from consideration in the first step. Root segments are formed by grouping seed points into piecewise linear structures, which are further combined and validated using geometric techniques. After root centerlines are found, root regions are detected using a recursively bottom-up region growing method. Experimental results from a collection of diverse root images demonstrate improved accuracy and faster performance compared with previous approaches.
1
Introduction
Minirhizotrons are a widely used, non-destructive technology for measuring and tracking the production, growth, and turnover of plant roots in experimental and natural ecosystems [8]. These transparent tubes are buried in the ground to allow repeated observation 1
of plant roots via miniaturized cameras lowered into the tubes at periodic (e.g., biweekly) intervals. The vast amount of data captured by minirhizotrons presents a challenge for researchers, who have traditionally annotated such images by hand — a laborious and time-consuming process that can consume thousands of hours per experiment. This bottleneck has motivated various researchers to explore ways of automatically extracting root information from the images without manual annotation [15, 2, 4, 5, 6, 7, 17, 14]. These methods have focused primarily on estimating total root length, rather than on identifying and measuring the length of individual roots in each image. This limitation motivated us in earlier work [18] to develop an algorithm for detecting and measuring individual roots, a necessary step for the statistical analysis of root turnover and other important parameters. In this paper, we model the problem using a Gibbs point process. The model includes a term for the intensity energy of individual line segments composing a root, as well as a term for the interaction energy between line segments. The intensity energy aligns the segments with local maxima in the image known as seed points, while a modified Candy model [13] is proposed for the interaction energy. An efficient greedy algorithm for minimizing the total energy functional is presented, which takes advantage of a rapid approach for identifying the seed points, borrowing from the idea of interest regions [9, 3, 12]. Throughout, a data-driven methodology is adopted in which weights and thresholds are determined by measuring parameters in a labeled training database. The resulting algorithm is not only orders of magnitude faster than our previous approach, but it also yields better results on three challenging databases of peach, magnolia, and maple images.
2
2
Root Energy Model
Point processes are used to model random collections of point occurrences [16, 13]. More formally, let K ⊂ R2 be a compact subset of the Euclidean plane, and let Ω = ∪∞ n=0 Ωn be the configuration space, where Ωn is the set of all unordered configurations ω = {ω1 , . . . , ωn } consisting of n points ωi ∈ K. A finite spatial point process on K is defined as a random measure N : A → Z+ , such that N (A) represents the number of points that lie in the region A ⊂ K. The simplest point process is the Poisson process, in which the points are distributed on the plane according to a uniform distribution with no interaction between the points. In a Markov process with pairwise interactions, the probability of a particular configuration is a function of both the individual points and the interactions between the points. By the Hammersley-Clifford theorem, this can be written as the product of clique interaction functions:
p(ω) = α
Y
e−β(ωi )
Y
e−γ(ωi ,ωj )
(1)
ωi ,ωj ∈ω
ωi ∈ω
= α exp(−U (ω)),
where α is a constant that ensures
P
ω∈Ω
p(ω) = 1, and U (ω) =
(2)
P
ωi ∈ω
P β(ωi )+ ωi ,ωj ∈ω γ(ωi , ωj ).
Without loss of generality, the energy term U enables us to consider the process to be a Gibbs process.
Our goal in this work is to extract the roots in an image, which we model as a network of connected segments. A segment is given by si = (ωi , mi ), where ωi = (xi , yi ) are the coordinates of its center, and mi = (`i , θi ) ∈ M are the length and orientation of the segment, respectively. This is a marked point process, in which each point ωi has an associated characteristic mi . The line network s = {s1 , . . . , sn } that we wish to extract
3
is considered as the realization of a point process on K × M . Within the framework of a Gibbs point process, the probability density of our model is p(s) ∝ exp(−U (s)), where
U (s) = UD (s) + UI (s),
(3)
and where the two terms represent the intensity (or data) model and the interaction model, respectively. The network estimate is obtained by minimizing the energy functional U (s): ˆs = arg min{UD (s) + UI (s)}. s
2.1
Intensity model
The graylevel profile of the cross section of a young root approximates a Gaussian curve [18], with the peak of the Gaussian in the center of the root. Based on this observation, the intensity model seeks to fit each segment to nearby local maxima of the image. Let X be the set of pixels in the image which are local maxima, and let Xi ⊆ X be the set of local maxima that lie within a rectangle of fixed width centered and aligned with a line segment si . We say that Xi contain the maxima that lend support to si . Let us define the spread of Xi as the shortest path length connecting the points divided by the number of points |Xi |. The spread of a line segment is equivalent to the average distance between neighboring points in the set, with neighbors defined by first ordering the points according to their projection onto the segment. Define the residue of Xi as the mean squared error of the points with respect to their distance from si . With these definitions, we formulate the intensity energy of a segment as a linear
4
combination of various pieces of evidence:
UD (si ) =
ND X
wj gj (si ),
(4)
j=1
where g1 (si ), g2 (si ), and g3 (si ) are respectively the spread, residue, and support of si , as defined above. A fourth property is based on the observation that the width of a root tends to be fairly constant. We define g4 (si ) as the width stability, or the percentage of pixels whose width (perpendicular distance to the nearest intensity edge) is within some tolerance of the estimated root width. The total intensity energy is obtained by Pn assuming linear independence between the segments: UD (s) = i=1 UD (si ), and the weights wj are learned from the data, as explained later.
2.2
Interaction model
We adopt a modification of the Candy model [13] to represent the interaction between segments. Let pi = ωi − 2` (cos θi , sin θi ) and qi = ωi + 2` (cos θi , sin θi ) be the two endpoints of si . We define the attraction region Ai of si as the set of points such that ω ∈ Ai if and only if ||ωi − pi || < τi or ||ωi − qi || < τi , where τi = `i /3. Two segments si and sj are considered to have an attraction interaction with one another if pi ∈ Aj or qi ∈ Aj or pj ∈ Ai or qj ∈ Ai . Interaction is illustrated in Figure 1. Segments can be connected at either end to another segment, or they can be unconnected. The interaction function penalizes segments that are connected but not well aligned: UI (si , sj ) =
( PN I
j=1
wj0 hj (si , sj ) if si and sj are connected
uc
(5)
otherwise
where the proximity h1 (si , sj ) = min{||pi − pj ||, ||pi − qj ||, ||qi − pj ||, ||qi − qj ||} measures the minimum Euclidean distance between the end points on two segments, the alignment
5
Figure 1: A segment s1 and its attraction region. Segments s3 and s4 interact with s1 , while s2 does not. h2 (si , sj ) = (π − θij )/π, where θij is the angle between the two segments, measures their curvature, and uc is a constant. Note that unlike the work of Stoica et al. [13], we do not penalize superposition and therefore do not need a rejection interaction function. As with the intensity model, the weights w0 are learned from the data, and indepenP dence among the segment pairs is assumed: UI (s) = si sj ,i