Я приспосабливаю пример свертки cifar10 к моей проблеме. Я хотел бы изменить ввод данных из дизайна, который каждый раз считывает изображения из файла в проект, который работает с уже установленным в памяти набором изображений. Оригинальная функция inputs()
выглядит следующим образом:
read_input = cifar10_input.read_cifar10(filename_queue)
reshaped_image = tf.cast(read_input.uint8image, tf.float32)
# Crop the central [height, width] of the image.
resized_image = tf.image.resize_image_with_crop_or_pad(reshaped_image,
width, height)
В исходной версии read_input
- тензор, содержащий одно изображение.
Я сохраняю все свои изображения в ОЗУ, поэтому вместо использования filename_queue
у меня есть один огромный images_tensor = tf.constant(images)
, где images_tensor.shape
есть (что-то, 32, 32, 3).
Мой вопрос очень-очень простой: как лучше всего применить некоторую функцию (tf.image.resize_image_with_crop_or_pad
в моем случае) ко всем элементам images_tensor
?
Итерация проблематична в тензорном потоке с ограниченными фрагментами (TensorFlow - индексирование тензоподобных тензоров). Есть ли решение для этого, используя только одну команду?