Features Events

From FarsightWiki
Jump to: navigation, search

Contents

Worm Features and Events

In our system, after tracking the results are fed to the Features and Events module for quantitative analysis. Our automated system quantitates features describing the worm shape(morphology,posture), motion(movement, bending or waving), and events(reversal,omega bend or foraging), etc. Most features are collected from the literature([2-10]) or requested by the Biologists, others are based on our old features [1].

Features and Events List

All the features and events measured by the automated system are listed below. Details about the computation of some features can be found in next section. WormFeatureList.png

Algorithms and Examples

Track and SktAgl Feature Sets

Both feature sets are based on the skeleton curve after rotation(so the resulting skewer line (line passing through centroid and parallel to the line liking head and tail) becomes the x-axis) and offset(so the resulting centroid becomes the origin), as shown in Figure 1.

  • Track Features:
    • Track.Amp,Track.Length, Track.Elongation Factor and Track.Compactness are easy to compute given the information on Figure.1.
    • To calculate Track.WaveLength, we treat the rotated skeleton points as sinusodial wave as in [8]. We first interpolate in x coordinates of the same interval, then perform Fast Fourier Transform. The frequency component with maximum magnitude is selected, interval between two x consecutive coordinates times the inverse of this frequency represents the wavelength of the sinusodial wave.
  • SktAgl Features:
    • SktAlg.Avg is the average of the angles between the x-axis and the line linking the skeleton points and the centroid after rotate and offset the skeleton points (Figure 1). [8] suggests that this feature helps in identifying omega turns, since the skeleton point set of an worm in an omega turn has a smaller Track.Elongation value and larger Track.Amp and SktAgl.Ave values.
    • SktAlg.Max is the max angle between skeleton points and centroid.

Figure.2 shows an example for the two feature sets.

Figure 1: Rotated and offset skeleton curve for Track and SktAgl features computation
Figure 2: Examples for features computed based on the rotated and offset skeleton curve. Worm in right panel shows larger amplitude, wavelength and average skeleton point-centroid angle

Symmetry and Curvature Feature Sets

Figure.3 shows the information used for calculating Symmetry and Curvature feature sets:(1)Centroid (2)Head Point (3)Tail Point (4)θi :Angle between ployline segments of the skeleton curve (5)Distance from each point to the line connecting head and tail.

  • Symmetry Features: [4] designed three features to measures the similarity of worm central line with a perfect sine wave.
    • Symmetry.Amp is the sum of the absolute distance from points on the skeleton to the line connecting head and tail.
    • Symmetry.SignedDist is the sum of the signed distance from points to the line. Smaller value of this feature suggests larger symmetry against the line.
    • HCTAngle is the angle between the line from centroid to head, and the line from centroid to tail.
  • Curvature Features: Curvature is used to express the worm conformation.
    • Curvature.Avg is the average of the signed curvature value:\cfrac{\sum_i\theta_i}{NL}, where θi is the angle between ployline segments of the skeleton curve, L is the length of the segments and N is the number of skeleton points.
    • Curvature.Amp is the average of the unsigned curvature value:\cfrac{\sum_i\lVert\theta_i\rVert}{NL}. This feature is used for describing coil degree in [1]. Skeleton curve of a worm in an omega turn or coiling worm usually has a higher Curvature.Amp value. Curvature as a function of position along the skeleton and time (\kappa(i,t)=\cfrac{\theta_i^t}{L}) also can be used for computing the bending frequency(see below the datail algorithm)


Figure 3: Information used for Symmetry and Curvature features computation
Figure 4: Examples for Symmetry and Curvature features. Worm in left panel has larger Curvature.Amp and smaller Symmetry.SignedDist

Source and Waving Feature Sets

  • Source Features: this feature set uses information from Figure.5 to describe the posture and movement of worm relative to the pheromone source. Source.Bearing, Source.HeadDirection and Source.Translation describe bearing, head direction and worm translation relative to the pheromone source respectively.
  • Waving Features: two features, BodyWaving.Pushing and BodyWaving.HdTRatio are used in [8] to express the waving of the worm body.
    • BodyWaving.Pusing: Skeleton point sets in time τ and τ + 1 are first superimposed to have a common centroid, which allows the calculation of invidual movement of skeleton points regardless of the whole body movement. Then BodyWaving.Pusing is obtained by computing the ratio of the mean distance all skeleton points traveled between time τ and τ + 1 to the actual distance traveled by the worm’s centroid during the same time interval.
    • BodyWaving.HdTRatio: The ratio of head movement distance to tail movement distance during a time interval τ to τ + 1 [8][9].
