paper-note:使用增强Motion-Vector实现Real-time人体行为识别

导言:经典的two-stream的人体行为识别均使用光流图作为temporal net的输入。光流计算量过大导致光流法速度慢,在应用中无法满足实时性。

这篇博客引用论文

Real-time Action Recognition with Enhanced Motion Vector CNNs——–Bowen Zhang, Limin Wang, Zhe Wang, Yu Qiao, Hanli Wang

MotionVector来替代optical flow可以极大的提升速度。MotionVector原本用于视频压缩,以便视频传输到指定端后解压。论文中使用MotionVector作为运动特征来使用。但是速度虽快,图片精度却低,与光流图的点状(像素)形式存在不同,运动向量图以块状block形式存在,因此图片不清楚,噪声多,势必带来识别准确率的下降。
该网络的核心思想是通过使用optical flow训练好的光流卷积神经网络OF-CNN指导motion-vectorCNN(时域卷积神经网络)MV-CNN的训练。该transfer knowledge思想来自于Hinton大神的一篇论文:

Distilling the knowledge in neural network

论文中使用了两种方法来防止精度过度下降。
1.使用Teacher Initialization进行初始化。即使用opticalflow的model进行初始化,再用motion vector进行fine-tune.
2.使用监督性transfer。即定义一种新的loss。该loss称之为Teacher superivision loss(TSL)。使用softmax loss 和TSL共同监督网络。
paper-note:使用增强Motion-Vector实现Real-time人体行为识别
TSL公式如下
paper-note:使用增强Motion-Vector实现Real-time人体行为识别
PT(i)代表optical flow在fc layer的值除以Temp,并经过softmax的输出。Ps(i)是MV-CNN的softmax输出(不用除以TEMP)。TEMP是来自于Hinton的论文,称之为temperature (to soften the next-to-last layer output)。

MV-CNN网络本身的LOSS,即普通的softmax:
paper-note:使用增强Motion-Vector实现Real-time人体行为识别
最终的LOSS为paper-note:使用增强Motion-Vector实现Real-time人体行为识别
其中w是权重,一般设置为4,Temp一般为w的一半,即2。

论文重点就这两个,其最终的结果是略次于two-stream的方法,比C3D强。