首页 > 解决方案 > 找到正确的输入形状以获得特定的输出形状

问题描述

我想在本文中使用的所谓 ST 层之后使用 EfficicentNet 模型( https://keras.io/api/applications/efficientnet/#efficientnetb0-function )( http://www.ee.iisc .ac.in/people/faculty/soma.biswas/Papers/jain_icgvip2016_alpr.pdf,参见表 4),以使用无分割方法识别车牌。因此,下面定义的 ST 层是我网络中的第一层,然后是 EfficientNetB0。EfficientNetB0 中的默认输入形状是(224, 224, 3). 因此,我现在正在 ST 层中寻找我的图像的输入形状,并希望x从形状中导出(x, x, 3)

我定义了这个模型:

def create_ST_layer(input_shape = (x, x, 3)):
    input_img = Input(shape=input_shape)
    model = Conv2D(48, kernel_size=(5, 5), input_shape = input_shape, strides = (1, 1))(input_img)
    model = Activation("relu") (model)
    model = MaxPooling2D(pool_size=(2, 2), strides = (2, 2))(model)
    model = Conv2D(32, kernel_size=(5, 5), strides = (1, 1))(model)
    model = Activation("relu") (model)
    model = MaxPooling2D(pool_size=(2, 2), strides = (2, 2))(model)
    model = Dense(50)(model)
    model = Activation("relu")(model)
    output = Dense(6)(model)
    output = Reshape((224, 224, 3))(output)
    model = Model(input_img, output)

    return model

我现在想找到(x, x, 3)input_shape 的值以获得(224, 224, 3). 你将如何进行?包括padding=sameConv2D层也可以。

标签: tensorflowkerasinputconv-neural-network

解决方案


推荐阅读