01批量移动(复制)文件—制作训练集

1.数据组织格式:

源数据组织格式:
在这里插入图片描述
新数据组织格式:
在这里插入图片描述

2.代码实现:

# 深度学习过程中,需要制作训练集和验证集、测试集。

import os
import random
import shutil


def moveFile(fileDir, tarDir):
        categorys = os.listdir(fileDir)    # 所有类别
        # print("categorys:{}".format(categorys))
        for category in categorys:
            # print("category:{}".format(category))
            path_NewCategory = os.path.join(tarDir, category)       # 新文件夹(类别)路径
            os.mkdir(path_NewCategory)
            path_OldCategory = os.path.join(fileDir, category)      # 老文件夹(类别)路径
            imgs = os.listdir(path_OldCategory)      # 类别下所有的图像
            imgNumber = len(imgs)
            rate = 0.5    # 自定义抽取图片的比例,比方说100张抽10张,那就是0.1
            picknumber = int(imgNumber*rate)  # 按照rate比例从文件夹中取一定数量图片
            sample = random.sample(imgs, picknumber)  # 随机选取picknumber数量的样本图片
            # print(sample)
            for name in sample:
                # shutil.copy(os.path.join(path_OldCategory, name), os.path.join(path_NewCategory, name))
                shutil.move(os.path.join(path_OldCategory, name), os.path.join(path_NewCategory, name))


if __name__ == '__main__':
    fileDir = r'E:\***\***\***\data\images'   # 源图片文件夹路径
    tarDir = r'E:\***\***\***\data\train'    # 移动到新的文件夹路径
    moveFile(fileDir, tarDir)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值