zoukankan      html  css  js  c++  java
  • tf.TFRecordReader()函数解析(最清晰的解释)

    读取tfrecord数据

    从TFRecords文件中读取数据, 首先需要用tf.train.string_input_producer生成一个解析队列。之后调用tf.TFRecordReadertf.parse_single_example解析器。如下图:
    在这里插入图片描述
    解析器首先读取解析队列,返回serialized_example对象,之后调用tf.parse_single_example操作将Example协议缓冲区(protocol buffer)解析为张量。

    简单来说,一旦生成了TFRecords文件,接下来就可以使用队列(queue)读取数据了。

    def read_and_decode(filename):
        #根据文件名生成一个队列
        filename_queue = tf.train.string_input_producer([filename])
    
        reader = tf.TFRecordReader()
        _, serialized_example = reader.read(filename_queue)   #返回文件名和文件
        features = tf.parse_single_example(serialized_example,
                                           features={
                                               'label': tf.FixedLenFeature([], tf.int64),
                                               'img_raw' : tf.FixedLenFeature([], tf.string),
                                           })
    
        img = tf.decode_raw(features['img_raw'], tf.uint8)
        img = tf.reshape(img, [224, 224, 3])
        img = tf.cast(img, tf.float32) * (1. / 255) - 0.5
        label = tf.cast(features['label'], tf.int32)
    
        return img, label
    

    举例:

    下面代码是我的程序中利用TFRecord读取格式时的代码:
    在这里插入图片描述
    这部分只要使用对应的代码就可以,主要是知道咋回事。

    如果想要更多的资源,欢迎关注 @我是管小亮,文字强迫症MAX~

    回复【福利】即可获取我为你准备的大礼,包括C++,编程四大件,NLP,深度学习等等的资料。

    想看更多文(段)章(子),欢迎关注微信公众号「程序员管小亮」~

    在这里插入图片描述

  • 相关阅读:
    ajax上传文件
    nginx location指令详解
    总结php删除html标签和标签内的内容的方法
    useBuiltIns: 'usage'
    uni-app如何页面传参数的几种方法总结
    基于 schema 的数据校验
    canvas时点击事件和长按冲突
    vue 下载文件流,后台是get方式 ,并且导出出现excel乱码问题
    uni-app canvas 实现文字居中
    git reflog 回退
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13302787.html
Copyright © 2011-2022 走看看