Skip to content

Commit

Permalink
Merge pull request #357 from imagej/snt-issue234
Browse files Browse the repository at this point in the history
Consolidate SNT pages (morphonets/SNT#234)
  • Loading branch information
tferr authored Jan 11, 2025
2 parents 55009b4 + fe3b371 commit 6ff9523
Show file tree
Hide file tree
Showing 20 changed files with 1,513 additions and 1,466 deletions.
842 changes: 2 additions & 840 deletions _pages/plugins/sholl-analysis.md

Large diffs are not rendered by default.

26 changes: 19 additions & 7 deletions _pages/plugins/snt/analysis.md
Original file line number Diff line number Diff line change
Expand Up @@ -50,11 +50,11 @@ There are several entry points to Sholl Analysis in SNT. You can find those in t
2. Sholl Analysis (Tracings): Parsing of reconstructions
3. Sholl Analysis Scripts: These handle batch processing of files, specialized analysis, and misc. utilities

Sholl Analysis has a dedicated [documentation page](/plugins/sholl-analysis) detailing [parameters](/plugins/sholl-analysis#parameters), [plots](/plugins/sholl-analysis#sholl-plots), and [metrics](/plugins/sholl-analysis#metrics).
Sholl Analysis has a dedicated [documentation page](./sholl) detailing [parameters](./sholl#parameters), [plots](./sholl#sholl-plots), and [metrics](./sholl#metrics).
{% endcapture %}
{% include notice icon="info" content=sholl %}

In the main SNT dialog, Sholl commands are available in the {% include bc path='Analysis| '%} menu and image contextual menu and include:
In the main SNT dialog, Sholl commands are available in the [Analysis](manual#analysis-) and [image contextual](manual#image-contextual-menu) menus and include:

- **{% include bc path='Sholl Analysis...'%}** Analyzes cells based on a set of pre-defined, morphology-based focal points (e.g., *Soma*, *Root node(s): Primary apical dendrite(s)*). Note that this assumes the relevant morphology tag(s) have been assigned to the set of paths being analyzed. Since the center of analysis is only determined after the prompt has been dismissed, preview of sampling shells may not be available.

Expand Down Expand Up @@ -82,7 +82,7 @@ The Sholl dialog created by this approach is a variant of the dialog created by
- **Color coded nodes** Intersection counts will be color mapped into path nodes under the _annotation LUT_.
- **3D viewer labels image** This generates a synthetic image holding the number of intersections at each distance from the center under _annotation LUT_. This image can then be fed to the "Apply Color Labels" action of the legacy 3D viewer, to "overlay" the mapping on the legacy 3D viewer scene.

Note that plots and tables can be directly saved to disk by selecting _Save_ and specifying a valid directory in the dialog. The remaining options in the dialog are described in the [Sholl documentation page](/plugins/sholl-analysis).
Note that plots and tables can be directly saved to disk by selecting _Save_ and specifying a valid directory in the dialog. The remaining options in the dialog are described in the [Sholl documentation page](./sholl).

{% include img align="center" src="/media/plugins/snt/sholl-analysis-outputs.png" caption="Overview of Sholl analysis outputs: Linear and log-log profile (Sholl decay calculation), *detailed* and *summary* tables. Note that 'traditional' plots are obtained by disabling curve-fitting altogether."%}

Expand All @@ -92,17 +92,29 @@ Note that plots and tables can be directly saved to disk by selecting _Save_ and
{% capture strahler%}
Similarly to _Sholl Analysis_, there are several entry points to Strahler Analysis in SNT. You can find those in the _Neuroanatomy Shortcuts_ panel ({% include bc path='Plugins|Neuroanatomy|'%} or "SNT" icon in Fiji's toolbar):

1. Strahler Analysis (Image)... Direct parsing of images, bypassing tracing
2. Strahler Analysis (Tracings)... Parsing of reconstructions
1. [Strahler Analysis (Image)...](./strahler) Direct parsing of images, bypassing tracing
2. Strahler Analysis (Tracings)... Parsing of reconstructions (described in this section)
3. Strahler Analysis Scripts: These handle batch processing of files

_Strahler Analysis (Image)_ has a dedicated [documentation page](/plugins/strahler-analysis) with details on the classification.
{% endcapture %}
{% include notice icon="info" content=strahler %}

To conduct [Strahler Analysis](/plugins/strahler-analysis) on the current contents of the Path Manager, choose the {% include bc path='Analysis|Strahler Analysis...'%} in the main SNT dialog. This command will output the results of the analysis as a table and plot(s). These figures contain morphometric statistics of branches at each Horton-Strahler number. Refer to the _Strahler Analysis (Image)_ [documentation](/plugins/strahler-analysis) for details on the classification.
{% include img align="right" src="/media/plugins/strahler-classification-example.png" caption="Strahler classification"%}
{% include wikipedia title='Strahler number' text='Strahler numbering'%} is a numerical procedure that summarizes the branching complexity of mathematical trees. The {% include wikipedia title='Strahler number' text='Strahler classification'%} occurs as follows:

- If a brach is terminal (has no children), its Strahler number is one
- If a branch has one child-branch with Strahler number *i*, and all other children-branches have Strahler numbers less than *i*, then the Strahler number of the branch is *i* again
- If a branch has two or more children-branches with Strahler number *i*, and no children-branches with greater number, then the Strahler number of the branch is *i+1*

The *Strahler number* of a neuronal arbor reflects the highest number in the classification, i.e., the number of its root branch. Original publications by {% include wikipedia title='Robert E. Horton' text='Robert E. Horton'%} and {% include wikipedia title='Arthur Newell Strahler' text='Arthur N. Strahler'%} include:

- Arthur N Strahler, Hypsometric (Area-Altitude) Analysis Of Erosional Topography (1952). GSA Bulletin; 63(11): 1117–42. [doi: 10.1130/0016-7606(1952)63[1117:HAAOET]2.0.CO;2](https://doi.org/10.1130/0016-7606(1952)63[1117:HAAOET]2.0.CO;2)
- Arthur N Strahler, Quantitative analysis of watershed geomorphology (1957). Eos, Transactions American Geophysical Union, 38(6), 913–20. [doi: 10.1029/TR038i006p00913](https://doi.org/10.1029/TR038i006p00913) ([PDF](http://www.uvm.edu/~pdodds/files/papers/others/1957/strahler1957a.pdf))

To conduct Strahler analysis on the current contents of the Path Manager, choose the {% include bc path='Analysis|Strahler Analysis...'%} in the main SNT dialog. This command will output the results of the analysis as a table and plot(s). These figures contain morphometric statistics (cf. [Strahler metrics](./metrics)) of branches at each Horton-Strahler number.
{% include img align="center" src="/media/plugins/snt/strahler-analysis-from-reconstructions.png" caption="Strahler Analysis detailed output."%}

To conduct analyses directly from (thresholded) images, have a look at [Strahler Analysis (From Images)](./strahler).

# Path-based Analysis
Path-based analyses accept _any_ traced structure (e.g., disconnected paths, paths associated with different cells, etc.), even those with loops. While most SNT measurements require traced structures to be valid mathematical trees, path-based measurements have no topological constraints. There are two commands in this category: [Path Order Analysis](#path-order-analysis), and [Path Properties: Export CSV...](#path-properties-export-csv).
Expand Down
2 changes: 1 addition & 1 deletion _pages/plugins/snt/extending.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ The Tubular Geodesics plugins were developed several years ago for [Simple Neuri
- [Tubular Geodesics homepage](https://www.epfl.ch/labs/cvlab/software/biomedical/delin-fiji/)
- [Tracing on Filtered Images](/plugins/snt/manual#main-dialog#tracing-on-secondary-image)
- [Secondary Image Screencast](/plugins/snt/screencasts#secondary-images)
- [Generating Filtered Images](/plugins/snt/step-by-step-instructions#generating-filtered-images)
- [Generating Filtered Images](/plugins/snt/walkthroughs#generating-filtered-images)

Tubular geodesics reference:
{% include citation doi='10.1109/cvpr.2012.6247722' %}
Expand Down
9 changes: 6 additions & 3 deletions _pages/plugins/snt/faq.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ See [Installation details](/plugins/snt/index#installation).

**Note that neither the main [Fiji article](/software/fiji#publication), nor the first [Simple Neurite Tracer](#what-is-the-difference-between-snt-and-simple-neurite-tracer) publication are appropriate citations for SNT**. To reference additional modules that enhance SNT:

- **[Sholl Analysis](/plugins/sholl-analysis)**
- **[Sholl Analysis](/plugins/snt/sholl)**
{% include citation id="plugins/sholl-analysis" %}
- **[Cx3D](/plugins/snt/modeling)**
{% include citation doi="10.3389/neuro.10.025.2009" %}
Expand Down Expand Up @@ -75,7 +75,7 @@ Use the *Edit this page* option on the <a href="#top">top</a> of the documentati
## Tracing

### Can I trace in 3D?
Yes, always. Either using the XY,ZY,XZ [views](/plugins/snt/step-by-step-instructions#accurate-point-placement) or more interactively: using the [3D Viewer](/plugins/snt/manual#legacy-3d-viewer) (legacy), or [sciview](/plugins/snt/manual#sciview) (experimental).
Yes, always. Either using the XY,ZY,XZ [views](/plugins/snt/walkthroughs#accurate-point-placement) or more interactively: using the [3D Viewer](/plugins/snt/manual#legacy-3d-viewer) (legacy), or [sciview](/plugins/snt/manual#sciview) (experimental).

### Having to confirm individual segments is too cumbersome. Is it possible to trace without interruption, by clicking in succession?
Yes. Uncheck the *Confirm temporary segments* in the *Options* tab (*Temporary Paths* section).
Expand All @@ -93,11 +93,14 @@ Yes. Have a look at these [instructions](https://forum.image.sc/t/simple-neurite
### How can I import an image sequence into SNT?
Loading of images that require input options is handled by ImageJ directly. To load a directory of images (e.g., one file per Z-slice), run {% include bc path='File| Import|Image Sequence' color='white'%} and select the first file in the sequence, adjusting any needed parameters in the subsequent dialog prompt. Once the sequence is imported adjust voxel dimensions using {% include bc path='Image|Properties...' color='white'%}. To save yourself from having to go through these steps again, you should save the imported stack as a single TIFF file using {% include bc path='File|Save As|Tiff...' color='white'%}

## Sholl Analysis
See [Sholl Analysis › FAQ](./sholl#faq).


## Spine Analysis

### Does SNT support spine analysis?
Currently only [Spine densities](./step-by-step-instructions#spinevaricosity-analysis) are supported. In-depth quantification of spine morphology can be done using [Spot Spine](/plugins/spot-spine), after tracing dendrites in SNT.
Currently only [Spine densities](./walkthroughs#spinevaricosity-analysis) are supported. In-depth quantification of spine morphology can be done using [Spot Spine](/plugins/spot-spine), after tracing dendrites in SNT.


## Soma Analysis
Expand Down
8 changes: 4 additions & 4 deletions _pages/plugins/snt/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,15 +22,15 @@ SNT[^1] is ImageJ's framework for tracing, visualization, quantitative analyses

## Overview

SNT is toolbox for tracing and analyzing neuronal morphologies imaged using light microscopy. It aims to be as complete as possible, while remaining efficient to use. It can be used as a desktop application, or a [scripting library](/plugins/snt/scripting). It supersedes the original [Simple Neurite Tracer](/plugins/snt/faq#what-is-the-difference-between-snt-and-simple-neurite-tracer) software, and aggregates other tools previously scattered across the Fiji ecosystem of plugins, including [Sholl](/plugins/sholl-analysis)[^2] and [Strahler](/plugins/strahler-analysis) plugins.
SNT is toolbox for tracing and analyzing neuronal morphologies imaged using light microscopy. It aims to be as complete as possible, while remaining efficient to use. It can be used as a desktop application, or a [scripting library](/plugins/snt/scripting). It supersedes the original [Simple Neurite Tracer](/plugins/snt/faq#what-is-the-difference-between-snt-and-simple-neurite-tracer) software, and aggregates other tools previously scattered across the Fiji ecosystem of plugins, including [Sholl](./sholl)[^2] and [Strahler](./strahler) plugins.

The [source repository](https://github.com/morphonets/SNT) contains more details about the project, including a list of [features](https://github.com/morphonets/SNT#features), and [implementation details](https://github.com/morphonets/SNT/blob/-/NOTES.md#notes).

{% include gallery align="fill" content=
"
/media/plugins/snt/snt-overview.png | Overview of SNT components &amp; SNT functionality
/media/plugins/snt/snt-4D-examples.png | [Semi-automated tracing](/plugins/snt/step-by-step-instructions#semi-automated-tracing): Support for multi-channel and [timelapse](/plugins/snt/step-by-step-instructions#time-lapse-analysis) images
/media/plugins/snt/snt-auto-tracing-overview.png | [Fully automated tracing](/plugins/snt/step-by-step-instructions#full-automated-tracing) of segmented images
/media/plugins/snt/snt-4D-examples.png | [Semi-automated tracing](/plugins/snt/walkthroughs#semi-automated-tracing): Support for multi-channel and [timelapse](/plugins/snt/walkthroughs#time-lapse-analysis) images
/media/plugins/snt/snt-auto-tracing-overview.png | [Fully automated tracing](/plugins/snt/walkthroughs#full-automated-tracing) of segmented images
/media/plugins/snt/snt-v3-overview.png | [Scripted routines](/plugins/snt/scripting#bundled-templates) co-exist with graphical user interface operations
/media/plugins/snt/snt-script-example.png | [Scripting](/plugins/snt/scripting) in any of Fiji's supported languages facilitated by SNT's [Script Recorder](/plugins/snt/scripting#script-recorder)
/media/plugins/snt/snt-notebook.png | Scripting in native python through [pyimagej](/scripting/pyimagej)
Expand Down Expand Up @@ -77,7 +77,7 @@ SNT's documentation is extensive. Please use the navigation bar on top of the pa
| **[Reconstruction Viewer](/plugins/snt/reconstruction-viewer)** | SNT's entry point for visualization of pre-existing data. If you are analyzing neuronal reconstructions you may want to start here |
| **[Screencasts](/plugins/snt/screencasts)** | Video tutorials. If you are using SNT for the first time you probably want to start here |
| **[Scripting](/plugins/snt/scripting)** | Details on how to use SNT as a scripting library |
| **[Walk-throughs](/plugins/snt/step-by-step-instructions)** | Detailed step-by-step instructions for specific tasks |
| **[Walkthroughs](/plugins/snt/walkthroughs)** | Detailed step-by-step instructions for specific tasks |

## References

Expand Down
8 changes: 4 additions & 4 deletions _pages/plugins/snt/key-shortcuts.md
Original file line number Diff line number Diff line change
Expand Up @@ -61,8 +61,8 @@ These shortcuts are available when running SNT in *Tracing Mode*:
| {% include key key='Ctrl|Shift|S' %} / {% include key keys='Command|Shift|S' %} | <u>S</u>ave <u>S</u>napshot Backup |
| {% include key key='L' %} | Toggles Tracing/Filling on Secondary <u>L</u>ayer (filtered image) |
| {% include key key='V' %} | Finds the brightest <u>V</u>oxel above and below the current x,y position and automatically clicks on it. If multiple maxima exist, their average positioning is used. Note that this feature assumes that neurites are brighter than the background |
| {% include key key='S' %} | Toggles cursor <u>S</u>napping: If enabled, the plugin will automatically move the cursor to the brightest voxel within the specified x,y,z snapping window<sup>1</sup>. When set correctly, this facilitates accurate [positioning of path points](/plugins/snt/step-by-step-instructions#accurate-point-placement) |
| {% include key keys='Alt|Shift|Left Click' %} | Selects a point along the active path to be used as forking point (See [step-by-step instructions](/plugins/snt/step-by-step-instructions#branching-start-a-path-on-an-existing-path) for more details on joining and branching). This shortcut can be [simplified](/plugins/snt/manual#temporary-paths) |
| {% include key key='S' %} | Toggles cursor <u>S</u>napping: If enabled, the plugin will automatically move the cursor to the brightest voxel within the specified x,y,z snapping window<sup>1</sup>. When set correctly, this facilitates accurate [positioning of path points](/plugins/snt/walkthroughs#accurate-point-placement) |
| {% include key keys='Alt|Shift|Left Click' %} | Selects a point along the active path to be used as forking point (See [step-by-step instructions](/plugins/snt/walkthroughs#branching-start-a-path-on-an-existing-path) for more details on joining and branching). This shortcut can be [simplified](/plugins/snt/manual#temporary-paths) |
| {% include key keys='Shift|B' %} | <u>B</u>ookmarks cursor location |
| {% include key keys='Shift|E' %} | Activates *Edit Mode* (<u>E</u>diting of selected Path) |
| {% include key keys='Shift|P' %} | <u>P</u>auses tracing operations |
Expand Down Expand Up @@ -114,7 +114,7 @@ See [sciview](/plugins/sciview)'s {% include bc path='Help| '%}menu for a full l

### Legacy 3D Viewer

The most important shortcuts for the [Legacy 3D viewer](/plugins/snt/step-by-step-instructions#legacy-3d-viewer) are:
The most important shortcuts for the [Legacy 3D viewer](/plugins/snt/walkthroughs#legacy-3d-viewer) are:

| {% include key key='H' %} | Selects the <u>H</u>and (pan) tool |
| {% include key key='W' %} | Selects the <u>W</u>and (tracing) tool |
Expand All @@ -129,4 +129,4 @@ In addition, _most_ shortcuts that are not specific to tracing canvases (XY, ZY

### Other

There are other key and mouse combinations used in e.g., [Sholl Analysis (by Focal Point)](/plugins/snt/analysis#sholl-analysis), and [Branching and Joining Paths](/plugins/snt/step-by-step-instructions#branching-start-a-path-on-an-existing-path), that are listed in the contextual menu, displayed when right-clicking a tracing canvas.
There are other key and mouse combinations used in e.g., [Sholl Analysis (by Focal Point)](/plugins/snt/analysis#sholl-analysis), and [Branching and Joining Paths](/plugins/snt/walkthroughs#branching-start-a-path-on-an-existing-path), that are listed in the contextual menu, displayed when right-clicking a tracing canvas.
Loading

0 comments on commit 6ff9523

Please sign in to comment.