halcon复杂图形中的形状筛选(举一反三)

ps:这里的演示过于简洁,够用,关键算子就是:select_shape,后面附带select_shape的用法讲解

演示用图:

halcon代码:

*复杂图像中的形状筛选
*这里以截取图片中的所有矩形为例
read_image (Image, 'D:/Halcon-WorkSpaces/Test/Image/test2.png')
rgb1_to_gray (Image, GrayImage)
threshold (GrayImage, Regions, 0, 0)
connection (Regions, ConnectedRegions)
*筛选矩形
select_shape (ConnectedRegions, SelectedRegions, 'rectangularity','and',1,1)
dev_clear_window ()
dev_display (SelectedRegions)

执行结果:

 

select_shape:

操作符select_shape根据形状选择区域。对于来自区域的每个输入区域,计算所指示的特征(特征)。如果每个(Operation = 'and')或至少一个(Operation = 'or')计算的特性都在默认限制(Min,Max)之内,则该区域将被调整为输出(重复)。

参数:

“area”:
物体面积
“row”:
中心的行索引
“column”:
中心的列索引
“width”:
区域宽度
“height”:
区域高度
“row1”:
左上角的行索引
“column1”:
左上角的列索引
“row2”:
右下角的行索引
“column2”:
右下角的列索引
“circularity”:
循环(参见循环)
“compactness”:
密实度(见紧密)
“contlength”:
轮廓总长度(见算子contlength)
“convexity”:
凸性(见凸性)
“rectangularity”:
成直角(见成直角)
“ra”:
等效椭圆的主半径(见elliptic_axis)
rb:
等效椭圆的二次半径(见elliptic_axis)
“phi”:
等效椭圆的方向(见elliptic_axis)
“anisometry:”
Anisometry(见偏心)
“bulkiness”:
体积(见操作偏心)
“struct_factor:”
结构因子(见算子偏心率)
“outer_radius”:
最小周围圆半径(见smallest_circle)
“inner_radius”:
最大内圆半径(见inner_circle)
“inner_width”:
与该区域相适应的最大轴向平行矩形的宽度(参见inner_rectangle1)
“inner_height”:
与该区域相适应的最大轴向平行矩形的高度(参见inner_rectangle1)
“dist_mean”:
从区域边界到中心的平均距离(参见操作符圆度)
“dist_deviation:”
从区域边界到中心的距离的偏差(参见操作符圆度)
“roundness”:
圆度(见操作符圆度)
“num_sides”:
多边形边数(见算子圆度)
“connect_num”:
连接组件的数量(参见操作符connect_and_holes)
“holes_num”:
孔数(参见操作符connect_and_holes)
“area_holes”:
对象的孔面积(见操作符area_holes)
“max_diameter”:
区域的最大直径(见算子diameter_region)
“orientation”:
区域的方向(参见操作符orientation_region)
“euler_number”:
欧拉数(参见运算符euler_number)
“rect2_phi”:
周围最小矩形的方向(参见操作符smallest_rectangle2)
“rect2_len1”:
周围最小矩形长度的一半(参见操作符smallest_rectangle2)
“rect2_len2”:
周围最小矩形宽度的一半(参见操作符smallest_rectangle2)
“moments_m11”:
区域的几何矩(参见操作符moments_region_2)
“moments_m20”:
区域的几何矩(参见操作符moments_region_2)
“moments_m02”:
区域的几何矩(参见操作符moments_region_2)
“moments_ia”:
区域的几何矩(参见操作符moments_region_2)
“moments_ib”:
区域的几何矩(参见操作符moments_region_2)
“moments_m11_invar”:
区域的几何矩(参见操作符moments_region_2nd_invar)
“moments_m20_invar”:
区域的几何矩(参见操作符moments_region_2nd_invar)
“moments_m02_invar”:
区域的几何矩(参见操作符moments_region_2nd_invar)
“moments_phi1”:
区域的几何矩(参见操作符moments_region_2nd_rel_invar)
“moments_phi2”:
区域的几何矩(参见操作符moments_region_2nd_rel_invar)
“moments_m21”:
区域的几何矩(参见操作符moments_region_3)
“moments_m12”:
区域的几何矩(参见操作符moments_region_3)
“moments_m03”:
区域的几何矩(参见操作符moments_region_3)
“moments_m30”:
区域的几何矩(参见操作符moments_region_3)
“moments_m21_invar”:
区域的几何矩(参见操作符moments_region_3rd_invar)
“moments_m12_invar”:
区域的几何矩(参见操作符moments_region_3rd_invar)
“moments_m03_invar”:
区域的几何矩(参见操作符moments_region_3rd_invar)
“moments_m30_invar”:
区域的几何矩(参见操作符moments_region_3rd_invar)
“moments_i1”:
区域的几何矩(参见操作符moments_region_central)
“moments_i2”:
区域的几何矩(参见操作符moments_region_central)
“moments_i3”:
区域的几何矩(参见操作符moments_region_central)
“moments_i4”:
区域的几何矩(参见操作符moments_region_central)
“moments_psi1”:
区域的几何矩(参见操作符moments_region_central_invar)
“moments_psi2”:
区域的几何矩(参见操作符moments_region_central_invar)
“moments_psi3”:
区域的几何矩(参见操作符moments_region_central_invar)
“moments_psi4”:
区域的几何矩(参见操作符moments_region_central_invar)
如果只使用一个特性(特性),那么操作的值就没有意义。几个特性按照输入它们的顺序进行处理。

 

xxx

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值