Histogram
Histogram operator properties for Script Engine. Analyses the colour and brightness distribution of the image and reports whether enough pixels fall inside a chosen colour range. Useful for monitoring exposure on a live feed, detecting when a known team colour or sponsor branding appears on screen, triggering automation when a colour signal (a flag, a light, a vest) is shown to the camera, or recording the dominant hue/saturation of footage for editorial purposes. Define a hue/saturation/value window, set how much of the area must qualify, and use the Qualified flags to drive scripts.
| Property | Type | Access | Description |
|---|---|---|---|
ConfigurationHueValueMin |
int |
get/set |
Lowest hue (in degrees) that counts as a qualifying colour. [min=0, max=360, default=0]. Hue runs around the colour wheel: 0=red, 60=yellow, 120=green, 180=cyan, 240=blue, 300=magenta. Combine with ConfigurationHueValueMax to pick a slice of the wheel. |
ConfigurationHueValueMax |
int |
get/set |
Highest hue (in degrees) that counts as a qualifying colour. [min=0, max=360, default=360]. Set the same as ConfigurationHueValueMin for an exact hue match, or widen the range to accept variations. |
ConfigurationMinimumSaturation |
int |
get/set |
Minimum colour saturation (%). [min=0, max=100, default=20]. Pixels less saturated than this are ignored. Raise this to exclude near-grey pixels and only react to vivid colours. |
ConfigurationMaximumSaturation |
int |
get/set |
Maximum colour saturation (%). [min=0, max=100, default=0]. 0 disables the upper limit. Use to exclude over-saturated pixels. |
ConfigurationMinimumValue |
int |
get/set |
Minimum brightness (value, %) of qualifying pixels. [min=0, max=100, default=10]. Pixels darker than this are ignored. Raise this to exclude shadows and only react to well-lit colour. |
ConfigurationMinPercentPixel |
float |
get/set |
Percentage of the area that must qualify before Qualified becomes true. [min=0, max=100, default=0]. 0 means any single matching pixel qualifies the frame. Raise this to ignore tiny patches and only fire on substantial coverage (for example, a flag filling a sizeable part of the frame). |
ShowQualifyingPixels |
bool |
get/set |
Tint qualifying pixels in the output so they stand out. [default=false]. Useful while dialing in the colour range. Turn off in production unless the visualisation is part of the show. |
HideDisqualifyingPixels |
bool |
get/set |
Hide pixels that do not qualify, leaving only the matching colour visible. [default=false]. Combine with Show qualifying pixels for a clear "matched-only" look. |
HideAllOutput |
bool |
get/set |
Hide all visual output and use the operator only as a measurement. [default=false]. The Qualified properties are still updated. Use this when the histogram is just a trigger and shouldn't change the picture. |
ConfigurationMinFramesToQualify |
int |
get/set |
Number of consecutive frames the colour must qualify before TemporalQualified becomes true. [min=1, max=30, default=1]. Higher values smooth out single-frame glitches but delay the trigger. 1 means react immediately. |
ConfigurationMinFramesToNotQualify |
int |
get/set |
Number of consecutive frames without a match before TemporalQualified resets to false. [min=1, max=30, default=1]. Higher values keep the trigger high through brief drop-outs. |
Qualified |
bool |
get |
True when the current frame matches the configured colour (read-only). Reflects the raw, instantaneous match. Use TemporalQualified for a debounced version. |
TemporalQualified |
bool |
get |
True after enough consecutive frames have qualified (read-only). The recommended trigger for scripts — debounced via ConfigurationMinFramesToQualify/ConfigurationMinFramesToNotQualify. |
MostCommonHue |
int |
get |
Hue (degrees) that appears most often in the analysed area (read-only). |
MostCommonHueCount |
int |
get |
How many pixels share the most common hue (read-only). |
HueValuesFound |
int |
get |
Number of distinct hue values present (read-only). A low number suggests a flat colour palette; a high number suggests a busy/varied image. |
MostCommonSaturation |
int |
get |
Saturation level that appears most often, 0–255 (read-only). |
SaturationValuesFound |
int |
get |
Number of distinct saturation values present (read-only). |
TotalNumberOfPixelsAnalyzed |
int |
get |
Total number of pixels considered, before colour filtering (read-only). |
TotalNumberOfPixelsProcessed |
int |
get |
Number of pixels that matched the configured colour rules (read-only). |
TotalNumberOfPixelsProcessedPercentageString |
string |
get |
Matching pixels as a percentage of the analysed area, formatted as text (read-only). |
VideoPassThrough |
bool |
get/set |
Output the original picture untouched while still analysing it. [default=false]. Useful when the histogram is purely a measurement and the visualization options would interfere with the show. |
CropLeft |
int |
get/set |
Pixels to ignore from the left of the image. [min=0, max=4096, default=0]. Use to limit analysis to a region of interest, for example excluding lower-thirds, scoreboards or letterbox bars. |
CropRight |
int |
get/set |
Pixels to ignore from the right of the image. [min=0, max=4096, default=0]. |
CropTop |
int |
get/set |
Pixels to ignore from the top of the image. [min=0, max=4096, default=0]. |
CropBottom |
int |
get/set |
Pixels to ignore from the bottom of the image. [min=0, max=4096, default=0]. |
Inherits from: AbstractOperator, AbstractAudioMetering.
See also: Histogram in Operators — user-facing introduction, screenshots, and section summaries.