Я студент, который изучает глубокое обучение, классификацию с использованием тензорного потока.
У меня только один вопрос. Как я могу напечатать изображение карты объекта?
Мне удалось преобразовать данные тензорного типа в данные numpy.ndarray
.
LIKE THIS -> C8: Тензор ("C8: 0", shape = (0, 7, 7, 0), dtype = float32) преобразуется в ndarray. )
но я не могу показать эту карту объектов.
Первый способ: использование модуля matplotlib.pyplot
ep, temp_array, weight_1 = sess.run([tf.argmax(result, 1), c8, wfc1], feed_dict={X: ex, istraining.name: False, keep_prob: 1.0})
print(type(temp_array), temp_array.shape, "\n", temp_array[0, :, :, 0])
img = plt.imread(temp_array[0, :, :, 0])
plt.imshow(img)
plt.show()
Карта объектов находится в переменной temp_array. И это (тип ndarray) печатается как это изображение.
У меня есть сообщение об ошибке.
Traceback (most recent call last):
File "D:/3Laaaaab/DC/hand_recog_demo_1.py", line 352, in <module>
img = plt.imread(temp_array[0, :, :, 0])
File "c:\users\administrator\appdata\local\programs\python\python36\lib\site-packages\matplotlib\pyplot.py", line 2152, in imread
return matplotlib.image.imread(fname, format)
File "c:\users\administrator\appdata\local\programs\python\python36\lib\site-packages\matplotlib\image.py", line 1369, in imread
return handler(fname)
TypeError: Object does not appear to be an 8-bit string path or a Python file-like object
Второй способ: использование модуля cv2
ep, temp_array, weight_1 = sess.run([tf.argmax(result, 1), c8, wfc1], feed_dict={X: ex, istraining.name: False, keep_prob: 1.0})
print(type(temp_array), temp_array.shape, "\n", temp_array[0, :, :, 0])
cv2.imshow("windows", temp_array[0, :, :, 0])
cv2.waitKey(1)
Да, этот источник работает хорошо, но у меня есть одна проблема.
то есть полученное изображение слишком маленькое. Так что я не вижу этого.
как я могу отлично видеть карту объектов?