Figure 5: Information used for Source features calculation
Figure 6: Examples for Source and Waving features. Worm in left panel is in reversal

Other Features

  • Bending Frequency: following the algorithm in [6], worm bending frequency is calculated based on the curvature function κ(i,t), as shown in Figure.7. Let K_i(w)=\vert{F[\kappa(i,t)]}\vert denote the magnitude of the Fourier transform at the ith location along the worm body, and w_{max}^i denote the frequency maximizing the magnitude response at the ith location, the bending frequency can be expressed as: f=\cfrac{\sum_{i=1}^N{K_i(w_{max}^i)\times{w_{max}^i}}}{\sum_{i=1}^N{K_i(w_{max}^i)}}, which is the weighted average frequency over the worm body.
Figure 7: Curvature as a function of position along skeleton curve and time, left panel shows the curvature heatmap of Worm 1(Blue one in the figure below), right panel shows the heatmap of Worm 2(Red one in the figure below)

Figure.8 shows an example for some derived features and events. Worm1(blue one) is moving forward until t=41, after which the worm is in reversal. Worm2(red one) is moving forward until t=21, after reversing for several frames it begins to do omega bend(A typical omega bend starts with the worm making a big turn by approaching its body with its head, then its head will pass its tail and go to a new direction[3]). Overall, Worm2(red one) has higher bending frequency and curvature amplitude(even though the average Curvature.Amp is only 0.337 higher than the blue one, during Worm2 bending itself its curvature amplitude is about 4.2 compared to 3.0 of Worm1)

Figure 8: An example for some features and events
  • Omega Bend/Turns

Large change in the movement direction of worm is usually generated by Omega Bend[10]. A typical omega bend starts with the worm making a big turn by approaching its body with its head, then its head will pass its tail and go to a new direction[3]. Omega Bend often occurs after a reversal session ended[10]. Omega Bend is detected by the method used in [10], which is based on the head-centroid distance, tail-centroid distance and the head-centroid-tail angle. An example is shown by Figure.9, after a reversal session at the beginning, the head of Worm 2 begins to approach its body, then passes its tail and made a big turn in the end of the Omega Bend session. The feature Curvature.Amp indicates that for most of the time Worm 2 has larger curvature amplitude than Worm 1, especially when Worm 2 was doing Omega Bend. Instead of using a set of ad hoc rules like [10], one of our further works would be using more advanced method like Dynamic Bayesian Network to infer the occurrence Omega Bend based on many low-level and coarse measurements (e.g.head-centroid-tail angle, head and tail distance, curvature information, temporal evolution information, etc). Figure.10 gives all the generated features for the two worms in Figure.9.

Figure 9: An example for Omega Bend (Red Worm (2))
Figure 10: All generated features for the two worms in Figure.9

References

  • [1] Nicolas Roussel, A Computational Model for C.elegans locomotory behavior: Application to Multi-Worm tracking. Phd Thesis 2007.
  • [2] Christopher J Cronin, An automated system for measuring parameters of nematode sinusoidal movement. BMC Genet 2005.
  • [3] Huang KM, Cosman P, Schafer WR, Machine vision based detection of omega bends and reversals in C. elegans. Journal of Neuroscience Methods, Vol. 158, Issue 2, pp. 323-336, December 2006.
  • [4] Wei Geng, Pamela Cosman, Automatic Tracking, Feature Extraction and Classification of C. elegans Phenotypes. IEEE Transactions on Biomedical Engineering, Vol. 51, No. 10, pp. 1811--1820, October 2004.
  • [5] Huang KM, Cosman P, Schafer WR, Automated detection and analysis of foraging behavior in Caenorhabditis elegans. Journal of Neuroscience Methods,2008.
  • [6]Ebraheem Fontaine, Automated visual tracking for studying the ontogeny of zebrafish swimming. Journal of Experimental Biology, 2008.
  • [7] W.H. Wang, Y. Sun, A Micropositioning System with Real-Time Feature Extraction Capability for Quantifying C. elegans *Locomotive Behavior. IEEE International Conference on Automation Science and Engineering, 2007. CASE 2007.
  • [8] Zhaoyang Feng, Quantitative analysis of C. elegans: Algorithms to calculate behavioral and morphological features. BMC Bioinformatics 2004.
  • [9] Zhaoyang Feng, An imaging system for standardized quantitative analysis of C.elegans behavior. BMC Bioinformatics 2004.
  • [10] Jesse M. Gray, Joseph J. Hill, A circuit for navigation in Caenorhabditis elegans. PNAS 2005.