Skip to content
This repository has been archived by the owner on Oct 8, 2021. It is now read-only.

Latest commit

 

History

History
337 lines (288 loc) · 18.1 KB

Notes.md

File metadata and controls

337 lines (288 loc) · 18.1 KB

Notes

These release notes are no longer updated. For an up-to-date log of changes have a look at SNT's git history at morphonets.org.

Release Notes for Sholl Analysis

The latest release build is available through the Fiji Updater. Development builds may have new features (see Wish List) but are bug-prone and probably undocumented. A release is pushed to the Fiji Updater once new features mature and no major issues are found. Pre-compiled binaries (and respective sources) of the versions listed here can be downloaded from the ImageJ Maven repository.

Development Builds

  • IJ2 rewrite complete. IJ1 plugins are now deprecated but remain available under the Analyze> Sholl> Deprecated menu
  • Improvement of 'best fit' polynomial regression
  • UI improvements (look for tooltips documentation)
  • API improvements (look for scripting examples in Templates>Neuroanatomy> in the Script Editor)
  • Several bug fixes

Release Builds

DOI

Version 3.7.3 (February 2018)

  • Bugfix for IJ1 plugin: Exception in tabular prompt

Version 3.7.2 (February 2018)

  • IJ1 plugin:
    • Improvement: Adopted the IJ1 1.51q (and later) plotting enhancements. Importantly: once saved, plots include the data and can be modified after being opened.
    • Bugfix: In some cases, the Save checkbox was permanently disabled in the prompt (reported by Philippe Mailly)
    • Bugfix: In some cases, an exception would be thrown when trying to highlight the plot's centroid (reported by Philippe Mailly)
  • IJ2 plugin:
    • Bugfix: Exception in interactive prompt

