zoukankan      html  css  js  c++  java
  • halcon算子翻译——measure_pairs

    名称

    measure_pairs - 提取垂直于矩形或环形弧的直边对。

    用法

    measure_pairs(Image : : MeasureHandle, Sigma, Threshold, Transition, Select : RowEdgeFirst, ColumnEdgeFirst, AmplitudeFirst, RowEdgeSecond, ColumnEdgeSecond, AmplitudeSecond, IntraDistance, InterDistance)

    描述

       measure_pairs用于提取垂直于矩形或环形弧长轴的直边对。

      提取算法与measure_pos相同。 此外,边被分组为:如果Transition ='positive',则在RowEdgeFirst和ColumnEdgeFirst中将返回沿矩形长轴方向的暗到亮过渡的边缘点。 在这种情况下,在RowEdgeSecond和ColumnEdgeSecond中将返回具有明到暗过渡的相应边。 如果Transition = 'negative',则行为完全相反。 如果Transition =“all”,则RowEdgeFirst和ColumnEdgeFirst定义为首先检测到的边。 即取决于测量对象的定位,返回具有亮暗亮的边缘对或具有暗亮暗的边缘对。 这适合于测量具有相对于背景的不同亮度的物体。

      如果找到多个具有相同过渡的连续边,则将第一个边用作边缘对的元素。 此行为可能会导致在应用程序中阈值Threshold 不能选择足够高,以抑制相同过渡的连续边缘。 对于这些应用,可以使用第二种找边缘对模式,仅选择一系列连续的上升沿和下降沿的相应最强边沿。 通过将“_strongest”附加到用于转换的上述任何模式(例如,“negative_strongest”)来选择该模式。 最后,可以选择返回哪个边缘对。 如果Select 设置为'all',则返回所有边缘对。 如果设置为'first',则只返回第一个提取的边对,而设置为'last',则只返回最后一个边缘对。

      提取的边作为位于矩形长轴上的单个点返回。 AmplitudeFirst和AmplitudeSecond中返回相应的边缘振幅。 另外,每个边缘对之间的距离在IntraDistance中返回,连续两个边缘对之间的距离在InterDistance中返回。 这里,IntraDistance [i]对应于EdgeFirst [i]和EdgeSecond [i]之间的距离,而InterDistance [i]对应于EdgeSecond [i]和EdgeFirst [i + 1]之间的距离,即,元组InterDistance包含边缘对数量-1个元素。

    注意

      只有边缘是直的并垂直于矩形长轴,measure_pairs返回的结果才有意义。 因此,例如它不应该用于从曲面对象中提取边缘。 此外用户应确保矩形尽可能接近垂直于图像的边缘。 此外,Sigma不能大于约 0.5 * Length1(对于Lenth1请参见gen_measure_rectangle2)。

      应该记住,为了效率的原因,measure_pairs会忽略Image的ROI域。 如果图像中的特定区域应该从measurement中排除,则应该生成具有适当修改的参数的新measure对象。

    并行

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

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

    ●  不并行处理。

    参数

    Image (input_object)   单通道图像→ object (byte / uint2 / real)
      输入图像。


    MeasureHandle   (input_control) measure_id → (integer)
      Measure对象句柄


    Sigma (input_control)    number → (real)
      高斯模糊的Sigma值。
      Default value: 1.0
      Suggested values: 0.4, 0.6, 0.8, 1.0, 1.5, 2.0, 3.0, 4.0, 5.0, 7.0, 10.0
      Typical range of values: 0.4 ≤ Sigma ≤ 100 (lin)
      Minimum increment: 0.01
      Recommended increment: 0.1
      Restriction: Sigma >= 0.4


    Threshold (input_control)    number → (real)
      最小边缘幅度。
      Default value: 30.0
      Suggested values: 5.0, 10.0, 20.0, 30.0, 40.0, 50.0, 60.0, 70.0, 90.0, 110.0
      Typical range of values: 1 ≤ Threshold ≤ 255 (lin)
      Minimum increment: 0.5
      Recommended increment: 2


    Transition (input_control)    string → (string)
      灰度值过渡的类型以确定边缘如何成对。
      Default value: 'all'
      List of values: 'all', 'all_strongest', 'negative', 'negative_strongest', 'positive', 'positive_strongest'
      Select (input_control) string → (string)
      要选择的边缘对
      Default value: 'all'
      List of values: 'all', 'first', 'last'


    RowEdgeFirst (output_control)    point.y-array → (real)
      边缘对第一条边的中心的Row坐标。


    ColumnEdgeFirst (output_control)    point.x-array → (real)

      边缘对第一条边的中心的Column坐标。


    AmplitudeFirst (output_control)    real-array → (real)
      边缘对第一条边的边缘幅度(带符号)。


    RowEdgeSecond (output_control)    point.y-array → (real)
      边缘对第二条边的中心的Row坐标。


    ColumnEdgeSecond (output_control)    point.x-array → (real)
      边缘对第二条边的中心的Column坐标。


    AmplitudeSecond (output_control)    real-array → (real)
      边缘对第二条边的边缘幅度(带符号)。


    IntraDistance (output_control)    real-array → (real)
      边缘对内部之间的距离。


    InterDistance (output_control)    real-array → (real)
      连续边缘对之间的距离。

    结果

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

    Possible Predecessors

    gen_measure_rectangle2

    Possible Successors

    close_measure

    备选算子

    edges_sub_pix, fuzzy_measure_pairs, fuzzy_measure_pairing

    See also

    measure_pos, fuzzy_measure_pos

    模块

    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的引线
    gen_measure_rectangle2.hdev        测量垂直于给定线的边缘
    fuzzy_measure_switch.hdev         用一个模糊度量对象确定一个开关引脚的宽度和距离
    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

  • 相关阅读:
    接口--类似于抽象类但不是抽象类
    final
    抽象类
    static示例
    深入理解static关键字
    IDEA 出现错误:找不到或无法加载主类
    IDEA的java源码文件左边有一个红色的J
    this关键字
    构造方法、方法的重载
    访问控制符
  • 原文地址:https://www.cnblogs.com/xhiong/p/measure_pairs.html
Copyright © 2011-2022 走看看