我正在尝试使用CNN构建眼睛注视预测网络,我知道如何训练CNN网络以获取完全连接的图层作为输出,但是要将我的预测输出与预期输出进行比较(输出大小=(No_of_images,宽度,Height)),我需要相同的大小,一种解决方案是在卷积后对卷积进行反卷积或上采样。我面临的问题是我有RGB图像,并且从CNN中获得了2D阵列输出,如何对这个阵列使用反卷积,因为来自keras的deconvoltion2D需要4d作为输入并输出4d(((No_of_images,width,Height ,过滤器)),这与我需要的有所不同。有人可以为我提供python代码或一些反卷积代码参考吗?
input_shape = (180, 320, 3)
model = Sequential()
model.add(Conv2D(64, kernel_size=3, activation='relu', input_shape=input_shape, data_format='channels_last'))
model.add(MaxPooling2D(pool_size=(2, 2), strides=(2, 2), data_format='channels_last'))
model.add(Deconvolution2D( 3, 2, border_mode='valid', input_shape=(89,159), data_format='channels_last'))
model.add(Deconvolution2D( 1, 1, subsample=(2, 2), border_mode='valid', data_format='channels_last'))
这是我的必备条件:
输入图像数组=(1200,180,320,3)
输出图像数组=(1200,180,320)