Halcon批量读取图片 / 读取指定文件夹下图片,介绍可能用到的两个函数的用法

一、list_files()函数

Halcon批量读取图片 读取指定文件夹下图片_数组

第一个参数:表示文件夹路径

第二个参数:如果是设置为‘files’则输出路径数组为文件路径,比如txt文件,jpg文件等,如果设置为‘directories’ 则输出路径为目录下的子文件夹路径

第三个参数:输出对应的文件或者文件夹路径的数组

使用这个函数如果读取图片文件,一般会配合另一个函数tuple_regexp_select()来使用,可以筛选指定后缀的图片格式的文件

下面是一个demo,指定取图jpg和png文件,同时‘ignore_case’忽略大小写

list_files('C:/Users/King/Desktop/images', 'files', Files)
tuple_regexp_select (Files, ['.*(jpg|png)','ignore_case'], Selection)

二、list_image_files()函数

Halcon批量读取图片 读取指定文件夹下图片_desktop_02

用法类似,下面是demo,指定读取png和jpg文件,同时默认不区分大小写(.JPG和.jpg都可以)

list_image_files ('C:/Users/King/Desktop/images', ['png','jpg'], [], ImageFiles)

那么最后就是遍历数组元素,读取图片了,写一个for循环即可,|ImageFiles|表示数组长度,访问数组从0~|ImageFiles|-1

list_image_files ('C:/Users/King/Desktop/images', ['png','jpg'], [], ImageFiles)

for Index := 0 to |ImageFiles|-1 by 1
    read_image(Image, ImageFiles[Index])
endfor