常用数据集整理(持续更新ing)

    在做实验过程中经常用到的数据集整理一下,按照学习过程中遇到的数据集的先后顺序进行整理,希望能对科研有所帮助。本博文将随着学习过程持续性更新,有其他常用数据集的,可以在下方留言,持续整理和补充。分享一个拥有较多数据集的网站:paper with code

目录

  • 常用数据集整理(持续更新ing)
  • 1. ImageNet
    • 1.1 ImageNet简介
    • 1.2 ImageNet下载方式
    • 1.3 ImageNet数据集样例
    • 1.4 ImageNet数据集应用举例
  • 2. CIFAR-10
    • 2.1 CIFAR-10简介
    • 2.2 CIFAR-10下载方式
    • 2.3 CIFAR-10数据集样例
    • 2.4 CIFAR-10数据集应用举例

1. ImageNet

1.1 ImageNet简介

    ImageNet在2009年计算机视觉与模式识别(CVPR)会议上发布。目前,ImageNet整个数据集包含14,197,122 张图片, 21841 类(截至2021.6.22),其中常用的子集包含1000类,120万张图片。
    ImageNet就像一个网络一样,拥有多个Node(节点)。每一个node相当于一个item或者subcategory。据官网消息,一个node含有至少500个对应物体的可供训练的图片/图像。它实际上就是一个巨大的可供图像/视觉训练的图片库。
    ImageNet的结构基本上是金字塔型:目录->子目录->图片集。
    Imagenet数据集是目前深度学习图像领域应用得非常多的一个领域,关于图像分类、定位、检测等研究工作大多基于此数据集展开。

1.2 ImageNet下载方式

    ImageNet数据下载地址:ImageNet数据下载

1.3 ImageNet数据集样例

    ImageNet数据图像如下所示:

1.4 ImageNet数据集应用举例

    ImageNet数据集可以用来进行图像分类实验,具体论文包括:
[1]Mark Chen, Alec Radford, Rewon Child, Jeff Wu, and Heewoo Jun. Generative pretraining from pixels. In ICML, 2020.
[2]J. Deng, W. Dong, R. Socher, L.J. Li, Kai Li, and Li Fei-Fei (2009): ImageNet: A large-scale hierarchical image database. In IEEE Conference on Computer Vision and Pattern Recognition, 2009. CVPR 2009. 248 – 255.

2. CIFAR-10

2.1 CIFAR-10简介

    CIFAR-10 是由 Hinton 的学生 Alex Krizhevsky 和 Ilya Sutskever 整理的一个用于识别普适物体的小型数据集。一共包含 10 个类别的 RGB 彩色图 片:飞机( airplane )、汽车( automobile )、鸟类( bird )、猫( cat )、鹿( deer )、狗( dog )、蛙类( frog )、马( horse )、船( ship )和卡车( truck )。图片的尺寸为 32×32 ,数据集中一共有 50000 张训练图片和 10000 张测试图片。
    该数据集共有60000张彩色图像,这些图像是32*32,分为10个类,每类6000张图。这里面有50000张用于训练,构成了5个训练批,每一批10000张图;另外10000用于测试,单独构成一批。测试批的数据里,取自10类中的每一类,每一类随机取1000张。抽剩下的就随机排列组成了训练批。注意一个训练批中的各类图像并不一定数量相同,总的来看训练批,每一类都有5000张图。

2.2 CIFAR-10下载方式

    CIFAR-10数据集一共有3种版本,(python,matlab,binary version 适用于C语言)
    http://www.cs.toronto.edu/~kriz/cifar-10-python.tar.gz
    http://www.cs.toronto.edu/~kriz/cifar-10-matlab.tar.gz
    http://www.cs.toronto.edu/~kriz/cifar-10-binary.tar.gz

2.3 CIFAR-10数据集样例

    CIFAR-10数据集图像如下所示:

2.4 CIFAR-10数据集应用举例

    下载python版本的数据之后的文件如下所示:

    读取图像数据至direction中的代码:

