QQ登录

只需一步,快速开始

上位机通过halcon中图像区域特征选择指定区域

[ 复制链接 ]
在图像处理当中对图像进行预处理,获得感兴趣的区域,可以提高图像处理的速度;
当我们想要提取Region时,图像简单处理后,往往存在几个类似的Region,此时,需要根据Region的一些特殊特征,来选择指定的Region。
在halcon 中 求Region指定特征值:region_features(Regions : : Features : Value)
然后就可以根据获取的特征值选择区域:select_shape(Regions: SelectedRegions : Features, Operation, Min, Max : )
图像区域特征众多,对每个特征的理解,是使用前面两个函数的前提。下面表格罗列出的区域特征说明
Region特征一览:
  
特征
  
取值范围
Area
Area of the object
区域的面积,可通过area_center得到
Row
Row index of the center
中心点的行坐标,可通过area_center得到
column
Column index of the center
中心点的列坐标,可通过area_center得到
width
Width of the region
区域的宽度,参考inner_rectangle1,得到的参数
height
Height of the region
区域的高度,参考inner_rectangle1,得到的参数
row1
Row index of upper left corner
左上角行坐标,参考inner_rectangle1,得到的参数
column1
Column index of upper left corner
左上角列坐标,参考inner_rectangle1,得到的参数
row2
Row index of lower right corner
右下角行坐标,参考inner_rectangle1,得到的参数
column2
Column index of lower right corner
右下角列坐标,参考inner_rectangle1,得到的参数
circularity
Circularity
圆度,可通过circularity得到
0~1
compactness
Compactness
紧密度,可通过compactness得到
0~1
contlength
Total length of contour
轮廓线总长,可通过contlength得到
convexity
Convexity
凸度,最外全部像素点围成的面积与原始面积的比值,可百度查阅凸度概念,可通过convexity得到
rectangularity
Rectangularity
矩形度,可通过rectangularity得到
0~1
Ra
Main radius of the equivalent ellipse
等效椭圆长轴半径长度,通过elliptic_axis得到
Rb
Secondary radius of the equivalent ellipse
等效椭圆短轴半径长度,通过elliptic_axis得到
Phi
Orientation of the equivalent ellipse
等效椭圆方向,通过elliptic_axis得到
anisometry
Anisometry
椭圆离心率,Ra/Rb长轴与短轴的比值
bulkiness
Bulkiness
椭圆蓬松度π*Ra*Rb/A,A为面积可用area_center获得
struct_factor
Structur Factor
椭圆结构系数,Anisometry*Bulkiness-1
outer_radius
Radius of smallest surrounding circle
最小外接圆半径,可用smallest_circle获取圆中心与半径,绘制圆查看效果
inner_radius
Radius of largest inner circle
最大内接圆半径,可用inner_circle,获取参数,绘制圆查看效果
inner_width
Width of the largest axis-parallel rectangle that fits  into the region
最大轴平行内接矩形宽度,可用inner_rectangle1获取参数,绘制矩形查看效果
inner_height
Height of the largest axis-parallel rectangle that fits  into the region
最大轴平行内接矩形高度,可用inner_rectangle1获取参数,绘制矩形查看效果
dist_mean
Mean distance from the region border to the center
区域边界到中心的平均距离,roundness获得
dist_deviation
Deviation of the distance from the region border from  the center
区域边界到中心距离的偏差,roundness获得
roundness
Roundness
圆度,与circularity计算方法不同,roundness获得
num_sides
Number of polygon sides
多边形边数,roundness获得
connect_num
Number of connection components
连通数,connect_and_holes获得
holes_num
Number of holes
区域内洞数,connect_and_holes获得
area_holes
Area of the holes of the object
所有洞的面积之和,area_holes获得
max_diameter
Maximum diameter of the region
区域最大直径,diameter_region获得
orientation
Orientation of the region
区域方向,orientation_region获得
euler_number
Euler number
欧拉数,即连通数和洞数的差,euler_number获得
rect2_phi
Orientation of the smallest surrounding rectangle
最小外接矩形的方向,smallest_rectangle2获得
rect2_len1
Half the length of the smallest surrounding rectangle
最小外接矩形高一半,smallest_rectangle2获得

rect2_len2
Half the width of the smallest surrounding rectangle
最小外接矩形宽一半,smallest_rectangle2获得
moments_m11
Geometric moments of the region
几何矩
moments_m20
Geometric moments of the region
几何矩
moments_m02
Geometric moments of the region
几何矩
moments_ia
Geometric moments of the region
几何矩
moments_ib
Geometric moments of the region
几何矩
moments_m11_invar
Geometric moments of the region
几何矩
moments_m20_invar
Geometric moments of the region
几何矩
moments_m02_invar
Geometric moments of the region
几何矩
moments_phi1
Geometric moments of the region
几何矩
moments_phi2
Geometric moments of the region
几何矩
moments_m21
Geometric moments of the region
几何矩
moments_m12
Geometric moments of the region
几何矩
moments_m03
Geometric moments of the region
几何矩
moments_m30
Geometric moments of the region
几何矩
moments_m21_invar
Geometric moments of the region
几何矩
moments_m12_invar
Geometric moments of the region
几何矩
moments_m03_invar
Geometric moments of the region
几何矩
moments_m30_invar
Geometric moments of the region
几何矩
moments_i1
Geometric moments of the region
几何矩
moments_i2
Geometric moments of the region
几何矩
moments_i3
Geometric moments of the region
几何矩
moments_i4
Geometric moments of the region
几何矩
moments_psi1
Geometric moments of the region
几何矩
moments_psi2
Geometric moments of the region
几何矩
moments_psi3
Geometric moments of the region
几何矩
moments_psi4
Geometric moments of the region
几何矩
表格中出现很多类型的几何矩。
矩是描述图像特征的算子,如今矩技术已广泛应用于图像检索和识别 、图像匹配 、图像重建、数字压缩 、数字水印及运动图像序列分析等领域。
常见的矩描述子可以分为以下几种:几何矩、正交矩、复数矩和旋转矩 。
其中几何矩提出的时间最早且形式简单,对它的研究最为充分。
几何矩对简单图像有一定的描述能力,他虽然在区分度上不如其他三种矩,但与其他几种算子比较起来,他极其的简单,一般只需用一个数字就可表达。
所以,一般我们是用来做大粒度的区分,用来过滤显然不相关的文档
图像的几何矩这里先不进行讲解,仅介绍常用的区域特征;

