视频分类方法和装置、电子设备和存储介质与流程

文档序号:30695394发布日期:2022-07-09 16:49阅读:80来源:国知局
视频分类方法和装置、电子设备和存储介质与流程

1.本技术涉及图像处理技术领域,尤其涉及一种视频分类方法和装置、电子设备和存储介质。


背景技术:

2.近几年来,卷积神经网络的成功应用,使得视觉领域发展迅速,从处理图像到2d卷积网络,到处理视频的3d卷积网络,技术也在不断的迭代升级,互联网社交平台的快速发展,产生了大量的视频数据,所以随着行业的不同发展,新的问题也在出现,也需要新的技术来解决这些问题。目前基于短视频技术的研究越来越多,像3d卷积神经网络,双流网络等,也有好多基于transformer的方法,因为视频除了包含空间维度的信息外,还有时间维度的信息。所以如何得到不同维度的信息,并将不同维度的信息进行融合,才能准确有效的处理短视频,才能有更好的用户体验。
3.相关技术中,使用3d卷积神经网络提取视频的特征;但是,这种方法的操作是利用3d卷积神经网络,将输入的视频经过3d卷积操作后,得到一条特征,再利用这条特征进行最后的分类。这种方法的优点很明显,操作简单,每个视频最后得到一条特征,便于处理。缺点是3d卷积神经网络虽然可以得到视频的时序信息,但计算过程比较慢,消耗的计算资源比较多。
4.针对相关技术中存在的通过3d卷积神经网络获取视频的时序信息,存在的计算过程比较慢,消耗的计算资源比较多的技术问题,目前尚未提供有效的解决方案。


技术实现要素:

