视频动作行为识别简述

        视觉行为识别是对已经分割好的视频片段进行动作行为分类,这类似于图像识别,图像识别是对给定的图像进行分类,判断该图像属于预定义类别集合中的哪个类别。相对图像分类来说,图像目标检测更复杂的多,目标检测不仅要对图像中的目标进行识别,同时还要对其进行定位。类似地,视频动作行为检测相比视频动作识别来说更复杂,一般输入的视频是未经分割好的,模型预测时输入的是一段包括一种或者多种动作行为的视频片段,模型需要自动定位和识别出对应的动作以及其在原输入视频段中的起始位置。视频动作行为检测又可分为离线检测和在线检测,一般研究更多的是离线动作行为识别。

        从视频输入源类别的不同,可以将基于视频的行为动作识别,分为基于RGB、深度图像、骨骼图像的动作行为识别。基于不同的数据源可能采取的具体模型与方法往往不同,当然有些方法是适用于多种视频源数据格式的。

        在模型和方法方面,主要介绍下基于深度学习技术的方法。深度学习采用深度神经网络自动提取视频特征并进行分类,一般采用的模型有基于卷积神经网络(1DCNN、2DCNN、3DCNN、图卷积GCN)、时序网络模型(时间卷积TCN、RNN、LSTM、GRU)。因为视频具有时空两个维度的特征,要想有效地视频动作行为进行有效识别,那么必须设计出能够有效捕捉视频空间特征和时间特征的神经网络算法。1DCNN可以有效捕捉1维信号的特征,可以将1维信号看作时序数据信息;2DCNN可以很好地捕捉2维空间特征,这已经在众多研究成果中得到了有效证实;3DCNN可以同时捕捉2D空间特征信息以及时序信息,3DCNN被证明在视频行为动作识别方面是有效地;时序网络模型可以较好地捕捉时间序列信号的时序特征信息;图卷积GCN可以有效捕捉图数据结构的特征。ConvLSTM网络融合了2D卷积和LSTM模型,具备同时捕捉时空信息的能力。

        基于RGB、深度图像的行为动作识别,一般结合CNN和LSTM网络;而基于骨骼图像的也可以使用传统的CNN+LSTM等,但是最近的研究表明GCN+TCN(LSTM等时序模型)将会取得更优异的成绩。为了取得更好的效果,多模型融合的策略将会比单个模型取得更好的表现,同时引入空间注意力或通道注意力或者同时使用二者也会提升动作行为识别的性能。

        目前为止,行为动作识别是对已经分割好的动作片段进行分类,但是现实生活中,输入的视频往往是未经分割的离线视频片段,甚至是在线视频,那么行为动作识别还不能满足实际应用场景的需要,因此视频行为动作检测自然成为了行为动作识别进一步研究的方向。思考下目标检测问题,早期的非深度学习方法,经典的行人检测,对于给定的图像,使用尺度和大小不同的滑动窗口在图片上进行滑动,对于每一个窗口内的图像块进行识别是否包括行人,最后对所有包含行人的滑动窗口进行处理(经典的非极大值抑制NMS方法),最终得到行人检测的结果。基于深度学习的目标检测开山之作RCNN系列的作品,其基本思想和传统的行人检测比较类似,产生可能包含目标的窗口,然后对每一个窗口的图像块进行识别,然后NMS算法进行后续处理,当然FAST-RCNN、FASTEST-RCNN相比RCNN有不少改进,但是基本思想还是一样的。YOLO系列,不同与RCNN系列,YOLO算法将原始图像分为若干个图像块,然后对每个图像块进行识别其可能包含的目标类别,同时给出置信度,最后将局部识别的信息进行整合,得到最终的目标检测信息,真正意义上对图像只处理(看)了一遍,效率相比RCNN得到了极大的提高。

        受此启发,视频动作行为检测问题,可以采用两种思想来做,基于RCNN和YOLO的思想。RCNN在于对原始视频段自动分割出可能包含动作的视频子片段,然后对每个子片段进行动作行为识别,最终将可能包含结果的子片段进一步整合(类似NMS),得到每个动作的起始位置和类别。基于YOLO的思想可以将视频段分为若干子视频段,识别每一个子视频片段,然后再对这些进行整合,得到最终结果。

        YOLO这个很久没看,当时也没真正搞懂,上面的这种理解其实是有偏差的。视频动作行为检测(定位),可以在在最近几年顶会和顶级期刊的论文,研究成果很多。早起RCNN出来后,有些人就是利用RCNN目标检测的思想进行视频动作行为检测,虽然视频动作检测计算量比图像目标检测大很多,但是基于RCNN的思想的视频动作行为检测确实理论上行的通,当然后期有更加优秀的方法,检测这方面我是没有研究的。

你可能感兴趣的:(学术研究和论文写作,人工智能,深度学习,神经网络,计算机视觉)