我正在尝试创建一个基于自动编码器的分割模型,如下所示:https ://i.stack.imgur.com/4F3Z0.png
据我所知,我没有添加任何步骤,也没有错过任何步骤。那怎么会呢,当我尝试将数据拟合到它时,它会抛出一个错误说:ValueError: Input 0 of layer conv2d is incompatible with the layer: expected axis -1 of input shape to have value 1 but received input with shape (None, 128, 128, 3)
我的代码看起来像这样:
img_input = Input(shape=input_shape)
x = img_input
# Encoder
# Block 1
# Block 2
# Block 3
# Decoder
# Deconv 1
# Deconv 2
x = Reshape((input_shape[0],input_shape[1], classes))(x)
x = Activation("softmax")(x)
model = Model(img_input, x)
return model
//Not posting all the code, I might hear I'm dumping code and asking help
拟合值,例如:
Auto_Encoder.fit(
np.array(x), # `x` is a python array
np.array(y), # `y` is a python array
...
以下是模型摘要:
Model: "model"
_________________________________________________________________
Layer (type) Output Shape Param #
=================================================================
input_1 (InputLayer) [(None, 128, 128, 1)] 0
_________________________________________________________________
conv2d (Conv2D) (None, 128, 128, 64) 640
_________________________________________________________________
batch_normalization (BatchNo (None, 128, 128, 64) 256
_________________________________________________________________
conv2d_1 (Conv2D) (None, 128, 128, 64) 36928
_________________________________________________________________
batch_normalization_1 (Batch (None, 128, 128, 64) 256
_________________________________________________________________
max_pooling2d (MaxPooling2D) (None, 64, 64, 64) 0
_________________________________________________________________
dropout (Dropout) (None, 64, 64, 64) 0
_________________________________________________________________
conv2d_2 (Conv2D) (None, 64, 64, 128) 73856
_________________________________________________________________
batch_normalization_2 (Batch (None, 64, 64, 128) 512
_________________________________________________________________
conv2d_3 (Conv2D) (None, 64, 64, 128) 147584
_________________________________________________________________
batch_normalization_3 (Batch (None, 64, 64, 128) 512
_________________________________________________________________
conv2d_4 (Conv2D) (None, 64, 64, 128) 147584
_________________________________________________________________
batch_normalization_4 (Batch (None, 64, 64, 128) 512
_________________________________________________________________
max_pooling2d_1 (MaxPooling2 (None, 32, 32, 128) 0
_________________________________________________________________
dropout_1 (Dropout) (None, 32, 32, 128) 0
_________________________________________________________________
conv2d_5 (Conv2D) (None, 32, 32, 256) 295168
_________________________________________________________________
batch_normalization_5 (Batch (None, 32, 32, 256) 1024
_________________________________________________________________
conv2d_6 (Conv2D) (None, 32, 32, 256) 590080
_________________________________________________________________
batch_normalization_6 (Batch (None, 32, 32, 256) 1024
_________________________________________________________________
conv2d_7 (Conv2D) (None, 32, 32, 256) 590080
_________________________________________________________________
batch_normalization_7 (Batch (None, 32, 32, 256) 1024
_________________________________________________________________
dropout_2 (Dropout) (None, 32, 32, 256) 0
_________________________________________________________________
up_sampling2d (UpSampling2D) (None, 64, 64, 256) 0
_________________________________________________________________
conv2d_8 (Conv2D) (None, 64, 64, 128) 295040
_________________________________________________________________
batch_normalization_8 (Batch (None, 64, 64, 128) 512
_________________________________________________________________
conv2d_9 (Conv2D) (None, 64, 64, 128) 147584
_________________________________________________________________
batch_normalization_9 (Batch (None, 64, 64, 128) 512
_________________________________________________________________
conv2d_10 (Conv2D) (None, 64, 64, 128) 147584
_________________________________________________________________
batch_normalization_10 (Batc (None, 64, 64, 128) 512
_________________________________________________________________
dropout_3 (Dropout) (None, 64, 64, 128) 0
_________________________________________________________________
up_sampling2d_1 (UpSampling2 (None, 128, 128, 128) 0
_________________________________________________________________
conv2d_11 (Conv2D) (None, 128, 128, 64) 73792
_________________________________________________________________
batch_normalization_11 (Batc (None, 128, 128, 64) 256
_________________________________________________________________
conv2d_12 (Conv2D) (None, 128, 128, 64) 36928
_________________________________________________________________
batch_normalization_12 (Batc (None, 128, 128, 64) 256
_________________________________________________________________
conv2d_13 (Conv2D) (None, 128, 128, 4) 2308
_________________________________________________________________
dropout_4 (Dropout) (None, 128, 128, 4) 0
_________________________________________________________________
reshape (Reshape) (None, 128, 128, 4) 0
_________________________________________________________________
activation (Activation) (None, 128, 128, 4) 0
=================================================================
Total params: 2,592,324
Trainable params: 2,588,740
Non-trainable params: 3,584