Halcon项目之注塑吸嘴缺口检测

一、描述

检测下图中注塑吸嘴的缺口。

二、方法

主要方法:需要得到实物图像,对图像缺口处转化为凸包,然后将原始图和凸包图做差值运算,得到凸嘴部分。

三、Halcon代码

******************************************第一步  初始化**************************************************
*读取一张图像
read_image (Hull, '1')

*获取图像大小
get_image_size (Hull, Width, Height)

*关闭已经打开的窗口
dev_close_window ()
*打开一个新的窗口
dev_open_window (0, 0, Width, Height, 'black', WindowID)

*显示图像
dev_display (Hull)
 
******************************************第二步  图像处理**************************************************
*阈值操作,分割出吸嘴
threshold (Hull, Dark, 0, 80)

*补集运算,获取背景区域
difference (Hull, Dark, Light)

*对背景区域进行连通处理
connection (Light, ConnectedRegions)

*过滤出背景区域
select_shape (ConnectedRegions, NoHullCand, 'area', 'and', 50000, 9999999)

*对过滤的背景区域进行闭运算,填充背景间隙和平滑背景边界
closing_circle (NoHullCand, NoHull, 13.5)

*补集运算,获取吸嘴区域
difference (Hull, NoHull, Region)

*对吸嘴区域开运算
opening_circle (Region, RegionOpening, 2.5)

*对吸嘴区域进行连通处理
connection (RegionOpening, ConnectedRegions)

*过滤出吸嘴区域
select_shape (ConnectedRegions, RegionHull, 'area', 'and', 5000, 9999999)

*将吸嘴区域转换为凸包区域
shape_trans (RegionHull, ConvexHull, 'convex')

*补集运算,获取吸嘴的缺口
difference (ConvexHull, RegionHull, Region)

*对吸嘴缺口区域进行连通处理
connection (Region, ConnectedRegions)

*过滤出吸嘴缺口
select_shape (ConnectedRegions, LargeHoles, 'area', 'and', 2000, 99999)
select_shape (LargeHoles, Holes, 'convexity', 'and', 0, 0.85)

*显示图像
dev_display (Hull)

*设置输出对象的线宽度
dev_set_line_width (5)

*设置区域的填充方式
dev_set_draw ('margin')

*设置输出对象显示颜色为红色
dev_set_color ('red')

*显示吸嘴缺口
dev_display (Holes)

  完整项目代码下载地址Halcon项目之注塑吸嘴缺口检测资源-CSDN文库

四、主要算子介绍

1.shape_trans(Region : RegionTrans : Type : )

shape_trans (RegionHull, ConvexHull, 'convex')

3、halcon算子shape_trans,用于变换区域的形状_halcon最大内接矩形-CSDN博客

2.select_shape(Regions : SelectedRegions : Features, Operation, Min, Max : )

select_shape (LargeHoles, Holes, 'convexity', 'and', 0, 0.85)

本代码中使用的'convexity'参数,是根据凸包性来过滤图像的

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值