5.为了解决上述通过3d卷积神经网络获取视频的时序信息,存在的计算过程比较慢,消耗的计算资源比较多的技术问题,本技术提供了一种视频分类方法和装置、电子设备和存储介质。
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.本实施例中的方法,通过采用第一抽帧方案以及第二抽帧方案,并分别得到多个第一视频帧和多个第二视频帧,进而获取用于指示待处理视频的动作类别的分类结果,进而提供了一种无需通过3d卷积神经网络获取视频的时序信息的方法,可以有效解决相关技术中存在的计算过程比较慢,消耗的计算资源比较多的技术问题,从而有效节省了计算资源。
附图说明
44.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
45.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
46.图1为本技术实施例提供的一种视频分类方法的流程示意图;
47.图2为本技术另一实施例提供的一种视频分类方法的流程示意图;
48.图3为本技术另一实施例提供的一种视频分类方法的流程示意图;
49.图4为本技术一应用例提供的一种视频分类方法的流程示意图;
50.图5为本技术另一实施例提供的一种视频分类装置的框图;
51.图6为本技术实施例提供的一种电子设备的结构示意图。
具体实施方式
52.为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术的一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
53.根据本技术实施例的一个方面,提供了一种视频分类的方法。可选地,在本实施例中,上述视频分类的方法可以应用于由终端和服务器所构成的硬件环境中。服务器通过网络与终端进行连接,可用于为终端或终端上安装的客户端提供服务(如数据处理服务、数据分析服务等),可在服务器上或独立于服务器设置数据库,用于为服务器提供数据存储服务。
54.上述网络可以包括但不限于以下至少之一:有线网络,无线网络。上述有线网络可以包括但不限于以下至少之一:广域网,城域网,局域网,上述无线网络可以包括但不限于以下至少之一:wifi(wireless fidelity,无线保真),蓝牙。终端可以并不限定于为pc、手机、平板电脑等。
55.本技术实施例的视频分类的方法可以由服务器来执行,也可以由终端来执行,还可以是由服务器和终端共同执行。其中,终端执行本技术实施例的视频分类的方法也可以是由安装在其上的客户端来执行。
56.以由服务器来执行本实施例中的视频分类的方法为例,图1为本技术实施例提供的一种视频分类方法,包括:
57.步骤s101,获取需要进行分类的待处理视频;
58.本实施例中的视频分类的方法可以应用于需要确定出短视频所属类别的场景,也可以是确定出长视频所属类别的场景。对于其他类型的视频,在不矛盾的情况下,上述的视频分类的方法同样适用。
59.待处理视频可以是从互联网中下载得到的短视频,也可以是由用户上传得到的短视频。
60.在获取待处理视频之后,为了实现对该待处理视频进行准确的标记或进行精准的推送,因此需要对该待处理视频进行分类,分类可以包括但不限于:搞笑、美食、产品推广等等。
61.步骤s102,对待处理视频按照第一抽帧方案进行抽帧,得到多个第一视频帧;对待处理视频按照第二抽帧方案进行抽帧,得到多个第二视频帧,其中,第一视频帧的数量多于第二视频帧的数量。
62.在获取待处理视频之后,为了实现对待处理视频的分析归类,因此,需要对该待处理视频进行抽帧,以获取待处理视频中的多个视频帧。
63.在本实施例中,预设第一抽帧方案以及第二抽帧方案,并且,对待处理视频按照第一抽帧方案进行抽帧,得到多个第一视频帧;对待处理视频按照第二抽帧方案进行抽帧,得到多个第二视频帧。进一步的,第一抽帧方案的抽帧密度(即,单位时长抽帧数量)大于第二抽帧方案的抽帧密度。
64.可选地,对于第一抽帧方案,若算力资源足够多,则可以不考虑资源消耗,可以逐帧抽取,其他情况看算力资源以及具体应用要求进行设定。并且,第二抽帧方案可以是第一抽帧密度的1/4,以抽取得到的第二视频帧的数量少于第一抽帧方案抽取到的第一视频帧的数量。并且第二抽帧方案的间隔帧数不应大于视频的fps(每秒传输帧数(frames per second)),如果大于fps可能会丢失一些关键帧信息。
65.步骤s103,基于自注意力机制对第一视频帧以及第二视频帧进行处理,得到用于指示待处理视频的行为类别的分类结果。
66.在得到第一视频帧以及第二视频帧之后,即可通过对第一视频帧以及第二视频帧进行处理,以得到用于指示待处理视频的行为类别的分类结果。
67.具体的,每种不同的行为类别都具有对应的特征,因此,可以基于预先训练得到的基于自注意力机制的模型,可以基于第一视频帧以及第二视频帧得到待处理视频的分类结果。
68.分类结果可以是用于指示待处理视频所属行为类别的概率信息,例如,当行为类别包括a、b、c时,则分类结果可以包括待处理视频对应于各个行为类别a、b、c值,并且,行为类别对应值越大说明待处理视频为该行为类别的概率也越大。
69.可选地,可以基于自注意力机制对第一视频帧以及第二视频帧进行处理,自注意力机制是注意力机制的变体,其减少了对外部信息的依赖,更擅长捕捉数据或特征的内部相关性。
70.本实施例中的方法,通过采用第一抽帧方案以及第二抽帧方案,并分别得到多个第一视频帧和多个第二视频帧,进而获取用于指示待处理视频的动作类别的分类结果,进而提供了一种无需通过3d卷积神经网络获取视频的时序信息的方法,可以有效解决相关技术中存在的计算过程比较慢,消耗的计算资源比较多的技术问题,从而有效节省了计算资源。
71.如图2所示,作为一种可选的实施方式,如前述的方法,所述步骤s102对待处理视频按照第一抽帧方案进行抽帧,得到多个第一视频帧,包括如下所述步骤:
72.步骤s201,确定第一抽帧方案所指示的单位时间抽帧数;
73.步骤s202,按照单位时间抽帧数在待处理视频中进行抽帧,得到多个第一预设视频帧;
74.步骤s203,对所有第一预设视频帧中的两个时序相邻的第一预设视频帧进行插帧操作,得到第一插帧后视频序列;
75.步骤s204,将第一插帧后视频序列中的视频帧作为第一视频帧。
76.在得到待处理视频之后,即可对该待处理视频进行抽帧,并且,先确定出第一抽帧方案所指示的单位时间抽帧数。单位时间抽帧数可以是每秒时长抽帧数量,例如,30帧/秒,60帧/秒等等。
77.在确定出单位时间抽帧数之后,即可按照该单位时间抽帧数在待处理视频中进行
抽帧,以得到多个第一预设视频帧;并且,一般情况下时均匀抽帧,例如,当待处理视频的fps为60,且单位时间抽帧数为30帧/秒的情况下,则每隔一帧进行抽帧。
78.在抽帧得到多个第一预设视频帧之后,为了增加视频帧的动作信息,可以对所有第一预设视频帧中的两个时序相邻的第一预设视频帧进行插帧操作,以在每两个时序相邻的第一预设视频帧中插入新的视频帧,进而得到第一插帧后视频序列,第一插帧后视频序列中包括所有第一预设视频帧,以及通不过插帧操作插入的视频帧。
79.在进行抽帧时,抽帧得到的每个第一预设视频帧可以具有对应的时间信息,因此两个时序相邻的第一预设视频帧为时间信息最为接近的两个第一预设视频帧。
80.在得到第一预设视频帧之后,即可将第一插帧后视频序列中的视频帧作为第一视频帧。
81.相似的,对待处理视频按照第二抽帧方案进行抽帧,得到多个第二视频帧可以包括如下所述步骤:
82.确定第二抽帧方案所指示的单位时间抽帧数;
83.按照单位时间抽帧数在待处理视频中进行抽帧,得到多个第二预设视频帧;
84.对所有第二预设视频帧中的两个时序相邻的第二预设视频帧进行插帧操作,得到第二插帧后视频序列;
85.将第二插帧后视频序列中的视频帧作为第二视频帧。
86.并且,得到第二视频帧的实现方式可以参照前述实施例中的得到第一视频帧的实现方式,在此不再进行赘述。
87.通过本实施例中的方法,可以通过插帧操作,得到插帧后的第一插帧后视频序列,进而得到第一视频帧,从而可以增加视频帧的动作信息,以便于后期可以基于更多的识别信息对待处理视频进行分类。
88.如图3所示,作为一种可选的实施方式,如前述的方法,所述步骤s203对所有第一预设视频帧中的两个时序相邻的第一预设视频帧进行插帧操作,包括如下所述步骤:
89.步骤s301,对两个时序相邻的第一预设视频帧进行作差得到第一过渡视频帧,其中,第一预设视频帧用于指示两个时序相邻的第一预设视频帧之间的差异;
90.步骤s302,将第一过渡视频帧插入两个时序相邻的第一预设视频帧之间。
91.在得到抽帧后的所有第一预设视频帧之后,对于其中任意两个时序相邻的第一预设视频帧进行作差,得到第一过渡视频帧。例如,当存在第一预设视频帧i以及第一预设视频帧ii的情况下,可以通过将第一预设视频帧i以及第一预设视频帧ii分别通过图像矩阵进行表示,并分别得到与第一预设视频帧i对应的图像矩阵i,以及与第一预设视频帧ii对应的图像矩阵ii,然后通过对图像矩阵i以及图像矩阵ii进行作差,以得到第一过渡视频帧;因此,该第一过渡视频帧即可表征出两个时序相邻的第一预设视频帧之间的差异。
92.在得到第一过渡视频帧之后,可以将第一过渡视频帧插入两个时序相邻的第一预设视频帧之间。
93.在按照上述方法得到与任意两个时序相邻的第一预设视频帧对应的第一过渡视频帧,并对第一过渡视频帧进行插入后,即可得到第一插帧后视频序列。
94.对于第二插帧后视频序列的获取方法可以包括:
95.对两个时序相邻的第二预设视频帧进行作差得到第二过渡视频帧,其中,第二预
设视频帧用于指示两个时序相邻的第二预设视频帧之间的差异;
96.将第二过渡视频帧插入两个时序相邻的第二预设视频帧之间。
97.并且得到第二插帧后视频序列的具体实现方式可以参照前述实施例中得到第一插帧后视频序列的实现方式,在此不再进行赘述。
98.通过本实施例中的方法,通过作差得到第一过渡视频帧,可以使该第一过渡视频帧可以体现出两个时序相邻的第一预设视频帧之间的差异,进而也可有效降低用于进行分类的视频帧的大小,从而可以有效降低消耗的计算资源,提升计算效率;同时,通过在相邻的帧间插入相邻帧的差值帧,增强了动作信息的提取。
99.作为一种可选的实施方式,如前述的方法,所述步骤s103基于自注意力机制对第一视频帧以及第二视频帧进行处理,得到用于指示待处理视频的行为类别的分类结果,包括如下所述步骤:
100.步骤s401,对每个第一视频帧进行卷积操作,得到与每个第一视频帧对应的第一卷积向量;对每个第二视频帧进行卷积操作,得到与每个第二视频帧对应的第二卷积向量。
101.在得到所有第一视频帧以及所有第二视频帧之后,可以分别通过两个卷积神经网络分别对第一视频帧以及第二视频帧进行卷积操作。
102.可选地,可以将每个第一视频帧输入第一卷积神经网络(projector1)中,进行卷积操作,得到与每个所述第一视频帧对应的第一卷积向量;将每个第二视频帧输入第二卷积神经网络(projector2)中,进行卷积操作,得到与每个所述第二视频帧对应的第二卷积向量。
103.步骤s402,通过第一自注意力模块对第一卷积向量进行处理,得到第一输出结果;通过第二自注意力模块对第二卷积向量进行处理,得到第二输出结果。
104.在得到第一卷积向量以及第二卷积向量之后,即可通过与第一卷积向量对应的第一自注意力模块对各个第一卷积向量进行处理,并得到第一输出结果,以及通过与第二卷积向量对应的第二自注意力模块对各个第二卷积向量进行处理,并得到第二输出结果。
105.步骤s403,通过第三自注意力模块对第一输出结果以及第二输出结果进行处理,得到分类结果。
106.在得到第一输出结果以及第二输出结果之后,为了使第一视频帧携带的信息与第二视频帧携带的信息之间进行交流,因此,将第一输出结果以及第二输出结果第三自注意力模块进行处理,并最终得到分类结果。
107.通过本实施例中的方法,通过设置三个自注意力模块,既能实现所有第一视频帧之间的信息交流、所有第二视频帧之间的信息交流,还能够实现第一视频帧与第二视频帧之间的信息交流,进而可以使最终得到的分类结果的置信度更高,提升分类的准确性。
108.作为一种可选的实施方式,如前述的方法,在所述步骤s402通过第一自注意力模块对第一卷积向量进行处理,得到第一输出结果;通过第二自注意力模块对第二卷积向量进行处理,得到第二输出结果之前,方法还包括如下所述步骤:
109.步骤s501,按照各个第一视频帧之间的时序关系,确定与每个第一卷积向量对应的第一次序;根据所有第一次序,得到第一位置向量,其中,第一位置向量用于指示各个第一卷积向量之间的次序关系。
110.在抽帧得到各个第一视频帧之后,即可得到各个第一视频帧之间的时序关系,并
且,在得到各个第一视频帧对应的第一卷积向量之后,可以按照该时序关系,确定出与每个第一卷积向量对应的第一次序,并基于所有第一次序,得到第一位置向量。
111.可选的,得到第一位置向量的第一向量模块可以通过预先训练得到,以使第一向量模块在实际使用过程中可以确定出各个第一视频帧时间的时序关系,并依照其确定出各个第一卷积向量的第一次序。
112.步骤s502,按照各个第二视频帧之间的时序关系,确定与每个第二卷积向量对应的第二次序;根据所有第二次序,得到第二位置向量,其中,第二位置向量用于指示各个第二卷积向量之间的次序关系。
113.在抽帧得到各个第二视频帧之后,即可得到各个第二视频帧之间的时序关系,并且,在得到各个第二视频帧对应的第二卷积向量之后,可以按照该时序关系,确定出与每个第二卷积向量对应的第二次序,并基于所有第二次序,得到第二位置向量。
114.可选的,得到第二位置向量的第二向量模块可以通过预先训练得到,以使第二向量模块在实际使用过程中可以确定出各个第二视频帧时间的时序关系,并依照其确定出各个第二卷积向量的第二次序。
115.通过本实施例中的方法,可以确定出与所有第一卷积向量对应的第一位置向量,以及与所有第二卷积向量对应的第二位置向量;进而可以便于后期在通过第一自注意力模块对第一卷积向量进行处理时可以依据第一位置向量确定出各个第一卷积向量之间的关系,以及在通过第二自注意力模块对第二卷积向量进行处理时可以依据第二位置向量确定出各个第二卷积向量之间的关系。
116.作为一种可选的实施方式,如前述的方法,所述步骤s402中通过第一自注意力模块对第一卷积向量进行处理,得到第一输出结果,包括如下所述步骤:
117.步骤s611,将第一位置向量,第一预设分类头以及所有第一卷积向量输入第一自注意力模块,得到与每个第一卷积向量对应的第一特征向量,以及与第一预设分类头对应的第一处理后分类头,其中,第一预设分类头为第一自注意力模块在网络训练过程中初始化得到的向量,第一处理后分类头用于指示所有第一卷积向量的特征;
118.步骤s612,将第一特征向量以及第一处理后分类头作为第一输出结果。
119.在得到第一位置向量以及卷积向量之后,即可将第一位置向量,第一预设分类头以及所有第一卷积向量输入第一自注意力模块,以得到与每个第一卷积向量对应的第一特征向量,以及与第一预设分类头对应的第一处理后分类头。
120.可选地,第一预设分类头可以是人为确定的一个固定token,用来充当分类头,第一预设分类头的大小和第一卷积向量的大小一样,即,可以是一个随机初始化的向量,需要在网络训练的过程中学习。基于第一预设分类头得到的第一处理后分类头中已学习得到各个第一卷积向量中包括的特征。
121.在得到第一特征向量以及第一处理后分类头之后,即可将第一特征向量以及第一处理后分类头作为第一输出结果。
122.所述步骤s402中通过第二自注意力模块对第二卷积向量进行处理,得到第二输出结果,包括如下所述步骤:
123.步骤s621,将第二位置向量,第二预设分类头以及所有第二卷积向量输入第二自注意力模块,得到与每个第二卷积向量对应的第二特征向量,以及与第二预设分类头对应
的第二处理后分类头,其中,第二预设分类头为第二自注意力模块在网络训练过程中初始化得到的向量,第二处理后分类头用于指示所有第二卷积向量的特征;
124.步骤s622,将第二特征向量以及第二处理后分类头作为第二输出结果。
125.在得到第二位置向量以及卷积向量之后,即可将第二位置向量,第二预设分类头以及所有第二卷积向量输入第二自注意力模块,以得到与每个第二卷积向量对应的第二特征向量,以及与第二预设分类头对应的第二处理后分类头。
126.可选地,第二预设分类头可以是人为确定的一个固定token,用来充当分类头,第二预设分类头的大小和第二卷积向量的大小一样,即,可以是一个随机初始化的向量,需要在网络训练的过程中学习。基于第二预设分类头得到的第二处理后分类头中已学习得到各个第二卷积向量中包括的特征。
127.在得到第二特征向量以及第二处理后分类头之后,即可将第二特征向量以及第二处理后分类头作为第二输出结果。由于第二视频帧的数量少于第一视频帧的数量,因此,通过第二输出结果可以表征出运动迟缓的物体的运动变化情况。
128.通过本实施例中的方法,可以快速确定出与第一视频帧对应的第一分支的第一输出结果,以及与第二视频帧对应的第二分支的第二输出结果,进而在第一视频帧的数量大于第二视频帧数量的情况下,可以得到不同物体的运动结果。
129.作为一种可选的实施方式,如前述的方法,所述步骤s103通过第三自注意力模块对第一输出结果以及第二输出结果进行处理,得到分类结果,包括如下所述步骤:
130.步骤s701,将第一特征向量、第一处理后分类头、第二特征向量以及第二处理后分类头输入第三自注意力模块,得到与第一处理后分类头对应的第一目标分类头,以及与第二处理后分类头对应的第二目标分类头,其中,第一目标分类头用于指示第一预设分类结果,第二目标分类头用于指示第二预设分类结果;
131.步骤s702,对第一预设分类结果以及第二预设分类结果进行加权处理,得到分类结果。
132.在得到第一特征向量、第一处理后分类头、第二特征向量以及第二处理后分类头之后,即可将上述第一特征向量、第一处理后分类头、第二特征向量以及第二处理后分类头输入第三自注意力模块中,以得到与第一处理后分类头对应的第一目标分类头,以及与第二处理后分类头对应的第二目标分类头。由于第一特征向量、第一处理后分类头、第二特征向量以及第二处理后分类头输入第三自注意力模块,因此,第一目标分类头可以获取第二特征向量以及第二处理后分类头中的信息,第二目标分类头可以获取第一特征向量以及第一处理后分类头中的信息。
133.得到的第一目标分类头用于指示对应于该待处理视频的第一预设分类结果,第二目标分类头用于指示对应于该待处理视频的第二预设分类结果。
134.因此可以根据第一预设分类结果以及第二预设分类结果之后,可以对第一预设分类结果以及第二预设分类结果进行加权处理,得到分类结果,例如,预先确定与第一预设分类结果对应的第一权重,以及与第二预设分类结果对应的第二权重,可选地,可以使第一权重与第二权重之和为1,进而可以通过第一权重与第一预设分类结果之积以及第二权重与第二预设分类结果之积,确定出最终的分类结果。
135.例如,当第一分类结果为:类型1的概率为80%,类型2的概率为20%,第二分类结
果为:类型1的概率为90%,类型3的概率为10%,且第一权重为0.4,第二权重为0.6,则得到分类结果为:类型1的概率为86%,类型2的概率为8%,类型3的概率为6%。最终可以以概率最大的类型1作为待处理视频的类型。
136.通过本实施例中的方法,通过第三自注意力模块,可以使第一目标分类头可以获取第二特征向量以及第二处理后分类头中的信息,第二目标分类头可以获取第一特征向量以及第一处理后分类头中的信息,进而达到有效提高分类的准确性。
137.如图4所示,提供一种应用前述任一实施例的应用例:
138.本方案分为两个分支,分支1为密集抽帧策略,不同的视频设置固定的fps,抽取密集的密集视频帧(即,第一预设视频帧),为增加视频帧的动作信息,相邻的视频帧之间做差,形成第一新视频帧(即,第一过渡视频帧),将密集视频帧与新视频帧按照一定的顺序组成新的帧序列(即,第一插帧后视频序列),将新的帧序列输入卷积神经网络(projector1),将图片帧简单卷积处理得到第一卷积向量,并和第一位置向量和第一cls1(即,第一预设分类头)一起输入transformer1模块(即,第一自注意力模块)中。分支2在分支1的抽帧策略基础上,继续抽帧得到稀疏视频帧(即,第二预设视频帧),分支2获得的帧数为分支1的1/4,然后将相邻的视频帧之间做差,形成第二新视频帧(即,第二过渡视频帧),将稀疏视频帧与第二新视频帧按照一定的顺序组成新的帧序列,将新的帧序列输入卷积神经网络(projector2),将图片帧简单卷积处理得到第二卷积向量,并和第二位置向量和第一cls2(即,第二预设分类头)一起输入transformer2模块(即,第二自注意力模块)中。transformer2模块要比transformer1模块轻量。
139.为了使分支1和分支2的消息进行交流,将transformer1模块和transformer2模块的输出再输入transformer3模块(即,第三自注意力模块),最终将transformer3模块输出的第三cls1(即,第一目标分类头)和第三cls2(即,第一目标分类头)进行相加后再进行分类,得到分类结果。
140.可选地,在训练阶段还可以将transformer3模块输出的密集帧向量整合到一起后再进行分类,得到第二分类结果,并通过该第二分类结果对分类结果进行约束。
141.进一步的,transformer模块有几个相同的encoder模块组成,每个encoder的结构是相同的,输入向量加上位置向量,首先经过layernorm层,再经过多头注意力模块(multi-head attention),经过残差结构,再经过layernorm和多层感知机构(一个简单的全连接前馈网络)。
142.残差模块的作用:和其他神经网络模型中的残差连接作用一致,都是为了将信息传递的更深,增强模型的拟合能力。通过残差连接可以增强模型的表现。
143.norm的作用:随着网络层数的额增加,通过多层的计算后参数可能会出现过大,过小,方差变大等现象,这会导致学习过程出现异常,模型的收敛非常慢,因此对每一层计算后的数值进行规范化可以提升模型的表现。
144.多头注意力的作用:是多个独立的attention计算,作为一个集成的作用,防止过拟合,同时也能通过减低维度来减少总就算消耗。如图5所示,根据本技术另一方面的一个实施例,还提供了一种视频分类装置,包括:
145.获取模块1,用于获取需要进行分类的待处理视频;
146.抽帧模块2,用于对待处理视频按照第一抽帧方案进行抽帧,得到多个第一视频
帧;对待处理视频按照第二抽帧方案进行抽帧,得到多个第二视频帧,其中,第一视频帧的数量多于第二视频帧的数量;
147.分类模块3,用于基于自注意力机制对第一视频帧以及第二视频帧进行处理,得到用于指示待处理视频的行为类别的分类结果。
148.具体的,本发明实施例的装置中各模块实现其功能的具体过程可参见方法实施例中的相关描述,此处不再赘述。
149.根据本技术的另一个实施例,还提供一种电子设备,包括:如图6所示,电子设备可以包括:处理器1501、通信接口1502、存储器1503和通信总线1504,其中,处理器1501,通信接口1502,存储器1503通过通信总线1504完成相互间的通信。
150.存储器1503,用于存放计算机程序;
151.处理器1501,用于执行存储器1503上所存放的程序时,实现上述方法实施例的步骤。
152.上述电子设备提到的总线可以是外设部件互连标准(peripheral component interconnect,pci)总线或扩展工业标准结构(extended industry standard architecture,eisa)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
153.通信接口用于上述电子设备与其他设备之间的通信。
154.存储器可以包括随机存取存储器(random access memory,ram),也可以包括非易失性存储器(non-volatile memory,nvm),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
155.上述的处理器可以是通用处理器,包括中央处理器(central processing unit,cpu)、网络处理器(network processor,np)等;还可以是数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
156.本技术实施例还提供一种计算机可读存储介质,存储介质包括存储的程序,其中,程序运行时执行上述方法实施例的方法步骤。
157.需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
158.以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所申请的原理和新颖特点相一致的最宽的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1