以Cifar10图像数据为例详解tensorflow对tfrecord数据的读写操作

用Tensorflow处理自己的数据:制作自己的TFRecords数据集 转载请注明作者和出处: http://blog.youkuaiyun.com/c406495762 运行平台: Windows Python版本: Python3.x IDE: Spyder前言   最近一直在研究深度学习,主要是针对卷积神经网络(CNN),接触过的数据集也有了几个,最经典的就是MNIST, CIFAR10/100, NOTMNIST, CATS_VS_DOGS 这几种,由于这几种是 阅读详情
陈伟@航天科技智慧城市研究院
chenwei@ascs.tech

tfrecord格式说明

正常情况下我们训练文件夹经常会生成 train, test 或者val文件夹,这些文件夹内部往往会存着成千上万的图片或文本等文件,这些文件被散列存着,这样不仅占用磁盘空间,并且再被一个个读取的时候会非常慢,繁琐。占用大量内存空间(有的大型数据不足以一次性加载)。此时我们TFRecord格式的文件存储形式会很合理的帮我们存储数据。TFRecord内部使用了“Protocol Buffer”二进制数据编码方案,它只占用一个内存块,只需要一次性加载一个二进制文件的方式即可,简单,快速,尤其对大型训练数据很友好。而且当我们的训练数据量比较大的时候,可以将数据分成多个TFRecord文件,来提高处理效率。

前置工作

我们在《cifar10数据通过tensorflow转换成图像》将cifar10数据转换成了图像数据。本文将演示将这些图片序列化成tfrecord数据,以便后续的训练。

写tfrecord数据writer_cifar10.py

import tensorflow as tf
import cv2
import numpy as np
import glob

classification = ['airplane',
                  'automobile',
                  'bird',
                  'cat',
                  'deer',
                  'dog',
                  'frog',
                  'horse',
                  'ship',
                  'truck']


idx = 0
im_data = []  # 所有类别的图片文件
im_labels = []  # 所有文件的标签
for path in classification:  # 对于每个类别
    path = "data/image/train/" + path  # 形如:data/image/train/bird
    im_list = glob.glob(path + "/*")  # 获取这个类别下所有文件
    # Python在方括号中使用for循环,类似[0 for i in range(10)],叫 列表解析List Comprehensions
    # 根据已有列表,高效创建新列表的方式。
    # 列表解析是Python迭代机制的一种应用,它常用于实现创建新的列表,因此用在[]中。
    # [expression for iter_val in iterable]
    # [expression for iter
【Tensorflow与深度学习笔记day11】6. 多分类图像识别案例+6.1. 图片信息的读取与写入+CIFAR-10+ 下载数据集+二进制版本格式+二进制文件的读取+保存和读取TFRecords 文章目录6. 多分类图像识别案例CIFAR-10下载数据集二进制版本格式6.1. 图片信息的读取与写入二进制文件的读取保存和读取TFRecords文件当中 6. 多分类图像识别案例 CIFAR-10 CIFAR-10数据集由10个类别的60000 32x32彩色图像组成,每个类别有6000张图像。有50000个训练图像和10000个测试图像。数据集分为五个训练集和一个测试集,每个集有10000个... 阅读详情

相关推荐

制作tensorflow数据集

1首先准备好自己图片数据集,我是用cifar10 的其中五个类别,分别是bird,car ,cat,deer,plane。五个类别数据分开放置。例如:然后就是根据数据集生成tfrecord,生成的是protobuf(二进制文件,加速文件传输和处理速度),代码如下<import tensorflow as tfimport osimport randomimport mathimport sy...

qq_26560395的博客 888

cifar10的训练好的tfrecord文件

用tensorflow训练好的cifar10的tfrecord模型,可以直接放进去跑。

cifar数据集包括其TfRecord格式文件

