【发布时间】:2020-05-22 06:49:36
【问题描述】:
我正在尝试在我的 CNN 中使用我自己的 28x28 像素图像,但是当我尝试对其进行重塑时,我不断收到此错误:
x = x.reshape(1,28,28,1)
ValueError: cannot reshape array of size 2352 into shape (1,28,28,1)
我的图像是 28x28,但我无法将其更改为单个灰度通道。我一直在通过 anaconda 使用 spyder,每当我尝试将 opencv 安装到我的根环境中时,我都会收到“UnsatisfiableError”。 Pip安装也不起作用。 我想知道是否有人在不使用外部库而只使用 tensorflow 的情况下重塑我的图像。
我已经搜索了答案并尝试了建议的解决方案,但不幸的是它们都没有奏效。
提前致谢。
回复 AKX:
def Predict(imgPath):
x = plt.imread(imgPath)
x = x.reshape(1,28,28,1)
with graph.as_default():
out = model.predict(x)
return out
回复 Skander HR:
(28,28,3)
回复 Matias Valdenegro:
我的问题是 openCV 不工作。它已安装,但我尝试检查是否有任何代理服务器,安装 python3.dll 并尝试安装 microsoft mediafeaturepack 以消除错误,但这些都不起作用。 当我编写这样的程序时:
import cv2 as cv
print("done")
我收到错误消息:
import cv2 as cv
ImportError: DLL load failed: The specified module could not be found.
【问题讨论】:
-
这里的
x是什么?请向我们展示更多代码(例如,如何加载图像)。 -
您好,您能告诉我们您的图片是什么形状的吗? x.shape
-
RGB不能reshape为灰度图,需要进行颜色转换,可以使用OpenCV,具体问题请补充。
-
我已经通过编辑原帖回答了 3 个问题。感谢您的提问。
-
我建议尝试通过 anaconda 提示符使用 'pip' 卸载并重新安装 opencv。
标签: python tensorflow keras spyder