全球最实用的IT互联网信息网站!

AI人工智能P2P分享&下载搜索网页发布信息网站地图

当前位置:诺佳网 > 电子/半导体 > 测量仪表 >

Halcon测量基础知识入门

时间:2023-03-24 16:38

人气:

作者:admin

标签: HALCON 

导读:1D测量主要就是拉个框获取这个框中定义的高频范围的临界点,所测量的范围比较有限,基于两点之间的距离。...

D测量:

1D测量主要就是拉个框获取这个框中定义的高频范围的临界点,所测量的范围比较有限,基于两点之间的距离。

1D测量主要步骤有:1、自定义测量模型;2、创建测量句柄 ;3、开始测量;4、显示测量结果;5、清除测量句柄

例子:

halcon代码:

read_image (Image, 'D:/Halcon-WorkSpaces/Halcon-Demo/测量/卡尺测量/1D测量/Image/test1.png')

rgb1_to_gray (Image, GrayImage)

get_image_size (GrayImage, Width, Height)

*计算尺子与像素点大小的关系

dev_set_draw ('margin')

*选则测量区域

draw_rectangle2 (3600, Row, Column, Phi, Length1, Length2)

*显示测量区域

gen_rectangle2 (Rectangle, Row, Column, Phi, Length1, Length2)

*创建侧脸句柄

gen_measure_rectangle2 (Row, Column, Phi, Length1, Length2, Width, Height, 'nearest_neighbor', MeasureHandle)

*开始测量

measure_pos (GrayImage, MeasureHandle, 1, 30, 'all', 'all', RowEdge, ColumnEdge, Amplitude, Distance)

*显示抓取的点

gen_cross_contour_xld (Cross, RowEdge, ColumnEdge, 20, 0.5)

*显示测量结果

set_display_font (3600, 50, 'mono', 'true', 'false')

disp_message (3600, '测量长度:'+Distance+' Pixle', 'window', 12, 12, 'green', 'false')

*清除测量句柄

close_measure (MeasureHandle)

测量结果:

73ee2490-ca1b-11ed-bfe3-dac502259ad0.png

2D测量:

2D测量又称之为几何测量,可根据几何模型对物体进行较为全面的测量。

2D测量的步骤有:1、创建测量句柄;2、设置图片相对大小到句柄;3、定义测量模型;4、将测量模型添加到句柄;5、开始测量;6、拟合被测模型;7、显示测量结果;8、清除测量句柄。

例子: 被测物:

read_image (Image, 'D:/Halcon-WorkSpaces/Halcon-Demo/测量/卡尺测量/2D测量/Image/test2.png')

rgb1_to_gray (Image, GrayImage)

*创建几何测量句柄

create_metrology_model (MetrologyHandle)

*设置句柄与图像的像素关系

get_image_size (Image, Width, Height)

set_metrology_model_image_size (MetrologyHandle, Width, Height)

*自定义椭圆模型

draw_ellipse (3600, Row, Column, Phi, Radius1, Radius2)

*添加椭圆模型

*卡边尺长

MeasureLength1:=30

*卡边尺宽

MeasureLength2:=5

add_metrology_object_ellipse_measure (MetrologyHandle, Row, Column, Phi, Radius1, Radius2, 30, 5, 1, 30, [], [], Index)

*显示卡边尺模型

get_metrology_object_measures (Contours, MetrologyHandle, 'all', 'all', Row, Column)

*开始测量

apply_metrology_model (GrayImage, MetrologyHandle)

*显示提取到的轮廓线

get_metrology_object_result_contour (Contour, MetrologyHandle, 'all', 'all', 1.5)

*拟合,计算轮廓结果

fit_ellipse_contour_xld (Contour, 'fitzgibbon', -1, 0, 0, 200, 3, 2, Row1, Column1, Phi1, Radius1, Radius2, StartPhi, EndPhi, PointOrder)

*显示结果

*椭圆的中心

gen_cross_contour_xld (Cross, Row1, Column1, Radius1*2, Phi1)

set_display_font (3600, 30, 'mono', 'true', 'false')

disp_message (3600, ['椭圆中心坐标:('+Row1+','+Column1+')','椭圆斜率:'+Phi1,'椭圆最大半长:'+Radius1,'椭圆最小半长:'+Radius2], 'window', 12, 112, 'green', 'false')

*清除句柄

clear_metrology_model (MetrologyHandle)

测量结果:

7404e144-ca1b-11ed-bfe3-dac502259ad0.png





审核编辑:刘清

温馨提示:以上内容整理于网络,仅供参考,如果对您有帮助,留下您的阅读感言吧!
相关阅读
本类排行
相关标签
本类推荐

CPU | 内存 | 硬盘 | 显卡 | 显示器 | 主板 | 电源 | 键鼠 | 网站地图

Copyright © 2025-2035 诺佳网 版权所有 备案号:赣ICP备2025066733号
本站资料均来源互联网收集整理,作品版权归作者所有,如果侵犯了您的版权,请跟我们联系。

关注微信