如何在Keras中通过Conv2D传递图像序列?

时间:2018-11-26 20:24:10

标签: python keras

我有一个5张图像序列,我想依次通过CNN。单个输入的大小为:(5, width, height, channels),我想将序列中的每个图像传递到2D CNN,将所有5个输出连接到某一层,然后馈入LSTM。我的模型如下所示:

from keras.models import Model
from keras.layers import Dense, Input, LSTM, Flatten, Conv2D, MaxPooling2D

# Feed images in sequential order here
inputs = Input(shape=(128, 128, 3))
x = Conv2D(16, 3, activation='relu')(inputs)
x = MaxPooling2D((2, 2))(x)
...
# Concatenate sequence outputs here
x = LSTM(8)(x)
x = Flatten()(x)
outputs = Dense(5, activation='sigmoid')

model = Model(inputs=inputs, outputs=outputs)

最终,我想在网络中的某个点将所有5个输出连接在一起,并将它们提供给LSTM,但是我在弄清楚如何将图像序列提供给2D卷积层时遇到了麻烦。我已经研究了3D卷积层和ConvLSTM2D层,但是我想弄清楚如何用这种方法。

0 个答案:

没有答案