Open-source python package for the extraction of Radiomics features from 2D and 3D images and binary masks. Support: https://discourse.slicer.org/c/community/radiomics
commandlinebatch
Np
when weighting is applied in GLRLM (#229)tqdm
requirement (#232)requirements-dev.txt
(#231)sudo
(#233)pandas
example, showing how to process PyRadiomics output/input using the pandas
library (#228)root/notebooks
)root/examples
), with example settings in separate subfolder
(root/examples/exampleSettings
)bin
folder now only contains support scripts for the core code (i.e. generators for input files for batch
processing and scripts to generate new baselines or to resample a mask to the image geometry)Compactness1
. N.B. Baseline updated!
#218Roundness
, as this feature is identical to feature sphericity
, but uses different implementation for surface area calculation (all implemented in SimpleITK) #218Restructure documentation #216
Elongation
and Flatness
addClassToBaseline
and command line script pyradiomicsbatch
#210 #214verbose
with output printing implemented in logging. Control verbosity level to output (stderr) by calling radiomics.setVerbosity(level)
, where level determines the verbosity level (as defined in python logging). This prints out the requested levels of the log messaging, where process reports with parameter verbose
are now classified as INFO-level messages (i.e. specify INFO or DEBUG to enable these). N.B. parameter verbose
is not longer supported and will throw an error if passed in the parameter file #220featureextractor
when changing these settings. #213eval
(replaced by implementations of getattr
), this is a more secure approach. #216binwidth
= 0 during image discretization. These used to be assigned to topmost bin, but this produces unexpected behaviour (i.e. in range 1, 2, 3, 4, 5 with binwidth 1, value 5 would be discretized to 4 in stead of 5). Value now assigned is topmost bin + 1 (in concordance with default behavior of numpy.digitize
) #219voxelArrayShift
(from 2000 to 0), this is to prevent unknowingly using a too large shift when not necessary. Document effect of this parameter in the first order formulas affected. #219self.provenance_on
in featureextractor
, this value is now replaced by a customizable setting)featureextractor
in a separate function. This is to ensure consistency in applied default settings, as well as make them easily available outside of featureextractor
#224 216Profiling 5 testcases using python 2.7
_calculateMatrix
and _calculateCMatrix
, respectively.enableCExtensions
setting, which can be provided in a parameter file or as part of the kwargs
dictionary in featureextractor
.calloc
and free
for the temporary array holding the calculated zones.Associated issues: #106
Associated PRs: #158, #200, #202
Associated issues: #178, #204
Associated PRs: #188, #194, #196, #205
imageoperations
for normalizing image intensity values. If enabled, the image is normalized by centering it at the mean with standard deviation. Normalization is based on all gray values in the image, not just those inside the segementation. It is enabled or disabled by setting the parameter normalize
.normalizeScale
, which multiplies the normalized intensity values by the value of this paramter.removeOutliers
parameter. If set, all values differing more than n * (standard deviation)
from the mean are set to n * (standard deviation)
, where n
is equal to the value of this parameter. This is done after normalizing and before applying the scale. If this last parameter is omitted, no outliers are removed.Associated PRs: #209
additionalInfo
parameter)enableCExtensions
parameter).Associated PRs: #190, #202
Associated PRs: #187, #193
Upgrade to include other python versions and platforms
Associated PRs: #183, #191, #199
getFeatureClasses()
and getInputImageTypes()
functions are moved from featureextractor
to global radiomics namespace. This enumerates the possible feature classes and filters at initialization of the toolbox, and ensures feature classes are imported at initialization.Associated PRs: #190, #195, #197, #198
Different implementation of the various filters. No changes to calculation, but has a changed signature.
N.B. This results in inputImages to be differently defined (different capitalization, e.g. "orginal" should now be "Original"). See documentation for definition of inputImages (featureextractor section).