moments_region_2nd moments_region_2nd MomentsRegion2nd MomentsRegion2nd moments_region_2nd (算子名称)
名称
moments_region_2nd moments_region_2nd MomentsRegion2nd MomentsRegion2nd moments_region_2nd — Calculate the geometric moments of regions.
参数签名
Herror moments_region_2nd (const Hobject 区域 , double* M11 , double* M20 , double* M02 , double* Ia , double* Ib )
Herror T_moments_region_2nd (const Hobject 区域 , Htuple* M11 , Htuple* M20 , Htuple* M02 , Htuple* Ia , Htuple* Ib )
void MomentsRegion2nd (const HObject& 区域 , HTuple* M11 , HTuple* M20 , HTuple* M02 , HTuple* Ia , HTuple* Ib )
HTuple HRegion ::MomentsRegion2nd (HTuple* M20 , HTuple* M02 , HTuple* Ia , HTuple* Ib ) const
double HRegion ::MomentsRegion2nd (double* M20 , double* M02 , double* Ia , double* Ib ) const
static void HOperatorSet .MomentsRegion2nd (HObject 区域 , out HTuple m11 , out HTuple m20 , out HTuple m02 , out HTuple ia , out HTuple ib )
HTuple HRegion .MomentsRegion2nd (out HTuple m20 , out HTuple m02 , out HTuple ia , out HTuple ib )
double HRegion .MomentsRegion2nd (out double m20 , out double m02 , out double ia , out double ib )
def moments_region_2nd (区域 : HObject) -> Tuple[Sequence[float], Sequence[float], Sequence[float], Sequence[float], Sequence[float]]
def moments_region_2nd_s (区域 : HObject) -> Tuple[float, float, float, float, float]
描述
moments_region_2nd moments_region_2nd MomentsRegion2nd MomentsRegion2nd MomentsRegion2nd moments_region_2nd calculates the geometric
moments M11 M11 M11 M11 m11 m11 , M20 M20 M20 M20 m20 m20 and M02 M02 M02 M02 m02 m02 of the input
regions in 区域 区域 区域 区域 区域 区域 . Furthermore the major and minor axis
of the input regions are calculated and returned in Ia Ia Ia Ia ia ia
and Ib Ib Ib Ib ib ib .
The covariance matrix is given by:
The row-dependent moment of 2nd order is returned in M20 M20 M20 M20 m20 m20
and the column-dependent moment of 2nd order is returned in M02 M02 M02 M02 m02 m02 .
The moment M11 M11 M11 M11 m11 m11 represents the covariance between
the row and column coordinates of the region points.
Calculation:
and
are the coordinates
of the center of gravity of a region R.
Then the moments
are defined by:
wherein r and c run over all pixels of the region R.
Furthermore the length of the major and minor axes are defined by:
wherein
is defined by:
The equation for the major and minor axes can be derived from the definition
of the moments by diagonalizing the covariance matrix and reforming the resulting
formula.
If more than one region is passed, the results are returned in tuples.
The index of a tuple element corresponds to the index of the respective
input region.
If an empty region is passed, 0.0 is returned for all parameters, if no other
behavior was set (see set_system set_system SetSystem SetSystem SetSystem set_system ).
运行信息
多线程类型:可重入(与非独占操作符并行运行)。
多线程作用域:全局(可以从任何线程调用)。
在元组级别自动并行化。
参数表
区域 区域 区域 区域 区域 区域 (input_object) region(-array) → object HRegion HObject HRegion Hobject
Input regions.
M11 M11 M11 M11 m11 m11 (output_control) real(-array) → HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
Product of inertia of the axes through the center
parallel to the coordinate axes.
M20 M20 M20 M20 m20 m20 (output_control) real(-array) → HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
Moment of 2nd order (row-dependent).
M02 M02 M02 M02 m02 m02 (output_control) real(-array) → HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
Moment of 2nd order (column-dependent).
Ia Ia Ia Ia ia ia (output_control) real(-array) → HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
Length of the major axis of the input region.
Ib Ib Ib Ib ib ib (output_control) real(-array) → HTuple Sequence[float] HTuple Htuple (real) (double ) (double ) (double )
Length of the minor axis of the input region.
Complexity
If F is the area of the region the mean runtime
complexity is O(sqrt(F)).
结果
该算子 moments_region_2nd moments_region_2nd MomentsRegion2nd MomentsRegion2nd MomentsRegion2nd moments_region_2nd 返回值 2 (
H_MSG_TRUE )
if the input is not empty.
The behavior in case of empty input (no input regions available) is
set via 该算子 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>) set_system("no_object_result",<Result>) .
The behavior in case of empty region (region is the empty set) is set via
set_system('empty_region_result',<Result>) set_system("empty_region_result",<Result>) SetSystem("empty_region_result",<Result>) SetSystem("empty_region_result",<Result>) SetSystem("empty_region_result",<Result>) set_system("empty_region_result",<Result>) .
If necessary an exception is raised.
可能的前置算子
threshold threshold Threshold Threshold Threshold threshold ,
regiongrowing regiongrowing Regiongrowing Regiongrowing Regiongrowing regiongrowing ,
connection connection Connection Connection Connection connection
可替代算子
moments_region_2nd_invar moments_region_2nd_invar MomentsRegion2ndInvar MomentsRegion2ndInvar MomentsRegion2ndInvar moments_region_2nd_invar
参考其它
elliptic_axis elliptic_axis EllipticAxis EllipticAxis EllipticAxis elliptic_axis
References
R. Haralick, L. Shapiro
“Computer and Robot Vision”
Addison-Wesley, 1992, pp. 73-75
模块
Foundation