TFRecord作为tensorflow中广泛使用的数据格式,它跨平台,省空间,效率高。因为 Tensorflow开发者众多,统一训练时数据的文件格式是一件很有意义的事情,也有助于降低学习成本和迁移成本。
但是TFRecord数据是二进制格式,没法直接查看。因此,如何能够方便的查看TFRecord格式和数据,就显得尤为重要了。
为什么需要查看TFReocrd数据?首先我们先看下常规的写入和读取TFRecord数据的关键过程。
# 1. 写入过程
# 一张图片,我写入了其内容,label,长和宽几个信息
tf_example = tf.train.Example(
features=tf.train.Features(feature={
'encoded': bytes_feature(encoded_jpg),
'label': int64_feature(label),
'height': int64_feature(height),
'width': int64_feature(width)}))
# 2. 读取过程
# 定义解析的TFRecord数据格式
def _parse_image(example_proto):
features = {'encoded':tf.FixedLenFeature((),tf.string),
'label': tf.FixedLenFeature((), tf.int64),
'height': tf.FixedLenFeature((), tf.int64),
'width': tf.Fi