Python---读图(glob读取图片文件列表)

深度学习中常用的读图方式:

glob

用它可以查找符合特定规则的文件路径名。查找文件只用到三个匹配符:”*”, “?”, “[]”;
”*”匹配0个或多个字符;
”?”匹配单个字符;
”[]”匹配指定范围内的字符,如:[0-9]匹配数字;

glob.glob

返回所有匹配的文件路径列表。它只有一个参数pathname,定义了文件路径匹配规则,这里可以是绝对路径,也可以是相对路径。

import glob

#获取指定目录下的所有图片
print glob.glob(r"E:/Picture/*/*.jpg")

#获取上级目录的所有.py文件
print glob.glob(r'../*.py') #相对路径

glob.iglob

获取一个可编历对象,使用它可以逐个获取匹配的文件路径名。与glob.glob()的区别是:glob.glob同时获取所有的匹配路径,而glob.iglob一次只获取一个匹配路径。
import glob

#父目录中的.py文件
f = glob.iglob(r'../*.py')

print f #<generator object iglob at 0x00B9FF80>

for py in f:
    print py
获取images/training文件夹中的所有jpg图片文件列表:

import os
import glob
image_dir = r"C:\Users\Administrator\Desktop";
file_glob = os.path.join(image_dir,"images","training","*."+"jpg")
print(file_glob)
file_list = []
file_list.extend(glob.glob(file_glob))
print(file_list)
结果如下:
C:\Users\Administrator\Desktop\images\training\*.jpg
['C:\\Users\\Administrator\\Desktop\\images\\training\\TJ_3.JPG', 'C:\\Users\\Ad
ministrator\\Desktop\\images\\training\\TJ_S.JPG']

注释:

file_glob对应的是C:\Users\Administrator\Desktop\images\training\路径下*.jpg的规则;

glob.glob(file_glob)则返回所有符合规则的jpg图片路径名称;

猜你喜欢

转载自blog.csdn.net/trent1985/article/details/79097025