标签:set 界面 QT dev halcon window 瓶盖 message Row
halcon实现瓶盖检测与定位代码:
dev_close_window()
dev_open_window(0, 0, 1024, 1024, 'black', WindowHandle)
list_image_files('C:/Users/TIMI/Desktop/picture/circle', 'default', [], ImageFiles)
for J := 1 to 4 by 1
*read image
read_image(halconImage, ImageFiles[J-1])
*read_image(halconImage,'C:/Users/TIMI/Desktop/srcImage/bord'+J$'01d'+'.png')
*find circle(这一部分是要封装的处理过程)
*1、三通道转化为单通道
decompose3(halconImage,RImage,GImage,BImage)
*2、二值化
threshold (RImage, Regions,0, 171)
*填充(目的是干嘛?)
dev_set_draw('margin')
fill_up(Regions, RegionFillUp)
*形态学处理
opening_circle(RegionFillUp, RegionOpening, 3.5)
*连通处理
connection(RegionOpening, ConnectedRegions)
*特征选择
select_shape (ConnectedRegions, SelectedRegions, ['area','circularity'], 'and', [110351,0.83981], [199445,1])
*区域中心
area_center(SelectedRegions, Area, Row, Column)
*显示中心
dev_set_color('red')
gen_cross_contour_xld(Cross, Row, Column, 16, 0.78)
*打印信息(这一部分是要封装的结果展示)
tuple_length(Row,RowLength)
* 有效值
if(RowLength==1 and Row!=0)
dev_set_draw('margin')
dev_clear_window()
dev_display(halconImage)
dev_set_line_width(1)
dev_set_color('green')
dev_display(Cross)
dev_set_line_width(3)
dev_set_color('green')
dev_display(SelectedRegions)
message[0]:=' The '+J +' in ' +4
message[1]:='Find board in position '+'Row:='+ Row +' Column:='+Column
disp_message(WindowHandle, message, 'window',10, 10, 'green', 'false')
else
message[0]:=' The '+J +' in ' +4
message[1]:='识别错误 error !'
disp_message(WindowHandle, message, 'window',130, 10, 'green', 'false')
endif
endfor
原始图片与图左;结果展示如图右。
------------------下边参照博客进行界面搭建。
https://blog.csdn.net/m0_37957160/article/details/119003705?spm=1001.2014.3001.5501
最终搭建的简单界面如下:
完整大QT界面搭建步骤:
1、添加库函数。包括include和lib的添加。
2、界面设计。
3、halcon的代码封装与导出。
4、图片显示在界面上。
5、构建一个类,存放图像处理的代码。
6、滚轮的放大与缩小
7、添加按钮,在图像上进行绘图操作。以及添加资源(即以一个图片作为按钮的背景。)
8、参数与界面进行关联。
9、管理参数。(一般使用结构体或者Qsetting)
第一步:QT工程建立。
第二步:各个模块类的添加。
在主窗口的.h内添加类的头文件,并定义一个指针指向类。
在主窗口的.cpp的构造函数内初始化指针。
第三步:ui界面设计。
第四步:绑定窗口。
第五步:各个button转到槽,添加变量,头文件内函数声明,源
完整大QT界面以及代码见链接:
https://download.csdn.net/download/m0_37957160/20464695
标签:set,界面,QT,dev,halcon,window,瓶盖,message,Row 来源: https://blog.csdn.net/m0_37957160/article/details/119058021
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。