Halcon学习2_图形图像数据结构
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1·Image
在Halcon中,Image=Channel+Domain,其中,像素点放在channel矩阵中,根据ROI对Image进行描述。
2·Region
为某些符合要求性质的像素子集,或者说一些被选择的图块区域s,region大小不受图像限制,有fill和margin两种表达方式,可用于压缩。
*选择相应区域
select_shape(regions,output,'select type',..requirements)
*计算相应区域的面积,中心坐标
area_center(regions,area,row,column)
*不规则区域的转换
shape_trans(region,regiontrans,type)
3·图型变量XLD(eXtended Line Descriptions)
XLD代表亚像素级别的轮廓或者多边形
*XLD的选择操作
select_shape_xld(XLD : SelectedXLD : Features, Operation, Min, Max : )
select_contours_xld(Contours : SelectedContours : Feature, Min1, Max1, Min2, Max2 : )
*计算xld的面积以及中心位置
//area_center_xld(XLD:::Area,row,column,pointOrder)
*Xld 的拟合操作(fit_***_contour_xld) 把不完整的形状拟合完整
fit_line_contour_xld
fit_circle_contour_xld
fit_ellipse_contour_xld
fit_rectangle2_contour_xld
4·读取照片方法
a·申明一个数组,分别保存路径
ImagePath:=[]
ImagePath[0]:='D:/1.bmp'
ImagePath[1]:='D:/2.bmp'
ImagePath[2]:='D:/3.bmp'
for i:=0 to 2 by 1
read_image(Image,ImagePath[i])
endfor
b·利用for循环直接读取
for i:=1 to 3 by 1
read_image(Image,'D:/’+'i'+'.bmp')
endfor
c·利用Halcon自带功能读取
助手-打开新的Image Acquisition-选择路径/选择文件-代码生成-插入代码
list_files(输入文件目录地址,选取的要求(files指定选取文件格式,recursive递归,深入所有,derectories选取文件夹,follow_links,max_depth 5...),输出的被选择的文件列表) 选择符合规则的tuple,其中\\.是转义符,等价于'-->'
tuple_regexp_select(文件名字,['\\.(bmp|tif)$','ignore_case忽略大小写'],输出)
fabric文件路径
*生成代码如下
list_files ('C:/Users/zl/Desktop', ['files','follow_links'], ImageFiles)
tuple_regexp_select(ImageFiles,['\\.(tif|tiff|gif|bmp|jpg|jpeg|jp2|png|pcx|pgm|ppm|pbm|xwd|ima)$','ignore _case'], ImageFiles)
for Index := 0 to |ImageFiles| - 1 by 1
read_image (Image, ImageFiles[Index])
* Do something
endfor