一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

动作识别方法、装置、存储介质及电子设备与流程

2022-07-10 04:48:13 来源:中国专利 TAG:


1.本公开涉及信息技术领域,具体地,涉及一种动作识别方法、装置、存储介质及电子设备。


背景技术:

2.随着硬件算力的发展,人体动作识别在视频分类,人机交互等领域热度越来越高。其中基于人体骨骼点的视频动作识别成为了研究热点,其主要归功于骨骼点作为人体动作的一种紧凑表示,能够有效地过滤原始视频中的噪声。
3.然而相关技术中,基于人体骨骼点的视频动作识别技术由于人体骨骼点检测模型自带误差无法控制,误差会作为噪声累计进入到后面人体动作识别模型中,并且,由于用于动作识别模型训练的样本较少且不均衡,可能导致模型过拟合,使得动作识别的准确度较低。


技术实现要素:

4.为了解决相关技术中存在的问题,本公开提供一种动作识别方法、装置、存储介质及电子设备。
5.为了实现上述目的,本公开第一方面提供一种动作识别方法,所述方法包括:
6.获取目标视频片段;
7.将所述目标视频片段输入预先训练的骨骼点识别模型,得到对应所述目标视频的骨骼点热图;
8.将所述骨骼点热图输入多个预先训练的动作识别模型,得到多个识别结果,其中,各个所述动作识别模型的训练方法、模型结构以及采样频率至少有一者不同;
9.确定所述多个识别结果中置信度最高的识别结果为对应所述目标视频片段的目标动作类型。
10.可选地,所述多个预先训练的动作识别模型包括训练完成的第一残差模型,所述第一残差模型为resnet152模型,
11.所述方法包括:
12.获取包括预先标注动作类型的训练数据,所述训练数据包括多个视频片段对应的骨骼点热图;
13.将全量所述训练数据作为训练集输入未经训练的第一残差模型,得到第一识别结果;
14.根据所述识别结果调整该第一残差模型的参数,直至第一识别结果满足预设条件,得到训练完成的第一残差模型。
15.可选地,所述多个预先训练的动作识别模型包括训练完成的第二残差模型,所述第二残差模型包括残差块,以及与所述残差块连接的第一压缩激发块;
16.所述将所述骨骼点热图输入多个预先训练的动作识别模型,得到多个识别结果包
括:
17.将所述骨骼热点图输入所述第二残差模型的所述残差块,得到第一特征图;
18.将所述第一特征图输入所述第一压缩激发块,得到调整时域特征权重后的第二特征图;
19.根据所述骨骼热点图、所述第一特征图以及所述第二特征图,得到第二残差模型输出的识别结果。
20.可选地,所述第二残差模型还包括与所述残差块连接的第二压缩激发块;
21.所述将所述骨骼点热图分别输入多个预先训练的动作识别模型,得到多个识别结果包括:
22.将所述第一特征图输入所述第二压缩激发块,得到调整空间特征权重后的第三特征图;
23.根据所述骨骼热点图、所述第一特征图、所述第二特征图以及第三特征图,得到第二残差模型输出的识别结果。
24.可选地,所述方法还包括:
25.获取包括预先标注动作类型标签的训练数据,所述训练数据包括多个视频片段对应的骨骼点热图;
26.将所述训练数据输入未经训练的第二残差模型,得到该第二残差模型输出的第二识别结果;
27.对比所述第一识别结果与所述动作类型标签,调整时域特征权重控制值和/或空间特征权重控制值,直至所述第二识别结果满足预设条件,得到训练完成的第二残差模型。
28.可选地,所述动作识别模型包括第三残差模型,所述方法包括:
29.获取包括预先标注动作类型标签的训练数据,所述训练数据包括多个视频片段对应的骨骼点热图;
30.将所述训练数据按照预设比例划分为训练集以及验证集;
31.根据所述训练集,训练多个resnet152模型作为教师模型;
32.将所述验证集去除动作类型标签输入所述教师模型,得到动作类型标签更新后的预测集;
33.根据所述训练集以及所述预测集并基于蒸馏损失,训练未经训练的resnet50模型得到训练完成的第三残差模型。
34.可选地,所述动作识别模型包括第四残差模型,所述方法包括:
35.根据所述验证集以及所述教师模型,得到对应所述验证集的混淆矩阵;
36.将所述混淆矩阵的对角线置零,得到样本错分矩阵;
37.根据所述样本错分矩阵,计算得到各动作类别的错分比例;
38.根据所述错分比例、sigmoid函数以及哈达玛积,得到代价敏感矩阵;
39.基于所述代价敏感矩阵,得到混淆矩阵损失函数;
40.根据所述训练集以及所述预测集并基于所述混淆损失函数,训练未经训练的resnet50模型得到训练完成的第四残差模型。
41.本公开第二方面提供一种动作识别装置,所述装置包括:
42.获取模块,用于获取目标视频片段;
43.第一输入模块,用于将所述目标视频片段输入预先训练的骨骼点识别模型,得到对应所述目标视频的骨骼点热图;
44.第二输入模块,用于将所述骨骼点热图输入多个预先训练的动作识别模型,得到多个识别结果;
45.确定模块,用于按照预设算法对所述多个识别结果进行投票,确定与所述目标视频片段对应的动作类别。
46.本公开第三方面提供一种非临时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本公开第一方面中任一项所述方法的步骤。
47.本公开第四方面提供一种电子设备,包括:
48.存储器,其上存储有计算机程序;
49.处理器,用于执行所述存储器中的所述计算机程序,以实现本公开第一方面中任一项所述方法的步骤。
50.通过上述技术方案,通过骨骼点识别模型获取骨骼点热图,并将该骨骼点热图输入多个预先训练的不同结构、不同训练方式动作识别模型得到多个识别结果,并选取识别结果置信度最高的动作类型为目标视频片段对应的动作类型,结合了不同结构与训练方式得到多个不同的特征分布的模型,并将多个模型集成,得到最终结果,有效地克服了过拟合的影响,提高了动作识别的准确性。
51.本公开的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
52.附图是用来提供对本公开的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本公开,但并不构成对本公开的限制。在附图中:
53.图1是根据一示例性实施例示出的一种动作识别方法的流程图;
54.图2是根据一示例性实施例示出的一种第一残差模型的结构示意图;
55.图3是根据一示例性实施例示出的一种第二残差模型的结构示意图;
56.图4是根据一示例性实施例示出的另一种第二残差模型的结构示意图;
57.图5是根据一示例性实施例示出的一种第三残差模型训练方法的流程图;
58.图6是根据一示例性实施例示出的一种第三残差模型以及第四残差模型的训练方法的流程图;
59.图7是根据一示例性实施例示出的一种动作识别装置的框图;
60.图8是根据一示例性实施例示出的一种电子设备的框图;
61.图9是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
62.以下结合附图对本公开的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本公开,并不用于限制本公开。
63.图1是根据一示例性实施例示出的一种动作识别方法的流程图,其执行主体可以是终端,例如个人电脑、平板电脑、手机等电子设备,也可以是服务器,本公开对此不做限定,如图1所示,所述方法包括步骤:
64.s101、获取目标视频片段。
65.其中,目标视频片段可以是通过手机或者电脑或者摄像设备直接拍摄获取得到的,也可以是通过其他电子设备网络传输等方式获取的,本公开对此也不做限定。
66.s102、将所述目标视频片段输入预先训练的骨骼点识别模型,得到对应所述目标视频的骨骼点热图(heatmap)。
67.本领域技术人员应理解,骨骼点识别模型可以是二维人体关键点检测模型,通过二维人体关键点检测模型得到视频帧的关键点信息,之后将采样的视频帧的关键点信息通过公式转化为骨骼点热图,值得说明的是,该骨骼点热图是多个采样视频帧的具备时域通道的多维热图。针对任一帧骨骼点热图的尺寸可以是k*h*w,其中,k表示一个视频帧中骨骼点的个数,h表示该热图的高度,w表示该热图的宽度,该公式可以表示为:点的个数,h表示该热图的高度,w表示该热图的宽度,该公式可以表示为:ck表示第k个骨骼点的置信度,xk与yk分别代表第k个关键点的坐标值,σ控制热图中点的控制范围。最终,通过上述方式,得到对应该目标视频的骨骼点热图,该热图可以标识为k*h*w*t,该t表示该骨骼点识别模型的时域采样频率。
68.在一些可能的实施方式中,该骨骼点识别模型可以采用均匀采样策略,并在该骨骼点识别模型的训练过程中,可以对训练集中的图像带有姿势压缩、在线随机截取以及随机反转的操作,以提高该骨骼点识别模型的鲁棒性。
69.s103、将所述骨骼点热图输入多个预先训练的动作识别模型,得到多个识别结果,其中,各个所述动作识别模型的训练方法、模型结构以及采样频率至少有一者不同。
70.可以理解的是,动作识别模型输出的识别结果可以是对应该骨骼热点图进行动作识别输出的动作类型标签,用于表征该骨骼热点图中人物进行的是那种动作,例如可以是摔倒、摇头、握手等。
71.示例地,各个动作识别模型的模型深度可以是152、50或者101;在训练时,输入各个模型的骨骼点热图的采样频率可以是64或者128,该骨骼点热图的尺寸也可以不同;该动作识别模型可以包括resnet模型,也可以包括在基于resnet模型的resnextse模型等,各个动作识别模型采用的损失函数也可以不同,例如交叉熵损失(crossentropy)、蒸馏损失(distill-crossentropy)或者混淆矩阵损失(confusionmatrix-crossentropy)等。
72.可选地,每一所述动作识别模型在训练过程中,学习率均采用余弦退火(cosineannealing decay)的方案,初始值可以均为0.1,并采用学习率重启(restart)的策略,以提高该动作识别模型训练效果,提高准确度。
73.s104、确定所述多个识别结果中置信度最高的识别结果为对应所述目标视频片段的目标动作类型。
74.示例地,上述多个识别结果可以包括针对任一个动作识别模型,将该骨骼热点图多次输入,得到该动作识别模型多次输出的识别结果。进一步,可以根据预设投票算法对该识别模型多次输出的识别结果进行投票,根据投票结果得到该动作识别模型针对该骨骼点热图输出的置信度最高的识别结果。这样,同一模型进行多次识别,能够有效地降低了骨骼点噪声对模型的影响。
75.进一步,在每一动作识别模型执行完成上述步骤后,对每一动作识别模型输出的置信度最高的识别结果再次进行投票,得到多个动作识别模型输出的识别结果中置信度最
高的动作识别模型,以及该模型输出的识别结果,作为对应该目标视频片段的目标动作类型。其中,上述投票算法具体为何种算法本公开并不限定。
76.在本公开实施例中,通过骨骼点识别模型获取骨骼点热图,并将该骨骼点热图输入多个预先训练的不同结构、不同训练方式动作识别模型得到多个识别结果,并选取识别结果置信度最高的动作类型为目标视频片段对应的动作类型,结合了不同结构与训练方式得到多个不同的特征分布的模型,并将多个模型集成,得到最终结果,有效地克服了过拟合的影响,提高了动作识别的准确性。
77.在一些可选地实施例中,所述多个预先训练的动作识别模型包括训练完成的第一残差模型,所述第一残差模型为resnet152模型,
78.所述方法包括:
79.获取包括预先标注动作类型的训练数据,所述训练数据包括多个视频片段对应的骨骼点热图;
80.将全量所述训练数据作为训练集输入未经训练的第一残差模型,得到第一识别结果;
81.根据所述识别结果调整该第一残差模型的参数,直至第一识别结果满足预设条件,得到训练完成的第一残差模型。
82.其中,预设条件可以是损失值小于预设阈值,或者损失函数收敛,本公开对此该预设条件不作具体限定。
83.可选地,该第一残差模型的在训练时,输入该模型的骨骼点热图的采样频率可以是64,尺寸可以是28*56,可以不采用学习率重启(lr restart)的策略,损失函数可以采用交叉熵函数。
84.具体地,该第一残差模型的结构可以如图2所示,其中,该第一残差模型包括stem层、res2层、8个res3层、36个res4层、3个res5层、全局平均池化层(gap,global average pooling)层以及全连接层(fc,full connected),其中,stem层的包括1*72的卷积核,通道数为32,时间维度步长为1,空间维度步长为12;res3层包括1*12的卷积核,通道数为32,1*32的卷积核,通道数为32,1*12的卷积核,通道数为128;res4层包括3*12的卷积核,通道数为64,1*32的卷积核,通道数为64,1*12的卷积核,通道数为256;res5层包括3*12的卷积核,通道数为128,1*32的卷积核,通道数为128,1*12的卷积核,通道数为512。
85.若采样频率为64,输入的骨骼点热图宽高尺寸为28*56,骨骼点数量为32,即骨骼点热图尺寸k*t*h*w为32*64*56*28,通过stem层后,输出的特征图的尺寸为32*64*56*28,通过res2后,输出的特征图尺寸为32*64*56*28,通过res3后,输出的特征图尺寸为128*64*28*14,通过res4后,输出的特征图尺寸为256*64*14*7,通过res5后,输出的特征图尺寸为512*32*7*4,通过全局平均池化层以及全连接层后,输出的特征图尺寸为30。
86.在另一些可选地实施例中,所述多个预先训练的动作识别模型包括训练完成的第二残差模型,所述第二残差模型包括残差块,以及与所述残差块连接的第一压缩激发块(se block,squeeze and excitation block);
87.所述将所述骨骼点热图输入多个预先训练的动作识别模型,得到多个识别结果包括:
88.将所述骨骼热点图输入所述第二残差模型的所述残差块,得到第一特征图;
89.将所述第一特征图输入所述第一压缩激发块,得到调整时域特征权重后的第二特征图;
90.根据所述骨骼热点图、所述第一特征图以及所述第二特征图,得到第二残差模型输出的识别结果。
91.其中,残差块可以是resnet残差块,也可以是resnext残差块。本领域技术人员应理解,resnext是resnet的一种变体,通过对不同路径输出的进行相加合并,遵循“分割-转换-合并”的范式,相较于resnet有更强的表达能力。上述方案中,第二残差模型在残差模型的基础上,由于包括第一压缩激发块,根据残差块的类型,该模型可以表示为resnextse,或者resnetse模型。其中,第一压缩激发块用于显式的构建时域特征通道之间的相互依赖关系,来增强对识别任务作用大的时域特征,抑制对识别任务作用小或者影响识别的时域特征。
92.为了使得本领域技术人员更加理解本公开实施例提供的方案,本公开提供如图3所示的根据一示例性实施例示出的一种第二残差模型的结构示意图,如图3所示,该第二残差模型包括残差块,以及第一压缩激发块,该第一压缩激发块包括global pool层(即全局池化层),第一fc层(full connected层,全连接层),relu层,第二fc层以及sigmoid层。其中,残差块与该第一压缩激发块均输出至第一尺寸归一化层,其中,尺寸归一化层还可以表示为scale层。
93.基于上述结构,能够得到下方所示公式:
[0094][0095][0096][0097]
其中,σ表示relu函数,w1、w2分别代表两个全连接层的权重,为残差块的输出,结合全局平均池化输出得到w
t
,将和w
t
按通道相乘即可得到最终结果,即f
scale-time
。另外,不同于原始的压缩激发块在第一fc层处将特征维度降低16倍,该第一压缩激发块可以在第一fc层采用二倍下采样以得到更好的识别效果。
[0098]
采用上述方案,设计了第一压缩激发块,使得该模型能够通过第一压缩激发块显式的构建时域特征通道之间的相互依赖关系,实现了增强对动作识别任务作用大的时域特征,实现了时域特征的权重调整,抑制对动作识别任务作用小或者影响识别的时域特征,使得动作识别的准确性更高。
[0099]
可选地,所述第二残差模型还包括与所述残差块连接的第二压缩激发块;
[0100]
所述将所述骨骼点热图分别输入多个预先训练的动作识别模型,得到多个识别结果包括:
[0101]
将所述第一特征图输入所述第二压缩激发块,得到调整空间特征权重后的第三特征图;
[0102]
根据所述骨骼热点图、所述第一特征图、所述第二特征图以及第三特征图,得到第二残差模型输出的识别结果。
[0103]
为了使得本领域技术人员更加理解本公开实施例提供的方案,本公开提供如图4
所示的根据一示例性实施例示出的另一种第二残差模型的结构示意图,如图4所示,该第二残差模型包括残差块,以及第一压缩激发块、第二压缩激发块,该第二压缩激发块的结构与第一压缩激发块相似,此处不再赘述。可见,残差块与第一压缩激发块均输出至第一尺寸归一化层,残差块与该第二压缩激发块均输出至第二尺寸归一化层。
[0104]
由于如图4所示的第二残差模型包括两个压缩激发块,根据残差块的类型,该第二残差模型可以表示为resnextdse,或者resnetdse模型。该第二残差模型,在resnetse或resnextse结构(即图3所示的结构)基础上,增加第二压缩激发块,增加空间域的特征权重标定。为了减少算力,可以将原来空间特征维度的降低16倍。这样resnextdse或resnetdse模型(如图4所示的结构的第二残差模型)就同时具有了时间与空间的注意力,提高骨骼点热图中的关键帧与关键位置的筛选能力,增加了相似样本的分辨能力。
[0105]
该第二残差模型的计算方式可以如下式所示:
[0106][0107][0108]
w1、w2分别代表第二压缩激发块的两个全连接层的权重,为保留空间维度的全局平均池化的输出,f
scale2
表示级联空间注意力和时间注意力的结果。
[0109]
采用上述方案,在resnetse或resnextse结构(即图3所示的结构)基础上,增加第二压缩激发模型,增加空间域的特征权重标定,以实现空间特征的权重调整,具有时间与空间的注意力,能够有效地提高骨骼点热图中的关键帧与关键位置的筛选能力,增加了相似样本的分辨能力,使得动作识别的准确性进一步提升。
[0110]
在一些可能的实施例中,所述方法还包括:
[0111]
获取包括预先标注动作类型标签的训练数据,所述训练数据包括多个视频片段对应的骨骼点热图;
[0112]
将所述训练数据输入未经训练的第二残差模型,得到该第二残差模型输出的第二识别结果;
[0113]
对比所述第一识别结果与所述动作类型标签,调整时域特征权重控制值和/或空间特征权重控制值,直至所述第二识别结果满足预设条件,得到训练完成的第二残差模型。
[0114]
可选地,未经训练的第二残差模型的训练数据可以是半量的训练数据,该训练数据中的骨骼点热图的采样频率可以是64,也可以是128,宽高尺寸可以是28*56,也可以是56*56。
[0115]
采用上述方案,利用预先标注动作类型标签的训练数据对未经训练的第二残差模型进行训练,并根据训练中的第二残差模型的识别结果与预先标注的标签进行对比,以迭代第二残差模型,进而得到能够准确调整时域特征权重和/或空间特征权重的第二残差模型,使得该第二残差模型能够准确地识别输入该模型的骨骼点热图对应的动作类型。
[0116]
本领域技术人员应知悉,在相关技术中,相比图片识别技术,视频识别模型普遍参数量大,训练数据量级小,样本不均衡,不同的样本容易混淆,若仅基于原始训练数据对识别模型进行训练,很有可能造成模型过拟合现象。
[0117]
考虑到上述技术问题,在又一些可选地实施例中,所述动作识别模型包括第三残
差模型,所述方法包括:
[0118]
获取包括预先标注动作类型标签的训练数据,所述训练数据包括多个视频片段对应的骨骼点热图;
[0119]
将所述训练数据按照预设比例划分为训练集以及验证集;
[0120]
根据所述训练集,训练多个resnet152模型作为教师模型;
[0121]
将所述验证集去除动作类型标签输入所述教师模型,得到动作类型标签更新后的预测集;
[0122]
根据所述训练集以及所述预测集并基于蒸馏损失,训练未经训练的resnet50模型得到训练完成的第三残差模型。
[0123]
在上述方案中,将训练数据进行划分,将带有标签的训练集输入未经训练的深度为152的resnet模型(即resnet152模型)进行训练,并根据训练得到的该模型为无标签的验证集进行识别,并将识别得到的数据集以及用于训练该模型的resnet模型输入未经训练的深度为50的resnet模型(即resnet50模型)进行训练,得到第三残差模型。采用预训练的模型作为教师模型预标注数据,为学生模型(即未经训练的resnet模型)提供增益信息帮助训练,即采用了知识蒸馏的技术方案,以降低训练难度,提高模型的鲁棒性。
[0124]
为了使得本领域技术人员更理解本方案,本公开提供如图5所示的根据一示例性实施例示出的一种第三残差模型训练方法的流程图,如图5所示,该方法包括步骤:
[0125]
s501、获取训练数据集d={x,y},x:样本数据,y:样本标签。
[0126]
s502、根据k(数据分折数)将训练数据集d划分,得到训练集以及验证集
[0127]
其中,k可以为5。即,s502可以理解为将训练数据集d一般划分为另一半为
[0128]
s503、使用训练集分别训练k个resnet152模型作为教师模型。
[0129]
s504、使用教师模型在验证集上预测标签,得到预测数据集
[0130]
得到
[0131]
s505、基于训练数据集以及预测数据集{d,ys}={x,y,ys}训练resnet50学生模型。
[0132]
其中,训练时使用的损失函数为蒸馏损失(distill-crossentropy):l=λcrossentropy(m(x),y) (1-λ)crossentropy(m(x),ys)。
[0133]
s506、输出训练完成的第三残差模型。
[0134]
其中,本领域技术人员应知悉,基于上述训练方法训练得到的第三残差模型可以记为rkd模型。
[0135]
为了进一步克服数据集中存在的类别不平衡的情况,在另一些可选地实施例中,所述动作识别模型包括第四残差模型,所述方法包括:
[0136]
根据所述验证集以及所述教师模型,得到对应所述验证集的混淆矩阵;
[0137]
将所述混淆矩阵的对角线置零,得到样本错分矩阵;
[0138]
根据所述样本错分矩阵,计算得到各动作类别的错分比例;
[0139]
根据所述错分比例、sigmoid函数以及哈达玛积,得到代价敏感矩阵;
[0140]
基于所述代价敏感矩阵,得到混淆矩阵损失函数;
[0141]
根据所述训练集以及所述预测集并基于所述混淆损失函数,训练未经训练的resnet50模型得到训练完成的第四残差模型。
[0142]
可以理解的是,上述教师模型有多个,上述混淆矩阵可以是根据多个教师模型分别计算得到的混淆矩阵汇总得到的。具体的,针对上述验证集,可以将各教师模型计算得到的混淆矩阵相加,以得到最终的混淆矩阵。
[0143]
具体地,将上述混淆矩阵记为cm,将该混淆矩阵对角线置0后,可以得到样本错分矩阵w=cm-diag(cm),其中diag
·
表示矩阵对角线不变,非对角元素为0;进一步,计算得到各类别错分比例其中,sum
row
·
表示按行求和,sum(
·
)表示向量求和;进一步,计算得到代价敏感矩阵c=sigmiod(w

r),其中,sigmiod(
·
)表示sigmiod函数,

