分享

Dataset之CIFAR-10:CIFAR-10数据集简介、下载、使用方法之详细攻略

 处女座的程序猿 2021-09-28

Dataset之CIFAR-10:CIFAR-10数据集简介、下载、使用方法之详细攻略


CIFAR-10简介

官网链接:The CIFAR-10 dataset

          CIFAR-10是一个更接近普适物体的彩色图像数据集。CIFAR-10 是由Hinton 的学生Alex Krizhevsky 和Ilya Sutskever 整理的一个用于识别普适物体的小型数据集。一共包含10 个类别的RGB 彩色图片:飞机( airplane )、汽车( automobile )、鸟类( bird )、猫( cat )、鹿( deer )、狗( dog )、蛙类( frog )、马( horse )、船( ship )和卡车( truck )。
         每个图片的尺寸为32 × 32 ,每个类别有6000个图像,数据集中一共有50000 张训练图片和10000 张测试图片。

1、与MNIST 数据集中目比, CIFAR-10 真高以下不同点

  • (1)、CIFAR-10 是3 通道的彩色RGB 图像,而MNIST 是灰度图像
  • (2)、CIFAR-10 的图片尺寸为32 × 32 , 而MNIST 的图片尺寸为28 × 28 ,比MNIST 稍大。
  • (3)、相比于手写字符, CIFAR-10 含有的是现实世界中真实的物体,不仅噪声很大,而且物体的比例、特征都不尽相同,这为识别带来很大困难。直接的线性模型如Softmax 在CIFAR-10 上表现得很差。

2、TensorFlow 官方示例的CIFAR-10 代码文件

3、CIFAR-10 数据集的数据文件名及用途

     在CIFAR-10 数据集中,文件data_batch_1.bin、data_batch_2.bin 、··data_batch_5.bin 和test_ batch.bin 中各有10000 个样本。一个样本由3073 个字节组成,第一个字节为标签label ,剩下3072 个字节为图像数据。样本和样本之间没高多余的字节分割, 因此这几个二进制文件的大小都是30730000 字节。

文件名

文件用途

batches.meta. bet

文件存储了每个类别的英文名称。可以用记事本或其他文本文件阅读器打开浏览查看

data batch I.bin 、

data batch 2.bm 、

……

data batch 5.bin

这5 个文件是CIFAR- 10 数据集中的训练数据。每个文件以二进制格式存储了10000 张32 × 32 的彩色图像和这些图像对应的类别标签。一共50000 张训练图像

test batch.bin

这个文件存储的是测试图像和测试图像的标签。一共10000 张

readme.html

数据集介绍文件

CIFAR-10下载

1、下载CIFAR-10 数据集的全部数据

FLAGS = tf.app.flags.FLAGS          
cifar10.maybe_download_and_extract() 


>> Downloading cifar-10-binary.tar.gz 0.0%
……
>> Downloading cifar-10-binary.tar.gz 0.0%
>> Downloading cifar-10-binary.tar.gz 0.1%
……
>> Downloading cifar-10-binary.tar.gz 0.1%
>> Downloading cifar-10-binary.tar.gz 0.2%
……
>> Downloading cifar-10-binary.tar.gz 0.2%
>> Downloading cifar-10-binary.tar.gz 0.3%
……
>> Downloading cifar-10-binary.tar.gz 98.9%
……
>> Downloading cifar-10-binary.tar.gz 99.0%
……
>> Downloading cifar-10-binary.tar.gz 100.0%
Successfully downloaded cifar-10-binary.tar.gz 170052171 bytes.

CIFAR-10使用方法

1、使用TF读取CIFAR-10 数据

  • (1)、用tf.train.string_ input producer 建立队列。
  • (2)、通过reader.read 读数据。一个文件就是一张图片,因此用的reader 是tf.WholeFileReader()。CIFAR-10 数据是以固定字节存在文件中的,一个文件中含再多个样本,因此不能使用tf. WholeFileReader (),而是用tf.FixedLengthRecordReader() 。
  • (3)、调用tf. train . start_ queue_ runners 。
  • (4)、最后,通过sess.run()取出图片结果。

相关文章

TF:利用TF读取数据操作,将CIFAR-10 数据集中的训练图片读取出来,并保存为.jpg 格式

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多