runlength_distributionT_runlength_distributionRunlengthDistributionRunlengthDistribution (Operator)


runlength_distributionT_runlength_distributionRunlengthDistributionRunlengthDistribution — Distribution of runs needed for runlength encoding of a region.


runlength_distribution(Region : : : Foreground, Background)

Herror T_runlength_distribution(const Hobject Region, Htuple* Foreground, Htuple* Background)

void RunlengthDistribution(const HObject& Region, HTuple* Foreground, HTuple* Background)

HTuple HRegion::RunlengthDistribution(HTuple* Background) const

static void HOperatorSet.RunlengthDistribution(HObject region, out HTuple foreground, out HTuple background)

HTuple HRegion.RunlengthDistribution(out HTuple background)


The operator runlength_distributionrunlength_distributionRunlengthDistributionRunlengthDistributionRunlengthDistribution calculates the distribution of the runs of a region of the fore- and background. The frequency of the occurrence of a certain length is calculated. Runs of infinite length are not counted. Therefore the background are the holes of the region. As many values are passed as set by the maximum length of fore- or background, respectively. The length of both tuples usually differs. The first entry of the tuples is always 0 (no runs of the length 0). If there are no blanks the empty tuple is passed at BackgroundBackgroundBackgroundBackgroundbackground. Analogously the empty tuple is passed in case of an empty region at ForegroundForegroundForegroundForegroundforeground.

Execution Information


RegionRegionRegionRegionregion (input_object)  region objectHRegionHRegionHobject

Region to be examined.

ForegroundForegroundForegroundForegroundforeground (output_control)  integer-array HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Length distribution of the region (foreground).

BackgroundBackgroundBackgroundBackgroundbackground (output_control)  integer-array HTupleHTupleHtuple (integer) (int / long) (Hlong) (Hlong)

Length distribution of the background.


If n is the number of runs of the region the runtime complexity is O(n).


The operator runlength_distributionrunlength_distributionRunlengthDistributionRunlengthDistributionRunlengthDistribution returns the value 2 (H_MSG_TRUE) if the input is not empty. The behavior in case of empty input (no input regions available) is set via the operator set_system('no_object_result',<Result>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("no_object_result",<Result>). If more than one region is passed an exception is raised.

Possible Predecessors

thresholdthresholdThresholdThresholdThreshold, select_objselect_objSelectObjSelectObjSelectObj



See also