随笔杂记(十三)——分割数据集和标签作为训练集和验证集

随笔小杂记(二)——分割数据集和标签作为训练集和验证集

闲聊

前几天为了跑通几个代码,所以又偷懒没有写博客,今天赶紧补上,整理一下

代码

# -*- coding:utf-8 -*-
# 将一个文件夹下图片按比例分在两个文件夹下,比例改0.7这个值即可
import os
import random
import shutil
from shutil import copy2
#原图片位置
trainfiles = os.listdir('./512/src')#(图片文件夹)
labelfiles = os.listdir('./512/label')#(标签文件夹)
num_train = len(trainfiles)
print( "num_train: " + str(num_train) )
#获取列表
index_list1 = list(range(num_train))
index_list2 = list(range(num_train))
print(index_list1)
print(index_list2)
# 设置相同的随机数种子,打乱图片顺序
randnum = random.randint(0,100)
random.seed(randnum)
random.shuffle(index_list1)
random.seed(randnum)
random.shuffle(index_list2)
num = 0
trainDir = './new_512/train_src'#(将图片文件夹中的7份放在这个文件夹下)
validDir = './new_512/val_src'#(将图片文件夹中的3份放在这个文件夹下)
trainlabelDir = './new_512/train_label'
validlabelDir = './new_512/val_label'
#随机放入
for i in index_list1:
    fileName1 = os.path.join('./512/src', trainfiles[i])
    fileName2 = os.path.join('./512/label', labelfiles[i])
    if num < num_train*0.7:
        print(str(fileName1))
        copy2(fileName1, trainDir)
        copy2(fileName2, trainlabelDir)
    else:
        copy2(fileName1, validDir)
        copy2(fileName2, validlabelDir )
    num += 1

你可能感兴趣的:(python,深度学习,人工智能)