HALCON Reference Manual 10.0.2
Table of Contents / Regions / Features ClassesClassesClasses | | | Operators

moments_region_central_invarmoments_region_central_invarmoments_region_central_invarMomentsRegionCentralInvarMomentsRegionCentralInvar (Operator)

Name

moments_region_central_invarmoments_region_central_invarmoments_region_central_invarMomentsRegionCentralInvarMomentsRegionCentralInvar — Geometric moments of regions.

Signature

moments_region_central_invar(Regions : : : PSI1, PSI2, PSI3, PSI4)

Herror moments_region_central_invar(const Hobject Regions, double* PSI1, double* PSI2, double* PSI3, double* PSI4)

Herror T_moments_region_central_invar(const Hobject Regions, Htuple* PSI1, Htuple* PSI2, Htuple* PSI3, Htuple* PSI4)

Herror moments_region_central_invar(Hobject Regions, double* PSI1, double* PSI2, double* PSI3, double* PSI4)

Herror moments_region_central_invar(Hobject Regions, HTuple* PSI1, HTuple* PSI2, HTuple* PSI3, HTuple* PSI4)

double HRegion::MomentsRegionCentralInvar(double* PSI2, double* PSI3, double* PSI4) const

HTuple HRegionArray::MomentsRegionCentralInvar(HTuple* PSI2, HTuple* PSI3, HTuple* PSI4) const

void HOperatorSetX.MomentsRegionCentralInvar(
[in] IHUntypedObjectX* Regions, [out] VARIANT* PSI1, [out] VARIANT* PSI2, [out] VARIANT* PSI3, [out] VARIANT* PSI4)

VARIANT HRegionX.MomentsRegionCentralInvar(
[out] VARIANT* PSI2, [out] VARIANT* PSI3, [out] VARIANT* PSI4)

static void HOperatorSet.MomentsRegionCentralInvar(HObject regions, out HTuple PSI1, out HTuple PSI2, out HTuple PSI3, out HTuple PSI4)

HTuple HRegion.MomentsRegionCentralInvar(out HTuple PSI2, out HTuple PSI3, out HTuple PSI4)

double HRegion.MomentsRegionCentralInvar(out double PSI2, out double PSI3, out double PSI4)

Description

The operator moments_region_central_invarmoments_region_central_invarmoments_region_central_invarMomentsRegionCentralInvarMomentsRegionCentralInvar calculates the moments (PSI1PSI1PSI1PSI1PSI1, PSI2PSI2PSI2PSI2PSI2, PSI3PSI3PSI3PSI3PSI3, PSI4PSI4PSI4PSI4PSI4) that are invariant under translation and general linear transformations.

 Calculation: Then the moments PSIi are defined by:

      PSI1 = I1 / MU^4
      PSI2 = I2 / MU^10
      PSI3 = I3 / MU^7
      PSI4 = I4 / MU^11

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_systemset_systemset_systemSetSystemSetSystem).

Parallelization

Parameters

RegionsRegionsRegionsRegionsregions (input_object)  region(-array) objectHRegionHRegionHRegionXHobject

Regions to be examined.

PSI1PSI1PSI1PSI1PSI1 (output_control)  real(-array) HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Moment of 2nd order.

PSI2PSI2PSI2PSI2PSI2 (output_control)  real(-array) HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Moment of 2nd order.

PSI3PSI3PSI3PSI3PSI3 (output_control)  real(-array) HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Moment of 2nd order.

PSI4PSI4PSI4PSI4PSI4 (output_control)  real(-array) HTupleHTupleVARIANTHtuple (real) (double) (double) (double) (double)

Moment of 2nd order.

Complexity

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

Result

The operator moments_region_central_invarmoments_region_central_invarmoments_region_central_invarMomentsRegionCentralInvarMomentsRegionCentralInvar 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>)set_system("no_object_result",<Result>)SetSystem("no_object_result",<Result>)SetSystem("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>)set_system("empty_region_result",<Result>)set_system("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>)SetSystem("empty_region_result",<Result>). If necessary an exception is raised.

Possible Predecessors

thresholdthresholdthresholdThresholdThreshold, regiongrowingregiongrowingregiongrowingRegiongrowingRegiongrowing, connectionconnectionconnectionConnectionConnection

Alternatives

moments_region_2ndmoments_region_2ndmoments_region_2ndMomentsRegion2ndMomentsRegion2nd

See also

elliptic_axiselliptic_axiselliptic_axisEllipticAxisEllipticAxis

Module

Foundation


Table of Contents / Regions / Features ClassesClassesClasses | | | Operators
HALCON Reference Manual 10.0.2 Copyright © 1996-2011 MVTec Software GmbH