博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用tfrecord建立自己的数据集——conda
阅读量:2032 次
发布时间:2019-04-28

本文共 1085 字,大约阅读时间需要 3 分钟。

一、前言:

在学习tensorflow的时候,里面除了具体的项目实践外,还涉及到了创建TFRecord格式的数据集,今天回顾一下这个内容。

单位的机器只有ananconda2的python2.7,下面先贴出用conda创建虚拟环境的相关命令。

这里写图片描述

这里写图片描述

这里写图片描述

这里写图片描述

conda设置国内镜像

conda config --add channels https://mirrors.ustc.edu.cn/anaconda/pkgs/free/

conda config --set show_channel_urls yes

这里写图片描述

安装成功

这里写图片描述

三、使用tfrecord制作自己的数据集

现在分别利用两类不同的猫数据:英国短毛猫和缅甸猫来做数据,每类都有5个:

这里写图片描述

① 制作TFRECORD文件

1 先聊一下tfrecord, 这是一种将图像数据和标签放在一起的二进制文件,能更好的利用内存,在tensorflow中快速的复制,移动,读取,存储 等等..

这里注意,tfrecord会根据你选择输入文件的类,自动给每一类打上同样的标签
如在本例中,只有0,1 两类
2 先上“制作TFRecord文件”的代码,注释附详解
这里写图片描述

tf.train.Example 协议内存块包含了Features字段,通过feature将图片的二进制数据和label进行统一封装, 然后将example协议内存块转化为字符串, tf.python_io.TFRecordWriter 写入到TFRecords文件中。

于是,生成一个cat_train.tfrecords的文件——cat_train.tfrecords

② 读取TFRECORD文件

这里写图片描述

这里需要注意的是: feature的属性label和img_raw应该和制作时起的名称一致,返回的img数据和label数据一一对应。返回的img和label是2个tf张量。

③ 显示tfrecord格式的图片

有些时候我们希望检查分类是否有误,或者在之后的网络训练过程中可以监视,输出图片,来观察分类等操作的结果,那么我们就可以session回话中,将tfrecord的图片从流中读取出来,再保存。 紧跟着一开始的代码写:

  • tensorflow常用一些基本概念与函数

这里写图片描述

这里写图片描述

Wait for all the threads to terminate, give them 10s grace period 给每个线程10s的宽限期

coord.join(threads, stop_grace_period_secs=10)

在这里可以看到,图片已经被正确的打上label,没问题。

这里写图片描述

你可能感兴趣的文章
openssl passwd
查看>>
openssl pkeyutl
查看>>
02.规划过程组表格-责任分配矩阵
查看>>
02.规划过程组表格-质量管理计划
查看>>
02.规划过程组表格-干系管理计划
查看>>
04.监控过程组-合同方状态报告
查看>>
01.openssl-创建证书签名请求
查看>>
02.openssl-密钥的格式转换
查看>>
07.openssl编程——抽象IO
查看>>
14.openssl编程——错误处理
查看>>
31.openssl编程——SSL实现
查看>>
01.openssl-概述
查看>>
08.openssl非对称加密算法指令
查看>>
openssl rand
查看>>
00.代码阅读内功心法篇
查看>>
02.规划过程组表格-项目管理计划
查看>>
02.规划过程组表格-WBS词典
查看>>
03.失败与成功哲学
查看>>
04.向太平意思宣战
查看>>
03.简化领导力摘录——卓越领导者
查看>>