欢迎来到本博客
Halcon算子太多,学习查找都没有系统的学习查找路径,本专栏主要分享Halcon各类算子含义及用法,有时间会更新具体案例。
具体食用方式:可以点击本专栏【Halcon算子快速查找】–>搜索你要查询的算子名称;或者点击Halcon算子汇总博客,即可食用。
支持:如果觉得博主的文章还不错或者您用得到的话,可以悄悄关注一下博主哈,如果三连收藏支持就更好啦!这就是给予我最大的支持!
算子简介
函数名 | 解释 |
---|---|
add_metrology_object_generic() | 将测量对象添加到测量模型中 |
add_metrology_object_generic( : : MetrologyHandle, Shape, ShapeParam, MeasureLength1, MeasureLength2, MeasureSigma, MeasureThreshold, GenParamName, GenParamValue : Index)
函数说明: 将类型为Shape的计量对象添加到计量模型中并准备矩形度量区域,模型的句柄在MetrologyHandle中传递。 Shape指定将哪种类型的对象添加到计量模型中。运算符add_metrology_object_generic在参数Index中返回添加的度量对象的索引。请注意,add_metrology_object_generic在一个运算符中提供运算符add_metrology_object_circle_measure,add_metrology_object_ellipse_measure,add_metrology_object_rectangle2_measure和add_metrology_object_line_measure的功能。
其中:Shape参数中指定对象,ShapeParam参数值有所区别。
圆形: 类型圆的计量对象的几何形状由其中心(行,列)和半径指定。ShapeParam = [行,列,半径]
旋转矩形: 矩形类型的计量对象的几何形状由其中心(行,列),主轴Phi的方向以及半边长度Length1和Length2指定。 Phi的输入值自动映射到间隔。 ShapeParam = [行,列,Phi,长度1,长度2]
椭圆: 椭圆类型的计量对象的几何形状由其中心(行,列),主轴Phi的方向,较大的半轴Radius1的长度以及较小的半轴Radius2的长度来指定。 Phi的输入值自动映射到间隔。ShapeParam = [行,列,Phi,Radius1,Radius2]
线: 类型线的度量对象的几何形状由其起点(RowBegin,ColumnBegin)的坐标和其终点的坐标(RowEnd,ColumnEnd)描述。ShapeParam = [RowBegin,ColumnBegin,RowEnd,ColumnEnd]
函数参数:
MeasureHandle:输入测量模型的句柄;
Shape:输入要测量对象的类型;默认值:‘circle’,参考值:‘circle’,‘ellipse’,‘line’,‘rectangle2’;
ShapeParam:要添加的测量对象的参数。
MeasureLength1:输入垂直于边界的测量区域的一半长度;默认值:20,参考值:10,20,30;最小增量:1.0;建议增量:10.0
MeasureLength2:输入与边界相切的测量区域的一半长度;默认值:5,参考值:3,5,10;最小增量:1.0;建议增量:10.0
MeasureSigma:输入用于平滑的高斯函数的sigma;默认值:1,参考值:0.4,0.6,0.8,1.0,1.5,2.0,3.0,4.0,5.0,7.0,10.0;最小增量:0.01;建议增量:0.1;限制:(0.4 <= MeasureSigma)&&(MeasureSigma <= 100)
MeasureThreshold:输入测量阈值/最小边缘幅度;默认值:30,参考值:5.0, 10.0, 20.0, 30.0, 40.0, 50.0, 60.0, 70.0, 90.0, 110.0;最小增量:0.5;建议增量:2;
GenParamName:输入参数名称;参考: ‘distance_threshold’, ‘end_phi’, ‘instances_outside_measure_regions’, ‘max_num_iterations’, ‘measure_distance’, ‘measure_interpolation’, ‘measure_select’, ‘measure_transition’, ‘min_score’, ‘num_instances’, ‘num_measures’, ‘point_order’, ‘rand_seed’, ‘start_phi’;
GenParamValue:输入参数值;参考:1, 2, 3, 4, 5, 10, 20, ‘all’, ‘true’, ‘false’, ‘first’, ‘last’, ‘positive’, ‘negative’, ‘uniform’, ‘nearest_neighbor’, ‘bilinear’, ‘bicubic’;
Index:输出创建测量对象的索引值;
create_metrology_model (MetrologyHandle)
read_image (Image, 'fabrik')
get_image_size (Image, Width, Height)
set_metrology_model_image_size (MetrologyHandle, Width, Height)
LinePar := [45,360,415,360]
RectPar1 := [270,232,rad(0),30,25]
RectPar2 := [360,230,rad(0),30,25]
LinePar := [45,360,415,360]
RectPar3 := [245,320,rad(-90),70,35]
* Add two rectangles
add_metrology_object_generic (MetrologyHandle, 'rectangle2', [RectPar1,RectPar2], 20, 5, 1, 30, [], [], Indices)
* Add a rectangle and a line
add_metrology_object_generic (MetrologyHandle, ['rectangle2','line'], [RectPar3,LinePar], 20, 5, 1, 30, [], [], Index)
get_metrology_object_model_contour (Contour, MetrologyHandle, 'all', 1.5)
apply_metrology_model (Image, MetrologyHandle)
get_metrology_object_result_contour (Contour1, MetrologyHandle, 'all', 'all', 1.5)
clear_metrology_model (MetrologyHandle)
measure_stamping_part.hdev 使用对齐的metroloy模型(校准)测量冲压零件的圆、矩形和直线
本专栏博客汇总:Halcon算子汇总
今天的文章就到这里啦~
喜欢的话,点赞、收藏⭐️、关注哦 ~