【视频行为识别2】3D Convolutional Neural Networks for Human Action Recognition(2010年)3D卷积神经网络在人体动作识别中的应用

PS:应该是最早在行为识别中使用3D卷积。

3D Convolutional Neural Networks for Human Action Recognition

一个卷积map的某一位置的值是通过卷积上一层的三个连续的帧的同一个位置的局部感受野得到的。

3D CNN架构包含一个硬连线hardwired层、3个卷积层、2个下采样层和一个全连接层。每个3D卷积核卷积的立方体是连续7帧,每帧patch大小是60x40;

1)应用了一个固定的hardwired的核去对原始的帧进行处理,产生多个通道的信息,然后对多个通道分别处理。最后再将所有通道的信息组合起来得到最终的特征描述。这个实线层实际上是编码了我们对特征的先验知识,这比随机初始化性能要好。

2)每帧提取五个通道的信息,分别是:灰度、xy方向的梯度,xy方向的光流。其中,前面三个都可以每帧都计算。然后水平和垂直方向的光流场需要两个连续帧才确定。所以是7x3 + (7-1)x2=33个特征maps。

 

3) 然后用一个7x7x3的3D卷积核(7x7在空间,3是时间维)在五个通道的每一个通道分别进行卷积(这里是每个通道单独处理,处理完再叠在一起)。为了增加特征map的个数(实际上就是提取不同的特征),我们在每一个位置都采用两个不同的卷积核,这样在C2层的两个特征maps组中,每组都包含23个特征maps。23是(7-3+1)x3+(6-3+1)x2前面那个是:七个连续帧,其灰度、x和y方向的梯度这三个通道都分别有7帧,然后水平和垂直方向的光流场都只有6帧。54x34是(60-7+1)x(40-7+1)。

4)maxpooling:这里跟2D的CNN一样,只改变map空间尺寸,通道信息不会改变。

5)C6层:C6层包含有128个特征map,每个特征图由S5层中所有78(13x6)个特征图全连接计算得到,每个特征map尺寸为1x1,也就是一个值了,而这个就是最终的特征向量了,共128维,维度数等于需要分类的类别数量。

 

 

猜你喜欢

转载自blog.csdn.net/chen1234520nnn/article/details/104863797