Halcon算子翻译——gen_measure_rectangle2

名称

gen_measure_rectangle2 - 准备提取垂直于矩形的直边。

用法

gen_measure_rectangle2( : : Row, Column, Phi, Length1, Length2, Width, Height, Interpolation : MeasureHandle)

描述

  gen_measure_rectangle2准备提取垂直于矩形长轴的直边。 矩形的中心在(Row,Column),Phi为矩形主轴的角度,Lenth1和Lenth2为两轴的长度,即矩形两边长度的一半。

  在算子measure_pos的文档中描述了边缘提取算法。 如上所述,可以使用不同类型的插值来计算一维灰度值分布。 对于Interpolation = 'nearest_neighbor',测量中的灰度值是从最接近的像素的灰度值,即通过常数插值获得的。 对于Interpolation = 'bilinear',使用双线性插值,而对于Interpolation = 'bicubic',则使用双三次插值。

  要在实际测量中以最佳速度运行,所有可用于多次测量的计算都已在算子gen_measure_rectangle2中执行。 为此,在MeasureHandle中构造并返回一个优化的数据结构,即所谓的measure对象。 要在其中执行测量的图像的大小必须在参数'Width'和'Height'中指定。

  系统参数“int_zooming”(见set_system)会影响用于构建measure对象的计算的准确性和速度。 如果'int_zooming'设置为'true',则内部计算使用定点算术执行,导致执行时间缩短。 但是,这种模式下的几何精度略低。 如果将“int_zooming”设置为“false”,则使用浮点运算执行内部计算,从而导致最大的几何精度,但也会显著增加执行时间。

注意

  请注意,使用双线性或双三次插值时,不仅矩形的测量,而且矩形周围的边缘必须在图像中。 对于双线性插值而言,边缘的宽度(在所有四个方向上)必须至少有一个像素,对于双三次插值必须至少有两个像素。 对于不满足此条件的投影线,不计算灰度值。 因此,在这些位置上不能提取边缘。

并行

●  多线程类型:可重入(与非独占算子并行运行)。

●  多线程范围:全局(可以从任何线程调用)。

●  不并行处理。

  该算子返回一个句柄。 请注意,即使将此句柄用作输入参数,该句柄类型的实例的状态也可能被特定的算子所改变。

参数

Row (input_control)   rectangle2.center.y → (real / integer)
  矩形中心的Row坐标。
  Default value: 300.0
  Suggested values: 10.0, 20.0, 50.0, 100.0, 200.0, 300.0, 400.0, 500.0
  Typical range of values: 0.0 ≤ Row ≤ 511.0 (lin)
  Minimum increment: 1.0
  Recommended increment: 10.0


Column (input_control)    rectangle2.center.x → (real / integer)
  矩形中心的Column坐标。.
  Default value: 200.0
  Suggested values: 10.0, 20.0, 50.0, 100.0, 200.0, 300.0, 400.0, 500.0
  Typical range of values: 0.0 ≤ Column ≤ 511.0 (lin)
  Minimum increment: 1.0
  Recommended increment: 10.0


Phi (input_control)    rectangle2.angle.rad → (real / integer)
  矩形的纵轴与水平的角度(弧度)。
  Default value: 0.0
  Suggested values: -1.178097, -0.785398, -0.392699, 0.0, 0.392699, 0.785398, 1.178097
  Typical range of values: -1.178097 ≤ Phi ≤ 1.178097 (lin)
  Minimum increment: 0.001
  Recommended increment: 0.1
  Restriction: (- pi < Phi) && (Phi <= pi)


Length1 (input_control)    rectangle2.hwidth → (real / integer)
  矩形的半宽。
  Default value: 100.0
  Suggested values: 3.0, 5.0, 10.0, 15.0, 20.0, 50.0, 100.0, 200.0, 300.0, 500.0
  Typical range of values: 1.0 ≤ Length1 ≤ 511.0 (lin)
  Minimum increment: 1.0
  Recommended increment: 10.0
  Restriction: Length1 >= 1.0


