tensorflow生成多个tfrecord文件实例
我就废话不多说了,直接上代码吧!
importtensorflowastf fromPILimportImage importmatplotlib.pyplotasplt importnumpyasnp importos i=0 j=0 num_shards=100#总共写入的文件个数 instances_per_shard=2#每个文件中的数据个数 sess=tf.InteractiveSession() cwd="F:/寒假/google--data/新建文件夹/"#图片数据所在目录位置(读者自己去改就好了) classes={'daisy','rose'}#预先自己定义的类别,根据自己的需要修改 def_int64_feature(value):#生成整数型的属性 returntf.train.Feature(int64_list=tf.train.Int64List(value=[value])) def_bytes_feature(value):#生成字符串型的属性 returntf.train.Feature(bytes_list=tf.train.BytesList(value=[value])) forindex,nameinenumerate(classes):#枚举函数 class_path=cwd+name+"/"#选取具体数据目录 forimg_nameinos.listdir(class_path):#遍历文件列表 img_path=class_path+img_name#图片路径 img=Image.open(img_path) img=img.resize((299,299))#图像reshape大小设置,根据自己的需要修改 img_raw=img.tobytes() example=tf.train.Example(features=tf.train.Features(feature={ 'label':_int64_feature(index), 'img_raw':_bytes_feature(img_raw), 'i':_int64_feature(i), 'j':_int64_feature(j) })) filename=("F:/寒假/google--data/data.tfrecords-%.5d-of-%.5d"%(i,num_shards)) ifj==instances_per_shard-1: i+=1 j+=1 ifj==instances_per_shard: j=0 writer=tf.python_io.TFRecordWriter(filename) writer.write(example.SerializeToString())#将一个example写入tfrecord文件 writer.close()
以上这篇tensorflow生成多个tfrecord文件实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。