1.本公开涉及人工智能技术领域,尤其涉及视频分析模型训练方法、装置、设备、介质及产品。
背景技术:
2.视频类客户端能够向用户推荐用户感兴趣的视频,或者,能够向用户展示视频的分类标签(例如综艺节目、电影、动漫等分类标签),以便于用户能够基于视频的分类标签查找到相应的视频。
3.相关技术中,用户感兴趣的视频或视频的分类标签均是基于视频的视频内容信息确定的,视频的视频内容信息的获取方法可以是将视频输入机器学习模型,以得到机器学习模型输出的视频内容信息。机器学习模型是通过将多个视频作为输入训练得到的。
4.相关技术中训练机器学习模型的速度较慢。
技术实现要素:
5.本公开提供一种视频分析模型训练方法、装置、设备、介质及产品,以至少解决相关技术中训练机器学习模型的速度较慢的问题。本公开的技术方案如下:
6.根据本公开实施例的第一方面,提供一种视频分析模型训练方法,包括:
7.从样本视频包含的多帧视频图像中间隔抽取视频图像,以抽取得到第一视频图像;
8.确定所述样本视频对应的图像集合,所述图像集合包括所述第一视频图像以及第一数目个第二视频图像,所述第二视频图像为设定图像,所述第一视频图像的数目与所述第一数目之和为预设数目,样本视频集合中不同样本视频分别对应的图像集合包含的图像的数目均为所述预设数目;
9.基于所述图像集合,确定掩膜参数,所述掩膜参数用于记录所述图像集合中有效图像的位置以及无效图像的位置,所述第一视频图像为有效图像,所述第二视频图像为无效图像;
10.将所述图像集合以及所述掩膜参数作为机器学习模型的输入,将所述样本视频对应的人工标注分类标签作为训练目标,训练得到视频分析模型。
11.结合第一方面,在第一种可能实现方式中,所述基于所述图像集合,确定掩膜参数步骤包括:
12.确定所述第一视频图像位于所述图像集合中的第一位置;
13.确定所述第二视频图像位于所述图像集合中的第二位置;
14.基于所述第一位置以及所述第二位置,确定所述掩膜参数,所述掩膜参数中位于所述第一位置对应的位置处的元素为第一字符,位于所述第二位置对应的位置处的元素为第二字符;其中,第一字符表征位于所述图像集合的所述第一位置的图像为有效图像,所述第二字符表征位于所述图像集合的所述第二位置的图像为无效图像。
15.结合第一方面,在第二种可能实现方式中,所述从样本视频包含的多帧视频图像中间隔抽取视频图像,以抽取得到第一视频图像步骤包括:
16.接收来自存储设备的样本视频,所述样本视频为所述存储设备压缩编码后的视频;
17.从所述样本视频包含的多个关键帧中获得目标关键帧;
18.获取抽样间隔;
19.从所述样本视频包含的所述目标关键帧对应的非关键帧中,每隔所述抽样间隔抽取一个非关键帧,以得到至少一个非关键帧,所述非关键帧是基于所述目标关键帧压缩的;
20.解码所述目标关键帧以及所述至少一个非关键帧,以得到所述第一视频图像。
21.结合第一方面,在第三种可能实现方式中,提供一种所述获取抽样间隔步骤包括:
22.基于所述样本视频的帧率以及每秒处理图像数,计算得到所述抽样间隔;或,
23.获取预先设置的所述抽样间隔。
24.结合第一方面,在第四种可能实现方式中,提供一种所述将所述样本视频对应的所述图像集合以及所述掩膜参数作为机器学习模型的输入,将所述样本视频对应的人工标注分类标签作为训练目标,训练得到视频分析模型步骤包括:
25.将所述图像集合以及所述掩膜参数输入至机器学习模型;
26.所述机器学习模型执行以下步骤:
27.获得所述图像集合对应的特征信息集合,所述特征信息集合包括所述第一视频图像对应的特征信息以及所述第二视频图像对应的特征信息;
28.基于所述掩膜参数从所述特征信息集合中筛选出所述第一视频图像对应的特征信息;
29.基于所述第一视频图像对应的特征信息,确定分类标签,所述机器学习模型用于输出所述第一视频图像对应的特征信息或所述分类标签;
30.基于所述分类标签与所述人工标注分类标签的比较结果,训练所述机器学习模型,以得到所述视频分析模型。
31.结合第一方面,在第五种可能实现方式中,提供一种所述获得所述图像集合对应的特征信息集合步骤包括:
32.获得所述图像集合中各图像分别对应的帧内特征信息;
33.基于所述图像集合中各图像分别对应的帧内特征信息,获得所述特征信息集合,所述第一视频图像对应的特征信息包括多个所述第一视频图像之间的帧间特征信息,所述第二视频图像对应的特征信息包括多个所述第二视频图像之间的帧间特征信息,和/或,所述第二视频图像与所述第一视频图像之间的帧间特征信息。
34.结合第一方面,在第六种可能实现方式中,提供一种所述特征信息集合中有效图像的特征信息的位置与所述图像集合中有效图像的位置相同,所述基于所述掩膜参数从所述特征信息集合中筛选出所述第一视频图像对应的特征信息步骤包括:
35.确定所述掩膜参数表征的有效图像的特征信息在所述特征信息集合中的第三位置;
36.获得所述特征信息集合中所述第三位置处的特征信息,以得到所述第一视频图像对应的特征信息。
37.结合第一方面,在第七种可能实现方式中,提供一种所述视频分析模型训练方法还包括:
38.从待测视频包含的多帧视频图像中间隔抽取视频图像,以抽取得到第三视频图像;
39.将所述第三视频图像输入至所述视频分析模型,通过所述视频分析模型获得所述待测视频对应的分析结果,所述分析结果包括所述第三视频图像的特征信息或所述待测视频的分类标签。
40.结合第一方面,在第八种可能实现方式中,提供一种确定掩膜参数步骤之后,还包括:
41.将所述样本视频对应的所述图像集合以及所述掩膜参数存储至数据库;
42.在所述将所述图像集合以及所述掩膜参数作为机器学习模型的输入,将所述样本视频对应的人工标注分类标签作为训练目标,训练得到所述视频分析模型步骤之前还包括:
43.从所述数据库中获得所述样本视频对应的所述图像集合以及所述掩膜参数。
44.根据本公开实施例的第二方面,提供一种视频分析模型训练装置,包括:
45.第第一获取模块,被配置为从样本视频包含的多帧视频图像中间隔抽取视频图像,以抽取得到第一视频图像;
46.第一确定模块,被配置为确定所述样本视频对应的图像集合,所述图像集合包括所述第一视频图像以及第一数目个第二视频图像,所述第二视频图像为设定图像,所述第一视频图像的数目与所述第一数目之和为预设数目,样本视频集合中不同样本视频分别对应的图像集合包含的图像的数目均为所述预设数目;
47.第二确定模块,被配置为基于所述图像集合,确定掩膜参数,所述掩膜参数用于记录所述图像集合中有效图像的位置以及无效图像的位置,所述第一视频图像为有效图像,所述第二视频图像为无效图像;
48.训练模块,被配置为将所述图像集合以及所述掩膜参数作为机器学习模型的输入,将所述样本视频对应的人工标注分类标签作为训练目标,训练得到视频分析模型。
49.结合第二方面,在第一种可能实现方式中,所述第二确定模块具体被配置为:
50.第一确定单元,被配置为确定所述第一视频图像位于所述图像集合中的第一位置;
51.第二确定单元,被配置为确定所述第二视频图像位于所述图像集合中的第二位置;
52.第三确定单元,被配置为基于所述第一位置以及所述第二位置,确定所述掩膜参数,所述掩膜参数中位于所述第一位置对应的位置处的元素为第一字符,位于所述第二位置对应的位置处的元素为第二字符;其中,第一字符表征位于所述图像集合的所述第一位置的图像为有效图像,所述第二字符表征位于所述图像集合的所述第二位置的图像为无效图像。
53.结合第二方面,在第二种可能实现方式中,所述第一获取模块具体被配置为:
54.接收单元,被配置为接收来自存储设备的样本视频,所述样本视频为所述存储设备压缩编码后的视频;
55.第一获取单元,被配置为从所述样本视频包含的多个关键帧中获得目标关键帧;
56.第二获取单元,被配置为获取抽样间隔;
57.第三获取单元,被配置为从所述样本视频包含的所述目标关键帧对应的非关键帧中,每隔所述抽样间隔抽取一个非关键帧,以得到至少一个非关键帧,所述非关键帧是基于所述目标关键帧压缩的;
58.解码单元,被配置为解码所述目标关键帧以及所述至少一个非关键帧,以得到所述第一视频图像。
59.结合第二方面,在第三种可能实现方式中,提供一种所述第二获取单元具体被配置为:
60.计算子单元,被配置为基于所述样本视频的帧率以及每秒处理图像数,计算得到所述抽样间隔;或,
61.获取子单元,被配置为获取预先设置的所述抽样间隔。
62.结合第二方面,在第四种可能实现方式中,提供一种所述训练模块具体被配置为:
63.输入单元,被配置为将所述图像集合以及所述掩膜参数输入至机器学习模型;
64.所述机器学习模型包括以下模块:
65.特征提取模块,被配置为获得所述图像集合对应的特征信息集合,所述特征信息集合包括所述第一视频图像对应的特征信息以及所述第二视频图像对应的特征信息;
66.有效特征提取模块,被配置为基于所述掩膜参数从所述特征信息集合中筛选出所述第一视频图像对应的特征信息;
67.标签预测模块,被配置为基于所述第一视频图像对应的特征信息,确定分类标签,所述机器学习模型用于输出所述第一视频图像对应的特征信息或所述分类标签;
68.训练单元,被配置为基于所述分类标签与所述人工标注分类标签的比较结果,训练所述机器学习模型,以得到所述视频分析模型。
69.结合第二方面,在第五种可能实现方式中,提供一种所述特征提取模块具体被配置为:
70.帧内特征提取模块,被配置为获得所述图像集合中各图像分别对应的帧内特征信息;
71.帧间特征提取模块,被配置为基于所述图像集合中各图像分别对应的帧内特征信息,获得所述特征信息集合,所述第一视频图像对应的特征信息包括多个所述第一视频图像之间的帧间特征信息,所述第二视频图像对应的特征信息包括多个所述第二视频图像之间的帧间特征信息,和/或,所述第二视频图像与所述第一视频图像之间的帧间特征信息。
72.结合第二方面,在第六种可能实现方式中,提供一种所述特征信息集合中有效图像的特征信息的位置与所述图像集合中有效图像的位置相同,所述有效特征提取模块具体被配置为:
73.提取位置模块,被配置为确定所述掩膜参数表征的有效图像的特征信息在所述特征信息集合中的第三位置;
74.提取特征模块,被配置为获得所述特征信息集合中所述第三位置处的特征信息,以得到所述第一视频图像对应的特征信息。
75.结合第二方面,在第七种可能实现方式中,提供一种还包括:
76.第二获取模块,被配置为从待测视频包含的多帧视频图像中间隔抽取视频图像,以抽取得到第三视频图像;
77.分析模块,被配置为将所述第三视频图像输入至所述视频分析模型,通过所述视频分析模型获得所述待测视频对应的分析结果,所述分析结果包括所述第三视频图像的特征信息或所述待测视频的分类标签。
78.结合第二方面,在第八种可能实现方式中,提供一种还包括:
79.存储模块,被配置为将所述样本视频对应的所述图像集合以及所述掩膜参数存储至数据库;
80.第三获取模块,被配置为从所述数据库中获得所述样本视频对应的所述图像集合以及所述掩膜参数。
81.根据本公开实施例的第三方面,提供一种电子设备,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现如第一方面所述视频分析模型训练方法。
82.根据本公开实施例的第四方面,提供一种计算机可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如第一方面所述的视频分析模型训练方法。
83.根据本公开实施例的第五方面,提供一种计算机程序产品,可直接加载到计算机的内部存储器,例如上述第三方面所述电子设备包含的存储器中,并含有软件代码,该计算机程序经由计算机载入并执行后能够实现如第一方面所述的视频分析模型训练方法。
84.本公开的实施例提供的技术方案至少带来以下有益效果:
85.本公开实施例提供的视频分析模型训练方法中,可以从样本视频包含的多帧视频图像中间隔抽取视频图像,以抽取得到第一视频图像;确定样本视频对应的图像集合,所述图像集合包括第一视频图像以及第一数目个第二视频图像,第二视频图像为设定图像,第一视频图像的数目与第一数目之和为预设数目,样本视频集合中不同样本视频分别对应的图像集合包含的图像的数目均为预设数目;基于图像集合,确定掩膜参数,掩膜参数用于记录图像集合中有效图像的位置以及无效图像的位置,第一视频图像为有效图像,第二视频图像为无效图像;将图像集合以及掩膜参数作为机器学习模型的输入,将样本视频对应的人工标注分类标签作为训练目标,训练得到视频分析模型。由于将图像集合包含的图像数目小于样本视频包含的图像的数目,所以利用样本视频的图像集合训练机器学习模型的速度较快。在训练机器学习模型的过程中,需要同时向机器学习模型输入多个样本视频分别对应的图像集合,因此需要多个样本视频分别对应的图像集合中包含的图像的数目相同,例如,均为预设数目,本公开实施例中,若从样本视频中抽取得到的第一视频图像的数目小于预设数目,需要利用第二视频图像补齐。由于第二视频图像可能与样本视频无关,所以需要将掩膜参数输入机器学习模型,以使得机器学习模型基于第一视频图像得到样本视频的分析结果。使得训练机器学习模型更加准确。
86.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
87.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
88.图1是根据一示例性实施例示出的本公开实施例应用的硬件的结构图;
89.图2是根据一示例性实施例示出的一种视频分析模型训练方法的流程图;
90.图3a是根据一示例性实施例示出的从样本视频中抽取得到目标关键帧的一种实现方式的示意图;
91.图3b是根据一示例性实施例示出的从样本视频中抽取得到目标关键帧的又一实现方式的示意图;
92.图4是根据一示例性实施例示出的第一种类型的视频分析模型对应的机器学习模型的结构图;
93.图5是根据一示例性实施例示出的基于视频分析模型获得待测视频的分析结果的方法的流程图;
94.图6是根据一示例性实施例示出的一种视频分析模型训练装置框图;
95.图7是根据一示例性实施例示出的一种电子设备的框图。
具体实施方式
96.为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
97.需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
98.本公开实施例提供了视频分析模型训练方法、装置、设备、介质及产品,在介绍本公开实施例提供的技术方案之前,先介绍本公开实施例应用的网络环境和硬件。
99.图1是根据一示例性实施例示出的本公开实施例应用的硬件的结构图。本公开实施例应用的硬件包括:第一电子设备11、第二电子设备12、第三电子设备13、至少一个存储设备14。
100.示例性的,第一电子设备11、第二电子设备12、第三电子设备13中任一电子设备可以为任何一种可与用户通过键盘、触摸板、触摸屏、遥控器、语音交互或手写设备等一种或多种方式进行人机交互的电子产品,例如,手机、平板电脑、掌上电脑、个人计算机、可穿戴设备、智能电视等。
101.示例性的,第一电子设备11、第二电子设备12、第三电子设备13中任一电子设备可以为一台服务器,也可以是由多台服务器组成的服务器集群,或者,是一个云计算服务中心。
102.示例性的,第一电子设备11、第二电子设备12、第三电子设备13中任意至少两个电子设备可以为同一电子设备;或者,第一电子设备11、第二电子设备12、第三电子设备13均
为独立的电子设备。
103.示例性的,存储设备14可以为硬盘或数据库或服务器。示例性的,存储设备14可以为cdn(content delivery network,内容分发网络)服务器。
104.示例性的,存储设备14可以集成于第一电子设备11,或独立于第一电子设备11。
105.应当注意的是,图1中示出了三个存储设备14,存储设备14的数目可以基于实际情况而定,本公开实施例并不限定存储设备14的数目。图1中以存储设备为服务器、数据库和硬盘为例进行的说明。
106.示例性的,存储设备14用于存储多个视频。
107.示例性的,不同存储设备14可以对应不同产品,例如,同一企业有多个产品,例如,应用程序app1、应用程序app2、应用程序app3,不同应用程序对应的存储设备可能不同,例如,应用程序app1对应存储设备1、应用程序app2对应存储设备2、应用程序app3对应存储设备3。
108.示例性的,不同存储设备中存储的视频可以是其相应的客户端的用户上传的。
109.不同存储设备14存储的视频的数据格式可能不同,示例性的,视频的数据格式包括但不限于:file path(文件路径)、file对象、url(uniform resource locator,统一资源定位系统)、jar(java archive)包、kafka、grpc(google remote procedure call,google远程过程调用)
110.示例性的,不同存储设备14所在的地理位置可能不同。
111.在一可选实现方式中,第一电子设备11可以从一个或多个存储设备14中分别获得视频,即第一电子设备11可以从存储有不同数据格式的视频的存储设备14中分别读取视频。
112.示例性的,第一电子设备11可以存储有不同数据格式分别对应的数据读取方式,如图1所示,图1中是以第一电子设备11可以从存储有不同数据格式的视频的存储设备14中分别读取视频为例进行说明的。图1示出的三个存储设备14存储的数据格式分别为数据格式1、数据格式2、数据格式3。那么,第一电子设备从存储有数据格式1的视频的存储设备14中读取视频的方式与数据格式1对应;第一电子设备从存储有数据格式2的视频的存储设备14中读取视频的方式与数据格式2对应;第一电子设备从存储有数据格式3的视频的存储设备14中读取视频的方式与数据格式3对应。
113.在一可选实现方式中,第一电子设备11可以从不同存储设备14(不同存储设备14存储有相同数据格式的视频)中读取视频。
114.第一电子设备11对于每一视频,可以从视频包含的多帧视频图像中间隔抽取视频图像,以得到视频图像。
115.示例性的,第一电子设备11获得的视频可以为样本视频也可以为待测视频。
116.其中,样本视频是用于训练机器学习模型的,可以利用已经训练完毕的机器学习模型输出待测视频的分析结果。
117.本公开实施例称从样本视频抽取得到的视频图像为第一视频图像,称从待测视频抽取得到的视频图像为第三视频图像。
118.示例性的,第一电子设备11还包括缓存消息队列111和数据装载器112中的至少一个。
119.示例性的,第一电子设备11将多个视频分别对应的多个图像集合存储至缓存消息队列111。视频对应的图像集合包括从该视频中抽取得到的视频图像。一个视频对应一个图像集合。
120.可以理解的是,随着时间的流失,第一电子设备11处理的视频的数目越来越大,缓存消息队列111存储的图像集合越来越多。
121.示例性的,数据装载器112用于从第一电子设备11的内存中读取多个视频分别对应的图像集合。
122.示例性的,数据装载器12将视频对应的图像集合发送至第二电子设备12或第三电子设备13后,第一电子设备11不会存储该视频对应的图像集合。
123.本公开实施例中,上述多个视频分别对应的多个图像集合可以应用于两个应用场景,应用场景一是训练机器学习模型以得到视频分析模型的应用场景;应用场景二是基于已经训练好的视频分析模型对视频进行线上推理的应用场景。
124.下面结合不同应用场景进行说明。
125.应用场景一:训练机器学习模型以得到视频分析模型。
126.在应用场景一中,第一电子设备获得的视频称为样本视频。
127.示例性的,第一电子设备可以获得多个样本视频分别对应的人工标注分类标签,并存储至缓存消息队列中。
128.示例性的,第二电子设备可以从第一电子设备的缓存消息队列中获得多个样本视频分别对应的人工标注分类标签。
129.示例性的,第二电子设备可以通过第一电子设备的数据装载器获得多个样本视频分别对应人工标注分类标签。
130.第二电子设备12可以从第一电子设备11中获得多个样本视频分别对应的图像集合,将多个样本视频分别对应的图像集合作为机器学习模型121的输入,将多个样本视频分别对应的人工标注分类标签作为训练目标,训练得到视频分析模型。
131.示例性的,第一电子设备11将多个样本视频分别对应的图像集合存储至缓存消息队列111中,第二电子设备12可以从缓存消息队列111中获得多个样本视频分别对应的图像集合。
132.可以理解的是,由于缓存消息队列111已经存储有多个样本视频分别对应的图像集合,所以第二电子设备12在训练机器学习模型的过程中可以直接从缓存消息队列111中获得多个样本视频分别对应的图像集合,即本公开实施例分离了样本数据的提取的过程(获得多个样本视频分别对应的图像集合过程称为样本数据的提取过程)和机器学习模型的训练过程,从而使得在训练机器学习模型的过程中,无需等待样本数据的提取,提高了多个样本视频分别对应的图像集合的读取速度,进而提高了训练机器学习模型的速度。
133.第二电子设备12可以多次从缓存消息队列111中获得同一样本视频对应的图像集合。第一电子设备11无需多次对同一样本视频进行处理以得到该样本视频对应的图像集合,第一电子设备11需要处理一次样本视频并将得到的样本视频对应的图像集合存储至缓存消息队列111中即可。
134.示例性的,第一电子设备11将多个样本视频分别对应的图像集合通过数据装载器112实时发送至第二电子设备12,由于第一电子设备11并未存储多个样本视频分别对应的
图像集合,所以若第二电子设备12需要同一样本视频对应的图像集合,第一电子设备11需要再次处理该样本视频。
135.图1中示出了缓存消息队列111以及数据装载器112,但是并不限定第一电子设备同时包括缓存消息队列111以及数据装载器112。示例性的,第一电子设备包括缓存消息队列111以及数据装载器112中至少一个。
136.可以理解的是,第二电子设备12可能利用gpu(graphics processing unit,图形处理器)训练机器学习模型,由于gpu的内存有限,所以一次能够处理的数据量有限,因此,同时输入至机器学习模型的数据量是有限的,同时输入至机器学习模型的图像集合的数目越大训练得到的视频分析模型越准确。
137.本公开实施例中,将样本视频对应的图像集合作为机器学习模型的输入,与,将样本视频作为机器学习模型的输入相比,样本视频对应的图像集合包含的图像的数据量小于甚至远远小于该样本视频包含的所有视频图像的数量,因此,本公开实施例中同时输入机器学习模型的样本视频的图像集合的数目较多,使得训练得到的视频分析模型越准确。
138.下面介绍同时输入机器学习模型的图像集合的数目多少对机器学习模型的训练过程的影响。
139.可以理解的是,多个样本视频分别对应的人工标注分类标签可能有误,样本视频的人工标注分类标签出现错误的情况可能有以下两种。
140.第一种情况:人为对样本视频进行标注时,标注的人工标注分类标签错误。
141.例如,视频a的实际分类标签为动漫分类标签,但是人为将其标注为非动漫分类标签。
142.第二种情况:一个样本视频可能对应多个实际分类标签,假设视频对应分类标签a、分类标签b,在训练机器学习模型的过程中需要样本视频对应的分类标签a,但是人为在标注时,将该样本视频人工标注成分类标签b。
143.例如,一个样本视频对应的实际分类标签为动漫分类标签、穿越分类标签,假设,在训练机器学习模型时,需要该样本视频的穿越分类标签,但是人工将其标注成动漫分类标签。
144.若同时输入至机器学习模型的图像集合的数目较少,若同时输入的图像集合中一个或多个图像集合对应的样本视频的人工标注分类标签有误,具有错误人工标注分类标签的样本视频对机器学习模型的影响较大,可能使得机器学习模型更新后的参数相比训练之前更加不准确,使得机器学习模型的收敛速度较慢。
145.例如,同时输入至机器学习模型的图像集合的数目为3个,若3个图像集合中两个图像集合对应的样本视频的人工标注分类标签有误,那么,基于这3个图像集合训练机器学习模型后,机器学习模型更新后的参数相比训练之前更加不准确。
146.可以理解的是,在大量样本视频中,人工标注分类标签有误的样本视频的数量较少,若同时输入至机器学习模型的图像集合的数目较多,例如,为几百个或几千个或几万个图像集合,若少数几个图像集合对应的样本视频的人工标注分类标签有误,不会对机器学习模型中的参数造成很大影响,甚至没有影响,机器学习模型中的参数的鲁棒性较强。
147.综上,同时输入至机器学习模型的图像集合的数目越多,机器学习模型更新后的参数越准确,机器学习模型收敛速度越快,训练机器学习模型得到视频分析模型输出的分
析结果越准确。
148.应用场景二:基于已经训练好的视频分析模型对视频进行线上推理。
149.在应用场景二中,将第一电子设备12获得的视频称为待测视频。
150.第二电子设备12可以将训练好的视频分析模型发送至第三电子设备13。
151.示例性的,第三电子设备13可以安装有torchserve服务平台。视频分析模型可以加载至torchserve服务平台。
152.第一电子设备11可以从存储设备13中获得待测视频,并得到待测视频对应的图像集合。
153.示例性的,第一电子设备11可以将一个或多个待测视频对应的图像集合存储至缓存消息队列111中,以使得第三电子设备13从缓存消息队列111中获得待测视频的图像集合。
154.示例性的,第一电子设备11可以将待测视频的图像集合通过数据装载器112实时发送至第三电子设备14。
155.第三电子设备13接收到待测视频对应的图像集合后,将待测视频对应的图像集合输入视频分析模型131,以得到视频分析模型输出的分析结果。
156.示例性的,待测视频的分析结果,可以为从待测视频中抽取得到的视频图像的特征信息,或,待测视频的分类标签。
157.示例性的,待测视频的分类标签是基于从待测视频中抽取得到的视频图像的特征信息得到的。
158.本公开实施例中,将视频对应的图像集合作为视频分析模型的输入,与将待测视频作为视频分析模型的输入相比,由于视频对应的图像集合比视频的数据量少,因此视频分析模型的处理速度较快。
159.本公开实施例中可以分离从获取待测视频的图像集合过程和线上推理过程(即视频分析模型获得待测视频的分析结果的过程)。示例性的,在执行线上推理过程之前,已经获得了待测视频对应的第三视频图像,在线上推理过程中,直接从第一电子设备中获得该待测视频对应的图像集合即可,无需等待获取待测视频的图像集合的过程,从而提高了待测视频对应的图像集合的读取速度,进而提高了线上推理的速度。
160.在一可选实现方式中,第三电子设备13将待测视频的分析结果发送至相应的相应设备。
161.示例性的,该相应设备可以基于多个视频分别对应的分析结果,计算多个视频的相似度(例如余弦相似度、欧几里得距离、皮尔逊相关系数或tanimoto系数),以实现客户端为用户推荐其感兴趣的视频的目的。
162.示例性的,若分析结果为从待测视频中抽取得到的视频图像的特征信息,那么该相应设备可以基于待测视频的分析结果,得到待测视频的分类标签,以实现为用户展示待测视频的分类标签的目的。
163.在一可选实现方式中,若分析结果为从待测视频中抽取得到的视频图像的特征信息,那么第三电子设备13基于待测视频的分析结果获得待测视频的分类标签。第三电子设备13将待测视频的分类标签发送至相应设备。
164.示例性的,该相应设备可以基于待测视频的分类标签,实现客户端为用户展示待
测视频的分类标签的目的。
165.本领域技术人员应能理解上述电子设备和存储设备仅为举例,其他现有的或今后可能出现的电子设备或存储设备如可适用于本公开,也应包含在本公开保护范围以内,并在此以引用方式包含于此。
166.下面结合上述网络环境和硬件对本公开实施例提供的数据获取方法进行说明。
167.图2是根据一示例性实施例示出的一种视频分析模型训练方法的流程图,如图2所示,该方法可以用于第一电子设备11以及第二电子设备12中,该方法在实施过程中包括以下步骤s21至步骤s24。
168.在步骤s21中,从样本视频包含的多帧视频图像中间隔抽取视频图像,以抽取得到第一视频图像。
169.在步骤s22中,确定所述样本视频对应的图像集合。
170.所述图像集合包括所述第一视频图像以及第一数目个第二视频图像,所述第二视频图像为设定图像,所述第一视频图像的数目与所述第一数目之和为预设数目,样本视频集合中不同样本视频分别对应的图像集合包含的图像的数目均为所述预设数目。
171.示例性的,第一数目可以为0、1、2、3,
…
任意整数。
172.在步骤s23中,基于所述图像集合,确定掩膜参数,所述掩膜参数用于记录所述图像集合中有效图像的位置以及无效图像的位置,所述第一视频图像为有效图像,所述第二视频图像为无效图像。
173.在步骤s24中,将所述图像集合以及所述掩膜参数作为机器学习模型的输入,将所述样本视频对应的人工标注分类标签作为训练目标,训练得到所述视频分析模型。
174.可以理解的是,为了满足人类视觉的时间敏感度,视频中连续的视频图像的内容非常相似,相似的视频图像能够表达的信息基本相同,本公开实施例中,视频包括多组视频图像,其中,一组视频图像包括视频中连续且画面基本相似的多帧视频图像,将一组视频图像中任一帧视频图像称为非冗余视频图像,其他视频图像称为冗余视频图像。
175.可以理解的是,视频中多帧非冗余视频图像表达的信息可以代表该视频表达的信息,示例性的,第一视频图像即为视频中非冗余视频图像。
176.示例性的,第一视频图像的数目可以为一帧或多帧。
177.对于应用场景一,即训练机器学习模型以得到视频分析模型的应用场景,可以通过第一电子设备11对于样本视频集合中每一样本视频执行步骤s21至步骤s23,以得到多个样本视频分别对应的图像集合和掩膜参数。可以通过第二电子设备12执行步骤s24以训练得到视频分析模型。
178.示例性的,第一电子设备11和第二电子设备12可以为独立的电子设备,或,第一电子设备11和第二电子设备12可以为同一电子设备。
179.示例性的,第一电子设备11获得样本视频对应的掩膜参数后,可以将样本视频对应的掩膜参数存储在缓存消息队列中。
180.示例性的,第二电子设备可以从缓存消息队列中获得多个样本视频分别对应的掩膜参数。
181.示例性的,数据装载器可以从第一电子设备11的内存中获得样本视频对应的掩膜参数,并发送至第二电子设备。
182.对于应用场景二,即基于已经训练好的视频分析模型对待测视频进行线上推理的应用场景,可以通过第一电子设备执行步骤s21至步骤s22获得待测视频对应的图像集合。通过第三电子设备执行线上推理过程。
183.本公开实施例中,获得样本视频的图像集合和待测视频的图像集合的过程相同,下面均以获得样本视频的图像集合的过程为例进行说明,待测视频的图像集合的获取过程可以参见获得样本视频的图像集合的过程,本公开实施例不再赘述。
184.示例性的,样本视频集合包括多个样本视频,样本视频集合包含的多个样本视频是从一个或多个存储设备14中获得的。
185.可以理解的是,在训练机器学习模型的过程中,需要同时在机器学习模型中输入多个样本视频分别对应的图像集合。由于同时需要输入多个样本视频分别对应的图像集合,所以需要多个样本视频分别对应的图像集合包含的图像数目相同。
186.示例性的,样本视频集合中不同样本视频对应的图像集合包含的图像数目均为预设数目。
187.示例性的,预设数目可以为设定值。
188.示例性的,预设数目为样本视频集合中各样本视频分别对应的第一视频图像的数目的最大值。假设样本视频集合包括样本视频1、样本视频2以及样本视频3,预设数目=max{从样本视频1抽取得到的第一视频图像的数目,从样本视频2抽取得到的第一视频图像的数目,从样本视频3抽取得到的第一视频图像的数目}。
189.可以理解的是,若从样本视频中抽取得到的第一视频图像的数目等于预设数目,则样本视频对应的图像集合不包括第二视频图像;若从样本视频中抽取得到的第一视频图像的数目小于预设数目,则样本视频对应的图像集合第一数目个第二视频图像。
190.其中,第一数目=预设数目
‑
从样本视频中抽取得到的第一视频图像的数目。
191.下面对第二视频图像进行说明。
192.示例性的,第二视频图像可以为设定图像。
193.示例性的,不同样本视频对应的图像集合中包含的第二视频图像可以相同;示例性的,不同样本视频对应的图像集合中包含的第二视频图像可以不同。下面举例进行说明获得第二视频图像的过程。
194.在一可选实现方式中,若从样本视频中抽取得到第一视频图像的总数目小于预设数目,可以通过以下两种方式获得第二视频图像。
195.第一种方式:复制样本视频中已抽取得到的第一视频图像,以得到第二视频图像。
196.假设,预设数目为20,从样本视频中抽取得到的第一视频图像的数目为4帧,那么,可以执行4次复制这4帧第一视频图像的操作,以得到16帧第二视频图像。
197.第二种方式:获得填充有预设设置的第二视频图像。
198.示例性的,第二视频图像中的像素值均为预设数值,例如0,或,1。
199.假设,预设数目为20,从样本视频中抽取得到的第一视频图像的数目为4帧,那么,可以得到像素值均为预设数值的16帧第二视频图像。
200.在一可选实现方式中,不同样本视频分别对应的图像集合包含的视频图像的大小相同,若不同,需要处理成大小相同的视频图像。
201.可以理解的是,由于样本视频对应的图像集合中可能包括第二视频图像,为了使
得机器学习模型基于第一视频图像得到分析结果,而不基于第二视频图像得到分析结果,还需要获得样本视频对应的掩膜参数。
202.示例性的,掩膜参数的表现形式有多种,本公开实施例提供但不限于以下几种:向量、函数、链表中的任一种。
203.由于样本视频对应的掩膜参数记录有该样本视频对应的图像集合中有效图像的位置以及无效图像的位置,所以机器学习模型可以基于掩膜参数得到第一视频图像的特征信息,从而基于第一视频图像的特征信息输出分析结果,从而使得训练得到的视频分析模型更加准确。
204.示例性的,可以基于机器学习模型输出的多个样本视频分别对应的分类标签与多个样本视频分别对应的人工标注分类标签进行比较,以得到损失函数。通过损失函数训练机器学习模型。
205.示例性的,损失函数可以为交叉墒损失函数、多标签损失函数、triplet margin loss、度量函数(比如precision,recall,f1)中的至少一个。
206.可以理解的是,在大量样本视频中,人工标注分类标签有误的样本视频的数量较少,若同时输入至机器学习模型的图像集合的数目较多,例如,为几百个或几千个或几万个样本数据,若少数几个样本视频的人工标注分类标签有误,不会对机器学习模型中的参数造成很大影响,甚至没有影响。
207.在机器学习模型一次能够处理的数据量一定的情况下,由于样本视频的图像集合包含的图像数目小于样本视频包含的图像的总数目,即样本视频的图像集合的数据量小于样本视频的数据量,所以本公开实施例能够向机器学习模型输入更多的图像集合,即提高了机器学习模型的吞吐量,所以训练得到的机器学习模型更加准确。
208.本公开实施例提供的视频分析模型训练方法中,从样本视频包含的多帧视频图像中间隔抽取视频图像,以抽取得到第一视频图像;确定样本视频对应的图像集合,所述图像集合包括第一视频图像以及第一数目个第二视频图像,第二视频图像为设定图像,第一视频图像的数目与第一数目之和为预设数目,样本视频集合中不同样本视频分别对应的图像集合包含的图像的数目均为预设数目;基于图像集合,确定掩膜参数,掩膜参数用于记录图像集合中有效图像的位置以及无效图像的位置,第一视频图像为有效图像,第二视频图像为无效图像;将图像集合以及掩膜参数作为机器学习模型的输入,将样本视频对应的人工标注分类标签作为训练目标,训练得到视频分析模型。由于将图像集合包含的图像数目小于样本视频包含的图像的数目,所以利用样本视频的图像集合训练机器学习模型的速度较快。在训练机器学习模型的过程中,需要同时向机器学习模型输入多个样本视频分别对应的图像集合,因此需要多个样本视频分别对应的图像集合中包含的图像的数目相同,例如,均为预设数目,本公开实施例中,若从样本视频中抽取得到的第一视频图像的数目小于预设数目,需要利用第二视频图像补齐。由于第二视频图像可能与样本视频无关,所以需要将掩膜参数输入机器学习模型,以使得机器学习模型基于第一视频图像得到样本视频的分析结果。使得训练机器学习模型更加准确。
209.本公开实施例中步骤s21的实现方式有多种,本公开实施例提供但不限于以下三种。
210.第一种步骤s21的实现方式包括步骤a11至步骤a14。
211.在步骤a11中,接收来自存储设备的样本视频,所述样本视频为所述存储设备压缩编码后的视频。
212.示例性的,样本视频可以是第一电子设备11从存储设备14中获得的,存储设备14将样本视频发送至第一电子设备14时,已经将样本视频进行了压缩编码。
213.在步骤a12中,获取抽样间隔。
214.示例性的,抽样间隔可以为相邻两个第一视频图像之间间隔的时长,或者,相邻两个第一视频图像之间间隔的视频图像的数目。
215.在步骤a13中,从样本视频包含的多个关键帧中每隔所述抽样间隔抽取一个关键帧,以得到至少一个目标关键帧。
216.示例性的,所述样本视频包含的各帧均为关键帧。若样本视频的压缩编码方式为每个视频图像独立编码,即样本视频包含的帧均为关键帧,那么可以采用步骤a13的方式从样本视频中抽取得到至少一个目标关键帧。
217.示例性的,样本视频包含关键帧以及非关键帧,步骤a13从样本视频包含的多个关键帧中抽取得到目标关键帧。
218.示例性的,抽取的第一个目标关键帧的位置即抽帧起始位置可以是随机的。示例性的,抽帧起始位置可以是预先设置的,例如,抽帧起始位置为样本视频的第一个关键帧或者第二个关键帧或第三个关键帧。
219.在步骤a14中,解码所述至少一个目标关键帧,以得到第一视频图像。
220.本公开实施例中在对样本视频进行解码时,不是对样本视频整体解码,而是从样本视频中每隔抽样间隔抽取一个关键帧,对抽取得到的目标关键帧进行解码,以得到第一视频图像。节省了解码样本视频的时间。
221.在一可选实现方式中,本公开实施例中可以先对样本视频进行解码,然后对解码后的样本视频执行步骤a12至步骤a13。
222.为了本领域技术人员更加理解本公开实施例提供的从样本视频中抽取得到目标关键帧的方法,下面举例进行说明。
223.图3a是根据一示例性实施例示出的从样本视频中抽取得到目标关键帧的一种实现方式的示意图。
224.图3a中以抽样间隔为相邻两个第一视频图像之间间隔的视频图像的数目为例进行说明,假设抽样间隔为5,样本视频包括20帧关键帧,抽帧起始位置为视频的第一个关键帧。那么,如图3a所示,被黑色箭头指示的关键帧(用填充网状的四边形表示)为抽取得到的目标关键帧。抽取得到的相邻两个目标关键帧之间间隔的关键帧数目为5。
225.第二种步骤s21的实现方式包括步骤a21至步骤a23。
226.在步骤a21中,接收来自存储设备的样本视频,所述样本视频为所述存储设备压缩编码后的视频。
227.在步骤a22中,随机从样本视频包含的多个关键帧中抽取得到至少一个目标关键帧。
228.由于是随机抽取的,所以不同相邻两个目标关键帧之间间隔的关键帧的数目可能不同,可能相同。
229.示例性的,所述样本视频包含的各帧均为关键帧。若样本视频的压缩编码方式为
每个视频图像独立编码,即样本视频包含的帧均为关键帧,那么可以采用步骤a22的方式从样本视频中随机抽取得到至少一个目标关键帧。
230.示例性的,样本视频包含关键帧以及非关键帧,步骤a22从样本视频包含的多个关键帧中随机抽取得到目标关键帧。
231.在步骤a23中,解码所述至少一个目标关键帧,以得到第一视频图像。
232.本公开实施例中在对样本视频进行解码时,不是对样本视频整体解码,而是从样本视频中随机抽取得到的目标关键帧进行解码,以得到第一视频图像。节省了解码样本视频的时间。
233.在一可选实现方式中,本公开实施例中可以先对样本视频进行解码,然后对解码后的样本视频执行步骤a22。
234.为了本领域技术人员更加理解本公开实施例从样本视频中抽取得到目标关键帧的方法,下面举例进行说明。
235.图3b是根据一示例性实施例示出的从样本视频中抽取得到目标关键帧的又一实现方式的示意图。
236.假设视频包括20帧关键帧,抽帧起始位置为样本视频的第一个关键帧。那么,如图3b所示,被黑色箭头指示的关键帧(用填充网状的四边形表示)为目标关键帧。
237.如图3b所示,从样本视频中抽取得到的目标关键帧依次为:目标关键帧31、目标关键帧32、目标关键帧33、目标关键帧34。
238.目标关键帧31和目标关键帧32之间间隔1个关键帧,目标关键帧32和目标关键帧33之间间隔4个关键帧,目标关键帧33和目标关键帧34之间间隔8个关键帧。
239.第三种步骤s21的实现方式包括步骤a31至步骤a34。
240.在步骤a31中,接收来自存储设备的样本视频,所述样本视频为所述存储设备压缩编码后的视频。
241.在步骤a32中,从所述样本视频包含的多个关键帧中获得目标关键帧。
242.目标关键帧的数目可以为一个或多个。
243.示例性的,从样本视频包含的多个关键帧中每隔抽样间隔抽取一个关键帧,以得到目标关键帧。该抽样间隔和步骤a32的抽样间隔可以相同可以不同。
244.示例性的,从样本视频包含的多个关键帧中随机抽取得到目标关键帧。
245.示例性的,将样本视频包含的各关键帧均确定为目标关键帧。
246.示例性的,从样本视频包含的多个关键帧中抽取目标关键帧的起始位置可以是随机的,也可以是预先设置的。
247.在步骤a32中,获取抽样间隔。
248.示例性的,抽样间隔可以为相邻两个非关键帧之间间隔的时长,或者,相邻两个非关键帧之间间隔的关键帧和非关键帧的总数目。
249.在步骤a33中,从所述样本视频包含的所述目标关键帧对应的非关键帧中,每隔所述抽样间隔抽取一个非关键帧,以得到至少一个非关键帧。
250.所述非关键帧是基于所述目标关键帧压缩的。
251.下面举例对目标关键帧对应的非关键帧进行说明。
252.假设一个视频包括视频图像1、视频图像2以及视频图像3,假设,在对视频进行压
缩时,确定视频图像1对应关键帧、视频图像2以及视频图像3对应非关键帧。
253.那么,视频图像1对应的关键帧1是对视频图像1进行帧内压缩编码得到的;视频图像2对应的非关键帧1是基于视频图像2与视频图像1的帧间压缩编码得到的;视频图像3对应的非关键帧2是基于视频图像3与视频图像1的帧间压缩编码得到的。
254.上述非关键帧1和非关键帧2对应关键帧1。即非关键帧1和非关键帧2是基于关键帧1压缩的。
255.在步骤a34中,解码所述目标关键帧以及所述至少一个非关键帧,以得到所述第一视频图像。
256.示例性的,可以将样本视频中一个关键帧与该关键帧对应的非关键帧称为一组帧集合,那么,样本视频可以分为多组帧集合。
257.示例性的,对于步骤a32获得的每一目标关键帧所属帧集合而言,以所述目标关键帧为起始位置,每隔抽样间隔抽取一帧非关键帧,以得到步骤a33中的至少一帧非关键帧。
258.本公开实施例中在对样本视频进行解码时,不是对样本视频整体解码,而是从样本视频中抽取得到的目标关键帧以及所述至少一个非关键帧进行解码,以得到第一视频图像。节省了解码样本视频的时间。
259.在一可选实现方式中,本公开实施例中可以先对样本视频进行解码,然后对解码后的样本视频执行步骤a32至步骤a33。
260.在一可选实现方式中,第一电子设备可以从不同存储设备中获得不同格式的视频或相同格式的视频,该视频可以是样本视频或待测视频。下面对第一电子设备从存储设备中获得视频的过程进行说明。即从存储设备中获取视频的方法可以包括以下步骤:
261.步骤一,确定存储设备存储的视频的数据格式。
262.步骤二,基于所述数据格式,生成视频获取请求。
263.示例性的,不同数据格式对应的视频获取请求不同。例如,若存储设备为http(hypertext transfer protocol,超文本传输协议)服务器,http服务器存储的视频的数据格式可能为blobkey或url(uniform resource locator,统一资源定位系统),那么,视频获取请求的格式为http请求的格式;若存储设备为硬盘,硬盘存储的视频的数据格式可能为file path,那么,视频获取请求的格式为cpu(central processing unit/processor)读取指令的格式。
264.步骤三,向所述存储设备发送所述视频获取请求。
265.步骤四,接收所述存储设备反馈的视频。
266.上述视频可以为样本视频,也可以为待测视频。
267.上述实现方式支持从多种异构数据源中获得视频,多种异构数据源是指存储有不同数据格式的存储设备。
268.本公开实施例中,针对每一种数据格式,设定指定文件读取方案,即对于每一种数据格式,生成相应格式的视频获取请求,即用相应的方式从存储设备中读取视频。
269.本公开实施例中,可以从多种异构数据源中获得视频,从而能够得到大量样本视频,基于大量样本视频训练得到的视频分析模型更加准确。
270.在一可选实现方式中,无论是第一种步骤s21的实现方式还是第三种步骤s21的实现方式中对于每一样本视频,获得抽样间隔的实现方式有多种,本公开实施例提供但不限
于以下三种。
271.第一种获得抽样间隔的实现方式为:基于所述样本视频的帧率以及每秒处理图像数,计算得到所述抽样间隔。
272.样本视频的帧率是指是以视频图像为单位连续出现在显示器上的频率,即样本视频每秒包含的视频图像的数目。每秒处理图像数是指每秒能够处理的视频图像的数目。
273.可以理解的是,视频中多帧连续视频图像的内容非常相似,为了满足人类视觉的时间敏感度,每秒处理图像数需要达到一定值,才能使得用户在观看视频时视频更流畅。本公开实施例中,视频包括多组视频图像,其中,一组视频图像包括视频中连续且视频的画面基本相似的多帧视频图像,将一组视频图像中任一帧视频图像称为非冗余视频图像,其他视频图像称为冗余视频图像。一般情况下,上述提及的“一组视频图像”包含视频图像的数目为视频的帧率/每秒处理图像数。
274.示例性的,抽样间隔=视频的帧率/每秒处理图像数。此时,可以从视频包含的各组视频图像中分别抽取一个视频图像,从视频中抽取得到的视频图像彼此之间互不冗余,抽取得到的视频图像更能够代表整个视频的内容。
275.基于第一种实现方式得到的样本视频的图像集合训练机器学习模型,得到的机器学习模型更加准确。基于第一种实现方式得到的待测视频的图像集合通过视频分析模型得到的分析结果更加准确。
276.示例性的,具有不同帧率的视频的抽样间隔不同。
277.第二种获得抽样间隔的实现方式为:基于所述样本视频的时长、所述样本视频的帧率以及预设数目,计算得到所述抽样间隔。
278.不同样本视频分别对应的图像集合包含的图像数目相同且为所述预设数目。
279.示例性的,可以基于公式:抽样间隔=视频的时长*视频的帧率/预设数目,得到抽样间隔。其中,视频的时长*视频的帧率即为视频包含的视频图像的总数目。
280.若不同样本视频分别对应的图像集合包含的图像数目相同,那么,为了能够获得样本视频表达的信息的“全貌”,可以基于上述公式均匀的从样本视频中抽取图像。
281.示例性的,包含的视频图像的总数目不同的样本视频的抽样间隔不同。对于包含的视频图像的总数目较少的样本视频而言,抽取得到的多帧第一视频图像可能存在冗余视频图像。
282.第三种获得抽样间隔的实现方式为:获取预先设置的所述抽样间隔。
283.示例性的,不同视频的抽样间隔相同。
284.在一可选实现方式中,步骤s23的实现方式有多种,本申请实施例提供但不限于以下方式。
285.第一种步骤s23的实现方式包括以下步骤b11至步骤b13。
286.在步骤b11中,确定所述第一视频图像位于所述图像集合中的第一位置。
287.在步骤b12中,确定所述第二视频图像位于所述图像集合中的第二位置。
288.在步骤b13中,基于所述第一位置以及所述第二位置,确定所述掩膜参数。
289.所述掩膜参数中位于所述第一位置对应的位置处的元素为第一字符,位于所述第二位置对应的位置处的元素为第二字符;其中,第一字符表征位于所述图像集合的所述第一位置的图像为有效图像,所述第二字符表征位于所述图像集合的所述第二位置的图像为
无效图像。
290.示例性的,第一字符或第二字符可以为任意数字或字母或特殊符号,第一字符和第二字符不同。
291.由于字符(第一字符或第二字符)位于掩膜参数中的位置表征了该字符指示的图像(第一视频图像或第二视频图像)在图像集合中的位置,所以掩膜参数中可以不用携带字符与图像的对应关系,使得掩膜参数的数据量较少,提高了机器学习模型的吞吐量。
292.示例性的,掩膜参数还可以包括字符与图像的对应关系。
293.示例性的,图像集合的表现形式有多种,本公开实施例提供但不限于:矩阵、函数、链表中的任一种。掩膜参数的表现形式有多种,本公开实施例提供但不限于:矩阵、函数、链表中的任一种。
294.下面以图像集合为矩阵,掩膜参数为掩膜向量为例对图像集合和掩膜参数之间的关系进行说明。
295.假设样本视频对应的图像集合包含的第一视频图像的数目为m。第一数目个第二视频图像位于m个第一视频图像之后。m为大于或等于1的正整数。
296.示例性的,m个第一视频图像在图像集合的顺序为:m个第一视频图像按照在样本视频中出现的位置从早到晚依次排序。
297.示例性的,m个第一视频图像在图像集合的顺序可以随机排序。
298.假设预设数目为k,第一数目为n,n m=k。样本视频对应的图像集合h的矩阵形式如下:
299.样本视频对应的图像集合h为k
×
l的矩阵。其中,l为大于或等于1的正整数。
300.假设样本视频的图像集合中m个第一视频图像依次为:a1、a2、a3,
…
,a
m
,样本视频的图像集合中n个第二视频图像依次为:a
m 1
、a
m 2
、
…
,a
k
,其中,矩阵a
i
=[a
i1 a
i2
ꢀ…ꢀ
a
il
],i=1,2,...,k。其中,a
ij
可以为具体的数值,或者,为向量。其中,j=1,2,
…
,l。
[0301]
从样本视频的图像集合h中,可以确定第一图像位于图像集合h的位置为第一行第一列、第二行第一列、第三行第一列,
…
,第m行第一列,第二图像位于图像集合的位置为:第m 1行第一列,
…
,第k行第一列。
[0302]
基于此可以确定掩膜向量q。样本视频的图像集合h中第i行第一列对应掩膜向量q的第一行第i列。
[0303]
下面以第一字符为1,第二字符为0为例对掩膜向量进行说明。
[0304]
掩膜向量q=[1 1
ꢀ…ꢀ11m 0
1(m 1)
ꢀ…ꢀ
0],其中,掩膜向量q中1的下标“1m”表示掩膜向量的第一行第m列,0的下标“1(m 1)”表示掩膜向量的第一行第m 1列。即掩膜向量中第一行第一列至第一行第m列的元素均为1,第一行第m 1列至第一行第k列的元素均为0。
[0305]
在一可选实现方式中,样本视频的图像集合中n个第二视频图像可以位于m个第一视频图像之前。
[0306]
在一可选实现方式中,样本视频的图像集合中n个第二视频图像和m个第一视频图像交叉设置,例如,样本视频的图像集合包括:第一视频图像、第二视频图像、第一视频图像、第一视频图像、第二视频图像,
…
。
[0307]
下面对步骤s24中训练机器学习模型以得到视频分析模型训练过程进行说明。
[0308]
训练机器学习模型以得到视频分析模型的方法有多种,本公开实施例提供但不限于以下方式。在训练机器学习模型时,需要输入多个样本视频分别对应的图像集合和掩膜参数。对于每一样本视频对应的图像集合和掩膜参数均执行以下步骤,步骤c11至步骤c15。
[0309]
在步骤c11中,将样本视频对应的图像集合以及掩膜参数输入至机器学习模型。
[0310]
所述机器学习模型执行以下步骤c12至步骤c13,或,步骤c12至步骤c14。
[0311]
在一可选实现方式中,本公开实施例训练得到的视频分析模型的类型包括但不限于以下两种类型。
[0312]
第一种类型:视频分析模型用于输出视频的分类标签。
[0313]
第二种类型:视频分析模型用于输出视频的特征信息。
[0314]
若是需要得到第一种类型的视频分析模型,则机器学习模型需要执行步骤c12至步骤c14;若是需要得到第二种类型的视频分析模型,则机器学习模型需要执行步骤c12至步骤c13。
[0315]
下面结合机器学习模型的结构对步骤c12至步骤c13,或,步骤c12至步骤c14进行说明。
[0316]
示例性的,第一种类型的视频分析模型对应的机器学习模型的结构如图4所示,包括:特征提取模块41、有效特征提取模块42以及标签预测模块43。其中,特征提取模块用于执行步骤c12。有效特征提取模块用于执行步骤c13。标签预测模块用于执行步骤c14。第二电子设备用于基于执行步骤c15。
[0317]
示例性的,第二种类型的视频分析模型对应的机器学习模型包括:特征提取模块以及有效特征提取模块。其中,特征提取模块用于执行步骤c12。有效特征提取模块用于执行步骤c13。第二电子设备用于基于执行步骤c14和步骤c15。
[0318]
示例性的,第二电子设备具有基于第一视频图像的特征信息获得分类标签的功能。
[0319]
在步骤c12中,获得所述图像集合对应的特征信息集合,所述特征信息集合包括所述第一视频图像对应的特征信息以及所述第二视频图像对应的特征信息。
[0320]
在步骤c13中,基于所述掩膜参数从所述特征信息集合中筛选出所述第一视频图像对应的特征信息。
[0321]
在步骤c14中,基于所述第一视频图像对应的特征信息,确定分类标签。
[0322]
所述机器学习模型用于输出所述第一视频图像对应的特征信息或所述分类标签。
[0323]
在步骤c15中,基于所述分类标签与所述人工标注分类标签的比较结果,训练所述机器学习模型,以得到所述视频分析模型。
[0324]
由于掩膜参数可以从特征信息集合中筛选出第一视频图像对应的特征信息,所以可以去除在样本视频对应的图像集合补充第二视频图像带来的影响。由于是基于第一视频
图像对应的特征信息(而不是第二视频图像对应的特征信息),确定分类标签,所以得到的分类标签更加准确,训练得到的机器学习模型更加准确。
[0325]
示例性的,训练机器学习模型的过程涉及机器学习中的人工神经网络、置信网络、强化学习、迁移学习、归纳学习、式教学习等技术中至少一种。
[0326]
示例性的,机器学习模型可以为神经网络模型、逻辑回归模型、线性回归模型、支持向量机(svm)、adaboost、xgboost、transformer
‑
encoder模型中任一种模型。
[0327]
示例性的,神经网络模型可以为基于循环神经网络的模型、基于卷积神经网络的模型、基于transformer
‑
encoder的分类模型中的任一种。
[0328]
示例性的,机器学习模型可以为基于循环神经网络的模型、基于卷积神经网络的模型以及基于transformer
‑
encoder的分类模型的深度混合模型。
[0329]
示例性的,机器学习模型可以为基于注意力的深度模型、基于记忆网络的深度模型、基于深度学习的短文本分类模型中任一种。
[0330]
基于深度学习的短文本分类模型为循环神经网络(rnn)或卷积神经网络(cnn)或者基于循环神经网络或卷积神经网络的变种。
[0331]
示例性的,可以在已经预训练好的模型上做一些简单的领域适应性改造,以得到机器学习模型。示例性的,“简单的领域适应性改造”包括但不限于在已经预训练好的模型上,再次利用大规模无监督领域语料进行二次预训练,和/或,通过模型蒸馏的方式对已经预训练好的模型进行模型压缩。
[0332]
在一可选实现方式中,步骤c12的实现方式有多种,本公开实施例提供但不限于以下方式。
[0333]
在步骤d11中,获得所述图像集合中各图像分别对应的帧内特征信息。
[0334]
示例性的,图像对应的帧内特征信息是基于该图像得到的,未考虑相邻图像之间的关系。
[0335]
示例性的,一帧视频图像的帧内特征信息表征该帧视频图像包含的画面特征。
[0336]
在步骤d12中,基于所述图像集合中各图像分别对应的帧内特征信息,获得所述特征信息集合。
[0337]
所述第一视频图像对应的特征信息包括多个所述第一视频图像之间的帧间特征信息,所述第二视频图像对应的特征信息包括多个所述第二视频图像之间的帧间特征信息,和/或,所述第二视频图像与所述第一视频图像之间的帧间特征信息。
[0338]
示例性的,多个视频图像的帧间特征信息表征多个视频图像之间的区别特征。
[0339]
在一可选实现方式中,上述特征提取模块可以包括:帧内特征提取模块以及帧间特征提取模块。其中,帧内特征提取模块用于执行步骤d11,帧间特征提取模块用于执行步骤d12。
[0340]
示例性的,帧内特征提取模块可以为torchvision pretrained模型,torchvision pretrained模型包括resnets以及resnext。或者,帧内特征提取模块可以为轻量级网络ghostnet,以减小训练机器学习模型的过程中占用的gpu(graphics processing unit,图形处理器)内存。
[0341]
示例性的,帧间特征提取模块可以为可选双向网络、gru(gated recurrent unit)网络、lstm(long short
‑
term memory,长短期记忆人工神经网络)网络、自注意
transformer网络中至少一种。
[0342]
在一可选实现方式中,步骤d12的实现方式有多种,本公开实施例提供但不限于以下两种。
[0343]
第一种步骤d12的实现方式包括:基于图像集合中各两两相邻视频图像的帧内特征信息获得帧间特征信息,以得到特征信息集合。
[0344]
下面结合样本视频的图像集合h对特征信息集合进行说明。
[0345]
假设样本视频的图像集合样本视频的图像集合中各图像分别对应的帧内特征信息依次为:a1的帧内特征信息、a2的帧内特征信息、a3的帧内特征信息,
…
,a
m
的帧内特征信息、a
m 1
的帧内特征信息、a
m 2
的帧内特征信息、
…
,a
k
的帧内特征信息。
[0346]
其中,图像集合中任意两两相邻视频图像是指a
p
和a
p 1
。其中,p的取值为1至k
‑
1中任一数值。
[0347]
示例性的,特征信息集合包括:基于a
p
的帧内特征信息和a
p 1
的帧内特征信息得到的帧间特征信息。
[0348]
示例性的,为了保留样本视频的“全貌”,特征信息集合还包括图像集合中目标第一视频图像的帧内特征信息。下面以图像集合中第一个第一视频图像为目标第一视频图像为例进行说明。特征信息集合中包含的帧间特征信息为图像集合中其他第一视频图像与目标第一视频图像之间的帧间特征信息。
[0349]
示例性的,样本视频对应的特征信息集合
[0350]
第二种步骤d12的实现方式包括:基于图像集合中第一个图像的帧内特征信息至图像集合中第w个图像的帧内特征信息,获得帧间特征信息,w从2到k依次取值。
[0351]
为了本领域技术人员更加理解第二种步骤d12的实现方式,下面以图像集合包括5个图像为例,对第二种步骤d12的实现方式进行说明。第二种步骤d12的实现方式包括以下步骤e1至步骤e4。
[0352]
在步骤e1中,基于图像集合中第一个图像的帧内特征信息以及图像集合中第二个图像的帧内特征信息,获得帧间特征信息。
[0353]
在步骤e2中,基于图像集合中第一个图像的帧内特征信息、第二个图像的帧内特
征信息以及第三个图像的帧内特征信息,获得帧间特征信息。
[0354]
在步骤e3中,基于图像集合中第一个图像的帧内特征信息、第二个图像的帧内特征信息、第三个图像的帧内特征信息以及第四个图像的帧内特征信息,获得帧间特征信息。
[0355]
在步骤e4中,基于图像集合中第一个图像的帧内特征信息、第二个图像的帧内特征信息、第三个图像的帧内特征信息、第四个图像的帧内特征信息以及第五个图像的帧内特征信息,获得帧间特征信息。
[0356]
下面结合样本视频的图像集合h对特征信息集合进行说明。
[0357]
示例性的,为了保留样本视频的“全貌”,特征信息集合还包括图像集合中第一个第一视频图像的帧内特征信息。
[0358]
示例性的,样本视频对应的特征信息集合s2的具体内容如下:
[0359][0360]
示例性的,样本视频的特征信息集合可以包括:各第一视频图像分别对应的帧内特征信息、至少两个第一视频图像之间的帧间特征信息;示例性的,样本视频的特征信息集合包括:图像集合中目标第一视频图像的帧内特征信息、其他第一视频图像至少与目标第一视频图像的帧间特征信息。可以理解的是,可以通过目标第一视频图像的帧内特征信息以及其他第一视频图像至少与目标第一视频图像的帧间特征信息,得到样本图像的“全貌”,所以若本视频的特征信息集合包括:图像集合中目标第一视频图像的帧内特征信息、其他第一视频图像至少与目标第一视频图像的帧间特征信息,那么,样本视频的特征信息集合的数据量较少,且,得到的样本视频的信息量较全,机器学习模型基于该样本视频的特征信息得到分析结果的速度较快且较准确。
[0361]
在一可选实现方式中,步骤c13的实现方式有多种,本公开实施例提供但不限于以下三种实现方式。
[0362]
第一种步骤c13的实现方式包括步骤f11至步骤f12。
[0363]
所述特征信息集合中有效图像的特征信息的位置与所述图像集合中有效图像的位置相同。
[0364]
在步骤f11中,确定所述掩膜参数表征的有效图像的特征信息在所述特征信息集合中的第三位置。
[0365]
在步骤f12中,获得所述特征信息集合中所述第三位置处的特征信息,以得到所述第一视频图像对应的特征信息。
[0366]
仍以上述样本视频的图像集合h为例,基于掩膜参数,例如,掩膜矩阵q,确定特征
信息集合s1或特征信息集合s2中有效图像的特征信息位于第一行第一列至第m行第一列。从而步骤f12得到的包含第一视频图像对应的特征信息的有效特征矩阵s
有效
的内容如下:
[0367]
或,
[0368]
第二种步骤c13的实现方式包括:将特征信息集合与掩膜矩阵的乘积确定为所述第一视频图像的特征信息。
[0369]
仍以样本视频的图像集合h为例进行说明。假设掩膜矩阵为矩阵q。特征信息集合为s2。
[0370]
s
有效
=特征信息集合s2×
q=a1的帧内特征信息
×
1 a1和a2的帧间特征信息
×
1 ,
…
, a1、a2、a3、...和a
m
的帧间特征信息
×
1 a1、a2、a3、...、a
m
和a
m 1
的帧间特征信息
×
0 ,
…
, a1、a2、a3、...、a
m
、a
m 1
、a
m 2
、a
m 3
、...和a
k
的帧间特征信息
×
0。
[0371]
第二种步骤c13的实现方式包括:将特征信息集合与掩膜矩阵的乘积与第二数目的比值,确定为所述第一视频图像的特征信息。第二数目是指掩膜矩阵中记录的有效图像的数目。
[0372]
仍以样本视频的图像集合h为例进行说明。假设掩膜矩阵为矩阵q。特征信息集合为s2。
[0373]
s
有效
=特征信息集合s2×
q/第二数目。
[0374]
在一可选实现方式中,在步骤s23之后,还包括:将所述样本视频对应的所述图像集合以及所述掩膜参数存储至数据库;在步骤s24之前还包括:从所述数据库中获得所述样本视频对应的所述图像集合以及所述掩膜参数。
[0375]
示例性的,上述数据库可以为图1所示的缓存消息队列或数据装载器。
[0376]
本公开实施例中,在训练机器学习模型之前就可以对大量样本视频进行处理,以得到多个样本视频分别对应的图像集合和掩膜参数(称此为样本数据的提取),分离了样本数据的提取的过程和机器学习模型的训练过程,从而使得在训练机器学习模型的过程中,无需等待样本数据的提取,提高了多个样本视频分别对应的图像集合和掩膜参数的读取速度,进而提高了训练机器学习模型的速度。
[0377]
上述是对训练机器学习模型得到视频分析模型的过程进行说明,下面对使用视频分析模型的过程进行说明。
[0378]
图5是根据一示例性实施例示出的基于视频分析模型获得待测视频的分析结果的方法的流程图,该方法可以应用于第三电子设备13,该方法在实施过程中可以包括以下步骤s51至步骤s52。
[0379]
在步骤s51中,从待测视频包含的多帧视频图像中间隔抽取视频图像,以抽取得到第三视频图像。
[0380]
示例性的,从待测视频抽取得到第三视频图像的过程可以参见从样本视频中抽取得到第一视频图像的过程,这里不再赘述。
[0381]
在步骤s52中,将所述第三视频图像输入至所述视频分析模型,通过所述视频分析模型获得所述待测视频对应的分析结果,所述分析结果包括所述第三视频图像的特征信息或所述待测视频的分类标签。
[0382]
示例性的,第三视频图像的数目可以为一个或多个。针对第三视频图像的说明可以参见针对第一视频图像的说明,这里不再赘述。
[0383]
示例性的,训练得到的视频分析模型的类型不同,视频分析模型输出的结果不同。
[0384]
示例性的,若训练得到的是第一种类型的视频分析模型,那么,视频分析模型可以输出待测视频的分类标签。示例性的,若训练得到的是第二种类型的视频分析模型,那么,视频分析模型可以输出第三视频图像的特征信息。
[0385]
示例性的,由于视频分析模型已经训练完毕,视频分析模型中的参数均已确定,因此,在使用视频分析模型的过程中,无需不同待测视频对应的图像集合(对于一个待测视频而言,该待测视频需要输入至视频分析模型的所有图像包含于图像集合)包含的图像数目相同,即待测视频对应的图像集合可以由第三视频图像组成。
[0386]
在上述情况下,可以去除视频分析模型中的有效特征提取模块。使得视频分析模型包括特征提取模块以及标签预测模块,或,使得视频分析模型包括特征提取模块。
[0387]
示例性的,步骤s51获得的不同待测视频对应的图像集合包含的图像数目可以相同,例如,仍为预设数目。示例性的,步骤s52包括以下步骤g1至步骤g3。
[0388]
在步骤g1中,确定所述待测视频对应的图像集合,所述待测视频对应图像集合包括所述第三视频图像以及第三数目个第二视频图像,所述第二视频图像为设定图像,所述第三视频图像的数目与所述第三数目之和为预设数目,待测视频集合中不同待测视频分别对应的图像集合包含的图像的数目均为所述预设数目。
[0389]
示例性的,待测视频集合包含的多个待测视频,是第一电子设备从不同存储设备或相同存储设备中得到的。
[0390]
针对第二视频图像的说明可以参见前面针对第二视频图像的说明,这里不再赘述。
[0391]
在步骤g2中,基于所述待测视频对应图像集合,确定掩膜参数,所述掩膜参数用于记录所述待测视频对应图像集合中有效图像的位置以及无效图像的位置,所述第三视频图像为有效图像,所述第二视频图像为无效图像。
[0392]
待测视频对应的掩膜参数的确定过程与样本视频对应的掩膜参数的确定过程相同,这里不再赘述。
[0393]
在步骤g3中,将所述待测视频对应的图像集合以及掩膜参数输入至视频分析模型,通过视频分析模型得到所述待测视频的分析结果。
[0394]
在上述情况下,不需要去除视频分析模型中的有效特征提取模块。即视频分析模型包括特征提取模块、有效特征提取模块以及标签预测模块,或,使得视频分析模型包括特征提取模块以及有效特征提取模块。
[0395]
本公开实施例中,将待测视频对应的第三视频图像作为视频分析模型的输入,与将待测视频作为视频分析模型的输入相比,由于输入至视频分析模型的数据量较少,因此视频分析模型的处理速度较快,得到待测视频的分析结果的速度较快。
[0396]
视频分析模型包含的各个模块对待测视频的第三视频图像的处理过程,与,机器学习模型包含的各个模块对样本视频的图像集合的处理过程相同,这里不再赘述。
[0397]
在一可选实现方式中,在步骤s51之后,还包括:将待测视频对应的第三视频图像存储至数据库;在步骤s52之前还包括:从数据库中获得待测视频对应的第三视频图像。
[0398]
示例性的,上述数据库可以为图1所示的缓存消息队列或数据装载器。
[0399]
本公开实施例中可以分离待测视频对应的第三视频图像的抽取过程和线上推理过程(即视频分析模型基于第三视频图像获得分析结果的过程)。示例性的,在执行在线推理过程之前,已经获得了待测视频对应的第三视频图像,在线上推理过程中,直接从数据库中获得该待测视频对应的第三视频图像即可,无需等待从待测视频中抽取得到第三视频图像的过程,从而提高了待测视频对应的第三视频图像的读取速度,进而提高了在线推理的速度。
[0400]
上述本公开实施例中详细描述了方法,对于本公开实施例中的方法可采用多种形式的装置实现,因此本申请还公开了多种装置,下面给出具体的实施例进行详细说明。
[0401]
图6是根据一示例性实施例示出的一种视频分析模型训练装置框图。参照图6,该装置包括第一获取模块61、第一确定模块62、第二确定模块63和训练模块64。
[0402]
第一获取模块61,被配置为从样本视频包含的多帧视频图像中间隔抽取视频图像,以抽取得到第一视频图像;
[0403]
第一确定模块62,被配置为确定所述样本视频对应的图像集合,所述图像集合包括所述第一视频图像以及第一数目个第二视频图像,所述第二视频图像为设定图像,所述第一视频图像的数目与所述第一数目之和为预设数目,样本视频集合中不同样本视频分别对应的图像集合包含的图像的数目均为所述预设数目;
[0404]
第二确定模块63,被配置为基于所述图像集合,确定掩膜参数,所述掩膜参数用于记录所述图像集合中有效图像的位置以及无效图像的位置,所述第一视频图像为有效图像,所述第二视频图像为无效图像;
[0405]
训练模块64,被配置为将所述图像集合以及所述掩膜参数作为机器学习模型的输入,将所述样本视频对应的人工标注分类标签作为训练目标,训练得到视频分析模型。
[0406]
在一可选实现方式中,所述第二确定模块具体被配置为:
[0407]
第一确定单元,被配置为确定所述第一视频图像位于所述图像集合中的第一位置;
[0408]
第二确定单元,被配置为确定所述第二视频图像位于所述图像集合中的第二位置;
[0409]
第三确定单元,被配置为基于所述第一位置以及所述第二位置,确定所述掩膜参数,所述掩膜参数中位于所述第一位置对应的位置处的元素为第一字符,位于所述第二位置对应的位置处的元素为第二字符;其中,第一字符表征位于所述图像集合的所述第一位置的图像为有效图像,所述第二字符表征位于所述图像集合的所述第二位置的图像为无效图像。
[0410]
在一可选实现方式中,所述第一获取模块具体被配置为:
[0411]
接收单元,被配置为接收来自存储设备的样本视频,所述样本视频为所述存储设备压缩编码后的视频;
[0412]
第一获取单元,被配置为从所述样本视频包含的多个关键帧中获得目标关键帧;
[0413]
第二获取单元,被配置为获取抽样间隔;
[0414]
第三获取单元,被配置为从所述样本视频包含的所述目标关键帧对应的非关键帧中,每隔所述抽样间隔抽取一个非关键帧,以得到至少一个非关键帧,所述非关键帧是基于所述目标关键帧压缩的;
[0415]
解码单元,被配置为解码所述目标关键帧以及所述至少一个非关键帧,以得到所述第一视频图像。
[0416]
在一可选实现方式中,所述第二获取单元具体被配置为:
[0417]
计算子单元,被配置为基于所述样本视频的帧率以及每秒处理图像数,计算得到所述抽样间隔;或,
[0418]
获取子单元,被配置为获取预先设置的所述抽样间隔。
[0419]
在一可选实现方式中,所述训练模块具体被配置为:
[0420]
输入单元,被配置为将所述图像集合以及所述掩膜参数输入至机器学习模型;
[0421]
所述机器学习模型包括以下模块:
[0422]
特征提取模块,被配置为获得所述图像集合对应的特征信息集合,所述特征信息集合包括所述第一视频图像对应的特征信息以及所述第二视频图像对应的特征信息;
[0423]
有效特征提取模块,被配置为基于所述掩膜参数从所述特征信息集合中筛选出所述第一视频图像对应的特征信息;
[0424]
标签预测模块,被配置为基于所述第一视频图像对应的特征信息,确定分类标签,所述机器学习模型用于输出所述第一视频图像对应的特征信息或所述分类标签;
[0425]
训练单元,被配置为基于所述分类标签与所述人工标注分类标签的比较结果,训练所述机器学习模型,以得到所述视频分析模型。
[0426]
在一可选实现方式中,所述特征提取模块具体被配置为:
[0427]
帧内特征提取模块,被配置为获得所述图像集合中各图像分别对应的帧内特征信息;
[0428]
帧间特征提取模块,被配置为基于所述图像集合中各图像分别对应的帧内特征信息,获得所述特征信息集合,所述第一视频图像对应的特征信息包括多个所述第一视频图像之间的帧间特征信息,所述第二视频图像对应的特征信息包括多个所述第二视频图像之间的帧间特征信息,和/或,所述第二视频图像与所述第一视频图像之间的帧间特征信息。
[0429]
在一可选实现方式中,所述特征信息集合中有效图像的特征信息的位置与所述图像集合中有效图像的位置相同,所述有效特征提取模块具体被配置为:
[0430]
提取位置模块,被配置为确定所述掩膜参数表征的有效图像的特征信息在所述特征信息集合中的第三位置;
[0431]
提取特征模块,被配置为获得所述特征信息集合中所述第三位置处的特征信息,以得到所述第一视频图像对应的特征信息。
[0432]
在一可选实现方式中,还包括:
[0433]
第二获取模块,被配置为从待测视频包含的多帧视频图像中间隔抽取视频图像,以抽取得到第三视频图像;
[0434]
分析模块,被配置为将所述第三视频图像输入至所述视频分析模型,通过所述视频分析模型获得所述待测视频对应的分析结果,所述分析结果包括所述第三视频图像的特征信息或所述待测视频的分类标签。
[0435]
在一可选实现方式中,还包括:
[0436]
存储模块,被配置为将所述样本视频对应的所述图像集合以及所述掩膜参数存储至数据库;
[0437]
第三获取模块,被配置为从所述数据库中获得所述样本视频对应的所述图像集合以及所述掩膜参数。
[0438]
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
[0439]
图7是根据一示例性实施例示出的一种电子设备的框图。该电子设备可以包括:第一电子设备、第二电子设备以及第三电子设备中至少一个电子设备。
[0440]
电子设备包括但不限于:处理器701、存储器702、网络接口703、i/o控制器704以及通信总线705。
[0441]
需要说明的是,本领域技术人员可以理解,图7中示出的电子设备的结构并不构成对电子设备的限定,电子设备可以包括比图7所示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
[0442]
下面结合图7对电子设备的各个构成部件进行具体的介绍:
[0443]
处理器701是电子设备的控制中心,利用各种接口和线路连接整个电子设备的各个部分,通过运行或执行存储在存储器702内的软件程序和/或模块,以及调用存储在存储器702内的数据,执行电子设备的各种功能和处理数据,从而对电子设备进行整体监控。处理器701可包括一个或多个处理单元;示例性的,处理器701可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器701中。
[0444]
处理器701可能是一个中央处理器(central processing unit,cpu),或者是特定集成电路asic(application specific integrated circuit),或者是被配置成实施本发明实施例的一个或多个集成电路等;
[0445]
存储器702可能包含内存,例如高速随机存取存储器(random
‑
access memory,ram)7021和只读存储器(read
‑
only memory,rom)7022,也可能还包括大容量存储设备7023,例如至少1个磁盘存储器等。当然,该电子设备还可能包括其他业务所需要的硬件。
[0446]
其中,上述的存储器702,用于存储上述处理器701可执行指令。上述处理器701具有以下功能:执行上述任一实施例描述的视频分析模型训练方法。
[0447]
一个有线或无线网络接口703被配置为将电子设备连接到网络。
[0448]
处理器701、存储器702、网络接口703和i/o控制器704可以通过通信总线705相互连接,该通信总线可以是isa(industry standard architecture,工业标准体系结构)总线、pci(peripheral component interconnect,外设部件互连标准)总线或eisa(extended industry standard architecture,扩展工业标准结构)总线等。所述总线可以分为地址总
线、数据总线、控制总线等。
[0449]
在示例性实施例中,电子设备可以被一个或多个应用专用集成电路(asic)、数字信号处理器(dsp)、数字信号处理设备(dspd)、可编程逻辑器件(pld)、现场可编程门阵列(fpga)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述电子资源传输方法。
[0450]
在示例性实施例中,还提供了一种计算机可读存储介质,可直接加载到计算机的内部存储器,例如上述存储器702中,并含有软件代码,该计算机程序经由计算机载入并执行后能够实现上述视频分析模型训练方法任一实施例所示步骤。
[0451]
在示例性实施例中,还提供一种计算机程序产品,可直接加载到计算机的内部存储器,例如所述电子设备包含的存储器702中,并含有软件代码,该计算机程序经由计算机载入并执行后能够实现上述所述的视频分析模型训练方法任一实施例所示步骤。
[0452]
可选地,存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是rom、随机存取存储器(ram)、cd
‑
rom、磁带、软盘和光数据存储设备等。
[0453]
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
[0454]
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
技术特征:
1.一种视频分析模型训练方法,其特征在于,包括:从样本视频包含的多帧视频图像中间隔抽取视频图像,以抽取得到第一视频图像;确定所述样本视频对应的图像集合,所述图像集合包括所述第一视频图像以及第一数目个第二视频图像,所述第二视频图像为设定图像,所述第一视频图像的数目与所述第一数目之和为预设数目,样本视频集合中不同样本视频分别对应的图像集合包含的图像的数目均为所述预设数目;基于所述图像集合,确定掩膜参数,所述掩膜参数用于记录所述图像集合中有效图像的位置以及无效图像的位置,所述第一视频图像为有效图像,所述第二视频图像为无效图像;将所述图像集合以及所述掩膜参数作为机器学习模型的输入,将所述样本视频对应的人工标注分类标签作为训练目标,训练得到所述视频分析模型。2.根据权利要求1所述视频分析模型训练方法,其特征在于,所述基于所述图像集合,确定掩膜参数步骤包括:确定所述第一视频图像位于所述图像集合中的第一位置;确定所述第二视频图像位于所述图像集合中的第二位置;基于所述第一位置以及所述第二位置,确定所述掩膜参数,所述掩膜参数中位于所述第一位置对应的位置处的元素为第一字符,位于所述第二位置对应的位置处的元素为第二字符;其中,第一字符表征位于所述图像集合的所述第一位置的图像为有效图像,所述第二字符表征位于所述图像集合的所述第二位置的图像为无效图像。3.根据权利要求1或2所述视频分析模型训练方法,其特征在于,所述从样本视频包含的多帧视频图像中间隔抽取视频图像,以抽取得到第一视频图像步骤包括:接收来自存储设备的样本视频,所述样本视频为所述存储设备压缩编码后的视频;从所述样本视频包含的多个关键帧中获得目标关键帧;获取抽样间隔;从所述样本视频包含的所述目标关键帧对应的非关键帧中,每隔所述抽样间隔抽取一个非关键帧,以得到至少一个非关键帧,所述非关键帧是基于所述目标关键帧压缩的;解码所述目标关键帧以及所述至少一个非关键帧,以得到所述第一视频图像。4.根据权利要求3所述视频分析模型训练方法,其特征在于,所述获取抽样间隔步骤包括:基于所述样本视频的帧率以及每秒处理图像数,计算得到所述抽样间隔;或,获取预先设置的所述抽样间隔。5.根据权利要求1或2所述视频分析模型训练方法,其特征在于,所述将所述样本视频对应的所述图像集合以及所述掩膜参数作为机器学习模型的输入,将所述样本视频对应的人工标注分类标签作为训练目标,训练得到视频分析模型步骤包括:将所述图像集合以及所述掩膜参数输入至机器学习模型;所述机器学习模型执行以下步骤:获得所述图像集合对应的特征信息集合,所述特征信息集合包括所述第一视频图像对应的特征信息以及所述第二视频图像对应的特征信息;基于所述掩膜参数从所述特征信息集合中筛选出所述第一视频图像对应的特征信息;
基于所述第一视频图像对应的特征信息,确定分类标签,所述机器学习模型用于输出所述第一视频图像对应的特征信息或所述分类标签;基于所述分类标签与所述人工标注分类标签的比较结果,训练所述机器学习模型,以得到所述视频分析模型。6.根据权利要求5所述视频分析模型训练方法,其特征在于,所述获得所述图像集合对应的特征信息集合步骤包括:获得所述图像集合中各图像分别对应的帧内特征信息;基于所述图像集合中各图像分别对应的帧内特征信息,获得所述特征信息集合,所述第一视频图像对应的特征信息包括多个所述第一视频图像之间的帧间特征信息,所述第二视频图像对应的特征信息包括多个所述第二视频图像之间的帧间特征信息,和/或,所述第二视频图像与所述第一视频图像之间的帧间特征信息。7.一种视频分析模型训练装置,其特征在于,包括:第一获取模块,被配置为从样本视频包含的多帧视频图像中间隔抽取视频图像,以抽取得到第一视频图像;第一确定模块,被配置为确定所述样本视频对应的图像集合,所述图像集合包括所述第一视频图像以及第一数目个第二视频图像,所述第二视频图像为设定图像,所述第一视频图像的数目与所述第一数目之和为预设数目,样本视频集合中不同样本视频分别对应的图像集合包含的图像的数目均为所述预设数目;第二确定模块,被配置为基于所述图像集合,确定掩膜参数,所述掩膜参数用于记录所述图像集合中有效图像的位置以及无效图像的位置,所述第一视频图像为有效图像,所述第二视频图像为无效图像;训练模块,被配置为将所述图像集合以及所述掩膜参数作为机器学习模型的输入,将所述样本视频对应的人工标注分类标签作为训练目标,训练得到视频分析模型。8.一种电子设备,其特征在于,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现如权利要求1至6中任一项所述视频分析模型训练方法。9.一种计算机可读存储介质,当所述存储介质中的指令由电子设备的处理器执行时,使得电子设备能够执行如权利要求1至6中任一项所述视频分析模型训练方法。10.一种计算机程序产品,可直接加载到计算机的内部存储器,例如如权利要求8所述电子设备包含的存储器中,并含有软件代码,该计算机程序经由计算机载入并执行后能够实现如权利要求1至6中任一项所述视频分析模型训练方法。
技术总结
本公开提供了视频分析模型训练方法、装置、设备、介质及产品,在训练机器学习模型的过程中,是将样本视频的图像集合作为输入,而不是将整个样本视频作为输入。样本视频的图像集合包含第二视频图像以及从样本视频中抽取得到的第一视频图像。第二视频图像为设定图像,由于样本视频的图像集合包含的图像数目小于样本视频包含的所有图像的数目,所以训练机器学习模型的速度较快。由于第二视频图像可能与样本视频无关,所以需要确定掩膜参数,掩膜参数用于记录图像集合中有效图像的位置以及无效图像的位置,将图像集合和掩膜参数作为输入机器学习模型,以使得机器学习模型基于第一视频图像得到样本视频的分析结果。使得训练的机器学习模型更加准确。器学习模型更加准确。器学习模型更加准确。
技术研发人员:朱文涛 李江东 吕廷迅 班鑫
受保护的技术使用者:北京达佳互联信息技术有限公司
技术研发日:2021.03.26
技术公布日:2021/6/29
转载请注明原文地址:https://doc.8miu.com/read-978.html