可以halcon中使用下面代码测试查看表格中37个区域特征的效果(fabrik为其自带图片)
  1. dev_close_window()
  2. read_image(Image,'fabrik')
  3. dev_open_window(0, 0, 512, 512, 'black', hWnd)
  4. threshold (Image, Regions, 160, 255)
  5. connection(Regions,con)
  6. *0.区域属性都可打开特征检测工具查看
  7. select_shape(con,sel,'area', 'and', 7000, 100000)
  8. *fill_up(sel,sel)
  9. *1.面积计算
  10. *area_center(sel,area,row,col)
  11. dev_set_draw('margin')
  12. dev_display(Image)
  13. dev_display(sel)
  14. dev_set_color('blue')
  15. *2.圆度计算
  16. *circularity(sel,Circularity)
  17. *3.紧密度计算
  18. *compactness(sel,Compactness)
  19. *4.轮廓线总长计算
  20. *contlength(sel,ContLength)
  21. *5.矩形度计算
  22. *rectangularity(sel,Rectangularity)
  23. *6.等效椭圆方向/长轴/短轴/半径长度计算
  24. *elliptic_axis(sel, Ra, Rb, Phi)
  25. *area_center(sel,area,row,col)
  26. *gen_ellipse(ellip,row,col,Phi,Ra,Rb)
  27. *7.椭圆离心率/蓬松度/结构系数计算
  28. *eccentricity(sel,anisometry,bulkiness,struc)
  29. *8.最小外接圆半径
  30. *smallest_circle(sel,row,column,radius)
  31. *gen_circle(circle,row,column,radius)
  32. *9.最大内接圆半径
  33. *inner_circle(sel,row,column,radius)
  34. *gen_circle(circle,row,column,radius)
  35. *10.最大轴平行内接矩形宽度/高度col1-col,row1-row
  36. inner_rectangle1(sel,row,col,row1,col1)
  37. gen_rectangle1(rec,row,col,row1,col1)
  38. *11.区域边界到中心的平均距离/中心距离偏差/圆度/多边形边数
  39. *roundness(sel,Distance, Sigma, Roundness, Sides)
  40. *12.区域的连通数/洞数
  41. *connect_and_holes(sel,NumConnected, NumHoles)
  42. *13.区域内所有洞的面积之和
  43. *area_holes(sel,Area)
  44. *14.区域最大半径
  45. *diameter_region(sel,row1,col1,row2,col2,dia)
  46. *disp_line(hWnd, row1, col1, row2, col2)
  47. *15.区域角度
  48. *orientation_region(sel,phi)
  49. *row:=300+100*sin(phi)
  50. *column:=300+100*cos(phi)
  51. *disp_arrow(hWnd, 300, 300, row, column,1)
  52. *16.欧拉数,即连通数和洞数之差
  53. *euler_number(sel,num)
  54. *17.最小外接矩形的方向/一半高/一半宽
  55. *smallest_rectangle2(sel,row,col,phi,hei,wid)
  56. *gen_rectangle2(rec,row,col,phi,hei,wid)
  57. *gen_rectangle1(sel,row,col,row+hei,col+wid)
复制代码
对这些区域特征含义及效果了解后,就可以很方便的进行区域选择操作,如选择下图竖线

上位机通过halcon中图像区域特征选择指定区域

上位机通过halcon中图像区域特征选择指定区域
  1. dev_close_window()
  2. read_image(Image,'1.jpg')
  3. dev_open_window(0, 0, 512, 512, 'black', hWnd)
  4. rgb1_to_gray(Image,rgb)
  5. dev_display(rgb)
  6. threshold (rgb, Regions, 160, 255)
  7. connection(Regions,con)
  8. select_shape(con,sel,'rect2_len1','and',25,80)
  9. select_shape(sel,sel,'column','and',340,380)
  10. fill_up(sel,fil)
  11. count_obj(fil,Number)
  12. smallest_rectangle2(fil,Row, Column, Phi, Length1, Length2)
  13. gen_rectangle2(rec,Row, Column, Phi, Length1, Length2)
  14. dev_display(rgb)
  15. dev_display(rec)
复制代码
图片保存为1.jpg,与工程文件同级目录,得出效果图

上位机通过halcon中图像区域特征选择指定区域

上位机通过halcon中图像区域特征选择指定区域

select_shape函数的例程可在halcon按F1,打开编程手册,搜索获得

回复

使用道具 举报

大神点评(1)

快速回复 返回列表 客服中心 搜索