ImageStatistics node — Natron 2.5.0 documentation

# ImageStatistics node

This documentation is for version 1.0 of ImageStatistics (net.sf.openfx.ImageStatistics).

## Description

Compute image statistics over the whole image or over a rectangle. The statistics can be computed either on RGBA components, in the HSVL colorspace (which is the HSV colorspace with an additional L component from HSL), or the position and value of the pixels with the maximum and minimum luminance values can be computed.

The color values of the minimum and maximum luma pixels for an image sequence can be used as black and white point in a Grade node to remove flicker from the same sequence.

## Inputs

Input | Description | Optional
--- | --- | ---
Source |  | No

## Controls

Parameter / script name | Type | Default | Function
--- | --- | --- | ---
Restrict to Rectangle / `restrictToRectangle` | Boolean | On | Restrict statistics computation to a rectangle.
Bottom Left / `bottomLeft` | Double | x: 0 y: 0 | Coordinates of the bottom left corner of the rectangle
Size / `size` | Double | w: 1 h: 1 | Width and height of the rectangle
HiDPI / `hidpi` | Boolean | Off | Should be checked when the display area is High-DPI (a.k.a Retina). Draws OpenGL overlays twice larger.
Auto Update / `autoUpdate` | Boolean | On | Automatically update values when input or rectangle changes if an analysis was performed at current frame. If not checked, values are only updated if the plugin parameters change.
Interactive Update / `interactive` | Boolean | Off | If checked, update the parameter values during interaction with the image viewer, else update the values when pen is released.
Min. / `statMin` | Color | r: 0 g: 0 b: 0 a: 0 | Minimum value.
Max. / `statMax` | Color | r: 0 g: 0 b: 0 a: 0 | Maximum value.
Mean / `statMean` | Color | r: 0 g: 0 b: 0 a: 0 | The mean is the average. Add up the values, and divide by the number of values.
S.Dev. / `statSDev` | Color | r: 0 g: 0 b: 0 a: 0 | The standard deviation (S.Dev.) quantifies variability or scatter, and it is expressed in the same units as your data.
Skewness / `statSkewness` | Color | r: 0 g: 0 b: 0 a: 0 | Skewness quantifies how symmetrical the distribution is. • A symmetrical distribution has a skewness of zero. • An asymmetrical distribution with a long tail to the right (higher values) has a positive skew. • An asymmetrical distribution with a long tail to the left (lower values) has a negative skew. • The skewness is unitless. • Any threshold or rule of thumb is arbitrary, but here is one: If the skewness is greater than 1.0 (or less than -1.0), the skewness is substantial and the distribution is far from symmetrical.
Kurtosis / `statKurtosis` | Color | r: 0 g: 0 b: 0 a: 0 | Kurtosis quantifies whether the shape of the data distribution matches the Gaussian distribution. •A Gaussian distribution has a kurtosis of 0. •A flatter distribution has a negative kurtosis, •A distribution more peaked than a Gaussian distribution has a positive kurtosis. •Kurtosis has no units. •The value that this plugin reports is sometimes called the excess kurtosis since the expected kurtosis for a Gaussian distribution is 0.0. •An alternative definition of kurtosis is computed by adding 3 to the value reported by this plugin. With this definition, a Gaussian distribution is expected to have a kurtosis of 3.0.
Analyze Frame / `analyzeFrame` | Button |  | Analyze current frame and set values.
Analyze Sequence / `analyzeSequence` | Button |  | Analyze all frames from the sequence and set values.
Clear Frame / `clearFrame` | Button |  | Clear analysis for current frame.
Clear Sequence / `clearSequence` | Button |  | Clear analysis for all frames from the sequence.
HSVL Min. / `statHSVLMin` | Color | h: 0 s: 0 v: 0 l: 0 | Minimum value.
HSVL Max. / `statHSVLMax` | Color | h: 0 s: 0 v: 0 l: 0 | Maximum value.
HSVL Mean / `statHSVLMean` | Color | h: 0 s: 0 v: 0 l: 0 | The mean is the average. Add up the values, and divide by the number of values.
HSVL S.Dev. / `statHSVLSDev` | Color | h: 0 s: 0 v: 0 l: 0 | The standard deviation (S.Dev.) quantifies variability or scatter, and it is expressed in the same units as your data.
HSVL Skewness / `statHSVLSkewness` | Color | h: 0 s: 0 v: 0 l: 0 | Skewness quantifies how symmetrical the distribution is. • A symmetrical distribution has a skewness of zero. • An asymmetrical distribution with a long tail to the right (higher values) has a positive skew. • An asymmetrical distribution with a long tail to the left (lower values) has a negative skew. • The skewness is unitless. • Any threshold or rule of thumb is arbitrary, but here is one: If the skewness is greater than 1.0 (or less than -1.0), the skewness is substantial and the distribution is far from symmetrical.
HSVL Kurtosis / `statHSVLKurtosis` | Color | h: 0 s: 0 v: 0 l: 0 | Kurtosis quantifies whether the shape of the data distribution matches the Gaussian distribution. •A Gaussian distribution has a kurtosis of 0. •A flatter distribution has a negative kurtosis, •A distribution more peaked than a Gaussian distribution has a positive kurtosis. •Kurtosis has no units. •The value that this plugin reports is sometimes called the excess kurtosis since the expected kurtosis for a Gaussian distribution is 0.0. •An alternative definition of kurtosis is computed by adding 3 to the value reported by this plugin. With this definition, a Gaussian distribution is expected to have a kurtosis of 3.0.
Analyze Frame / `analyzeFrameHSVL` | Button |  | Analyze current frame as HSVL and set values.
Analyze Sequence / `analyzeSequenceHSVL` | Button |  | Analyze all frames from the sequence as HSVL and set values.
Clear Frame / `clearFrameHSVL` | Button |  | Clear HSVL analysis for current frame.
Clear Sequence / `clearSequenceHSVL` | Button |  | Clear HSVL analysis for all frames from the sequence.
Luminance Math / `luminanceMath` | Choice | Rec. 709 | Formula used to compute luminance from RGB values. Rec. 709 (rec709): Use Rec. 709 (0.2126r + 0.7152g + 0.0722b). Rec. 2020 (rec2020): Use Rec. 2020 (0.2627r + 0.6780g + 0.0593b). ACES AP0 (acesap0): Use ACES AP0 (0.3439664498r + 0.7281660966g + -0.0721325464b). ACES AP1 (acesap1): Use ACES AP1 (0.2722287168r + 0.6740817658g + 0.0536895174b). CCIR 601 (ccir601): Use CCIR 601 (0.2989r + 0.5866g + 0.1145b). Average (average): Use average of r, g, b. Max (max): Use max or r, g, b.
Max Luma Pixel / `maxLumaPix` | Double | x: 0 y: 0 | Position of the pixel with the maximum luma value.
Max Luma Pixel Value / `maxLumaPixVal` | Color | r: 0 g: 0 b: 0 a: 0 | RGB value for the pixel with the maximum luma value.
Min Luma Pixel / `minLumaPix` | Double | x: 0 y: 0 | Position of the pixel with the minimum luma value.
Min Luma Pixel Value / `minLumaPixVal` | Color | r: 0 g: 0 b: 0 a: 0 | RGB value for the pixel with the minimum luma value.
Analyze Frame / `analyzeFrameLuma` | Button |  | Analyze current frame and set min/max luma values.
Analyze Sequence / `analyzeSequenceLuma` | Button |  | Analyze all frames from the sequence aand set min/max luma values.
Clear Frame / `clearFrameLuma` | Button |  | Clear luma analysis for current frame.
Clear Sequence / `clearSequenceLuma` | Button |  | Clear luma analysis for all frames from the sequence.