zoukankan      html  css  js  c++  java
  • CS 231n 学习笔记 02附——CIFAR10的使用

    CIFAR10是80 million tiny images数据集的一个子集,共包含60000张32*32的小型彩色图标。每张图片有RGB 3个颜色通道。

    每张图片表示为一个长32*32*3的3072维向量,每个元素数据格式unit8即256色。其中前1024维为红色向量,中间1024维为绿色向量,尾1024维为蓝色向量。每个向量又以像素点为行优先排列。

    CIFAR10数据集由6个文件组成,即data_batch_1~5和test_batch,各由10000张图片构成,其中无重复图像。

    test_batch严格由各类别各1000张图片组成,而data_batch1~5各类别的构成数量不定。

    数据集的下载:

    http://www.cs.toronto.edu/~kriz/cifar.html

    数据集的使用(Python版):

    每个文件都是由python生成的pickle类的对象,在python3中,可用如下方式使用文件:

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

    该函数返回一个dict字典对象。

    可调用如下代码查看关键字:

    diction=unpickle('文件所在路径\data_batch_1') #以在windows中打开batch1为例
    print(diction.keys())

    输出如下:

    • dict[b'batch_label]是含当前信息的字符串,比如batch1就是b:'training batch 1 of 5'
    • dict[b'data']是一个10000*3072的numpy二维数组,每个行向量表示一个图片。(所以要提前安装numpy包)
    • dict[b'labels']是一个长10000的list,元素是0~9,表示dict[b'data‘]中一一对应的每一个图片的类别。
    • dict[b'filenames']是一一对应的每一个图片的原文件名(拓展名皆为png)。

    batches.meta 文件可以用相同的方法读取,里面存的是一些基本信息。

    • num_cases_per_batch

      10000

    • label_names
    ['airplane', 'automobile', 'bird', 'cat', 'deer', 'dog', 'frog', 'horse', 'ship', 'truck']
    • num_vis

      3072

  • 相关阅读:
    jQuery插件 -- Form表单插件jquery.form.js
    Ajax发送GET、POST请求和响应XML数据案例
    Ajax知识点复习
    Tomcat配置连接池的java实现
    dbcp数据库连接池的java实现
    C3P0数据库连接池的java实现
    推荐几款基于Bootstrap的响应式后台管理模板
    Java复习第四天
    Java复习第三天
    Java复习第二天
  • 原文地址:https://www.cnblogs.com/CaptainLL/p/8835037.html
Copyright © 2011-2022 走看看