Ранее я задавал этот вопрос, но после некоторого расследования проблемы, похоже, я просто пошел по неверному пути к тому, чего я пытаюсь достичь.Tensorflow - Динамическая нарезка изображений
Dynamic image cropping in Tensorflow
Я подумал, что это может быть лучший путь, чтобы попробовать. Но часть, которую я не могу понять, - это то, что я должен указать для параметра размера в операции среза. По сути, я пытаюсь добиться того, чтобы иметь возможность динамически решать, как обрезать изображение, а затем обрезать его, а затем продолжить с этими обрезанными изображениями в моем графике вычислений. Не стесняйтесь предлагать альтернативу, если это кажется неэффективным способом обойти это.
import numpy as np
import tensorflow as tf
img1 = np.random.random([400, 600, 3])
img2 = np.random.random([400, 600, 3])
img3 = np.random.random([400, 600, 3])
images = [img1, img2, img3]
img1_crop = [100, 100, 100, 100]
img2_crop = [200, 150, 100, 100]
img3_crop = [150, 200, 100, 100]
crop_values = [img1_crop, img2_crop, img3_crop]
x = tf.placeholder(tf.float32, shape=[None, 400, 600, 3])
i = tf.placeholder(tf.int32, shape=[None, 4])
y = tf.slice(x, i, size="Not sure what to put here")
# initialize
init = tf.global_variables_initializer()
sess = tf.Session()
sess.run(init)
# run
result = sess.run(y, feed_dict={x: images, i: crop_values})
print(result)
Это похоже на то, что мне нужно! Благодаря! Кстати, это похоже на строку, начинающуюся с «img = tf.placeholder» («был отключен в конце». Я почти уверен, что понял, как это должно закончиться, но подумал, что позволю вам отредактировать его, 0 – Beaker
D'oh. – saeta