Tensorflow学习笔记之用TF读取csv文件的限制

本文探讨了使用TensorFlow读取CSV文件作为图像数据时遇到的单行长度限制问题。通过测试发现,可能的限制是单行单元数不超过32768。对比了使用TensorFlow队列和pandas的read_csv方法,后者虽然可以避免行限制,但可能导致内存压力。博主建议,对于大型图像文件,最好使用合适的图像格式存储并利用TensorFlow专门的图像读取方法。
摘要由CSDN通过智能技术生成

读csv文件是用 tensorflow 的函数。限制是只能一行一行读取。(不过这篇博文想探究的限制不是这个)

所以如果用csv文件读单通道的图像文件,每行存一张图即可。

由于对 tensorflow 队列读取csv文件的单行长度限制有疑问所以进行测试。

先用TF的队列方法读:

import tensorflow as tf
import numpy as np
import scipy.misc

#单通道图像存储的N行csv文件,一行长度是65536
filenames = ['test65536.csv']
filename_queue = tf.train.string_input_producer(filenames)
reader = tf.TextLineReader()
key,value = reader.read(filename_queue)
record_defaults = [[1.0] for col in range(65536)]
images = tf.decode_csv(value, record_defaults = record_defaults)
#注:images是list object
img = tf.reshape(images, [256,256])
print(img)
#输出是Tensor("Reshape:0", shape=(256, 256), dtype=float32)

with tf.Session() as sess:
    coord = tf.train.Coordinator()
    threads = tf.train.start_queue_runners(coord=coord)

    init = tf.global_variables_initializer()
    sess.run(init)

   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值