height_width_ratio_xldheight_width_ratio_xldHeightWidthRatioXldHeightWidthRatioXldheight_width_ratio_xld (算子)

名称

height_width_ratio_xldheight_width_ratio_xldHeightWidthRatioXldHeightWidthRatioXldheight_width_ratio_xld — 计算平行于轮廓或多边形坐标轴的封闭矩形的宽度、高度和纵横比。

签名

height_width_ratio_xld(XLD : : : Height, Width, Ratio)

Herror height_width_ratio_xld(const Hobject XLD, double* Height, double* Width, double* Ratio)

Herror T_height_width_ratio_xld(const Hobject XLD, Htuple* Height, Htuple* Width, Htuple* Ratio)

void HeightWidthRatioXld(const HObject& XLD, HTuple* Height, HTuple* Width, HTuple* Ratio)

HTuple HXLD::HeightWidthRatioXld(HTuple* Width, HTuple* Ratio) const

double HXLD::HeightWidthRatioXld(double* Width, double* Ratio) const

static void HOperatorSet.HeightWidthRatioXld(HObject XLD, out HTuple height, out HTuple width, out HTuple ratio)

HTuple HXLD.HeightWidthRatioXld(out HTuple width, out HTuple ratio)

double HXLD.HeightWidthRatioXld(out double width, out double ratio)

def height_width_ratio_xld(xld: HObject) -> Tuple[Sequence[float], Sequence[float], Sequence[float]]

def height_width_ratio_xld_s(xld: HObject) -> Tuple[float, float, float]

描述

算子 height_width_ratio_xldheight_width_ratio_xldHeightWidthRatioXldHeightWidthRatioXldHeightWidthRatioXldheight_width_ratio_xld calculates the enclosing rectangle (parallel to the coordinate axes) for each input contour or polygon. The enclosing rectangle is described by the coordinates of the corner pixels (Row1Row1Row1Row1row1row_1,Column1Column1Column1Column1column1column_1,Row2Row2Row2Row2row2row_2,Column2Column2Column2Column2column2column_2) (see smallest_rectangle1_xldsmallest_rectangle1_xldSmallestRectangle1XldSmallestRectangle1XldSmallestRectangle1Xldsmallest_rectangle1_xld). Based on these values, height_width_ratio_xldheight_width_ratio_xldHeightWidthRatioXldHeightWidthRatioXldHeightWidthRatioXldheight_width_ratio_xld computes the width, height, and aspect ratio of the smallest surrounding rectangle as follows:

如果传递多个轮廓或多边形,结果将按其在 XLDXLDXLDXLDXLDxld 中的顺序存储为元组。 In case of an empty contour all parameters have the value 0 if no other behavior was set (see set_systemset_systemSetSystemSetSystemSetSystemset_system).

注意

If , RatioRatioRatioRatioratioratio is set to DBL_MAX (1.797e308).

执行信息

参数

XLDXLDXLDXLDXLDxld (输入对象)  xld(-array) objectHXLDHObjectHXLDHobject

待检查的轮廓或多边形。

HeightHeightHeightHeightheightheight (输出控制)  extent.y(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Height of the enclosing rectangle.

WidthWidthWidthWidthwidthwidth (输出控制)  extent.x(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Width of the enclosing rectangle.

RatioRatioRatioRatioratioratio (输出控制)  real(-array) HTupleSequence[float]HTupleHtuple (real) (double) (double) (double)

Aspect ratio of the enclosing rectangle.

复杂度

若 N 为等轮廓点数,则运行时间复杂度为 O(N)。

结果

height_width_ratio_xldheight_width_ratio_xldHeightWidthRatioXldHeightWidthRatioXldHeightWidthRatioXldheight_width_ratio_xld 在输入不为空时返回 2 ( H_MSG_TRUE )。如果输入为空则可设置行为通过 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>)。如有必要,则抛出异常。

可能的前趋

gen_contours_skeleton_xldgen_contours_skeleton_xldGenContoursSkeletonXldGenContoursSkeletonXldGenContoursSkeletonXldgen_contours_skeleton_xld, edges_sub_pixedges_sub_pixEdgesSubPixEdgesSubPixEdgesSubPixedges_sub_pix, threshold_sub_pixthreshold_sub_pixThresholdSubPixThresholdSubPixThresholdSubPixthreshold_sub_pix, gen_contour_polygon_xldgen_contour_polygon_xldGenContourPolygonXldGenContourPolygonXldGenContourPolygonXldgen_contour_polygon_xld

可能的后继

gen_polygons_xldgen_polygons_xldGenPolygonsXldGenPolygonsXldGenPolygonsXldgen_polygons_xld

替代

smallest_rectangle1_xldsmallest_rectangle1_xldSmallestRectangle1XldSmallestRectangle1XldSmallestRectangle1Xldsmallest_rectangle1_xld, smallest_rectangle2_xldsmallest_rectangle2_xldSmallestRectangle2XldSmallestRectangle2XldSmallestRectangle2Xldsmallest_rectangle2_xld, shape_trans_xldshape_trans_xldShapeTransXldShapeTransXldShapeTransXldshape_trans_xld

另见

shape_trans_xldshape_trans_xldShapeTransXldShapeTransXldShapeTransXldshape_trans_xld, smallest_circle_xldsmallest_circle_xldSmallestCircleXldSmallestCircleXldSmallestCircleXldsmallest_circle_xld, elliptic_axis_xldelliptic_axis_xldEllipticAxisXldEllipticAxisXldEllipticAxisXldelliptic_axis_xld, area_center_xldarea_center_xldAreaCenterXldAreaCenterXldAreaCenterXldarea_center_xld

模块

基础