Length2 (input_control)    rectangle2.hheight → (real / integer)
  矩形的半高。
  Default value: 20.0
  Suggested values: 1.0, 2.0, 3.0, 5.0, 10.0, 15.0, 20.0, 50.0, 100.0, 200.0
  Typical range of values: 0.0 ≤ Length2 ≤ 511.0 (lin)
  Minimum increment: 1.0
  Recommended increment: 10.0

  Restriction: Length2 >= 0.0


Width (input_control)    extent.x → (integer)
  随后要处理的图像的宽度。
  Default value: 512
  Suggested values: 128, 160, 192, 256, 320, 384, 512, 640, 768
  Typical range of values: 0 ≤ Width ≤ 1024 (lin)
  Minimum increment: 1
  Recommended increment: 16


Height (input_control)    extent.y → (integer)
  随后要处理的图像的高度。
  Default value: 512
  Suggested values: 120, 128, 144, 240, 256, 288, 480, 512, 576
  Typical range of values: 0 ≤ Height ≤ 1024 (lin)
  Minimum increment: 1
  Recommended increment: 16


Interpolation (input_control)    string → (string)
  要使用的插值类型。
  Default value: 'nearest_neighbor'
  List of values: 'bicubic', 'bilinear', 'nearest_neighbor'


MeasureHandle (output_control)    measure_id → (integer)
  measure对象句柄

结果

如果参数值正确,则算子gen_measure_rectangle2返回值2(H_MSG_TRUE)。 否则会引发异常。

Possible Predecessors

draw_rectangle2

Possible Successors

measure_pos, measure_pairs, fuzzy_measure_pos, fuzzy_measure_pairs, fuzzy_measure_pairing, measure_thresh

备选算子

edges_sub_pix

See also

gen_measure_arc

模块

1D Metrology

HDevelop例程

world_coordinates_line_scan.hdev   使用相机校准,测量线扫描图像中卡尺的间距线之间的距离
two_camera_calibration.hdev      使用特殊的校准对象执行高精度拼接
pm_measure_board.hdev            定位电路板上的IC并测量引脚距离
measure_tft_cells.hdev           测量TFT LCD显示器的RGB单元的尺寸
measure_switch.hdev         确定开关的宽度和引脚之间的距离
measure_ring.hdev            用圆形measure对象确定齿轮的宽度
measure_pin.hdev             测量IC的引脚
measure_lcd_cells.hdev         测量分隔LCD显示器单元的框架的尺寸
measure_ic_leads.hdev          测量IC的引线
measure_caliper.hdev          测量卡尺的间距线之间的距离
measure_arc.hdev             测量金属部件沿着圆弧的的宽度
gen_measure_rectangle2.hdev        测量垂直于给定线的边缘
gen_measure_arc.hdev          测量垂直于给定弧的边
fuzzy_measure_switch.hdev         用一个模糊度量对象确定一个开关引脚的宽度和距离
fuzzy_measure_pin.hdev         使用模糊测量来测量IC的引脚
fuse.hdev                    测量保险丝的厚度
correct_measure_direction.hdev       自动更正测量对象的方向
camera_calibration_multi_image.hdev   校准相机并测量卡尺上的位置
camera_calibration_external.hdev    使用相机校准来测量卡尺上的位置
calibration_aimdpm_1_2006.hdev    在检查2D数据代码的打印质量之前应用反射率校准
calibrate_cameras_telecentric_tilt.hdev 使用远心倾斜镜头(Scheimpflug)校准
align_measurements_multithreading.hdev 使用多线程并行检查剃刀刀片
align_measurements.hdev            使用基于形状的匹配来检查单个剃刀刀片,以为测量工具调整ROI
3d_coordinates.hdev          测量世界坐标中的倾斜物体

原文地址:https://www.cnblogs.com/xhiong/p/gen_measure_rectangle2.html