【halcon】halcon常用方法总结

图像处理与特征选择:从区域到形状的智能分析
这篇博客详细介绍了在图像处理中如何通过选择特定区域的特征,如面积和外接圆半径,来精确地筛选目标。内容涵盖了使用Halcon库的函数,如select_shape和threshold,进行图像分割和形状筛选。此外,还提到了灰度直方图在确定合适灰度阈值中的作用,以及connection、union1和fill_up等算子在区域操作中的应用。最后,讨论了如何通过shape_trans转换形状,并强调了区域与图像的区别,展示了从图像到区域再返回图像的过程,为视觉检测提供了实用的方法。

寻找特征步步逼近

选中一块区域,查看这个区域的特征:

比如可以查看这个区域的面积:

再配合面积选择的算子:

select_shape (SelectedRegions, SelectedRegions1, 'area', 'and', 7500, 99999)

完美~~~

select_shape (SelectedRegions, SelectedRegions1, 'outer_radius', 'and', 30, 40)

'outer_radius'  表示使用外接圆半径进行查找,这个是一个很好用的选项!

最常用,最直接的算子:对图形按灰度值进行分割!

(Region区域,图像的一个子集。)

threshold (Image, Region, 128, 255) *筛选出灰度值在128~255之间的区域

为了快速的选择合适的灰度,我们通常会用到一个工具:灰度直方图,是对像素的一个灰度统计:

halcon提供这样的工具:

 图中红色区域就代表被当前灰度范围选中的部分。

将Region进行打散以便选择过滤

connection (Region, ConnectedRegions)

 被打散的版块通过彩色显示~~~

有打散就有联合:union1

union1 (ConnectedRegions, RegionUnion)

将打散的块,联合成一个整体。

通过够不够方(通过更换参数,也可以选择够不够圆),将目标显示出来:

select_shape (ConnectedRegions, SelectedRegions, 'rectangularity', 'and', 0.9, 1)

筛选出够方的区域:

 填补没有选择到的洞

fill_up(SelectedRegions1, RegionFillUp)

通过区域将图像抠出来,俗称抠图

reduce_domain (Image, RegionFillUp, ImageReduced)

 通过参数列表也能看到,第二个参数位区域,输出的参数图片。该图片以外的区域都将变成无效区域。

通过这个算子,可以清晰的认识到区域(Region)和图片(image)区别!

Region:(符合一定条件的)二值化区域。

体会一下  image-》Region-》image 的过程。

显示边框还是填充由你决定

右键图片-》更新窗口-》在单步模式-》清空并显示:

作用是每次单步清除上一次的结果,显示当前作用效果,可以看着自己的选择一点点在靠近目标。

改变形状

shape_trans , 可将图形改变为圆形(外接圆,内接圆),方形,还有“凸性” ‘convex’。

凸性,就是将凸出的最高点连接起来了:

评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

code bean

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值