当前位置: 首页 > article >正文

【halcon】Metrology工具系列之 get_metrology_object_model_contour

get_metrology_object_model_contour (Operator)

Name

get_metrology_object_model_contour — 在图像坐标中查询测量对象的模型轮廓。

Signature
get_metrology_object_model_contour( : Contour : MetrologyHandle, Index, Resolution : )
Description

get_metrology_object_model_contour 返回所选测量对象在图像坐标中的轮廓。

测量模型由测量句柄 MetrologyHandle 定义。参数 Index 指定查询轮廓的测量对象。对于索引设置为 'all',返回所有测量对象的轮廓。

还记得上一篇文章中算子 add_metrology_object_line_measure, 它的作用是在测量模式上添加一个直线测量对象!这个参数最后一个参数就是index,这个index就是模式中的测量对象的编号!

返回值:操作符add_metrology_object_line_measure在参数Index中返回添加的测量对象的索引。

每个轮廓的形状和姿态由添加对象时设置的参数决定,例如使用 add_metrology_object_genericadd_metrology_object_circle_measure 等。如果使用 set_metrology_model_param 设置了测量模型的不同参考坐标系,或使用 align_metrology_model 执行了测量模型的对齐,则这些值会影响测量对象的当前姿态,从而影响返回的轮廓的姿态。(这些后续再讲~~~~)

返回的轮廓的分辨率通过分辨率控制,分辨率包含相邻轮廓点之间的欧几里得距离(以像素为单位)。如果输入值低于最小可能值(1.192e-7),则分辨率在内部设置为最小的有效值。

Execution Information
  • 多线程类型:可重入(与非独占操作员并行运行)。
  • 多线程范围:全局(可以从任何线程调用)。
  • 不进行并行处理。
Parameters(参数介绍)
  • Contour (output_object)
    xld_cont(-array) → object
    模型轮廓。

  • MetrologyHandle (input_control)
    metrology_model → (handle)
    测量模型的句柄。

  • Index (input_control)
    integer(-array) → (integer / string)
    测量对象的索引。
    默认值:0
    建议值:‘all’, 0, 1, 2

  • Resolution (input_control)
    real → (real)
    相邻轮廓点之间的距离。
    默认值:1.5
    限制:分辨率 >= 1.192e-7

Result

如果参数有效,操作员 get_metrology_object_model_contour 返回值 2(H_MSG_TRUE)。如有必要,会抛出异常。

Possible Predecessors

add_metrology_object_generic, add_metrology_object_circle_measure, add_metrology_object_ellipse_measure, add_metrology_object_rectangle2_measure, add_metrology_object_line_measure

Possible Successors

apply_metrology_model

See also

set_metrology_model_param, get_metrology_object_measures, align_metrology_model

例子讲解

* 清空屏幕,显式控制图像显示
dev_close_window ()
dev_update_off ()
read_image (Image, '形状模板图.png')
dev_open_window_fit_image (Image, 0, 0, -1, -1, WindowHandle)
dev_display (Image)

* 创建测量模型
create_metrology_model (MetrologyHandle)
Row1 := 78
Column1 := 32
Row2 := 86
Column2 := 280

* 添加找直线工具,给定参数,显示过程卡尺的轮廓
add_metrology_object_line_measure (MetrologyHandle, Row1, Column1, Row2, Column2, 20, 5, 1, 30, [], [], Index)
get_metrology_object_model_contour (Contour, MetrologyHandle, Index, 1.5)
get_metrology_object_measures (Contours, MetrologyHandle, 'all', 'all', Row, Column)

get_metrology_object_model_contour 得到轮廓就是众多方块中间的那根线!
在这里插入图片描述
而这些方块轮廓是通过get_metrology_object_measures得到。下一篇里面讲!
我们可以清晰的看到,方块的排列是根据这跟红线进行排布的,红线就是他们的中心!

回顾《上一篇》文章:

add_metrology_object_line_measure。这个算子的作用是在一个测量模型(metrology model)中添加一个线类型的测量对象(metrology object),并准备相应的矩形测量区域(rectangular measure regions)。以下是对这算子的详细解释:

测量区域的尺寸:测量区域垂直于线和切线方向的半边长分别由MeasureLength1和MeasureLength2设置。测量区域的中心位于线上。

通用参数调整:可以通过GenParamName和GenParamValue调整一些通用参数。特别是,所有在set_metrology_object_param操作符中可用的通用参数都可以设置。但请注意,对于许多应用来说,默认值已经足够,不需要调整。


http://www.kler.cn/a/412666.html

相关文章:

  • K8S简介、使用教程
  • 前后端中Json数据的简单处理
  • LightRAG - 更快更便宜的GraphRAG
  • AI 助力开发新篇章:云开发 Copilot 深度体验与技术解析
  • npm install -g@vue/cli报错解决:npm error code ENOENT npm error syscall open
  • 【排版教程】Word、WPS 分节符(奇数页等) 自动变成 分节符(下一页) 解决办法
  • 关于人工智能
  • 365天深度学习训练营-第P6周:VGG-16算法-Pytorch实现人脸识别
  • 多线程编程:概念、原理与实践
  • EXCEL中的科学计数法:为何存在与用户的无奈
  • 排序算法之选择排序篇
  • GaussDB高智能--智能优化器介绍
  • 【人工智能】Python常用库-PyTorch常用方法教程
  • UE5 fieldSystemActor类
  • UE5 的DOP简化碰撞的基本概念
  • Unity 中 Application 四种常用目录总结
  • golang 定时器的不同任务
  • 单片机main函数执行结束干嘛?
  • YOLO系列论文综述(从YOLOv1到YOLOv11)【第3篇:YOLOv1——YOLO的开山之作】
  • 【深度学习基础】一篇入门模型评估指标(分类篇)
  • Linux 时间属性
  • SurfaceFlinger学习之一:概览
  • 大模型专栏--大模型开发框架
  • Spring | (七)AOP概念及工作流程
  • 【速通GO】数据类型与变量和常量
  • 丹摩 | 基于PyTorch的CIFAR-10图像分类实现