TensorFlow官网给的cifar-10教程,是卷积神经网络入门的好例子,有时想直接拿这个模型来跑自己的数据,却发现他的数据类型不是常见的,我们一般获取的数据(图片)以文件夹分类存好,或者直接在文件名上注明了类别,这时就要通过文件名的来获取标签,显然直接用cifar-10的方式是不行的。
这里当然可以吧数据转化成cifar-10那种类型,不过个人不喜欢这种方式吧。
另一种就还是老办法,对文件名进行处理,获取标签。
其实处理文件名,对python来说,很简单。只是刚接触卷积神经网络的,可能并不熟悉TensorFlow的用法(本人),怎么修改代码才能以这种方式读取数据进队列呢?
看代码:
import tensorflow as tf import os #这就是数据所在的路径,其子目录是若干个文件夹,分别对应一类数据, #文件夹下存放的就是对应那一类的数据。 #命名方式:1,2,3,4····(代表不同的类别,简单粗暴) path="./data" classes=2#数据类别的数量 imagesList=[]#存放图片数据的列表(这里存放的仅仅是图片所在的路径,并不是图片) labelsList=[]#存放标签,与上面图片是一一对应的 filepaths=[os.path.join(path,"%d"%i)for i in range (1,classes+1)]#存放path的子目录的路径 for p in filepaths: for filename in os.listdir(p):#获取图片的名字 imagesList.append(os.path.join(p,filename))#图片名和路径拼接,然后如队列 labelsList.append(int(p[-1]))#这里是按照命名的方式,p的最后一个字符就是类别 image = tf.cast(imagesList,tf.string)#转化成tf的数据类型 label = tf.cast(labelsList,tf.int64) queue = tf.train.slice_input_producer([image,label])#生成队列,这里也就关键的地方 label = queue[1] image_c = tf.read_file(queue[0]) image = tf.image.decode_jpeg(image_c,channels = 3) training_image_data = tf.image.resize_images(image, [2, 2]) #这个函数是重塑行,具体干嘛不清楚,不用有时报错 example_batch, label_batch = tf.train.shuffle_batch([training_image_data,label], batch_size=1, capacity=2, min_after_dequeue=1) #生成Batch # 运行Graph with tf.Session() as sess: coord = tf.train.Coordinator() #创建一个协调器,管理线程 threads = tf.train.start_queue_runners(coord=coord) #启动QueueRunner, 此时文件名队列已经进队。 for i in range(6): e_val,l_val = sess.run([example_batch, label_batch]) print (e_val,l_val)#弄些简单的数据来测试效果。 coord.request_stop() coord.join(threads)
以上这篇TensorFlow通过文件名/文件夹名获取标签,并加入队列的实现就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
白云城资源网 Copyright www.dyhadc.com
暂无“TensorFlow通过文件名/文件夹名获取标签,并加入队列的实现”评论...
更新日志
2024年11月08日
2024年11月08日
- 雨林唱片《赏》新曲+精选集SACD版[ISO][2.3G]
- 罗大佑与OK男女合唱团.1995-再会吧!素兰【音乐工厂】【WAV+CUE】
- 草蜢.1993-宝贝对不起(国)【宝丽金】【WAV+CUE】
- 杨培安.2009-抒·情(EP)【擎天娱乐】【WAV+CUE】
- 周慧敏《EndlessDream》[WAV+CUE]
- 彭芳《纯色角3》2007[WAV+CUE]
- 江志丰2008-今生为你[豪记][WAV+CUE]
- 罗大佑1994《恋曲2000》音乐工厂[WAV+CUE][1G]
- 群星《一首歌一个故事》赵英俊某些作品重唱企划[FLAC分轨][1G]
- 群星《网易云英文歌曲播放量TOP100》[MP3][1G]
- 方大同.2024-梦想家TheDreamer【赋音乐】【FLAC分轨】
- 李慧珍.2007-爱死了【华谊兄弟】【WAV+CUE】
- 王大文.2019-国际太空站【环球】【FLAC分轨】
- 群星《2022超好听的十倍音质网络歌曲(163)》U盘音乐[WAV分轨][1.1G]
- 童丽《啼笑姻缘》头版限量编号24K金碟[低速原抓WAV+CUE][1.1G]