Geometric moments of regions.
The operator moments_region_3rd calculates the translation-invariant central moments (M21, M12, M03, M30) of order (p+q).
Calculation: x and y are the coordinates of the
center of a region R with the area Z.
Then the moments Mpq are defined by:
Mpq = SUMME Z( xi, yi) (xi - x)^p (yi - y)^q ,
wherein are x = m10 / m00 and y = m01 / 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).
|
Regions (input_object) |
region(-array) -> object |
| Regions to be examined. | |
|
M21 (output_control) |
real(-array) -> real |
| oment 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). | |
If Z is the area of the region the mean runtime complexity is O(sqrt(Z)).
The operator moments_region_3rd 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.
moments_region_3rd is reentrant and automatically parallelized (on tuple level).
threshold, regiongrowing, connection
Region processing