Skip to content

Commit

Permalink
v2.2.0 Release
Browse files Browse the repository at this point in the history
  • Loading branch information
JoostJM committed May 6, 2019
1 parent b09c23a commit 24a9b42
Show file tree
Hide file tree
Showing 4 changed files with 92 additions and 9 deletions.
80 changes: 79 additions & 1 deletion CHANGES.rst
Original file line number Diff line number Diff line change
Expand Up @@ -2,10 +2,88 @@
Release Notes
=============

.. note::
**Upcoming changes in 3.0 release**

- Removal of deprecated code (e.g. ``commandlinebatch.py``, ``calculateFeatures()`` function in feature classes);
deprecated radiomics features are retained.
- End of official python 2.7 support

- No CI-tests for python 2.7
- No pre-build binaries for python 2.7 distributed on PyPi and Anaconda Cloud
- Compatibility code using six is retained (allowing local build).

------------
Next Release
------------

-----------------
PyRadiomics 2.2.0
-----------------

.. warning::
In this release, the main interface class, :py:mod:`RadiomicsFeaturesExtractor <radiomics.featureextractor>`, was
renamed to :py:mod:`RadiomicsFeatureExtractor <radiomics.featureextractor>`
(no 's' between 'Feature' and 'Extractor'). This was done to avoid confusion between the module and class name.
(`#481 <https://github.com/Radiomics/pyradiomics/pull/481>`_)

New Features
############

- Add 2D shape features (`#442 <https://github.com/Radiomics/pyradiomics/pull/442>`_)
- Expose voxel-based feature extraction on the PyRadiomics command line interface.
(`#457 <https://github.com/Radiomics/pyradiomics/pull/457>`_)

Labs
####

- Add notebook investigating reproducibility between PyRadiomics and USF tool (ITK-based;
`#458 <https://github.com/Radiomics/pyradiomics/pull/458>`_)

Bug Fixes
#########

- Flatten array when applying gray value discretization of the entire image (voxel-based, full kernel;
`f87abcf <https://github.com/Radiomics/pyradiomics/commit/f87abcf>`_)
- Fix incorrect removal of 'empty gray levels' in GLDM and GLRLM (voxel-based;
`4b18ce2 <https://github.com/Radiomics/pyradiomics/commit/4b18ce2>`_)
- Fix incorrect instantiation of firstorder voxel-based extraction.
(`81e713a <https://github.com/Radiomics/pyradiomics/commit/81e713a>`_)
- Force cast coefficients to float. Prevents overflow and type errors in feature calculation.
(`e9d60c7 <https://github.com/Radiomics/pyradiomics/commit/e9d60c7>`_)

Tests
#####

- Removed support and continuous integration for Python 3.4 (not maintained since March 2019). Added support and CI for
Python 3.7. (`#486 <https://github.com/Radiomics/pyradiomics/pull/486>`_)

Internal API
############

- Update C-extensions:

- Rewrite C code to work with N-Dimensional input. (`#463 <https://github.com/Radiomics/pyradiomics/pull/463>`_)
- Add batch-calculation of kernels and vectorized feature calculation to improve voxel-based extraction duration.
(`#466 <https://github.com/Radiomics/pyradiomics/pull/466>`_)

- Add support for segmentation objects (multi-layer labelmaps;
`#445 <https://github.com/Radiomics/pyradiomics/pull/445>`_)

- Refactor the commandline interface (`#481 <https://github.com/Radiomics/pyradiomics/pull/481>`_)

- Extractor instantiated once (resulting in only 1 validation of the parameter file, outside of paralellization loop)
- Simplify construction of the python generator of the cases that are to be extracted
- Remove now unnecessary functions

Documentation
#############

- Update documentation (`#446 <https://github.com/Radiomics/pyradiomics/pull/446>`_,
`690891d <https://github.com/Radiomics/pyradiomics/commit/690891d>`_)
- Fix some rendering errors (`723d868 <https://github.com/Radiomics/pyradiomics/commit/723d868>`_,
`e3eb427 <https://github.com/Radiomics/pyradiomics/commit/e3eb427>`_)

