moments_region_3rd_invar ( Regions : : : M21, M12, M03, M30 )

Geometric moments of regions.

The operator moments_region_3rd_invar calculates the scale-invariant moments (M21, M12, M03, M30).

Calculation: Then the moments Mpq  are defined by:

                    Mpq = MUpq / MU^3,

            wherein are p+q>=2 and MU=MU00=m00.

If more than one region is passed the results are stored in tuples, the index of a value in the tuple corresponding to the index of a region in the input.

In case of empty region all parameters have the value 0.0 if no other behavior was set (see set_system).


Parameters

Regions (input_object)
region(-array) -> object
Regions to be examined.

M21 (output_control)
real(-array) -> real
Moment of 3nd order (line-dependent).

M12 (output_control)
real(-array) -> real
Moment of 3nd order (column-dependent).

M03 (output_control)
real(-array) -> real
Moment of 3nd order (column-dependent).

M30 (output_control)
real(-array) -> real
Moment of 3nd order (line-dependent).


Complexity

If Z is the area of the region the mean runtime complexity is O(sqrt(Z)).


Result

The operator moments_region_3rd_invar 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>). The behavior in case of empty region (the region is the empty set) is set via set_system('empty_region_result',<Result>). If necessary an exception handling is raised.


Parallelization Information

moments_region_3rd_invar is reentrant and automatically parallelized (on tuple level).


Possible Predecessors

threshold, regiongrowing, connection


Alternatives

moments_region_2nd


See also

elliptic_axis


Module

Region processing



Copyright © 1996-2005 MVTec Software GmbH