在深度学习的训练时,经常会碰到训练的样本数据集和标签数据集是在一个文件夹中,这个时候我们就不得不进行一些数据的预处理和文件的分类,例如将训练(training data)数据集和标签数据集(label data)分别放到不同的文件夹或者将训练数据集按照分类放到类别文件中,这样子的操作是为了我们能方便的读取和处理相关的图片数据。这篇博文主要是讲我在做项目过程碰到的其中一中情况,就是训练样本数据和标签数据在一个主文件夹下的不同文件夹内,这里有两种处理方式供参考。
1. 将文件分别放到不同的文件
利用Python的shutil.copy()函数对数据进行分类放到不同的文件夹。
import os
import cv2
import shutil
import numpy as np
# 定义获取文件名的方法
def getFileNames(rootDir):
fileNames = []
# 利用os.walk()函数获取根目录下文件夹名称,子文件夹名称及文件名称
for dirName, subDirList, fileList in os.walk(rootDir):
for fname in fileList:
# 用os.path.split()函数来判断并获取文件的后缀名
if os.path.splitext(fname)[1] == '.png':
fileNames.append(di