利用python进行图像预处理——分类


from pexels.com 在计算机视觉的分类任务中,需要给不同类别的数据打上标签。常见的深度学习框架一般可以直接处理**文件夹**,并按照文件夹来给图像打上对应的标签。一般来说文件夹下的结构如下所示:
./train_images
|--class1|--001.png|--002.png|--003.png|--xxx.png
|--class2
|--class3
|--classxxx

其中train_images为保存训练数据的根目录。但我们拿到的数据集往往都是下面这个样子的:

form flickr.com
随机附带一个标签文件·label.json。我们需要按照标签文件将文件放到不同的文件夹中去。

1.处理标签

如果一个label的格式如下:
[...,
{"image": "7e25ef0a-7cef-2429b82cafd6___YLCV_GCREC 1896.JPG", "disease_class": 4},
{"image": "e1a78324ca1d0c04f514b4372f.jpg", "class": 8},
{"image": "1ecd651560ebf9eaffbff791d3.jpg", "class": 6},...]

我们需要利用json包来进行处理:

import os  #构建目录
import sys
import json  #读取json
import shutil  #复制文件train_label = './label.json'
train_img_path = './train_images/'
train_data = json.load(open(train_label))  #读入label数据,读入后为字典组成的list数据
print("This dataset totally has %d images"%len(train_data))  #显示数据量if not os.path.exists('./train'):os.mkdir('./train)  #首先建立一个文件夹保存整理好的数据
for i in range(class_num):     #分类数目,为不同类别生产对应的子文件夹if not os.path.exists('./train/'+str(i)):os.mkdir('./train/'+str(i))## 按照标签整理数据
count = 0  #计数器,确保所有图片转换完成
for item in train_data:count+=1class_id = item.get('class')   #读取字典中的分类值,为整数  name_id = item.get('image')  #读取字典中的图像文件名shutil.copyfile(train_img_path+name_id, './train_dis/'+str(class_id)+'/'+name_id)   #将文件copy到对应的分类文件夹中去if count%1000==0:print('processed:',count)
print("Totally %d images is prepared"%count)   #这里的输出应该和上面输出的文件数量一致"""
最后的文件结构如下:
./train
|--1|--1.jpg|--2.jpg|--xxx.jpg
|--2
|--3
|--xxx
"""


from stock.adobe.com

深度学习图像预处理——分类相关推荐

  1. 万字总结Keras深度学习中文文本分类

    摘要:文章将详细讲解Keras实现经典的深度学习文本分类算法,包括LSTM.BiLSTM.BiLSTM+Attention和CNN.TextCNN. 本文分享自华为云社区<Keras深度学习中文 ...

  2. HALCON 20.11:深度学习笔记(10)---分类

    HALCON 20.11:深度学习笔记(10)---分类 HALCON 20.11.0.0中,实现了深度学习方法. 本章解释了如何在训练和推理阶段使用基于深度学习的分类. 基于深度学习的分类是一种对一 ...

  3. 比较全的深度学习数据预处理方法

    当前深度学习的预处理方法 1.中心化/零均值化 程序代码 2.标准化/归一化 程序代码 (1)标准化与归一化的联系和差异 联系 差异 (2)为什么要归一化/标准化 ①某些模型求解需要 ②一些分类器需要 ...

  4. 深度学习——数据预处理篇

    深度学习--数据预处理篇 文章目录 深度学习--数据预处理篇 一.前言 二.常用的数据预处理方法 零均值化(中心化) 数据归一化(normalization) 主成分分析(PCA.Principal ...

  5. 6-机器学习启蒙- 深度学习: 图像搜索

    6- 深度学习: 图像搜索 github: https://github.com/mtianyan/graphLabStartedML 深度学习: 图像搜索 基于图片的相似度来选购商品 可视化商品推荐 ...

  6. pytorch 训练过程acc_深度学习Pytorch实现分类模型

    今天将介绍深度学习中的分类模型,以下主要介绍Softmax的基本概念.神经网络模型.交叉熵损失函数.准确率以及Pytorch实现图像分类.01Softmax基本概念 在分类问题中,通常标签都为类别,可 ...

  7. camvid数据集介绍_深度学习图像数据集介绍(MSCOCO)

    深度学习图像数据集介绍(MSCOCO) MSCOCO数据集是微软开发维护的大型图像数据集,次数聚集的任务包括识别(recognition),分割(segementation),及检测(detectio ...

  8. 深度学习图像超分辨率最新综述:从模型到应用

    点击我爱计算机视觉标星,更快获取CVML新技术 今日arXiv新上论文<Deep Learning for Image Super-resolution:A Survey>,详细回顾了近年 ...

  9. 基于深度学习的时间序列分类[含代码]

    基于深度学习的时间序列分类 引言 数据集 实验环境搭建 实验设计 实验代码 实验结果 引言 目前,深度学习在计算机视觉和语音识别上有了非常广泛的应用,但是在工业应用方面还没有完善的体系,一方面缺乏数据 ...

最新文章

  1. SSD相关文章及博客
  2. 如何修改Xshell默认存储路径
  3. CodeForces - 1245C Constanze's Machine(思维+找规律)
  4. 无法重新声明块范围变量。此处也声明了 。_Go 语句块与作用域
  5. rsync使用(二)
  6. 软件测试基础知识大全(新手入门必备)
  7. 卫生事业单位计算机科学与技术,卫生事业单位考试(计算机科学与技术)知识点.doc...
  8. SeaweedFS介绍安装集群部署总结
  9. CSR1010A05-IQQM-R首款单模单芯片蓝牙低功耗
  10. 【数据挖掘算法】(二)MSET 算法参差分析
  11. 数据表多次更新插入重复数据去重SQL
  12. java飞翔的小鸟游戏实验报告,BirdGame 飞翔的小鸟游戏源码,仿照 编写的java版本 ,所有的 功能完整。 s 249万源代码下载- www.pudn.com...
  13. win7主机 ubuntu10.04虚拟机 共享文件夹设置
  14. 绿色版Mysql的安装配置
  15. 图书馆机器人索书号识别
  16. 小蓝本 第一本 《因式分解技巧》 第八章 多项式的一次因式 笔记 (第八天)
  17. 学习Discuz! X3.2记录:新建模板及修改logo
  18. java培训出来的面试经历
  19. steam网站显示invalid SSL certerficate
  20. jQuery实现QQ分组列表效果

热门文章

  1. OpenGL:显示一些立体图形示例程序(真不错)
  2. 结构重参数化技术【为了模型压缩】:进可暴力提性能,退可无损做压缩
  3. python xlwt模块使用_Python使用xlwt模块 操作Excel文件(转载)
  4. Arraylist理解(2)扩容
  5. 163邮箱:退信代码(对照表) - 说明篇
  6. vue.js 编程导航,如何传递参数?
  7. unity 动态生成类_Houdini城市道路模型生成
  8. 云顶之弈小程序 置顶工具(附源码)
  9. 你画我猜微擎版小程序源码
  10. PHP在线考试系统实例源码