Skip to content

Skeletons

ArjunBharioke edited this page Feb 22, 2015 · 15 revisions

Accessing Neuron Morphology

Our EM reconstruction is both dense and volumetric; it is not composed of just a connectome of synapses, or of only skeletal points. While these reconstructions are not necessarily pixel perfect (and there may be an unknown amount of deviation from the true in vivo structure due to the EM preparation process), attendees can access all neurons/bodies in our dataset in their voxel representations. To access neurons with this level of detail, please consult the next section on the DVID API.

In many circumstances, however, analyzing neuronal shapes at voxel precision is unnecessary and cumbersome. Therefore, we have skeletonized our neurons using the TEASAR algorithm [Sato et al, '00]. (Our specific implementation is described in more detail here). A subset of these skeletons have been uploaded to this github repo, including all bodies with volumes >0.1 cubic microns. This includes all the neurons identified within the neuronsinfo.json, as well as many additional substantial bodies.

The skeletons are stored in the SWC file format, which is described in more detail here. Each file is named by the body ID of the object that has been skeletonized. In summary, the SWC file is an ordered list of vectors, that contains the coordinates of each points within the skeleton, along with the radii of the object at each of those points.

The SWC format also contains a type variable to describes the neurite type of the process (integer T in the reference, here). Unlike vertebrate neurons, neurons in flies do not have axons and dendrites. Instead, their processes can often have both pre- and postsynaptic specializations interspersed amongst each other (though there may still be presynaptically, or postsynaptically specialized regions). As such, most of the processes within the skeletons have been labeled as type 0 (or undefined).

There is only one relevant case in which the type integer has been changed. Some of the skeletons within the data set are composed of disjoint parts. In many cases, these cases are due to the process leaving the segmented region of the data set. Since the imaged volume is larger than the segmented region, it is still possible (in many cases) to identify the two disjoint parts of the skeleton as part of the same larger body. Nevertheless, due to possible ambiguities in the identification of the separate parts, we have used the type integer to classify the disjoint parts in the following way.

Within any skeleton composed of disjoint components:

  1. The largest component is classified with type integer, 0
  2. For any component which has a total process length <3 microns, the type integer for points within that component has been set to 20. We believe that these processes are of negligible size, and suggest that they can be disregarded in most analyses.
  3. For components with a total process length >=3 microns in total length, the type integer has been set to 21. These components, in many cases, are from the same cell as the largest component (labeled with type 0), but we have been unable to confirm this in all cases, unambiguously. Therefore, we would urge caution in using those components.

In general, a user could either screen the isolated branches by themselves based on the size or only keep the nodes with the type 0 for further analysis.

Note: As part of our investigation of multiple root bodies, we noticed two skeletons (body IDs: 197198 and 236103) where even the largest component did not appear to be composed of a single neuron (i.e. it was composed of fragments from different neurons, falsely merged together). The skeletons associated with these bodies have been removed from the data set. In the future, if similar bodies in error are identified, they will either be corrected, or also removed from the data set.

Table of Contents

Clone this wiki locally