视频输入问题
传统的图像网络的输入数据格式input_shape =(batch, h, w, c)
,但对于视频输入(batch, number_frames, h, w, c)
。我们在keras建模的时候batch_size默认为input_shape[0],无法改变,同时keras.layers.Conv2d等层操作也是按照4维张量处理输入输入。
解决方案一:维度切片堆叠(不推荐)
在模型搭建的过程中,在number_frames维度进行堆叠,即在喂给keras.layers.Conv2d前将数据按number_frames维切片,输出后再进行堆叠。
for ii in range (input_shape[0]):
if ii==0:
coarse_out=coarse_model(videoclip_cropped[:,ii])
else:
coarse_out=concatenate([coarse_out,coarse_model(videoclip_cropped[:,ii])], axis