二进制文件读取流程分析|学习笔记

简介: 快速学习二进制文件读取流程分析

开发者学堂课程【深度学习框架 TensorFlow 入门二进制文件读取流程分析学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/773/detail/13554


二进制文件读取流程分析


内容介绍:

一、CIFAR10二进制数据集介绍

二、CIFAR10二进制数据读取


一、CIFAR10二进制数据集介绍

CIFAR-10数据集

CIFAR-10数据集由10个类的60000个32*32彩色图像组成,每个类有6000个图像,有50000个训练图像和1000个测试图像。

数据集分为五个培训批次和一个测试批次,每个批次有10000个图像。测试批次包含来自每个班级的恰好1000个随机选择的图像。班级的图像比另一个更多。在他们之间,训练批次包含来自每个班级的正好5000张图像。

以下是数据集中的类,以及来自每个类的10个随机图像。

这些类完全互相排斥。汽车和卡车之间没有重叠。“汽车”包括轿车,SUV,这类东西。“卡车”之包括大卡车。都不包括皮卡车。

二进制版本数据文件

二进制版本包含文件 data_batch_1.bin,data_batch_2.bin,...,data_batch_5.bin 以及 test_batch.bin。这些文件中的每一个格式如下,数据中每个样本包含了特征值和目标值:

<1x标签><3072x像素>

...

<1x标签><3072x像素>

每3073个字节是一个样本

1个目标值+3072像素(1024字节红色通道1024绿色通道1024蓝色通道)

第一个字节是第一个图像的标签,它是一个0-9范围内的数字。接下来的3072个字节是图像像素的值。前1024个字节是红色通道值,下1024个绿色,最后1024个蓝色。


二、CIFAR10二进制数据读取

1、流程分析

1)构造文件队列

2)读取二进制数据并进行解码

reader = tf.FixedLengthRecordReader(3073)

key,value = reader.read(file_queue)

decoded = tf.decode_raw(value,tf.uint8)

* 对 tensor 对象进行切片

label

* 一个样本 image(3072字节 = 1024red + 1024green + 1024blue)

[[ red [32,32]],

[ green [32,32]],

[blue[32,32]]]

shape = (3,32,32) = ( channels , height , width )

==> TensorFlow 的图像表示习惯

图片的形状、类型调整完毕

3)处理图片数据形状以及数据类型,批处理返回

4)开启会话线程运行

相关文章
|
30天前
|
存储 编译器 程序员
【C++ 文件操作与字符串处理】从文件读取到内容分割的全方位指南
【C++ 文件操作与字符串处理】从文件读取到内容分割的全方位指南
97 6
|
1月前
|
存储 C语言 数据格式
用二进制方式向文件读写一组数据
用二进制方式向文件读写一组数据
13 1
|
9月前
|
数据处理 Windows
成信大ENVI_IDL第二周课堂内容:打开HDF4文件并读取文件以及简单的数据处理和保存+详细解析
成信大ENVI_IDL第二周课堂内容:打开HDF4文件并读取文件以及简单的数据处理和保存+详细解析
252 1
|
存储 数据库 Windows
【C/进阶】如何对文件进行读写(含二进制)操作
【C/进阶】如何对文件进行读写(含二进制)操作
|
程序员 iOS开发 C++
如何用C++做文件和流
如何用C++做文件和流
文本文件和二进制文件的区别,使用方法和检验方式
文本文件和二进制文件的区别,使用方法和检验方式
91 0
|
Python
【通用文件操作】文件自动整理
今天我们就带大家来实现一下文件自动整理的操作。在我们日常生活中,文件总是杂乱无章的,这个时候就需要我们整理一下。但是文件太多的话整理起来是非常麻烦的,因此我们今天就来用Python实现文件的自动整理。
122 0
|
小程序 前端开发 API
小程序中实现获取全部数据
小程序中实现获取全 部数据
小程序中实现获取全部数据
|
机器学习/深度学习 TensorFlow 算法框架/工具
二进制文件读取案例|学习笔记
快速学习二进制文件读取案例
122 0
二进制文件读取案例|学习笔记
|
机器学习/深度学习 TensorFlow 算法框架/工具
文件读取通用流程|学习笔记
快速学习文件读取通用流程
133 0