def unpickle(file):import picklewith open(file, 'rb') as fo:dict = pickle.load(fo, encoding='bytes')return dict

这样的话,每个batch文件包含一个字典,每个字典包含有:
Data
  一个10000×3072的numpy数组,数据类型是无符号整形uint8。这个数组的每一行存储了32×32大小的彩色图像(32×32×3通道=3072)。前1024个数是red通道,然后分别是green,blue。另外,图像是以行的顺序存储的,也就是说前32个数就是这幅图的像素矩阵的第一行。
Labels
  一个范围在0-9的含有10000个数的列表(一维的数组)。第i个数就是第i个图像的类标。
batches.meta
    数据集除了6个batch之外,还有一个文件batches.meta。它包含一个python字典对象,内容有:一个包含10个元素的列表,每一个描述了labels array中每个数字对应类标的名字。比如:label_names[0] == “airplane”, label_names[1] == “automobile”。
    通过上述代码段,以读取‘data_batch_1’文件为例,阐述读到的数据的格式。通过代码读取的数据存储在一个dictionary类型的变量dict中,将dict的内容进行输出,得到的结果格式如下(下图纯原创!):

    接下来需要思考的是:如何将图的数据文件还原为原图像。分别生成训练数据集和测试数据集,代码如下:

# coding :UTF-8
# 文件功能: 代码实现CIFAR-10数据文件转换为原图像的功能
# 开发人员: dpp
# 开发时间: 2021/6/23 11:19 下午
# 文件名称: CIFAR-10-transform.py
# 开发工具: PyCharmimport imageio  # 引入imageio包
import numpy as np# 解压 返回解压后的字典
def unpickle(file):import pickle as pkfo = open(file, 'rb')dict = pk.load(fo, encoding='iso-8859-1')fo.close()return dict# 生成训练集图片
for j in range(1, 6):dataName = "CIFAR-10-datafile/data_batch_" + str(j)  # 读取CIFAR-10-datafile文件夹目录下的data_batch1~data_batch5文件。Xtr = unpickle(dataName)print(dataName + " is loading...")for i in range(0, 10000):img = np.reshape(Xtr['data'][i], (3, 32, 32))  # Xtr['data']为图片二进制数据img = img.transpose(1, 2, 0)  # 读取imagepicName = 'CIFAR-10-train/' + str(Xtr['labels'][i]) + '_' + str(i + (j - 1) * 10000) + '.jpg'# Xtr['labels']为图片的标签,值范围0-9,本文中,train文件夹需要存在,并与脚本文件在同一目录下。imageio.imsave(picName, img)print(dataName + " loaded.")print("test_batch is loading...")# 生成测试集图片
testXtr = unpickle("CIFAR-10-datafile/test_batch")
for i in range(0, 10000):img = np.reshape(testXtr['data'][i], (3, 32, 32))img = img.transpose(1, 2, 0)picName = 'CIFAR-10-test/' + str(testXtr['labels'][i]) + '_' + str(i) + '.jpg'imageio.imsave(picName, img)
print("test_batch loaded.")

    实验文件结构如下所示:

    转换成原始图片之后的训练数据集train为:

    转换成原始图片之后的测试数据集test为:

     (待更新。。。)

