python读取多个文件夹中的多张图片

因为我要用lfw中的图片,而lfw中的图片都是分在多个文件夹中存放的,在使用的时候不是很方便,所以,我就将lfw数据集中分在各个文件夹中的图片读出来,放在我另外建的一个文件夹中,程序里面用到的是python中的os,scipy包。

先贴出程序

import os
from os.path import join as pjoin
from scipy import misc
img_dir = '/home/liuyafei/facenet_facerecognition-master/train_dir/lfw/'  # 自己单独建的文件夹, 用于存放从lfw读取的图片
def load_data(data_dir):  # data_dir是lfw数据集路径
    count = 0
    for guy in os.listdir(data_dir):  
        person_dir = pjoin(data_dir, guy)  # lfw中文件夹的路径
        for i in os.listdir(person_dir):
            image_dir = pjoin(person_dir, i)  # lfw中每个文件夹中图片的路径
            img22 = misc.imread(image_dir, mode='RGB')  # 读取lfw中每个文件夹中的图片
            print(image_dir)
            misc.imsave(pjoin(img_dir, i), img22) # 将lfw中读取的每个文件夹中的图片存入指定的文件夹
            count = count+1
        print(person_dir)
    print(count)
    return count

程序中,os.path是用于文件路径相关处理的,其中,os.listdir是读取路径下文件的名称,pjoin是os.path.join的缩略名,这是用于将两个路径进行拼接,形成一个新的路径。misc.imread()是用于读取指定路径的图片,模式为RGB。misc.imsave()是用于将指定图片以指定的名称存储于指定文件夹中。

以上就是我对这点程序的解释,程序不长,希望对大家有用。

你可能感兴趣的:(python读取多个文件夹中的多张图片)