短视频的动作识别方法及系统与流程

文档序号:30226867发布日期:2022-06-01 01:54阅读:242来源:国知局
短视频的动作识别方法及系统与流程
短视频的动作识别方法及系统
1.及图像识别领域,尤其涉及一种短视频的动作识别方法及系统、介质及设备。


背景技术:

2.随着移动摄像机的发展,用短视频记录我们的日常生活已经成为一种引人注目的趋势。这些短视频包含大量的信息,如何使移动设备能够有效地识别视频中的人体动作是当前研究的重要课题。在现实场景中,经常存在许多不可控的因素,例如灯光、阴影和相机角度的变化,这会极大地限制人体动作识别的应用。要识别视频中的人体动作,不仅要考虑单个帧图像,还要考虑视频连续帧之间的其他关系。
3.目前,在图像识别领域,人体动作识别算法主要分为传统的特征提取方法和基于深度学习的方法。传统的人体行为识别方法又分为两类:基于人体运动信息的特征提取方法和基于时空点的特征提取方法。基于人体运动信息的特征提取方法主要使用运动能量图像和运动历史图像来解释一系列图像中的人的运动。例如从人体深度图像中收集节点的三维坐标,并将这些节点形成的人体轮廓作为行为识别的特征。基于时空兴趣点的特征提取方法主要通过在三维时空中进行高斯模糊和局部角点提取,得到时空兴趣点,并对时空兴趣点进行像素直方图统计,最终形成描述动作的特征向量。基于深度学习的方法包括很多深度学习模型,如alexnet、googlenet、resnet、cnn、yolo和ssd等。然而,以上方法在人体动作识别中仍然存在许多问题,如区别相似人体动作、识别人与人之间交互动作的精度不高,同时需要对大量视频数据进行手工标注。


技术实现要素:

