【发布时间】:2016-10-18 00:38:21
【问题描述】:
我想手动将 RGB 图像转换为灰度图像,而无需在 tensorflow 中使用库。所以我写了以下...
import tensorflow as tf
import matplotlib.image as mpimg
import matplotlib.pyplot as plt
# First, load the image again
filename = "MarshOrchid.jpg"
raw_image_data = mpimg.imread(filename)
image = tf.placeholder("float", [None, None, 3])
slice = tf.slice(image,[0,0,0],[-1,-1,1])
with tf.Session() as session:
result = session.run(slice, feed_dict={image: raw_image_data})
plt.imshow(result)
plt.show()
我提取了图像的第一个通道进行转换。 但这会在使用 imread 语句时产生错误
TypeError: Invalid dimensions for image data
我该怎么办?
【问题讨论】:
-
哪一行报错?
-
plt.imshow(result)
-
Shubham,你找到解决办法了吗?我在使用 imshow 显示图像时遇到了类似的问题
-
@Fiona 解决方案中的 np.squeeze() 帮助了我。
标签: python numpy rgb tensorflow grayscale