Difference between revisions of "2014 Summer Project Week:Pluggable Label Statistics"
From NAMIC Wiki
m (Text replacement - "http://www.slicer.org/slicerWiki/index.php/" to "https://www.slicer.org/wiki/") |
|||
(8 intermediate revisions by one other user not shown) | |||
Line 26: | Line 26: | ||
* discuss how we can pass semantical information associated with the feature sets (terminology), should this be done at the SEM level? | * 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 [https://github.com/pieper/LandmarkRegistration Landmark Registration] extension for how to use extensible features | ||
− | * consider using [ | + | * 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] | * 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== | ==Label statistics related tools/modules== | ||
* ITK/SimpleITK | * 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_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, | + | ** [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/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. | + | ** [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] | * [https://github.com/QIICR/ProjectIssuesAndWiki/wiki/Quantitative-Indices-Extension PET Quantitative indices] | ||
** Slicer CLI module | ** Slicer CLI module |
Latest revision as of 17:23, 10 July 2017
Home < 2014 Summer Project Week:Pluggable Label StatisticsKey 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
- ITK/SimpleITK
- LabelStatisticsImageFilter: (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.
- 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.
- ShapeLabelObject: (also in SITK) label only (roundness, flatness, perimeter)
- StatisticsLabelObject: greyscale features (not in SITK).
- ScalarImageToTextureFeaturesFilter: texture features (not in SITK).
- StochasticFractalDimensionImageFilter: fractal dimension (not in SITK).
- ScalarImageToRunLengthMatrixFilter: run length features (see refs at the link, also this IJ article)
- PET Quantitative indices
- Slicer CLI module
- implements basic statistical measures plus PET-specific (glycolysis quartiles, total lesion glycolysis, SAM)
- Jay/Vivek 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 quantitative features
- currently in Matlab
- to be ported to python
- source code not available yet