#图像获取#
halcon表示路径的方法和window不太一样,用/表示分隔符,而windows用反斜杠
注:读入单张图片也可以直接把图片拖拽到HDevelop中,它会自动生成代码。
##读入本地图片##
方式一:创建一个路径数组
ImagePath:=[]
ImagePath[0]:='D:/我的图片/1.png'
ImagePath[1]:='D:/我的图片/2.png'
ImagePath[2]:='D:/我的图片/3.png'
for i := 0 to 2 by 1
read_image (Image,ImagePath[i])
*do something()
endfor
方式二:
for i := 1 to 3 by 1
read_image (Image,'D:/我的图片/' + i + '.png' )
*do something()
endfor
方式三:利用相机助手获取
-
打开获取图像助手
-
选择文件或者文件路径
-
插入代码
插入的代码如下:
list_files ('F:/锂电涂布缺陷整理图片/按压', ['files','follow_links'], ImageFiles)
tuple_regexp_select (ImageFiles, ['\\.(tif|tiff|gif|bmp|jpg|jpeg|jp2|png|pcx|pgm|ppm|
pbm|xwd|ima|hobj)$','ignore_case'], ImageFiles)
for Index := 0 to |ImageFiles| - 1 by 1
read_image (Image, ImageFiles[Index])
* Do something()
endfor
注:
(1)list_files中的第二个参数options模式有如下解释:
‘files’:返回目录中包含的文件或者目录
‘directories’:指定的搜索格式为文件夹(文件夹也当作一个路径选择)
‘recursive’:递归,指可以遍历子文件夹里面的文件
‘follow_links’:用于指定应遵循指向文件或目录的符号链接
‘max_depth 5’:指遍历深度,允许嵌套五层文件夹
‘max_files 1000’:最大文件数
(2)tuple_regexp_select算子表示对ImageFiles路径中文件进行筛选,第二个参数表示入选的格式,
其中 \. 表示 转义成 .ignore_case表示不区分大小写。
##相机采集##
halcon几乎能够获取市面上常用的面阵、线扫相机。查看halcon安装目录下是否存在相关的dll动态库用来获取相机接口。若未发现相关dll,则可通过halcon官网interface获取。