深度学习数据集的准备

深度学习数据集的准备

下面介绍一个做了很久的项目,其中最简单的一部分是将该乳腺X线数据集进行有病没病的分类训练,说到训练最基本的就是数据集的准备,在这里先讲讲数据集怎么准备。下图是原始数据集的一部分。数据集在我电脑路径为C:\Users\Administrator.SKY-20180518VHY\Desktop\my
在这里插入图片描述
0中的数据
在这里插入图片描述
1中的数据
在这里插入图片描述
创建***空***的文件夹制作train集和validation set如下图,路径为C:\Users\Administrator.SKY-20180518VHY\Desktop\1

在这里插入图片描述
对其进行准备,详细程序及讲解如下:

# -*- coding: utf-8 -*-
"""
Created on Thu Oct 25 10:40:13 2018

@author:dj
"""
#导入一些库之前博客对这些库有所讲解[添加链接描述](https://blog.csdn.net/weixin_40123108/article/details/83340744)
import numpy as np
import os
import random
import shutil

aq='C:\\Users\\Administrator.SKY-20180518VHY\\Desktop\\my'#原数据集包括几类数据
data=os.listdir(aq)
#print(data)#此时data只有0,1两个文件夹

#random.shuffle(data)
#print(data[0][0])#引用的是文件名

root=aq
c=data


train_root='C:\\Users\\Administrator.SKY-20180518VHY\\Desktop\\1\\train'#train与val的路径
val_root='C:\\Users\\Administrator.SKY-20180518VHY\\Desktop\\1\\val'

在train和val文件夹中制作0,1文件夹

 for i in range(len(c)):
    qqq=os.path.exists(train_root+'/'+c[i])
    if (not qqq):
        os.mkdir(train_root+'/'+c[i])
    qq=os.path.exists(val_root+'/'+c[i])
    if (not qq):
        os.mkdir(val_root+'/'+c[i])

#将原始数据按照7:3分别复制到train 与val 中
aq='C:\\Users\\Administrator.SKY-20180518VHY\\Desktop\\my\\'    
for i in range(len(c)):
    a=c[i]
    #print(i)
    data_0=os.listdir(aq+a)#抓取0,1文件夹内X线照片的内容
    #print(data_0)
    #print(data_0[5])#索引的为文件夹中的x线图像
    random.shuffle(data_0)#打乱数据
                      
    for z in range(len(data_0)):#data_0为数据
                #print(z)
        pic_path=root+'/'+a+'/'+data_0[z]#得到data_0中的数据路径
                
        if z<int(len(data_0)*0.7):
            obj_path=train_root+'/'+a+'/'+data_0[z]
                    
        else:
            obj_path=val_root+'/'+a+'/'+data_0[z]
      
            #print(len(data_0),len(data_0)*0.7)
                #if (os.path.exists(pic_path)):
        shutil.copyfile(pic_path,obj_path)#将pic_path复制到obj_path中

最终得到的数据集如下图所示:
train文件夹中有:
在这里插入图片描述

val文件夹中有:
在这里插入图片描述
train中的0文件夹中数据:
在这里插入图片描述
val中1文件夹有:
在这里插入图片描述

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值