我正在使用Tensorflow 2,使用来自tensorflow.keras.layers的Conv3d和Conv3dTranspose层。
如果我使用步幅为(2,2,2)的Conv3d,那么我将在所有维度上进行下采样。 如果我使用步幅为(2,2,2)的Conv3dTranspose,那么我会在所有维度上进行升采样。
我真正想做的是在2维上采样,而在3维上采样。
假设已经定义了过滤器和kernel_size,我知道我可以做到:
layer1 = Conv3DTranspose(filters, kernel_size, stride=(2,2,1))(an_input_tensor)
layer2 = layer1[0:-1:2]
但是这样做的运算量是我想要的两倍,然后抛出一半。我想知道是否有一种在单个层中定义此方法的好方法?