我正在阅读U-Net: Convolutional Networks for Biomedical Image Segmentation并希望在Keras中实现这一点。
在U-Net中,我需要连接卷积层,一个在收缩路径中,另一个在扩展路径中(图1. 1.在论文中)。
但是,它们的大小不匹配,所以我必须在连接之前调整卷积层的输出。
我如何在Keras做到这一点?
答案 0 :(得分:2)
Keras中有一个Cropping2D图层:https://keras.io/layers/convolutional/#cropping2d
...
conv_13 = Conv2D(64, (3, 3), padding='same', activation='relu')(conv_12) # has outputsize of 568x568
...
crop_13 = Cropping2D((392, 392))(conv_13) # crop 568x568 to 392x392 symmetrically
merge_91 = Concatenate()([crop_13, upsampled_81) # concatenate both layers with same 2D size
...
将第一个大小(568x568)连接到最后一个上采样大小(392x392)的示例。