博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
tensorflow 中图像的读取
阅读量:5910 次
发布时间:2019-06-19

本文共 1567 字,大约阅读时间需要 5 分钟。

1. 使用gfile读入文件内容。输入的是String,输出3-D tensor。可惜的是输入不能是tensor

def decode_jpg(path):    r""" 读取jpg图像    :param path: full path    :return: A `Tensor` of type `float32`. 3-D with shape `[height, width, channels]`    """    image_raw_data = tf.gfile.FastGFile(path, "r").read()    image = tf.image.decode_jpeg(image_raw_data)    image = tf.image.convert_image_dtype(image, dtype=tf.float32)    return image

2. 使用WholeFileReader。输入的是queue。

image_reader = tf.WholeFileReader()data_queue = tf.train.string_input_producer([image_dir], shuffle=False)image_key, image_value = image_reader.read(data_queue) img = tf.image.decode_jpeg(image_value, channels=3)

3. 使用read_file。输入的是tensor,不是queue

image_value = tf.read_file(image_dir)img = tf.image.decode_jpeg(image_value, channels=3)

4. 一个错误:一个csv中每行保存图像的地址和label结果。最初的读入方法是:

data_queue = tf.train.string_input_producer([data_dir], shuffle=False)    reader = tf.TextLineReader(skip_header_lines=True)    key, value = reader.read(data_queue)    record_defaults = [[2], ['label'], [157], [81], ['Path']]    _, label, width, height, image_dir = tf.decode_csv(value, record_defaults, field_delim="\t")    image_dir = tf.string_join([image_folder_dir, image_dir])        img_reader = tf.WholeFileReader()    img_key,img_value = img_reader.reader(tf.train.string_input_producer([image_dir], shuffle=False)

因为当时没有发现read_file这种方法读取文件。所以先后使用了两次 string_input_producer。本以为第二次只传入一个image_dir,图像数据和label会一致。但是即使把shuffle设置为false, 图像和label也对不上了。

所以把后来的 WholeFileReader换成了tf.read_file(image_dir) 。这就可以了

 

转载于:https://www.cnblogs.com/yuetz/p/6708574.html

你可能感兴趣的文章
java并发多线程显式锁Condition条件简介分析与监视器 多线程下篇(四)
查看>>
iis7.5中做 handler配置
查看>>
如何实现多个异步同步执行?
查看>>
线程的定时器Timer
查看>>
spring异常
查看>>
复合文字
查看>>
Zabbix3.0基础教程之二:item、trigger、action、graph配置
查看>>
利用excel办公软件快速拼凑sql语句
查看>>
Python语音合成
查看>>
Hadoop学习笔记(1) ——菜鸟入门
查看>>
Twisted模块
查看>>
异常以及异常处理框架探析
查看>>
洛谷P2805 植物大战僵尸
查看>>
后缀数组专题
查看>>
一次因为文件名开头包含空格而导致FTP文件一直无法下载的悲剧!
查看>>
linux测试某进程占用oi、cpu、内存的使用情况
查看>>
jQery简单Tab选项卡效果
查看>>
Java Object类及其equals方法
查看>>
ICMP控制报文协议
查看>>
[摘录]为你的感情开个账户
查看>>