tensorflow随笔-读取图像文件数据(2)-TFRecord
生活随笔
收集整理的這篇文章主要介紹了
tensorflow随笔-读取图像文件数据(2)-TFRecord
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
- 寫文件
代碼如下
# -*- coding: utf-8 -*- """ Created on Tue May 7 18:29:30 2019@author: liuxing @email:lx@lxaipro.com """ import tensorflow as tf import os#tf.train.match_filenames_once 函數(shù)產(chǎn)生文件名列表 imageFN=os.getcwd()+'/*.jpg' imageFileName=tf.train.match_filenames_once(imageFN) fileNameQueue=tf.train.string_input_producer(imageFileName) imageReader=tf.WholeFileReader() imageFileN,imageFile=imageReader.read(fileNameQueue) image=tf.image.decode_jpeg(imageFile)init_op=tf.group(tf.global_variables_initializer(),tf.local_variables_initializer())with tf.Session() as sess:sess.run(init_op)fileCount=len(sess.run(imageFileName))writer=tf.python_io.TFRecordWriter('images.tfrecord')#開啟協(xié)調(diào)器coord=tf.train.Coordinator()#啟動(dòng)隊(duì)列填充threads=tf.train.start_queue_runners(coord=coord,sess=sess)try:i=0while i < fileCount:imageData=sess.run(image)print("===============================")iFn=sess.run(imageFileN)print()print("============{}===================".format(iFn))if b'1' in iFn:imageLabel=b'\x01'else:imageLabel=b'\x02'imageBytes=imageData.tobytes()imageHeight,imageWidth,imageChannels=imageData.shapefeatureData={'label':tf.train.Feature(bytes_list=tf.train.BytesList(value=[imageLabel])),'image':tf.train.Feature(bytes_list=tf.train.BytesList(value=[imageBytes]))} imageExample=tf.train.Example(features=tf.train.Features(feature=featureData))writer.write(imageExample.SerializeToString())print('生成圖像{}類別{}TFRecord格式...'.format(iFn,imageLabel))print("--------")i=i+1except tf.errors.OutOfRangeError:print("Done!!!")finally:coord.request_stop()coord.join(threads)print("reading has finished.")writer.close()===============================
===============================
生成圖像b’F:\pro\learn\2.jpg’TFRecord格式…
===============================
===============================
生成圖像b’F:\pro\learn\2.jpg’TFRecord格式…
reading has finished.
- 讀文件
代碼如下
# -*- coding: utf-8 -*- """ Created on Tue May 7 18:29:30 2019@author: liuxing @email:lx@lxaipro.com """ import tensorflow as tf import os#tf.train.match_filenames_once 函數(shù)產(chǎn)生文件名列表 imageFN=os.getcwd()+'/*.tfrecord' imageFileName=tf.train.match_filenames_once(imageFN) fileNameQueue=tf.train.string_input_producer(imageFileName) imageTfrecordReader=tf.TFRecordReader() imageFileN,imageFile=imageTfrecordReader.read(fileNameQueue) imageRecordFeatures=tf.parse_single_example(imageFile,features={'label':tf.FixedLenFeature([],tf.string),'image':tf.FixedLenFeature([],tf.string)}) tfRecordImage=tf.decode_raw(imageRecordFeatures['image'],tf.uint8) tfRecordLabel=tf.cast(imageRecordFeatures['label'],tf.string)init_op=tf.group(tf.global_variables_initializer(),tf.local_variables_initializer())with tf.Session() as sess:sess.run(init_op)fileCount=2#開啟協(xié)調(diào)器coord=tf.train.Coordinator()#啟動(dòng)隊(duì)列填充threads=tf.train.start_queue_runners(coord=coord,sess=sess)try:i=0while i < fileCount:print("===============================")iLabel=sess.run(tfRecordLabel)print(iLabel)print(sess.run(tfRecordImage))print("===============================")print('讀取{}圖像{}類別的TFRecord格式...'.format(sess.run(imageFileN),iLabel))print("--------")i=i+1except tf.errors.OutOfRangeError:print("Done!!!")finally:coord.request_stop()coord.join(threads)print("reading has finished.")===============================
b’\x01’
[ 50 149 234 … 51 75 43]
讀取b’E:\pro\learn\images.tfrecord:0’圖像b’\x01’類別的TFRecord格式…
===============================
b’\x02’
[250 254 253 … 250 254 253]
讀取b’E:\pro\learn\images.tfrecord:480059’圖像b’\x02’類別的TFRecord格式…
reading has finished.
總結(jié)
以上是生活随笔為你收集整理的tensorflow随笔-读取图像文件数据(2)-TFRecord的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 单行文字、多行文字溢出时省略号表示的多种
- 下一篇: java 线程安全的原因_java的多线