表示广播机制下的哈达玛积;将该代价敏感矩阵c作为损失函数的权重来计算损失,即可得到上述混淆矩阵损失函数(即confusionmatrix-crossentropy)。
[0144]
本领域技术人员还应知悉的是,基于上述训练方法训练得到的第四残差模型可以记为rkd-cm模型。
[0145]
采用上述方案,基于上述教师模型,计算其在验证集上的混淆矩阵,进而得到样本错分矩阵,并计算各类别的错分比例,基于sigmoid函数以及哈达玛积得到代价敏感矩阵,进而得到基于代价敏感矩阵得到的损失函数,使得训练得到的第四残差模型能够利用代价敏感矩阵引导该模型,利用代价敏感学习处理不平衡数据,有效地解决了训练样本中数据可能不平衡的问题,提高了模型对于动作识别的准确性。
[0146]
示例地,本公开还提供一种第三残差模型以及第四残差模型的训练方法的流程图,如图6所示,所述方法包括:
[0147]
s601、将训练数据进行分析后划分,得到五折数据训练集(即原始数据中一半的数据)。
[0148]
具体的,分析及划分方式可以是通过stratifiedkfold的方式进行的。
[0149]
s602、将该训练集输入resnet152模型中进行训练得到教师模型。
[0150]
s603、将另一半数据集输入该教师模型进行预测,得到预测结果。
[0151]
s604、将预测得到的数据集与上述五折数据验证集进行按照预设比例进行合并得到新的训练集。
[0152]
其中,预设比例可以是7:3,即新的训练集中70%的数据的标签为预先标注的真实标签,30%的数据的标签为教师模型预测得到的标签。
[0153]
s605、将新的训练集输入未经训练的resnet50模型,基于蒸馏损失训练得到rkd模型。
[0154]
其中,损失函数可以采用蒸馏损失:l=λcrossentropy(m(x),y) (1-λ)crossentropy(m(x),ys)。
[0155]
s606、根据新的训练集计算混淆矩阵cm。
[0156]
s607、根据混淆矩阵cm计算代价敏感矩阵。
[0157]
s608、将新的训练集输入未经训练的resnet50模型,根据代价敏感矩阵,基于混淆矩阵损失函数计算损失,训练得到rkd-cm模型。
[0158]
在一种可能的实施方式中,上述多个预先训练的动作识别模型可以包括如下表1中的多个模型,各个模型在训练过程中的训练数据、模型深度、训练数据中骨骼点热图的采样频率、宽高尺寸大小、学习率(lr,learning rate)更新策略、是否采用学习率重启(lr restart)、采用的损失函数也包括在下
[0159]
表1中:
[0160][0161]
表1
[0162]
其中,resnetse1、resnetse2、resnetse3、resnetse4模型中可以采用resnet残差块,也可以采用resnext残差块,本公开对此不做限定。应理解的是,上述用于训练各个模型的5折数据,可以是采用stratifiedkfold的方式对数据集进行分折验证,使得在每一份子集中都保持和原始数据集相同的类别比例,避免了某些子集相应类别的样本过少甚至没有的情况。基于蒸馏数据以及蒸馏损失训练得到的resnet50模型可以是上述rkd模型,即第三残差模型,基于蒸馏数据以及混淆矩阵损失训练得到的resnet50模型可以是上述rkd-cm模型,即第四残差模型。
[0163]
表中各个模型的具体训练方式在上文已有记载,此处不再赘述。
[0164]
基于相同的发明构思,本公开还提供如图7所示的一种动作识别装置70的框图,如图7所示,所述装置包括:
[0165]
获取模块70,用于获取目标视频片段;
[0166]
第一输入模块71,用于将所述目标视频片段输入预先训练的骨骼点识别模型,得到对应所述目标视频的骨骼点热图;
[0167]
第二输入模块72,用于将所述骨骼点热图输入多个预先训练的动作识别模型,得到多个识别结果;
[0168]
确定模块73,用于按照预设算法对所述多个识别结果进行投票,确定与所述目标视频片段对应的动作类别。
[0169]
可选地,所述多个预先训练的动作识别模型包括训练完成的第一残差模型,所述第一残差模型为resnet152模型,
[0170]
所述装置70包括:
[0171]
第一获取模块,用于获取包括预先标注动作类型的训练数据,所述训练数据包括多个视频片段对应的骨骼点热图;
[0172]
第一识别模块,用于将全量所述训练数据作为训练集输入未经训练的第一残差模型,得到第一识别结果;
[0173]
第二确定模块,用于根据所述识别结果调整该第一残差模型的参数,直至第一识别结果满足预设条件,得到训练完成的第一残差模型。
[0174]
可选地,所述多个预先训练的动作识别模型包括训练完成的第二残差模型,所述第二残差模型包括残差块,以及与所述残差块连接的第一压缩激发块;
[0175]
所述第二输入模块72还用于:
[0176]
将所述骨骼热点图输入所述第二残差模型的所述残差块,得到第一特征图;
[0177]
将所述第一特征图输入所述第一压缩激发块,得到调整时域特征权重后的第二特征图;
[0178]
根据所述骨骼热点图、所述第一特征图以及所述第二特征图,得到第二残差模型输出的识别结果。
[0179]
可选地,所述第二残差模型还包括与所述残差块连接的第二压缩激发块;
[0180]
所述第二输入模块72还用于:
[0181]
将所述第一特征图输入所述第二压缩激发块,得到调整空间特征权重后的第三特征图;
[0182]
根据所述骨骼热点图、所述第一特征图、所述第二特征图以及第三特征图,得到第二残差模型输出的识别结果。
[0183]
可选地,所述装置70还包括:
[0184]
第二获取模块,用于获取包括预先标注动作类型标签的训练数据,所述训练数据包括多个视频片段对应的骨骼点热图;
[0185]
第二识别模块,用于将所述训练数据输入未经训练的第二残差模型,得到该第二残差模型输出的第二识别结果;
[0186]
对比模块,用于对比所述第一识别结果与所述动作类型标签,调整时域特征权重控制值和/或空间特征权重控制值,直至所述第二识别结果满足预设条件,得到训练完成的第二残差模型。
[0187]
可选地,所述动作识别模型包括第三残差模型,所述装置70还包括:
[0188]
第三获取模块,用于获取包括预先标注动作类型标签的训练数据,所述训练数据包括多个视频片段对应的骨骼点热图;
[0189]
划分模块,用于将所述训练数据按照预设比例划分为训练集以及验证集;
[0190]
第一训练模块,用于根据所述训练集,训练多个resnet152模型作为教师模型;
[0191]
第三输入模块,用于将所述验证集去除动作类型标签输入所述教师模型,得到动作类型标签更新后的预测集;
[0192]
第二训练模块,用于根据所述训练集以及所述预测集并基于蒸馏损失,训练未经
训练的resnet50模型得到训练完成的第三残差模型。
[0193]
可选地,所述动作识别模型包括第四残差模型,所述装置70还包括:
[0194]
第三确定模块,用于根据所述验证集以及所述教师模型,得到对应所述验证集的混淆矩阵;
[0195]
置零模块,用于将所述混淆矩阵的对角线置零,得到样本错分矩阵;
[0196]
第一计算模块,用于根据所述样本错分矩阵,计算得到各动作类别的错分比例;
[0197]
第二计算模块,用于根据所述错分比例、sigmoid函数以及哈达玛积,得到代价敏感矩阵;
[0198]
第四确定模块,用于基于所述代价敏感矩阵,得到混淆矩阵损失函数;
[0199]
第二训练模块,用于根据所述训练集以及所述预测集并基于所述混淆损失函数,训练未经训练的resnet50模型得到训练完成的第四残差模型。
[0200]
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
[0201]
图8是根据一示例性实施例示出的一种电子设备800的框图。如图8所示,该电子设备800可以包括:处理器801,存储器802。该电子设备800还可以包括多媒体组件803,输入/输出(i/o)接口804,以及通信组件805中的一者或多者。
[0202]
其中,处理器801用于控制该电子设备800的整体操作,以完成上述的动作识别方法中的全部或部分步骤。存储器802用于存储各种类型的数据以支持在该电子设备800的操作,这些数据例如可以包括用于在该电子设备800上操作的任何应用程序或方法的指令,以及应用程序相关的数据,例如目标动作视频、骨骼点热图、训练集等等。该存储器802可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,例如静态随机存取存储器(static random access memory,简称sram),电可擦除可编程只读存储器(electrically erasable programmable read-only memory,简称eeprom),可擦除可编程只读存储器(erasable programmable read-only memory,简称eprom),可编程只读存储器(programmable read-only memory,简称prom),只读存储器(read-only memory,简称rom),磁存储器,快闪存储器,磁盘或光盘。多媒体组件803可以包括屏幕和音频组件。其中屏幕例如可以是触摸屏,音频组件用于输出和/或输入音频信号。例如,音频组件可以包括一个麦克风,麦克风用于接收外部音频信号。所接收的音频信号可以被进一步存储在存储器802或通过通信组件805发送。音频组件还包括至少一个扬声器,用于输出音频信号。i/o接口804为处理器801和其他接口模块之间提供接口,上述其他接口模块可以是键盘,鼠标,按钮等。这些按钮可以是虚拟按钮或者实体按钮。通信组件805用于该电子设备800与其他设备之间进行有线或无线通信。无线通信,例如wi-fi,蓝牙,近场通信(near field communication,简称nfc),2g、3g、4g、nb-iot、emtc、或其他5g等等,或它们中的一种或几种的组合,在此不做限定。因此相应的该通信组件805可以包括:wi-fi模块,蓝牙模块,nfc模块等等。
[0203]
在一示例性实施例中,电子设备800可以被一个或多个应用专用集成电路(application specific integrated circuit,简称asic)、数字信号处理器(digital signal processor,简称dsp)、数字信号处理设备(digital signal processing device,简称dspd)、可编程逻辑器件(programmable logic device,简称pld)、现场可编程门阵列
(field programmable gate array,简称fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述的动作识别方法。
[0204]
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的动作识别方法的步骤。例如,该计算机可读存储介质可以为上述包括程序指令的存储器802,上述程序指令可由电子设备800的处理器801执行以完成上述的动作识别方法。
[0205]
图9是根据一示例性实施例示出的一种电子设备900的框图。例如,电子设备900可以被提供为一服务器。参照图9,电子设备900包括处理器922,其数量可以为一个或多个,以及存储器932,用于存储可由处理器922执行的计算机程序。存储器932中存储的计算机程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理器922可以被配置为执行该计算机程序,以执行上述的动作识别方法。
[0206]
另外,电子设备900还可以包括电源组件926和通信组件950,该电源组件926可以被配置为执行电子设备900的电源管理,该通信组件950可以被配置为实现电子设备900的通信,例如,有线或无线通信。此外,该电子设备900还可以包括输入/输出(i/o)接口958。电子设备900可以操作基于存储在存储器932的操作系统,例如windows server
tm
,mac os x
tm
,unix
tm
,linux
tm
等等。
[0207]
在另一示例性实施例中,还提供了一种包括程序指令的计算机可读存储介质,该程序指令被处理器执行时实现上述的动作识别方法的步骤。例如,该非临时性计算机可读存储介质可以为上述包括程序指令的存储器932,上述程序指令可由电子设备900的处理器922执行以完成上述的动作识别方法。
[0208]
在另一示例性实施例中,还提供一种计算机程序产品,该计算机程序产品包含能够由可编程的装置执行的计算机程序,该计算机程序具有当由该可编程的装置执行时用于执行上述的动作识别方法的代码部分。
[0209]
以上结合附图详细描述了本公开的优选实施方式,但是,本公开并不限于上述实施方式中的具体细节,在本公开的技术构思范围内,可以对本公开的技术方案进行多种简单变型,这些简单变型均属于本公开的保护范围。
[0210]
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本公开对各种可能的组合方式不再另行说明。
[0211]
此外,本公开的各种不同的实施方式之间也可以进行任意组合,只要其不违背本公开的思想,其同样应当视为本公开所公开的内容。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献