4.为克服相关技术中存在的问题,本文提供短视频的动作识别方法及系统、介质及设备,基于改进的卷积神经网络模型不仅可以识别单人行为,还可以识别两人交互行为,提高了相似行为的识别精度,同时避免了对大量视频数据进行手工标注。
5.根据本文的第一方面,提供一种短视频的动作识别方法,包括:获取一段人体运动图像;将所述人体运动图像输入到第一网络模型训练得到第一数据流;利用卡尔曼滤波器提取所述人体运动图像得到带有注释信息的rgb帧;将所述rgb帧输入到第二网络模型训练得到第二数据流;将所述第一数据流和所述第二数据流融合确定目标人体动作类型。
6.基于前述方案,所述将所述人体运动图像输入到第一网络模型训练之前,还包括以连续帧的形式提取人体运动图像生成视频运动块。
7.基于前述方案,所述第一网络模型包括深度卷积神经网络vgg-16网络;所述第二网络模型包括深度卷积神经网络vgg-16网络、区域建议网络rpn、兴趣区域池roi层和分类层。
8.基于前述方案,所述将所述人体运动图像输入到第一网络模型训练得到第一数据流,包括:将所述视频运动块组成数据集,所述数据集输入到所述深度卷积神经网络vgg-16网络得到所述第一数据流。
9.基于前述方案,所述将所述rgb帧输入到第二网络模型训练得到第二数据流,包
括:将所述rgb帧输入到所述深度卷积神经网络vgg-16网络训练、并将训练结果作为所述区域建议网络rpn的输入、将rpn的输出结果作为兴趣区域池roi层的输入,将所述兴趣区域池roi层的输出结果输入到所述分类层以得到所述第二数据流。
10.基于前述方案,所述将所述第一数据流和所述第二数据流融合确定目标人体动作类型,包括:利用softmax分类器分别生成所述第一数据流和所述第二数据流生成概率分数,与最高分数相对应的动作类型确定为所述目标人体动作类型。
11.根据本文的另一方面,提供一种短视频的动作识别系统,包括:获取单元,用于获取一段人体运动图像;第一生成单元,用于将所述人体运动图像输入到第一网络模型训练得到第一数据流;提取单元,用于利用卡尔曼滤波器提取所述人体运动图像得到带有注释信息的rgb帧;第二生成单元,用于将所述rgb帧输入到第二网络模型训练得到第二数据流;融合单元,用于将所述第一数据流和所述第二数据流融合确定目标人体动作类型。
12.根据本文的另一方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被执行时实现短视频的动作识别方法的步骤。
13.根据本文的另一方面,提供一种计算机设备,包括处理器、存储器和存储于所述存储器上的计算机程序,所述处理器执行所述计算机程序时实现短视频的动作识别方法的步骤。
14.本文基于改进的卷积神经网络模型实现,该模型主要包括两个部分,第一网络模型和第二网络模型。首先,获取一段人体运动图像;将所述人体运动图像输入到第一网络模型训练得到第一数据流;利用卡尔曼滤波器提取所述人体运动图像得到带有注释信息的rgb帧;将所述rgb帧输入到第二网络模型训练得到第二数据流;将所述第一数据流和所述第二数据流融合确定目标人体动作类型。该方法不仅可以识别单人行为,还可以识别两人交互行为,提高了相似行为的识别精度,同时用卡尔曼滤波处理图像可替代对大量数据的手工标注,大大提升了图像的标注效率。
15.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本文。
附图说明
16.构成本文的一部分的附图用来提供对本文的进一步理解,本文的示意性实施例及其说明用于解释本文,并不构成对本文的不当限定。在附图中:
17.图1是根据一示例性实施例示出的短视频的动作识别方法的流程图。
18.图2是根据一示例性实施例示出的第二网络模型的结构框图。
19.图3是根据一示例性实施例示出的短视频的动作识别系统的框图。
20.图4是根据一示例性实施例示出的动作识别设备的框图。
具体实施方式
21.为使本文实施例的目的、技术方案和优点更加清楚,下面将结合本文实施例中的附图,对本文实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本文一部分实施例,而不是全部的实施例。基于本文中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本文保护的范围。需要说明的是,在不
冲突的情况下,本文中的实施例及实施例中的特征可以相互任意组合。
22.除非上下文明确要求,否则整个说明书和权利要求书中的“包括”、“包含”等类似词语应当解释为包含的含义而不是排他或穷举的含义;也就是说,是“包括但不限于”的含义。
23.在本发明公开的描述中,需要理解的是,术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性。此外,在本发明公开的描述中,除非另有说明,“多个”的含义是两个或两个以上。
24.本文提供一种短视频的动作识别方法及系统,其实现基于改进的卷积神经网络模型,通过该模型不仅可以识别单人行为,还可以识别两人交互行为,提高了相似行为的识别精度。
25.图1是根据一示例性实施例示出的一种短视频的动作识别方法的流程图。参考图1,动作识别方法至少包括:
26.步骤101:获取一段人体运动图像;
27.具体地说,从原始视频帧中提取人体运动图像,以连续帧的形式提取人体运动图像生成视频运动块。可以是每连续10帧视频提取人体运动图像生成人体运动图像的视频运动块,然后将人体运动图像的视频运动块组织成数据集,输入到深度卷积神经网络vgg-16网络。
28.步骤102:将所述人体运动图像输入到第一网络模型训练得到第一数据流;
29.具体地说,第一网络模型包括深度卷积神经网络vgg-16网络;该深度卷积神经网络vgg-16网络代表了一种具有优越识别能力的深度卷积神经网络。该网络模型分为六部分,前五部分表示卷积网络,最后一部分是全连接网络。输入图像的大小调整为224
×
224像素。对于所有卷积层,卷积核的大小都设置为3
×
3。
30.第一部分由两个conv3

64层和一个maxpool层组成。在该部分中,图像大小从224
×
224变为224
×
224
×
64,这可视为第二部分的输入。第二部分与第一部分类似,由两个conv3

128层和一个maxpool层组成。在这一部分中,图像的大小调整为56
×
56
×
128。第三部分由三个conv3

256层和一个maxpool层组成。在这一部分中,图像大小从56
×
56
×
128变为28
×
28
×
256。与第三部分类似,第四部分由三个conv3

