最近在做一个图像分类的比赛,作为初次接触深度学习的菜鸟,上手了keras。说实话,除了keras教程,中文博客的技术支持太差了。正在头大的学习中...废话不多说,记录一下学习中的一些小细节。在遇到generator.flow_from_directory('data/train'...)这个函数时,需要输入训练图片的路径。此时训练图像和验证图像都在一个目录下,所以我需要重建两个文件来分别放训练图像和验证图像。开始,我想,利用opencv将每张图片读出来,然后再根据是否为训练图像或者验证图像分别重新写到重新建的文件夹里。后来发现python中的 from shutil import copy2 函数可以直接将图片放到指定的路径下。

import os
import random
import shutil
from shutil import copy2
trainfiles = os.listdir('Data/train')
num_train = len(trainfiles)
index_list = range(num_train)
random.shuffle(index_list)
num = 0
trainDir = 'Data/pre_train'
validDir = 'Data/pre_valid'
for i in index_list:
fileName = os.path.join('Data/train', trainfiles[i])
if num < num_train*0.8:
copy2(fileName, trainDir)
else:
copy2(fileName, validDir)
num += 1

简单思路:将原来‘Data/train’路径下的图片名读出,然后打乱所有图片的顺序,将打乱顺序后的总图片数的前80%图片作为训练数据放到新建的'Data/pre_train'目录下,其余的图片放到'Data/pre_valid'目录下。

最新文章

  1. 新年抢红包效果(New Year Red Packet)
  2. 转载:Hadoop排序工具用法小结
  3. (原) 2.3 Curator使用
  4. error CS0117: `UnityEditor.EditorUtility&#39; does not contain a definition for `GetAssetPreview&#39;
  5. js-innerHTML
  6. BZOJ-2037 Sue的小球 DP+费用提前
  7. poj3207 2-SAT入门
  8. python 根据对象和方法名,返回提供这个方法的定义的类
  9. jsp的el表达式
  10. Axure自动幻灯片制作
  11. poi读写Excel文件
  12. Office文档在线编辑的实现之一
  13. 【洛谷1131】【ZJOI2007】时态同步
  14. Sitecore&#174; 8.2 Professional Developer考试心得
  15. c++11の泛型算法
  16. Multi-Get API
  17. Paper | 多任务学习的鼻祖
  18. &#39;新&#39;, &#39;泽&#39; - ImageMagick - UTF-8非最短形式及编码安全问题
  19. jdk8- list操作
  20. Leetcode——121. 买卖股票的最佳时机

热门文章

  1. oracle游标的使用
  2. v-for并判断当前元素是否选中:$set实现响应添加属性
  3. 解决nginx: [error] open() "/usr/local/nginx/logs/nginx.pid" failed错误
  4. 将自己的代码托管到github上
  5. asp.net -mvc框架复习(6)-基于MVC实现简单计算器
  6. 【编程技巧】Ext.MessageBox 大集合 不同的dialog图解加写法
  7. maven多模块搭建
  8. linux下ftp命令的安装与使用
  9. WebRoot 与 webContent的区别
  10. LAMP_yum安装