(二)halcon-study

day2- region&Xld操作

region操作

主要包括以下四种操作
在这里插入图片描述

1. union1代码案例:

read_image (Image1, 'C:/Users/Public/Documents/MVTec/HALCON-12.0/examples/images/board/board-01.png')
//读入一张图片
*union1//将打散区域合并
threshold (Image1, Region, 128, 255)
connection (Region, ConnectedRegions)//将其打散
union1 (ConnectedRegions, RegionUnion)//将打散的合并成一个

实现效果展示:
在这里插入图片描述
变成
在这里插入图片描述

2. union2代码案例:

read_image (Image1, 'C:/Users/Public/Documents/MVTec/HALCON-12.0/examples/images/board/board-01.png')
gen_rectangle1 (Rectangle, 30, 20, 100, 200)//创建矩形,矩形左上角(30,20)右下角(100,200)
gen_circle (Circle, 200, 200, 100.5)//创建圆,圆形坐标(200,200)半径100.5
union2 (Rectangle,Circle, RegionUnion1)//将绘制的两个图形进行连接成一个

在这里插入图片描述
变成
在这里插入图片描述

3. intersection(两个图形取交集)代码案例:

*intersection两个图形取交集
gen_circle (Circle1, 350, 350, 100.5)
gen_circle (Circle2, 380, 380, 100.5)
intersection (Circle1, Circle2, RegionIntersection)

在这里插入图片描述
变成
在这里插入图片描述
4. difference(将两个相交的区域进行区域相减)代码案例:

*difference可以将两个相交的区域进行区域相减
gen_circle (Circle3, 350, 350, 100.5)
gen_circle (Circle4, 380, 380, 100.5)
difference (Circle3, Circle4, RegionDifference)

在这里插入图片描述
变成
在这里插入图片描述
5. symm_difference(两个图形相交的区域部分进行去除)代码案例:

*symm_difference将两个图形的相交的区域部分进行去除
gen_circle (Circle5, 270, 350, 100.5)
gen_circle (Circle6, 370, 380, 100.5)
symm_difference(Circle5, Circle6, C5)

在这里插入图片描述
注意:区分difference
6. complement(求补集)代码案例:

*complement求补集
gen_circle (Circle7, 170, 250, 100.5)
complement(Circle7, RegionComplement)

在这里插入图片描述

变成
在这里插入图片描述

region的形状转换

在这里插入图片描述

  1. convex:用于转换为凸形
read_image (Image1, 'C:/Users/Public/Documents/MVTec/HALCON-12.0/examples/images/board/board-01.png')
gen_rectangle1 (Rectangle1, 30, 20, 100, 200)
gen_rectangle2 (Rectangle2,90,160,rad(-13),80,69)
union2 (Rectangle1, Rectangle2, RegionUnion2)
shape_trans (RegionUnion2, RegionTrans, 'convex')//将其转化为凸形

在这里插入图片描述
变成
在这里插入图片描述
2. rectangle2:用于最小外接矩形

read_image (Image1, 'C:/Users/Public/Documents/MVTec/HALCON-12.0/examples/images/board/board-01.png')
gen_rectangle1 (Rectangle1, 30, 20, 100, 200)
gen_rectangle2 (Rectangle2,90,160,rad(-13),80,69)
union2 (Rectangle1, Rectangle2, RegionUnion2)
shape_trans (RegionUnion2, RegionTrans, 'rectangle2')//将其转化为最小外接矩形

在这里插入图片描述
注意:只需要关注shape_trans (RegionUnion2, RegionTrans, ‘rectangle2’)最后一个变量,可以按F1查看做相应的选择即可

region的区域选择

代码展示:

read_image (Image1, 'C:/Users/Public/Documents/MVTec/HALCON-12.0/examples/images/board/board-01.png')
*union1//将打散区域合并
threshold (Image1, Region1, 128, 255)
connection (Region1, ConnectedRegions1)
select_shape (ConnectedRegions1, SelectedRegions, 'area', 'and', 7000, 99999)

在这里插入图片描述
变成
在这里插入图片描述
其中查看区域信息的方式:点击上面图标倒数第三个特征检测,选择区域即可
在这里插入图片描述
其中,特征检测中的shape有相关的region特性,如:紧密度(compactness)这些也能在帮助中搜索到。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值