出什么问题了?
这里是github上的链接:
https://gist.github.com/moemous/5eeae0711002604d3c6f04a667cccea8
ValueError Traceback (most recent
call last)
<ipython-input-37-fd99ba55a36e> in <module>()
7 for i in range(epochs):
8 print('Starting run: {}'.format(i))
----> 9 wrapper.fit(x_train, y_train, epochs=1, batch_size=64)
10 accuracy["with_svm"].append(wrapper.evaluate(x_test, y_test))
11 accuracy["without_svm"].append(
3 frames
/usr/local/lib/python3.6/dist-packages/keras/engine/training_utils.py
in standardize_input_data(data, names, shapes, check_batch_axis,
exception_prefix)
136 ': expected ' + names[i] + ' to have
shape ' +
137 str(shape) + ' but got array with
shape ' +
--> 138 str(data_shape))
139 return data
140
ValueError: Error when checking input: expected conv2d_7_input to
have shape (256, 256, 1) but got array with shape (256, 256, 3)
答案 0 :(得分:0)
错误很明显,输入数据的形状与模型定义(第一个Conv2D层)中的输入形状不同,但是那又有什么问题呢?
您使用RGB图像,并且每种颜色都有3个不同的通道,因此模型中的输入形状应为input_shape=(256, 256, 3)
而不是input_shape=(256, 256, 1)
。
黑白图像只有一个通道,因此对于黑白图像,应使用input_shape=(256, 256, 1)
。
答案 1 :(得分:0)
将其重塑为(1,150,150,3)!
您应该以这种方式重塑喀拉拉邦。 (-1,150,150,1)和输入形状(150,150,1)。