gpt4 book ai didi

caffe - 将 Caffe train.txt 转换为 Tensorflow

转载 作者:行者123 更新时间:2023-12-01 13:47:55 26 4
gpt4 key购买 nike

我正在尝试使我的 Caffe 代码适应 tensorflow。我想知道将我的 train.txt 和 test.txt 转换为适用于 tensorflow 的最佳方法是什么。

在我的 train.txt 中,文件如下所示:

/folder/filename1.jpg 1

/folder/filename2.jpg 2
...

第一列是图像名称,第二列是类标签

谢谢!!

最佳答案

我假设您想要获得一批具有数字标签的大小相同的图像。我们将使用 tf.decode_csv() 解析文本, tf.read_file() 将 JPEG 数据作为字符串加载, tf.image.decode_jpeg() 将其解析为密集张量,最后 tf.train.batch() 将解析后的数据构建成一批图像。其中许多功能都有很多配置选项,因此请参阅文档以获取更多自定义详细信息。

# Set options here for whether to repeat, etc.
filename_producer = tf.string_input_producer(["train.txt"], ...)

# Read lines from the file, one at a time.
line_reader = tf.TextLineReader()
next_line = line_reader.read(filename_producer)

# Parse line into a filename and an integer label.
image_filename, label = tf.decode_csv(
next_line, [tf.constant([], dtype=tf.string), tf.constant([], dtype=tf.int32)],
field_delim=" ")

# Read the image as a string.
image_bytes = tf.read_file(image_filename)

# Convert the image into a 3-D tensor (height x width x channels).
image_tensor = tf.image.decode_jpeg(image_bytes, ...)

# OPTIONAL: Resize your image to a standard size if they are not already.
HEIGHT = ...
WIDTH = ...
image_tensor = tf.image.resize_image_with_crop_or_pad(image_tensor, HEIGHT, WIDTH)

# Create a batch of images.
BATCH_SIZE = 32
images, labels = tf.train.batch([image_tensor, label], BATCH_SIZE, ...)

# [...build the rest of your model...]

此示例广泛使用 TensorFlow 预取来加载示例。 TensorFlow 文档有一个 how-to that explains how to use the prefetching feature ,但最需要注意的是,您必须调用 tf.train.start_queue_runners()在 session 开始时开始预取:
sess = tf.Session()

# You must execute this statement to begin prefetching data.
tf.train.start_queue_runners(sess)

关于caffe - 将 Caffe train.txt 转换为 Tensorflow,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34366798/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com