用于视频的keras的tensorflow后端

时间:2017-09-15 06:27:20

标签: python tensorflow keras

我正在使用带有 tensorflow后端的keras,我的数据是视频

所以现在我的数据维度有问题,我知道第一个频道用于theano,最后频道用于tf。我有问题在哪里放帧数

  1. 这是真的吗? (样本数量,帧数,img_rows,img_cols,频道) - 例如:(390,25,48,48,1)

  2. 或者这是真的吗? (样本数量,img_rows,img_cols,频道,帧数) - 例如:(360,48,48,1,25)

  3. 对于具有tf后端视频数据的keras,哪一个是正确的? 1或2
    非常感谢

1 个答案:

答案 0 :(得分:1)

Keras本身将其数据格式定义为channels_last。无需担心您是使用theano还是tensorflow。 (您可以在卷积层或文件<user>\.keras\keras.json的默认设置中)

更改此设置

但这主要适用于图像和其他卷积层:(img_row,img_cols,channels)

据我所知,视频没有预定义的格式。

  • 当您使用周期性图层时,您将拥有(batchSize,timeSteps,featuresPerStep)
  • 使用2D卷积时:(batchSize, rows, columns, channels)
  • 使用1D卷积时:(batchSize, length, channels)

有可能使用名为TimeDistributed的图层包装器,它允许非周期性图层在批量维度之后接收带有额外timeSteps维度的输入:(batchSize,timeSteps, ...other dimensions....) - 它将为每个时间步复制包装的图层。

因此,带有时间分布包装器的2D卷积层将输入为:(batchSize,timeSteps,rows,columns,channels)