常用数据集整理(持续更新ing)相关推荐

  1. 工作中php遇到的问题以及常用函数整理(持续更新)

    说明 以下整理的文档是本人2017年从事php开发到目前遇到的问题的部分整理,因为上家公司有改错本这个东西,偶然间翻开,整理了一部分,后续遇到问题会持续更新,最新更新的内容会放到最前面. php开启错 ...

  2. mysql(mariadb)常用命令(持续更新ing)

    目录 数据库 创建数据库 切换到某个 数据库下 表 创建表 创建数据 更新表中数据 查看表结构 重命名表 删除重复数据 查看前n行数据 列 增加列 修改列 主键 删除列 重命名列 mysql导入csv ...

  3. 常用软件整理(持续更新)

    1,SqlDbx qlDbx Professional Edition V3.30破解版,有3个文件,支持多窗口模式,版本低了些,但已经够用 SqlDbxV330破解版下载 转载于:https://w ...

  4. 自然语言处理数据集集锦(持续更新ing...)

    诸神缄默不语-个人CSDN博文目录 最近更新时间:2023.6.27 最早更新时间:2023.4.25 文本摘要主题的数据集见我之前写的另一篇博文:文本摘要数据集的整理.总结及介绍(持续更新ing-) ...

  5. js中text方法是啥意识_一盏茶的时间,快速捕获JS中常用的方法(细心整理,持续更新ing)...

    不知不觉上班一周辽-趁着大好周末,小编挣扎着从床上爬起来,决定对前端日常编程中常用到的一些方法做一个系统的整合. 有些人或许会觉得忘了百度就完事儿,no no no!这事儿小编真的亲践过好多次,百度一 ...

  6. TS 常见问题整理(60多个,持续更新ing)

    TS 常见问题整理(60多个,持续更新ing) https://cloud.tencent.com/developer/article/1593335

  7. Python3常用其他API速查手册(持续更新ing...)

    诸神缄默不语-个人CSDN博文目录 最近更新时间:2023.5.11 最早更新时间:2022.6.27 运算符 + - * / 取余% 开方** 等式:= == > < >= < ...

  8. 程序员的职业选择,你应该知道的,持续更新ing

    程序员的职业选择,你应该知道的,持续更新ing 一下内容只是个人认知的表达,仅供参考,互相交流,不喜勿喷 程序员的职业选择,你应该知道的,持续更新ing 我认识很多猎头,有些曾经是经验丰富的HR,以下 ...

  9. PyCharm使用期间出现报错集合 持续更新ing

    PyCharm使用期间出现报错集合 持续更新ing 啥时候用PyCharm发现了奇奇怪怪的错误就整理上来 这几天帮同学安装torch的时候出现了一些奇奇怪怪的问题 1.torch始终安装失败 描述一下 ...

最新文章

  1. Linux进程间通信--进程,信号,管道,消息队列,信号量,共享内存
  2. python就业方向有哪些-目前Python这么火,Python有哪些就业方向?
  3. php 中国标准时间,linux 系统时间与硬件时间与中国标准时间
  4. java 去除 quot,JAVA去除web页面传入后台的特殊字符工具类 | 学步园
  5. 前端每日实战:34# 视频演示如何用纯 CSS 创作在文本前后穿梭的边框
  6. 精通Android自定义View(十七)自定义圆形鸟巢加载转圈效果
  7. 5008.vs2015创建c++动态库
  8. gcc 编译多个源文件-转
  9. CCF201403-3 命令行选项(100分)
  10. SocketTool.exe 端口占用
  11. OpenWRT设置SmartDNS+ADGuardHome
  12. 计算机报名503,503 service temporarily unavailable是什么意思【解决方法】
  13. 使用WampServer搭建自己的网站
  14. python画一片树叶的故事_《Python数据分析与机器学习实战-唐宇迪》读书笔记第7章--决策树...
  15. 两全险的主险是什么意思?
  16. 又一位程序员要去IPO敲钟:40岁,知乎老板做出200亿
  17. 开源物联网终端设备操作系统
  18. 怎么开启微信蓝牙服务器,微信加群,电脑蓝牙怎么打开,教你一个最简单的方法...
  19. Cadence OrCAD Capture 检索和定位功能的介绍图文视频教程
  20. 我在哥大读博的五年,万字总结

热门文章

  1. ipv4地址是ip地址吗?
  2. python中的字符串比较
  3. I2C虚拟项目笔记(一)-virtual sequence
  4. 打工人、打工魂、高效MES助力打工者都是人上人
  5. 瞎搞系列-超分辨率进程
  6. RxJava--CompositeDisposable管理Disposable
  7. vue项目引入微信sdk报错记录
  8. Spring+SpringMVC+Hibernate整合操作数据库 概述
  9. win11修改成win10右击菜单的方法,亲测有效
  10. IT实践达人赛携手IBM续写“技术精神”