Version 3.7.0 (August 2017)

  • Fixes for Analyze>Sholl>Group Sholl Profiles... (#23)
  • Development is now focused on implementing an IJ2 command. An Experimental version can be accessed through Analyze>Sholl>Sholl Analysis (Experimental Version)... Some Scripting examples are also available in the Script Editor's Template menu. Please submit bug reports on any issues you may find
  • As a preparation for full IJ2 compatibility, most of the parsing heavy leaving was rewritten. This brought immediate benefits to the current IJ1 implementation, e.g., ROIs of intersection points can also be retrieved with 3D stacks

Version 3.6.13 (May 2017)

  • All options can now be accessed programmatically (example)
  • Intersection points between arbor and sampling shells can be accessed as ROIs
  • Improved script implementing Analyze>Sholl>Group Sholl Profiles...
  • Switch from Jenkins to Travis CI

Version 3.6.12 (January 2017)

  • Implemented the Analyze>Sholl>Group Sholl Profiles... command
  • All settings are now remembered across restarts
  • Fixed an issue in which output files were saved when a valid path was provided even when the Save option was unchecked

Version 3.6.10 (January 2017)

  • Report sampled distances with zero-intersections (discussion)
  • Add option to display only linear profiles
  • Improved the detection of unsaved data in tables
  • Fixed several issues that did not allow the plugin to recognize the "Sholl Results" table after it had been renamed

Version 3.6.9 (October 2016)

  • Fixed non-responsive commands in contextual menu

Version 3.6.8 (October 2016)

  • Bug fixes (#18, #19)
  • Allow plugin to run headless (example)
  • The Analyze>Sholl>Sholl (Tracings)... plugin is now part of SNT to allow:
    • Loading of tracings without associated image
    • Perform filtering by SWC labels
    • Allow true batch analysis of traced data
  • Updated documentation page to reflect v3.6 changes

Version 3.6.7 (October 2016)

  • Fixed an issue that did not allow Analyze>Sholl>Sholl (Tracings)... to be macro recordable
  • Results files can be saved in any directory, not just the input one
  • Analyze>Sholl>Metrics & Options... now includes settings for output files

Version 3.6.6 (October 2016)

  • Implemented the Analyze>Sholl>Sholl (Tracings)... command that performs the analysis on Simple Neurite Tracer .traces/.swc files directly.
  • The plugin can now be called directly from Simple Neurite Tracer.
  • Tables with unsaved data can now be saved before dismissal

Version 3.6.5 (August 2016)

  • Option to display sampling shells in the image overlay (2D images only)
  • More >> About & Resources... lists several online resources that complement the documentation page including the IJ Forum
  • The plugin now requires Java 8 and third party dependencies bundled with Fiji (i.e., it requires an ImageJ installation subscribed to both the Java8 and the Fiji update site). In other words, we will no longer support running the plugin outside Fiji: It is becoming too cumbersome, and it is slowing down its modernization.

Version 3.6.4 (July 2016)

  • Support for multichannel (composite) images
  • Preference for preferred data type (sampled/fitted) when rendering Sholl masks
  • Masks can now be generated for normalized methods

Version 3.6.2 (May 2016)

  • Analysis of 3D images is now multithreaded. The number of threads can be set in Metrics & Options...
  • Fixed an exception triggered by IJ1.51a and later when sampling edge voxels
  • Bugs Fixed:
    • 3D sampling could be shifted by one voxel in Z
    • Reset option in Metrics & Options... command did not reset all of global preferences
    • Plot Options... from the More >> dropdown menu would not open Edit>Options>Plots...

Version 3.6.1 (March 2016)

  • UI overhaul: Functionality of the plugin has been split into several commands. These now reside in the Analyze> Sholl> submenu, and, in the plugin prompts, in the More>> dropdown menu.
  • Implemented the Sholl Metrics & Options command, that allows for full customization of the analysis output. In addition, it is now also possible to log file paths and to tag groups of images using a Comments field
  • Analysis of tabular data:
    • Key modifiers are no longer required. Sholl> Sholl Analysis (Tabular Data)... can be used directly
    • Data can be read from any Textwindow containing table, the system clipboard or an external file (previously the plugin was only aware of the ImageJ Results table)
  • Development: Improved API
  • NB: This release is identical to v3.6.0, that suffered from an issue that did not allow automated compilation by jenkins

Version 3.4.6 (February 2016)

  • Primary branches can be retrieved from multi-point counters
  • Ramification indices (RI) are only calculated when explicitly requested. To disable RI calculations deselect the Infer from starting radius checkbox and invalidate the # Primary branches field by setting it to 0 or NaN
  • API (Javadocs) are now online (using a static GitHub page), and can be accessed using Help>About Plugins> About Sholl Analysis...
  • More UI tweaks to ensure dialog prompts are more informative and display properly in Mac OS with Java 1.8

Version 3.4.5 (June 2015)

  • UI Improvements:
  • Accuracy improvements:
    • Improved accuracy of Nav calculation. Ensure it remains accurate for odd shaped profiles (highly skewed or containing plateaus) (#12). A Riemann sum is now used to calculate definite integrals
  • Scripting improvements:
    • Several (advanced) options that are not present in the main dialog can now be set by calling the Sholl_Analysis API. For more details see the Advanced Options section of the manual.
    • Improved Javadocs (download)
  • Minimum requirements: ImageJ 1.49t

Version 3.4.4 (March 2015)

  • UI Improvements:
    • Exit messages with tooltips (#8)
    • Cf. Segmentation: Clarified information. Position of main prompt is restored after Cf. Segmentation has been dismissed
    • Tables: Auto-formatting of decimal places; Plot tables without row numbers; Distance unit is reported on a dedicated column (#9)
    • Fixed: main dialogs were not properly rendered in Mac OS with Java 7 and higher
  • Minimum requirements: ImageJ 1.49i

Version 3.4.3 (October 2014)

  • Analysis of tabular data:
    • Improvement: Analysis can be restricted to selected rows
    • Fixed: Parameters such as Radius Step, Starting radius, etc., were being calculated every time a choice was made in the dialog prompt. This was spurious, and could cause the plugin to abort
    • Fixed: Exception triggered when Intersections column contained no numeric data
    • Fixed: Reported Radius Step was innacurate: it was being extracted from the difference between the first two rows in Intersections column rather than Distance column. This was due to a silly overlook
  • Bitmap analysis:
    • Fixed: Cf. Segmentation could not parse binary images with display ranges other than 0-255
  • General:
    • Fixed: Auto-restart triggered by the Analyze Sample Image command was unreliable
    • Improvement: Enclosing radius is now set to NaN if the respective cutoff is not met
    • Improvement: Ensure coherence in abbreviations (some metrics were reported using multiple abbreviations)

Version 3.4.2 (July 2014)

  • Fitting to higher order polynomials is now possible using a BAR command (documentation: GitHub, Fiji)
  • Added Mode to the list of choices for integration of multiple samples (2D images)
  • Improved user interface:
    • Macro/script recording: The Alt key modifier is now logged, so that users no longer need to find out how to trigger the key event in their macros
    • Tooltips are displayed in the ImageJ status bar when key options are specified
    • Dialog for tabular (CSV) data is much interactive and imported data can be replaced at any time using the Import Other Data command
    • With error messages, the plugin now auto-restarts when user chooses to analyze the ddaC sample image (File>Open Samples>ddaC Neuron) or when the imported CSV data is not valid
    • Users can shuttle between Bitmap and CSV modes by dismissing prompts while holding the Alt key
  • Bug fixes:
    • Fixed a bug that made the Macro Recorder to record an invalid command after pressing Cf. Segmentation
    • Fixed a but that did not give users the opportunity to save the Results table before it would be cleared by the plugin
    • Fixed a but that caused some settings to be logged as NaN when analysing CSV data

Version 3.4.1 (March 2014)

  • Improved prompts: live validation for Ending radius/Radius step size. Center of analysis is displayed on status bar. Section headings are clickable URLs pointing to respective section of the manual
  • Added Cf. Segmentation, that allow users to confirm which phase of the image is being sampled. This should help inexperienced users to make sure they are measuring neuronal processes and not the interstitial spaces between them.

Version 3.4.0 (January 2014)

  • Guesses which of the normalization methods (semi-log or log-log) is the most informative using the concept of determination ratio
  • Added 2nd and 3rd polynomials as fitting choices
  • Dialog becomes scrollable if larger than 80% of screen height/width. This ensures dialog prompts are displayed properly on small laptops such as netbooks
  • If the same image is repeatedly analyzed, detailed data from previous analysis is discarded
  • Fixed: macros calling the plugin could not parse filenames containing spaces
  • Versioning conforms with SemVer

Unfortunately, the numbering scheme used up to version 3.4.0 is somewhat arbitrary and not that meaningful. However, large increments usually indicate changes in the user interface.

Version 3.3 (December 2013)

  • Calculates skewness and kurtosis for both sampled and fitted data
  • Fixed v3.1 bug in which values from log-log plot were not listed in table

Version 3.2 (August 2013)

  • Enclosing radius is defined as the widest distance associated with a specified cutoff value of intersection counts. At the default cutoff (1), it is the largest of intersecting radii

Version 3.1 (June 2013)

  • Hold dow Alt to analyze profiles obtained elsewhere, including those from Simple Neurite Tracer
  • Multiple profiles can be obtained at once
  • Plugin can now predict (or at least try) the polynomial of best approximation
  • New descriptors: Median and Barycenter of sampled profile
  • Added a batch mode option that saves profiles without displaying them
  • Sholl decay is calculated using the full rage of data or values within percentiles 10 and 90, which usually provides a better fit. However, Sholl decay is only calculated when logarithmic methods are chosen (v2.2 behavior)
  • Normalization can be performed against: Area of circle/Volume of sphere, Perimeter of circumference/Surface of sphere or Area of annulus/Volume of spheric shell
  • Made main dialog more intuitive. This may brake previous macros created with the Macro Recorder
  • Barycenter and other descriptors are highlighted on plot
  • Updated the URL of help page to fiji.sc/Sholl_Analysis
  • Eliminated the Sholl LUT command (with IJ 1.48a an later LUTs of non-8-bit TIFFs are saved with the image)
  • Sholl mask reports only values from Linear Sholl. Semi-log and Linear-norm. masks are no longer created. This could be reinstated if needed

Version 3.0

  • 3D Sholl: Better handling of anisotropic voxels
  • 3D Sholl: Option to ignore isolated (noise) voxels
  • 3D Sholl: Minimized rounding errors related to digitization of spheres
  • 2D Sholl: Replaced Radius span with Samples per radius to avoid misinterpretations of the former parameter. A draconian maximum of 10 Samples per radius is deliberately imposed to encourage Continuos Sholl
  • 3D and 2D algorithms are ~25% faster (3D analysis remains rather slow)
  • Allows thresholded grayscale images as input
  • Analyzes polarized arbors by restricting the analysis to hemicircles/hemispheres. This requires the user to define the center of analysis with an orthogonal radius, using the Straight Line Tool and holding Shift
  • Arbor size is calculated as the area/volume of the smallest bounding circle/sphere containing the segmented arbor
  • When End radius is empty (or NaN), the largest (hemi)circle/sphere is used. This allows macros to easily process images without line selections
  • Precision (Scientific notation and number of decimal places) in Sholl table is set by Analyze>Set Measurements...
  • Sholl mask is coded with Matlab's jet color map
  • Major code clean up, which solved several issues
  • Plugin is now registered in the Analyze Menu: Analyze>Sholl Analysis...
  • Implemented the auxiliary commands File>Open Samples>ddaC neuron (2D sample image), Image>Lookup Tables>Sholl LUT and Help>About Plugins...>Sholl Plugins
  • Prettified plot

Version 3d

  • 3D Analysis is now restricted to the volume of each Sholl shell, rather than parsing all the segmented voxels

Version 3c

  • 3D Sholl is usable for the first time, but remains extremely slow

Version 3a-b

  • Experimental: Performs 3D Sholl without spike suppression if input image is a stack

Version 2.5

  • Fixed duplicated points in Bresenham's algorithm
  • Option to save data on image directory, if available
  • Long analyses can be aborted by holding Esc

Version 2.4

  • Fixed a 2.3 regression in which -1 tagged pixels were being counted
  • Improved Sholl mask: Minimized rounding errors. Center of analysis is now marked
  • Improved Sholl Table and Plot display

Version 2.3

  • Results are printed to a dedicated table
  • Sholl decay is always calculated
  • Fixed exception in the calculation of critical value in non bell-shaped profiles
  • Impose valid parameters in dialog, rather than keep prompting the user (which was not amenable to macro recording)
  • Major code cleaning

Version 2.1-2

  • Fixed several bugs and regressions introduced in v2.0
  • Checks for reasonable Radius span values

Version 2.0

  • Curve Fitting, modernization of Tom's code

Version 1.0

  • Code imported from Tom Maddock's implementation

Wish List

  • Allow analysis of multichannel images (Version 3.6.4)
  • Obtain a mask for non-linear methods (Version 3.6.4)
  • Speed up 3D analysis (Version 3.6.2)
  • Allow manual counting of primary branches (Version 3.4.6)
  • Fitting to polynomials of higher degree (Version 3.4.2)
  • Restrict analysis to area ROIs (rather than hemicircles/spheres?)