CIFAR-10 数据集的分类是机器学习中一个公开的基准测试问题,其任务是对一组32x32RGB的图像进行分类,这些图像涵盖了10个类别: 飞机, 汽车, 鸟, 猫, 鹿, 狗, 青蛙, 马, 船以及卡车。 该压缩文件中已经将数据集进行随机混乱排布操作,分散在六个子文件夹中,其中五个作为训练集,一个作为测试集; 另外包括其制作而成的tfrecord文件,具体使用方法可参见博客; 用于训练vgg、resnet等网络

CIFAR10-jpg格式训练集

cifar10 jpg格式数据集 非bin格式数据集 可用于自己制作tfrecords

从‘眼花缭乱’到‘心中有数’:rs-fMRI统计分析全流程避坑指南(附DPABI操作截图)

本文详细解析了rs-fMRI统计分析的全流程,从质量控制到统计模型选择,再到多重比较校正和结果解读。特别针对DPABI软件操作中的常见陷阱提供实用指南,帮助研究者避免FDR和GRF校正等关键环节的错误,实现从数据混乱到清晰分析的转变。

weixin_33686714的博客 398

告别水印!Vue3项目集成Stimulsoft.Reports.js完整配置与激活指南

本文详细介绍了如何在Vue3项目中集成Stimulsoft.Reports.js,提供从授权策略到性能优化的完整解决方案。通过模块化架构设计和现代化引入方式,帮助开发者高效实现专业级报表功能,同时避免版权风险和水印问题,特别适合中小型项目需求。

weixin_33701294的博客 432

ROS专栏—基于STM32F103的INA219电源数据采集

文章主要记录了stm32f103对ina219的数据采集

热爱生活、奋斗前行 2354

射频功率放大器设计实战:从理论到Layout的全流程解析

本文以一款40W、960MHz LDMOS功率放大器为例,系统解析了从理论分析、仿真设计到版图实现的射频功率放大器设计全流程。内容涵盖AB类放大器选型、核心指标定义、稳定性分析、Load-Pull/源牵引仿真、史密斯圆图匹配、偏置网络设计,以及最终的谐波平衡仿真与版图电磁验证,为工程师提供了一套从理论到实践的完整设计方法论。

weixin_29266007的博客 249

系统架构设计(以飞控系统、航电系统、机电管理系统、电子电气架构为例)

系统架构涉及对系统的结构和行为进行高层次的描述。它包括系统的组成部分、这些部分之间的关系、与外部环境的交互方式,以及满足特定功能和非功能性需求的方法。系统架构定义了系统的总体设计蓝图,指导系统的开发、集成、部署和维护。系统架构设计的目的是通过合理的结构和设计原则,确保系统能够高效、稳定、安全地运行,满足当前和未来的需求,同时具备良好的维护性、扩展性和可持续性。良好的系统架构不仅能够提高系统的开发效率和运行性能,还能降低长期的维护和运营成本,支持系统的持续演进和技术更新。

qq_41854911的博客 3052

西门子TP900精智系列触摸屏和三菱Q系列PLC以太网通信的组态步骤

西门子TP900精智系列触摸屏和三菱Q系列PLC以太网通信的组态步骤

Robot_PLC_HMI_Automation 6100

YOLOv8改进 | 主干网络 | 增加网络结构增强小目标检测能力【独家创新——附结构图】

YOLOv8改进,小目标检测,yolov8

kay_545 6020

【网络与爬虫 44】Canvas指纹伪造技术:突破浏览器图形渲染检测的终极指南

Canvas和WebGL指纹是现代反爬虫系统中最难绕过的检测技术之一,它们通过分析浏览器图形渲染的细微差异来识别用户设备。本文将深入解析Canvas和WebGL指纹的工作原理,探讨其在反爬虫检测中的应用,并提供多种有效的伪造和绕过策略,帮助开发者理解并应对这些高级检测技术。

熵数实验室 1206

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

上一篇: cifar10数据通过tensorflow转换成图像
下一篇: 详解tensorflow的tf.train.slice_input_producer和tf.train.string_input_producer生成器
陈伟的梦呓
博客等级 码龄8年 103粉丝 34原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值