利用人体姿态估计的结果进行行为识别
相比较常见的行为识别,基于骨骼的视频分类或者行为识别可以减少更多的冗余信息。本文利用heatmap和pose联合预测。
1. 作者将14个关节点heatmaps整合成单通道heatmap如图b,对视频多帧进行spatial rank pooling,先将heatmap转化为特征向量,在信息融合一张特征向量图以代替整个视频的所有信息。
2.heatmap只能反映身体形状的的变化,忽略了肢体的运动,对于自遮挡等没有鲁棒性。因此利用人体姿态估计的结果poses,对齐横轴纵轴进行body guided sampling,得到两通道特征图。
3. 为了后期融合,将heatmap的特征图重复三次得到三通道,poses两通道加零值通道。分别输入到全连接层,融合分类结果。
首先介绍另一篇论文:Modeling Video Evolution For Action Recognition 【CVPR2015】
该论文主要是针对视频分类提出的视频建模方法,压缩视频信息量成一个向量u,多个视频得到多个u,再利用SVM分类。
对于原始独立各帧,不能充分反映各帧包含信息的时间相关性,所以先对原始帧处理x->v
pairwise linear rank 学习一个只包含参数u的线性函数
该函数的目的是对处理后的各帧v进行排序,参数u就表示vt和vt-1之间的信息。u包含整个视频的演化信息。
如何得到u:
对于的单个视频来说,有一个自然顺序约束vn>vn-1>...>v2>v1,基于RankSVM思想,将排序问题转化为分类问题
假设已知x1>x2>x3 ,即x1与x2相关x2与x3相关,训练样本x1-x2,x2-x3,x1-x3为正样本,x2-x1,x3-x2,x3-x1为负样本,训练出分类面。
处理Heatmap
利用以上介绍的方法分别对heatmap的行和列处理得到两个特征向量,拼接,按照时间顺序级联特征向量。
处理Poses
由于原始姿态关节点过于稀疏,所以我们根据人体结构对关节标签的顺序进行排序,并采用线性插值方法丰富人体肢体,本文每个肢体插入五个点。采样点个数=关节点个数14+肢体个数13*插值点个数5=79
作者将关节点的横纵坐标分开,得到两通道特征图。
基于poses的实现:对于提取出视频各帧姿态的坐标直接传入全连接层存疑,虽然双线性插值丰富关节点信息理论上没毛病,但对于小动作而言大部分关节点是不必要的,会被全连接层直接舍弃,难以学习。我在训练过程中遇到不拟合现象。建议改成全卷积网络。