【发布时间】:2019-02-15 20:43:34
【问题描述】:
我用 keras 创建了简单的模型来理解裁剪层
def other_model():
x = keras.Input(shape = (64,64,3))
conv = keras.layers.Conv2D(5, 2)(x)
crop = keras.layers.Cropping2D(cropping = 32)(conv)
model = keras.Model(x,crop)
model.summary()
return model
但我得到以下摘要
层(类型)输出形状参数#
input_12 (InputLayer) (None, 64, 64, 3) 0
conv2d_21 (Conv2D) (无, 63, 63, 5) 65
cropping2d_13 (Cropping2D) (无, 0, 0, 5) 0
总参数:65 可训练参数:65 不可训练参数:0
为什么 Cropping2D 的第 1 维和第 2 维都为零? 他们应该是 32 岁
【问题讨论】:
-
好的。实现它的一种方法是在裁剪层定义中使用 2 个元组:cropping = keras.layers.Cropping2D(cropping = ((15,32),(15,32)))(conv)。但我只想为此使用一个整数
-
但我仍然无法获得 32x32 尺寸,我只能获得更小的尺寸
-
如果您选择cropping = (a,b),那么您的图像将被左右两侧的a 值和顶部和底部的b 值截断。 2a 和 2b 总结
标签: neural-network conv-neural-network