HistogramFeatures

MLModule

genre

Histogram

author

Jan Hendrik Moltz

package

FMEstable/ReleaseMeVis

dll

MLHistogramFeatures

definition

MLHistogramFeatures.def

see also

HistogramParameters

keywords

energy, mean, absolute, deviation, root, mean, squared, skewness, kurtosis

Purpose

Computes advanced first-order features from a histogram.

Usage

Connect a HistogramObject (as computed by Histogram) to inHistogram and press Update.

Details

This modules implements the first-order features from pyradiomics (http://pyradiomics.readthedocs.io/en/latest/features.html#module-radiomics.firstorder) that are not included in HistogramParameters. The input is a histogram, which has to be non-normalized and non-weighted, i.e., it has to contain actual counts of values. The bin width may differ from 1.

In the formulas below let P be the histogram,

../../../Projects/MLHistogramFeatures/Modules/mhelp/Images/sum.png

and

../../../Projects/MLHistogramFeatures/Modules/mhelp/Images/mean.png

and let i iterate over all bins.

Windows

Default Panel

../../../Projects/MLHistogramFeatures/Modules/mhelp/Images/Screenshots/HistogramFeatures._default.png

Input Fields

inHistogram

name: inHistogram, type: MLBase

Histogram

Parameter Fields

Field Index

[]: Trigger

On Input Change Behavior: Enum

Update: Trigger

Clear: Trigger

Range: Float

doNotClearOnFailedUpdate: Bool

Robust Mean Absolute Deviation: Float

Energy: Float

Root Mean Squared: Float

Entropy (log2): Float

Skewness: Float

Has Valid Output: Bool

Status Code: Enum

Kurtosis: Float

Status Message: String

Mean Absolute Deviation: Float

Uniformity: Float

Visible Fields

Update

name: update, type: Trigger

Initiates update of all output field values.

Clear

name: clear, type: Trigger

Clears all output field values to a clean initial state.

On Input Change Behavior

name: onInputChangeBehavior, type: Enum, default: Clear, deprecated name: shouldUpdateAutomatically,shouldAutoUpdate

Declares how the module should react if a value of an input field changes.

Values:

Title

Name

Deprecated Name

​Update

​Update

​TRUE

​Clear

​Clear

​FALSE

Status Code

name: statusCode, type: Enum, persistent: no

Reflects module’s status (successful or failed computations) as one of some predefined enumeration values.

Values:

Title

Name

​Ok

​Ok

​Invalid input object

​Invalid input object

​Invalid input parameter

​Invalid input parameter

​Internal error

​Internal error

Status Message

name: statusMessage, type: String, persistent: no

Gives additional, detailed information about status code as human-readable message.

Has Valid Output

name: hasValidOutput, type: Bool, persistent: no

Indicates validity of output field values (success of computation).

[]

name: updateDone, type: Trigger, persistent: no

Notifies that an update was performed (Check status interface fields to identify success or failure).

Energy

name: outEnergy, type: Float, persistent: no

Energy (measure of the magnitude of voxel values in an image)

../../../Projects/MLHistogramFeatures/Modules/mhelp/Images/energy.png

Entropy (log2)

name: outEntropy2, type: Float, persistent: no

Entropy computed with log2

../../../Projects/MLHistogramFeatures/Modules/mhelp/Images/entropy2.png

Range

name: outRange, type: Float, persistent: no

Range

../../../Projects/MLHistogramFeatures/Modules/mhelp/Images/range.png

Mean Absolute Deviation

name: outMeanAbsoluteDeviation, type: Float, persistent: no

MAD (mean distance of all intensity values from the mean value)

../../../Projects/MLHistogramFeatures/Modules/mhelp/Images/mad.png

Robust Mean Absolute Deviation

name: outRobustMeanAbsoluteDeviation, type: Float, persistent: no

Robust MAD (mean distance of all intensity values from the mean value calculated on the subset of image array with gray levels in between, or equal to the 10th and 90th percentile)

../../../Projects/MLHistogramFeatures/Modules/mhelp/Images/rmad.png

where P_{10-90} is the histogram reduced to all bins between the 10th and 90th percentile of P. The percentile computation was reimplemented to match numpy’s version which differs from the Histogram.

Root Mean Squared

name: outRootMeanSquared, type: Float, persistent: no

RMS (square-root of the mean of all the squared intensity values, another measure of the magnitude of the image values.)

../../../Projects/MLHistogramFeatures/Modules/mhelp/Images/rms.png

Skewness

name: outSkewness, type: Float, persistent: no

Skewness (measures the asymmetry of the distribution of values about the Mean value. Depending on where the tail is elongated and the mass of the distribution is concentrated, this value can be positive or negative.)

../../../Projects/MLHistogramFeatures/Modules/mhelp/Images/skewness.png

Kurtosis

name: outKurtosis, type: Float, persistent: no

Kurtosis (measure of the ‘peakedness’ of the distribution of values. A higher kurtosis implies that the mass of the distribution is concentrated towards the tail(s) rather than towards the mean. A lower kurtosis implies the reverse: that the mass of the distribution is concentrated towards a spike near the mean value.)

../../../Projects/MLHistogramFeatures/Modules/mhelp/Images/kurtosis.png

Uniformity

name: outUniformity, type: Float, persistent: no

Uniformity (measure of the sum of the squares of each intensity value. This is a measure of the heterogeneity of the values, where a greater uniformity implies a greater heterogeneity or a greater range of discrete intensity values.)

../../../Projects/MLHistogramFeatures/Modules/mhelp/Images/uniformity.png

Hidden Fields

doNotClearOnFailedUpdate

name: doNotClearOnFailedUpdate, type: Bool, persistent: no

Prevents automated clear after update failed. This does not affect status fields. It enables the developer to analyze module’s state after failure.