-----------------
PyRadiomics 2.1.2
-----------------
Expand Down Expand Up @@ -53,7 +131,7 @@ Dependencies

- Fix PyWavelets version to > 0.4.0, <= 1.0.0, due to compilation issue in SlicerRadiomics.
(`c828b99 <https://github.com/Radiomics/pyradiomics/commit/c828b99>`_,
`SlicerRadiomics#50 <https://github.com/Radiomics/SlicerRadiomics/issues/50>`_)
`SlicerRadiomics#50 <https://github.com/Radiomics/SlicerRadiomics/issues/50>`_)

-----------------
PyRadiomics 2.1.0
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# pyradiomics v2.1.2
# pyradiomics v2.2.0

## Build Status

Expand Down
17 changes: 11 additions & 6 deletions docs/faq.rst
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,13 @@ used as input for PyRadiomics. Please note that only one file location can be pr
provide the image in DICOM format, load the DICOM images using SimpleITK functionality and pass the resultant image
object instead.

If your input images are DICOM, you should first confirm the DICOM files you have correspond to a single image series. If you are not sure, you can sort the data such that you have a single directory per series using, for example, `dicomsort https://github.com/pieper/dicomsort`_. You can then convert the DICOM series into an ITK-readable volumetric format using `plastimatch convert http://plastimatch.org/plastimatch.html#plastimatch-convert`_ or `dcm2niix https://github.com/rordenlab/dcm2niix`_. We also provide a "labs" (experimental) script `pyradiomics-dcm https://github.com/Radiomics/pyradiomics/tree/master/labs/pyradiomics-dcm` that can do those conversions automatically and also saves the resulting features as DICOM SR.
If your input images are DICOM, you should first confirm the DICOM files you have correspond to a single image series.
If you are not sure, you can sort the data such that you have a single directory per series using, for example,
`dicomsort <https://github.com/pieper/dicomsort>`_. You can then convert the DICOM series into an ITK-readable
volumetric format using `plastimatch convert <http://plastimatch.org/plastimatch.html#plastimatch-convert>`_ or
`dcm2niix <https://github.com/rordenlab/dcm2niix>`_. We also provide a "labs" (experimental) script
`pyradiomics-dcm <https://github.com/Radiomics/pyradiomics/tree/master/labs/pyradiomics-dcm>`_ that can do those
conversions automatically and also saves the resulting features as DICOM SR.

.. _radiomics_geometry_mismatch:

Expand Down Expand Up @@ -130,13 +136,12 @@ See `this thread <https://groups.google.com/forum/#!topic/pyradiomics/QLdD_qEw3P
Can I use DICOM-RT struct for the input mask?
#############################################

PyRadiomics does not support DICOM-RT struct as input directly. We recommend to convert these using for example `plastimatch convert http://plastimatch.org/plastimatch.html#plastimatch-convert`_. You can also
load DICOM RT in 3D Slicer after installing the
`SlicerRT <http://slicerrt.github.io/>`_ extension. DICOM RT loaded into 3D Slicer using SlicerRT extension
can then be passed as input to the `SlicerRadiomics extension
PyRadiomics does not support DICOM-RT struct as input directly. We recommend to convert these using for example
`plastimatch convert <http://plastimatch.org/plastimatch.html#plastimatch-convert>`_. You can also load DICOM RT in 3D
Slicer after installing the `SlicerRT <http://slicerrt.github.io/>`_ extension. DICOM RT loaded into 3D Slicer using
SlicerRT extension can then be passed as input to the `SlicerRadiomics extension
<https://github.com/Radiomics/SlicerRadiomics>`_.


Usage
-----

Expand Down
2 changes: 1 addition & 1 deletion docs/features.rst
Original file line number Diff line number Diff line change
Expand Up @@ -94,7 +94,7 @@ Gray Level Run Length Matrix (GLRLM) Features
.. _radiomics-ngtdm-label:

Neighbouring Gray Tone Difference Matrix (NGTDM) Features
--------------------------------------------------------
---------------------------------------------------------

.. automodule:: radiomics.ngtdm
:members:
Expand Down

0 comments on commit 24a9b42

Please sign in to comment.