512层和一个maxpool层组成。在这一部分中,图像大小从28
×
28
×
256变为14
×
14
×
512。第五部分的输出被转换成一个由7
×7×
512=25088个参数组成的一维向量,然后发送到两个完全连接的层,这两个层有4096个神经元和一个丢失层。使用由1000个神经元组成的全连接层和softmax层来处理分类输出概率。通过分类输出得到第一数据流。
31.需要说明的是,一般先对深度卷积神经网络vgg-16网络进行训练。具体地,从原始视频帧中提取人体运动图像生成视频运动块,然后将该视频运动块组织成数据集,用于训练深度卷积神经网络vgg-16网络。然后将原始视频帧中的视频运动块组成的数据集,馈送到经过训练的vgg16网络输入进行判断,输出第一数据流。
32.视频运动块一般通过图像亮度来表示目标运动,具体计算每个像素值的变化时间。假设τ表示人体的移动时间,δ表示衰减参数。当τ太小时,部分运动信息丢失。另一方面,当τ太大时,像素强度无法准确确定,因此很难判断运动方向。
33.视频运动块的强度值h
τ
(x,y,t),由式(1)定义:
[0034][0035]
更新函数φ由帧间差分法定义,由式(2)、式(3)定义:
[0036][0037]
d(x,y,t)=|i(x,y,t)-i(x,y,t
±
δ)|
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
式(3)
[0038]
ξ是人为设置的差分阈值。假设i(x,y,t)定义在图像帧t中一个像素坐标(x,y)的强度值,δ代表图像帧间距离。当ξ变大时,ξ会导致图像中心区域出现空洞。
[0039]
步骤103:利用卡尔曼滤波器提取所述人体运动图像得到带有注释信息的rgb帧;
[0040]
具体地说,卡尔曼滤波是一种最优线性递归滤波方法,在解决人体图像跟踪问题时非常有效。在本文中,使用卡尔曼滤波器在原始视频帧的每一帧中用最小矩形框标注目标人体运动图像,然后将获得的矩形框坐标信息用于训练深度卷积神经网络vgg-16网络。用卡尔曼滤波处理图像可替代对大量数据的手工标注,大大提升了图像的标注效率。
[0041]
卡尔曼滤波器是基于状态方程和测量方程的,它使用递归方法来预测线性系统的变化。状态方程和测量方程分别由式(4)、式(5)定义:
[0042]
xk=a
k,k-1
x
k-1

