一般我们比较熟悉图片分类的神经网络,例如GoogLeNet, VGG等,这些网络是对图片进行编码然后对图片进行分类,而骨骼节点的人体行为识别是对人体骨骼序列进行编码进行分类,人体骨骼序列是从视频中提取中骨骼节点,这可以通过算法实现。
在图像分类中,图片可以被表示为(N,C,H,W),其中N是批量大小,C是通道数,H和W是图片的高和宽,在最初的输入中C=3,三个通道分别为RGB的大小。在基于骨骼节点的行为识别中,表示方法与图像分类类似,每一个骨骼节点序列可以被表示为(N,C,T,V),其中N仍然为批量大小,C还是通道数,最后两个纬度有所不同,T是这个节点序列的帧数,V为人体的节点数,每一个数据集一个人的节点是不一样的,例如常用的NTU RGB+D数据集,其一个人骨骼节点数为25,即V=25,而且在输入时序列的帧数也是被固定的,例如被固定为300帧,即T=300,一般采用抽样、重复、裁剪的方法固定帧数。最初输入时,C为3,表示每一帧中每个节点的三维坐标。因为人体节点在每一帧中连起来是数据结构中的图,所以可以采用图卷积来提取特征,在帧与帧之间相同的节点被连接,这还是比较规则的,所以可以用一维卷积提取时间特征,骨骼节点序列以及帧内和帧间连接如图1所示。
图1 骨骼节点帧内和帧间连接示意图
基于图卷积神经网络(GCN)的骨骼节点行为识别会采用空间特征提取模块和时间特征提取模块交替提取时空特征,空间提取模块是图卷积操作,时间提取模块是一维卷积操作,大部分工作都采用这种模块,采用这些模块对特征提取之后和图像分类一样进行池化然后映射到每一类的概率,最后完成动作的分类。
图卷积会在以后的博客中讲解,入门基于图卷积的骨骼节点行为识别可以先看2018年发表在AAAI的一篇论文,文中提出了ST-GCN,首次将图卷积神经网络应用在人体骨骼节点行为识别中,是开山之作。网上有好多文章讲解ST-GCN,大家可以看一下,以后我也会更新讲解该文章,找不到文章的同学可以私聊我,欢迎大家一起讨论学习。