def model_EED():
_input = Input(shape=(None, None, 1), name='input')
Feature = Conv2D(filters=64, kernel_size=(3, 3), strides=(1, 1), padding='same', activation='relu')(_input)
Feature_out = Res_block()(Feature)
# Upsampling
Upsampling1 = Conv2D(filters=4, kernel_size=(1, 1), strides=(1, 1), padding='same', activation='relu')(Feature_out)
Upsampling2 = Conv2DTranspose(filters=4, kernel_size=(14, 14), strides=(2, 2),
padding='same', activation='relu')(Upsampling1)
Upsampling3 = Conv2D(filters=64, kernel_size=(1, 1), strides=(1, 1), padding='same', activation='relu')(Upsampling2)
# Mulyi-scale Reconstruction
Reslayer1 = Res_block()(Upsampling3)
Reslayer2 = Res_block()(Reslayer1)
# ***************//
Multi_scale1 = Conv2D(filters=16, kernel_size=(1, 1), strides=(1, 1), padding='same', activation='relu')(Reslayer2)
Multi_scale2a = Conv2D(filters=16, kernel_size=(1, 1), strides=(1, 1),
padding='same', activation='relu')(Multi_scale1)
Multi_scale2b = Conv2D(filters=16, kernel_size=(1, 3), strides=(1, 1),
padding='same', activation='relu')(Multi_scale1)
Multi_scale2b = Conv2D(filters=16, kernel_size=(3, 1), strides=(1, 1),
padding='same', activation='relu')(Multi_scale2b)
Multi_scale2c = Conv2D(filters=16, kernel_size=(1, 5), strides=(1, 1),
padding='same', activation='relu')(Multi_scale1)
Multi_scale2c = Conv2D(filters=16, kernel_size=(5, 1), strides=(1, 1),
padding='same', activation='relu')(Multi_scale2c)
Multi_scale2d = Conv2D(filters=16, kernel_size=(1, 7), strides=(1, 1),
padding='same', activation='relu')(Multi_scale1)
Multi_scale2d = Conv2D(filters=16, kernel_size=(7, 1), strides=(1, 1),
padding='same', activation='relu')(Multi_scale2d)
Multi_scale2 = concatenate(inputs=[Multi_scale2a, Multi_scale2b, Multi_scale2c, Multi_scale2d])
out = Conv2D(filters=1, kernel_size=(1, 1), strides=(1, 1), padding='same', activation='relu')(Multi_scale2)
model = Model(input=_input, output=out)
return model
评论列表
文章目录