k-1
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
式(4)
[0043]
zk=hkzk+ηkꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
式(5)
[0044]
其中xk定义为时刻k的状态,zk定义为时刻k的测量值,a
k,k-1
x
k-1
为状态转移矩阵,hk是测量矩阵,ξk是系统噪声,ξk∈n(0,qk);此外,ηk为测量噪声,ηk∈n(0,rk);最后,qk和rk分别是ξ和η的方差。卡尔曼滤波可以概括为状态预测和状态校正的过程。
[0045]
状态预测方程由式(6)给出:
[0046][0047]
误差协方差预测方程由式(7)给出:
[0048][0049]
卡尔曼滤波器增益定义由式(8)如下:
[0050][0051]
状态校正方程由下式给出:
[0052][0053]
误差协方差校正矩阵由下式给出:
[0054]
pk=p
k,k-1-k
khk
p
k,k-1
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
式(10)
[0055]
状态预测方程基于式(4)和状态预测向量获得;误差协方差预测向量p
k,k-1
通过式(7)获得。状态校正方程基于式(5)给出的测量方程,并校正状态预测向量,确定向量并计算最小误差协方差矩阵。
[0056]
本领域技术人员可以理解,卡尔曼滤波检测方法是本领域的常规的检测方法。首先,设置初始参数并读取原始视频序列。接下来,执行图像背景估计以生成初始背景图像。然后,依次读取该原始视频序列,并使用初始背景图像的背景和当前帧上的数据获得当前
图像帧中的前景目标,当前图像帧上的数据表示卡尔曼滤波算法基于前一帧数据获得的估计;然后,检测目标人体运动图像。最后,目标人体运动图像的坐标被保存为神经网络训练的输入。
[0057]
本文中,通过卡尔曼滤波提取所述人体运动图像得到带有注释信息的rgb帧;该注释信息可以是人体运动图像帧的边框坐标。
[0058]
步骤104:将所述rgb帧输入到第二网络模型训练得到第二数据流;
[0059]
具体地说,该第二网络模型20包括深度卷积神经网络vgg-16网络201、区域建议网络rpn202、兴趣区域池roi层203和分类层204。图2示出了第二网络模型20的结构框图。
[0060]
需要说明的是,所述深度卷积神经网络vgg-16网络与第一网络模型中的vgg-16结构相同。
[0061]
将步骤103中带有注释信息的rgb帧输入到该深度卷积神经网络vgg-16网络、并将输出结果作为所述区域建议网络rpn的输入、将rpn的输出结果作为兴趣区域池roi层的输入,将所述兴趣区域池roi层的输出结果输入到所述分类层以得到所述第二数据流。
[0062]
值得一提的是,在本文中深度卷积神经网络vgg-16网络的第五部分的输出表示rpn输入。传统的区域建议生成方法,例如滑动窗口方法和r-cnn中的选择性搜索方法耗时大,本文中使用rpn生成区域建议,可以大大减少了运行时间。
[0063]
首先将3
×
3滑动窗口滑入原始图像,将当前3
×
3区域的中心点映射回原始图像。因此,每个像素对应于九个锚。锚映射回原始图像的公式可以表示为:
[0064]
(x,y)=(s
x'
,s
y'
)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
式(11)
[0065]
其中s代表卷积神经网络的最终产物,x和y代表原始图像上的坐标,x'和y'代表特征地图上的坐标。
[0066]
然后,锚被送入两个平行的完全连接的层,盒回归层和盒分类层。盒回归层用于调整候选盒的位置,盒分类层用于区分锚定对象是否为目标。最后,这些建议被保存下来,用于兴趣区域池roi池。
[0067]
假设roi坐标为(x0,y0,x1,y1),输入大小为(y
1-y0)
×
(x
1-x0)。然后,当输出大小为hp
×
wp时,roi的内核滑动的大小定义为:
[0068]ks
=(y
1-y0)/h
p
×
(x
1-x0)/w
p
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
式(12)
[0069]
在roi池层之后,提取图像特征图作为分类输入。全连通层和软最大层用于判断目标图像所属的人体动作,然后确定该人体动作概率。同时,采用包围盒回归方法,使检测到的目标盒更加准确。
[0070]
步骤105:将所述第一数据流和所述第二数据流融合确定目标人体动作类型。
[0071]
具体地说,在本文中,使用softmax分类器生成的概率分数来融合第一数据流和第二数据流。
[0072]
需要说明的是,本领域技术人员可以理解,实际应用中,softmax分类器通常用于解决多分类问题,其定义如下:
[0073][0074]
ac=max[m,r]
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
式(14)
[0075]
softmax分类器p(
·
)的输出是标准化分类概率,因此p(
·
)值高达1。在式(13)中,
θ表示多个输入。最后选择输出节点时,选择概率最高的节点作为预测目标。在本文中,m分数表示第一网络模型输出第一数据流的softmax概率,r分数表示第二网络模型输出第二数据流的softmax概率。m分数和r分数的融合结果可由式(14)表示。与最高分数相对应的动作类型被确定目标人体动作类型。动作类型可以是步行、慢跑、跑步、拳击、挥手和鼓掌等。
[0076]
图3是根据一示例性实施例,示出的一种短视频的动作识别系统30。所述系统30包括:
[0077]
获取单元301,用于获取一段人体运动图像;
[0078]
第一生成单元302,用于将所述人体运动图像输入到第一网络模型训练得到第一数据流;
[0079]
提取单元303,用于利用卡尔曼滤波器提取所述人体运动图像得到带有注释信息的rgb帧;
[0080]
第二生成单元304,用于将所述rgb帧输入到第二网络模型训练得到第二数据流;
[0081]
融合单元305,用于将所述第一数据流和所述第二数据流融合确定目标人体动作类型。
[0082]
不难发现,本实施方式为与第一实施方式相对应的系统实施例,本实施方式可与第一实施方式互相配合实施。第一实施方式中提到的相关技术细节在本实施方式中依然有效,为了减少重复,这里不再赘述。相应地,本实施方式中提到的相关技术细节也可应用在第一实施方式中。
[0083]
值得一提的是,本实施方式中所涉及到的各模块均为逻辑模块,在实际应用中,一个逻辑单元可以是一个物理单元,也可以是一个物理单元的一部分,还可以以多个物理单元的组合实现。此外,为了突出本发明的创新部分,本实施方式中并没有将与解决本发明所提出的技术问题关系不太密切的单元引入,但这并不表明本实施方式中不存在其它的单元。
[0084]
图4是根据一示例性实施例示出的一种用于计算机设备40的框图。参照图4,设备40包括处理器401,处理器的个数可以根据需要设置为一个或者多个。设备40还包括存储器402,用于存储可由处理器401的执行的指令,例如应用程序。存储器的个数可以根据需要设置一个或者多个。其存储的应用程序可以为一个或者多个。处理器401被配置为执行指令,以执行上述方法。
[0085]
存储器402可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序;存储数据区可存储选项列表等。此外,存储器402可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施方式中,存储器402可选包括相对于处理器401远程设置的存储器,这些远程存储器可以通过网络连接至外接设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0086]
本领域技术人员应明白,本文的实施例可提供为方法、装置(设备)、或计算机程序产品。因此,本文可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本文可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质上实施的计算机程序产品的形式。计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易
失性、可移除和不可移除介质,包括但不限于ram、rom、eeprom、闪存或其他存储器技术、cd-rom、数字多功能盘(dvd)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质等。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
[0087]
本文是参照根据本文实施例的方法、装置(设备)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0088]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能
[0089]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0090]
尽管已描述了本文的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本文范围的所有变更和修改。
[0091]
显然,本领域的技术人员可以对本文进行各种改动和变型而不脱离本文的精神和范围。这样,倘若本文的这些修改和变型属于本文权利要求及其等同技术的范围之内,则本文的意图也包含这些改动和变型在内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1