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.