Halcon齿轮测量

Halcon齿轮测量(Halcon学习笔记)
齿轮灰度图像如下:
在这里插入图片描述

Halcon齿轮测量设计流程
在这里插入图片描述
首先进行阈值分割并利用面积特征选取出齿轮部分:
在这里插入图片描述
创建圆的XLD轮廓:
在这里插入图片描述
进行尺寸测量:
在这里插入图片描述
生成测量结果并显示:
在这里插入图片描述
Halcon代码如下:

* Image Acquisition 01: Code generated by Image Acquisition 01
read_image (Image, 'D:/机器视觉学习资料/Halcon学习/案例/齿轮测量/齿轮测量 - 副本/齿轮测量 - 副本/2hao20150107190909.bmp')
get_image_size (Image, Width, Height)
dev_close_window ()
dev_open_window (0, 0, Width, Height, 'black', WindowHandle)
threshold (Image, Regions, 25, 78)
connection (Regions, ConnectedRegions)
select_shape (ConnectedRegions, SelectedRegions, 'area', 'and', 73394.9, 74659.5)
*draw_circle_mod 生成用户在窗口中交互创建圆的参数
draw_circle_mod (WindowHandle, Height/2, Width/2, Width/20, Row, Column, Radius)
*gen_circle_contour_xld创建圆或圆弧的XLD轮廓
gen_circle_contour_xld (ContCircle, Row, Column, Radius, 0, 6.28318, 'positive', 1)
dev_display (ContCircle)
dev_set_color ('green')
*创建计量模型的算子
create_metrology_model (MetrologyHandle)
*将计量对象添加到计量模型中
add_metrology_object_generic (MetrologyHandle, 'circle', [Row,Column,Radius], 20, 5, 1, 30, [], [], Index)
*测量,第一个参数输入的图像,第二个参数输入的句柄
apply_metrology_model (Image, MetrologyHandle)
*取得结果
get_metrology_object_result (MetrologyHandle, 0, 'all', 'result_type', 'all_param', Parameter)
*显示圆轮廓的测量范围
get_metrology_object_result_contour (Contour, MetrologyHandle, 'all', 'all', 1.5)
*显示圆的边缘轮廓
get_metrology_object_measures (Contours, MetrologyHandle, 'all', 'all', Row1, Column1)
dev_display (Contours)
stop()
*清空计量模型
clear_metrology_model (MetrologyHandle)
dev_display (Image)
dev_display (Contours)
message1:='CenterRow'+Parameter[0]
message2:='CenterCol'+Parameter[1]
message3:='Radious'+Parameter[2]
set_display_font (WindowHandle, 16, 'mono', 'true', 'false')
disp_message (WindowHandle, message1, 'window', 0, -1, 'forest green', 'false')
disp_message (WindowHandle, message2, 'window', 20, -1, 'forest green', 'false')
disp_message (WindowHandle, message3, 'window', 40, -1, 'forest green', 'false')
  • 4
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Halcon中,可以使用测量助手工具来测量圆的直径。然而,测量助手工具并没有提供直接测量圆直径的选项。但是,可以使用add_metrology_object_generic算子来生成一个圆测量卡尺,并通过apply_metrology_model和get_metrology_object_result来获取测量结果。具体步骤如下: 1. 使用add_metrology_object_generic算子生成一个圆测量卡尺。在Shape参数中选择'Circle',并将ShapeParam参数设置为\[Row, Column, Radius\],其中Row和Column是圆心的坐标,Radius是圆的半径。 2. 使用apply_metrology_model将测量卡尺应用于图像。 3. 使用get_metrology_object_result获取测量结果,其中包括圆的直径。 通过这种方法,可以在Halcon测量圆的直径。请注意,这种方法是通过拟合圆形区域来近似测量圆的直径。\[2\] #### 引用[.reference_title] - *1* *2* [Halcon找圆系列(4)测量圆直径/半径的方法之暴力拟合法 vs 测量工具法](https://blog.csdn.net/libaineu2004/article/details/106745204)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [Halcon找圆系列(1)如何检测圆形](https://blog.csdn.net/libaineu2004/article/details/100338297)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值