Difference between revisions of "2014 Summer Project Week:Pluggable Label Statistics"

From NAMIC Wiki
Jump to: navigation, search
(created)
 
m (Text replacement - "http://www.slicer.org/slicerWiki/index.php/" to "https://www.slicer.org/wiki/")
 
(12 intermediate revisions by one other user not shown)
Line 10: Line 10:
 
*Bradley Lowekamp, NIH
 
*Bradley Lowekamp, NIH
 
==Project Description==
 
==Project Description==
Investigate a pluggable version of the Label Statistics module that supports extensible features added by the user ( in addition to the default features ).
 
 
<div style="margin: 20px;">
 
<div style="margin: 20px;">
 
<div style="width: 27%; float: left; padding-right: 3%;">
 
<div style="width: 27%; float: left; padding-right: 3%;">
 
<h3>Objective</h3>
 
<h3>Objective</h3>
*Create a module with default statistics.
+
Our aim is to develop an module for calculating various statistical measures over image ROI that expands upon the currently available capabilities of [http://wiki.slicer.org/slicerWiki/index.php/Documentation/Nightly/Modules/LabelStatistics Slicer LabelStatistics module]. Some of the desired features include:
*Add ability to extend the features list with user-defined plug-ins.
+
* pluggable set of "feature" calculators
 +
* "jump to label" feature
 +
* support of terminologies defining the features
 +
* what else?
 
</div>
 
</div>
 
<div style="width: 27%; float: left; padding-right: 3%;">
 
<div style="width: 27%; float: left; padding-right: 3%;">
 
<h3>Approach, Plan</h3>
 
<h3>Approach, Plan</h3>
*Determine requirements of the module.
+
* determine requirements of the module
*Research the [https://github.com/pieper/LandmarkRegistration Landmark Registration] extension for how to use extensible features.
+
* discuss the options for implementing pluggable list of features
*Also consider format of the [http://www.slicer.org/slicerWiki/index.php/Documentation/4.3/Extensions/Reporting Reporting] extension.
+
** define a category for feature calculators? or create wrappers and add them manually?
 +
* discuss how we can pass semantical information associated with the feature sets (terminology), should this be done at the SEM level?
 +
* consider [https://github.com/pieper/LandmarkRegistration Landmark Registration] extension for how to use extensible features
 +
* consider using [https://www.slicer.org/wiki/Documentation/4.3/Extensions/Reporting Reporting] extension
 +
* integrate quantitative features implemented in [https://github.com/QIICR/ProjectIssuesAndWiki/wiki/Quantitative-Indices-Extension PET Quantitative indices extension]
 
</div>
 
</div>
 
<div style="width: 27%; float: left; padding-right: 3%;">
 
<div style="width: 27%; float: left; padding-right: 3%;">
 
<h3>Progress</h3>
 
<h3>Progress</h3>
*
+
* We held a breakout session and discussed the capabilities of the existing modules that calculate statistics measures over ROI
 +
** The module being developed by Vivek and Jay includes a lot of nice features, but not yet released or modularized, some of the measures implemented overlap with existing functionality in ITK
 +
* Identified the groups of statistics filters available in ITK and SimpleITK that can be reused
 +
* Will work on a generalized python API to reuse currently available features and add them to Reporting module
 
</div>
 
</div>
 +
 +
==Label statistics related tools/modules==
 +
* ITK/SimpleITK
 +
** [http://www.itk.org/Doxygen45/html/classitk_1_1LabelStatisticsImageFilter.html LabelStatisticsImageFilter]: ([http://www.itk.org/SimpleITKDoxygen/html/classitk_1_1simple_1_1LabelStatisticsImageFilter.html available from SITK]) minimum, maximum, sum, mean, median, variance and sigma of regions of an intensity image, where the regions are defined via a label map. Optionally, the filter also computes intensity histograms on each object. If histograms are enabled, a median intensity value can also be computed.
 +
** [http://www.itk.org/Doxygen45/html/classitk_1_1LabelGeometryImageFilter.html LabelGeometryImageFilter] (ITK only, in review); label only: volume, centroid, eigenvalues, eigenvectors, axes lenghts, eccentricity, elongation, orientation, bounding box, oriented bounding box, and rotation matrix; label and greyscale: integrated intensity and weighted centroid, which are measured on an intensity image under the labeled mask.
 +
** [http://www.itk.org/Doxygen/html/classitk_1_1ShapeLabelObject.html ShapeLabelObject]: ([http://www.itk.org/SimpleITKDoxygen/html/classitk_1_1simple_1_1LabelShapeStatisticsImageFilter.html also in SITK]) label only (roundness, flatness, perimeter)
 +
** [http://www.itk.org/Doxygen45/html/classitk_1_1StatisticsLabelObject.html StatisticsLabelObject]: greyscale features (not in SITK).
 +
** [http://www.itk.org/Doxygen/html/classitk_1_1Statistics_1_1ScalarImageToTextureFeaturesFilter.html ScalarImageToTextureFeaturesFilter]: texture features (not in SITK).
 +
** [http://www.itk.org/Doxygen/html/classitk_1_1StochasticFractalDimensionImageFilter.html StochasticFractalDimensionImageFilter]: fractal dimension (not in SITK).
 +
** [http://www.itk.org/Doxygen/html/classitk_1_1Statistics_1_1ScalarImageToRunLengthMatrixFilter.html ScalarImageToRunLengthMatrixFilter]: run length features (see refs at the link, also [http://hdl.handle.net/1926/1374 this IJ article])
 +
* [https://github.com/QIICR/ProjectIssuesAndWiki/wiki/Quantitative-Indices-Extension PET Quantitative indices]
 +
** Slicer CLI module
 +
** implements basic statistical measures plus PET-specific (glycolysis quartiles, total lesion glycolysis, SAM)
 +
* Jay/Vivek [http://wiki.na-mic.org/Wiki/index.php/2014_Summer_Project_Week:Tumor_Heterogeneity_Analysis Heterogeneity Analysis module]
 +
** Superset of features available in ITK (?) - source code will be available in 1-2 weeks
 +
** implemented in numpy, not yet modularized
 +
* Hugo Aerts [http://wiki.na-mic.org/Wiki/index.php/2014_Summer_Project_Week:_Quantitative_image_feature_extraction quantitative features]
 +
** currently in Matlab
 +
** to be ported to python
 +
** source code not available yet
 
</div>
 
</div>

Latest revision as of 17:23, 10 July 2017

Home < 2014 Summer Project Week:Pluggable Label Statistics

Key Investigators

  • Andrey Fedorov, BWH
  • Ethan Ulrich, Univ. of Iowa
  • Steve Pieper, Isomics
  • Bradley Lowekamp, NIH

Project Description

Objective

Our aim is to develop an module for calculating various statistical measures over image ROI that expands upon the currently available capabilities of Slicer LabelStatistics module. Some of the desired features include:

  • pluggable set of "feature" calculators
  • "jump to label" feature
  • support of terminologies defining the features
  • what else?

Approach, Plan

  • determine requirements of the module
  • discuss the options for implementing pluggable list of features
    • define a category for feature calculators? or create wrappers and add them manually?
  • discuss how we can pass semantical information associated with the feature sets (terminology), should this be done at the SEM level?
  • consider Landmark Registration extension for how to use extensible features
  • consider using Reporting extension
  • integrate quantitative features implemented in PET Quantitative indices extension

Progress

  • We held a breakout session and discussed the capabilities of the existing modules that calculate statistics measures over ROI
    • The module being developed by Vivek and Jay includes a lot of nice features, but not yet released or modularized, some of the measures implemented overlap with existing functionality in ITK
  • Identified the groups of statistics filters available in ITK and SimpleITK that can be reused
  • Will work on a generalized python API to reuse currently available features and add them to Reporting module

Label statistics related tools/modules