Как преобразовать тензор в массив numpy при использовании Tensorflow с привязками Python?Как преобразовать тензор в массив numpy в TensorFlow?
58
A
ответ
37
Любой тензор возвращаемый Session.run
или eval
является массив NumPy.
>>> print(type(tf.Session().run(tf.constant([1,2,3]))))
<class 'numpy.ndarray'>
Или:
>>> sess = tf.InteractiveSession()
>>> print(type(tf.constant([1,2,3]).eval()))
<class 'numpy.ndarray'>
Или, что то же самое:
>>> sess = tf.Session()
>>> with sess.as_default():
>>> print(type(tf.constant([1,2,3]).eval()))
<class 'numpy.ndarray'>
51
Чтобы преобразовать обратно из тензора в массив numpy, вы можете просто запустить .eval()
на преобразованный тензор.
3
Вам нужно:
- закодировать тензор изображения в некотором формате (JPEG, PNG) в двоичный тензор
- оценки (выполнения) двоичный тензор в сеансе
- превратить бинарный файл в поток
- корма для PIL изображения
- (по желанию) displaythe изображение с Matplotlib
Код:
import tensorflow as tf
import matplotlib.pyplot as plt
import PIL
...
image_tensor = <your decoded image tensor>
jpeg_bin_tensor = tf.image.encode_jpeg(image_tensor)
with tf.Session() as sess:
# display encoded back to image data
jpeg_bin = sess.run(jpeg_bin_tensor)
jpeg_str = StringIO.StringIO(jpeg_bin)
jpeg_image = PIL.Image.open(jpeg_str)
plt.imshow(jpeg_image)
Это сработало для меня. Вы можете попробовать его в ноутбуке ipython. Только не забудьте добавить следующую строку:
%matplotlib inline
1
Может быть, вы можете попробовать этот метод:
import tensorflow as tf
W1 = tf.Variable(tf.random_uniform([1], -1.0, 1.0))
init = tf.global_variables_initializer()
sess = tf.Session()
sess.run(init)
array = W1.eval(sess)
print (array)
Смежные вопросы
- 1. Tensorflow: преобразовать тензор в массив numpy БЕЗ .eval() или sess.run()
- 2. Tensorflow преобразовать массив тензоров в один тензор
- 3. TensorFlow - NumPy подобный тензор индексации
- 4. Tensorflow: преобразовать тензор в массив numpy, а затем перейти в feed_dict
- 5. Невозможно преобразовать частично преобразованный тензор в TensorFlow
- 6. TensorFlow: Как оценивать тензор?
- 7. Как преобразовать CVPixelBufferRef в тензор
- 8. Увеличить тензор в tensorflow
- 9. тензор Своп осей в tensorflow
- 10. нарезка тензор с использованием индексов в Tensorflow
- 11. Tensorflow: Как преобразовать скалярный тензор в скалярную переменную в python?
- 12. Препроцессор тензор тензора в Numpy
- 13. Tensorflow: Как преобразовать тензор ранга 1 в ранг 2 тензора
- 14. Как разыменовать тензор типа _ref в TensorFlow?
- 15. tensorflow: преобразовать скалярный тензор в скалярный объект python в графе
- 16. эффективно заполняет тензор в numpy
- 17. Tensorflow: Как правильно восстановить тензор
- 18. Невозможно преобразовать частично известный тензор в TensorFlow/TFLearn
- 19. Tensorflow тензор Reshape
- 20. Batched 4D Тензор Tensorflow индексирование
- 21. Как понять термин «тензор» в TensorFlow?
- 22. TensorFlow - Тензор Reshape
- 23. TensorFlow: Оценка функции через тензор
- 24. тройной тензор продукт в numpy
- 25. Добавление информации в тензор в TensorFlow
- 26. TensorFlow: используя тензор для индексации другого тензора
- 27. преобразовать Numpy массив строк в массив Int
- 28. tensorflow - добавить тензор по имени
- 29. Все ли тензор в TensorFlow, включая операции?
- 30. Что означает тензор 4d в Tensorflow?
уточнить: yourtensor.eval() – vanilla