CN116994188A - 一种动作识别方法、装置、电子设备及存储介质 - Google Patents
一种动作识别方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN116994188A CN116994188A CN202311226829.9A CN202311226829A CN116994188A CN 116994188 A CN116994188 A CN 116994188A CN 202311226829 A CN202311226829 A CN 202311226829A CN 116994188 A CN116994188 A CN 116994188A
- Authority
- CN
- China
- Prior art keywords
- video
- action
- identified
- frame
- target
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000009471 action Effects 0.000 title claims abstract description 341
- 238000000034 method Methods 0.000 title claims abstract description 120
- 230000033001 locomotion Effects 0.000 claims abstract description 263
- 238000012545 processing Methods 0.000 claims abstract description 69
- 238000012549 training Methods 0.000 claims description 102
- 230000004927 fusion Effects 0.000 claims description 98
- 238000005070 sampling Methods 0.000 claims description 29
- 239000013598 vector Substances 0.000 claims description 28
- 238000007499 fusion processing Methods 0.000 claims description 20
- 230000000977 initiatory effect Effects 0.000 claims description 17
- 230000002159 abnormal effect Effects 0.000 claims description 16
- 238000004590 computer program Methods 0.000 claims description 14
- 238000004422 calculation algorithm Methods 0.000 claims description 10
- 238000010606 normalization Methods 0.000 claims description 7
- 238000005516 engineering process Methods 0.000 abstract description 18
- 238000000605 extraction Methods 0.000 abstract description 12
- 238000013473 artificial intelligence Methods 0.000 abstract description 11
- 230000000694 effects Effects 0.000 abstract description 11
- 230000003068 static effect Effects 0.000 abstract description 10
- 230000008859 change Effects 0.000 abstract description 8
- 230000000875 corresponding effect Effects 0.000 description 144
- 230000008569 process Effects 0.000 description 70
- 238000010586 diagram Methods 0.000 description 32
- 230000000007 visual effect Effects 0.000 description 13
- 238000013527 convolutional neural network Methods 0.000 description 4
- 230000007774 longterm Effects 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 238000010276 construction Methods 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 239000000203 mixture Substances 0.000 description 3
- 238000012935 Averaging Methods 0.000 description 2
- 230000004075 alteration Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 230000000903 blocking effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 239000012633 leachable Substances 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000003062 neural network model Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000011176 pooling Methods 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000003058 natural language processing Methods 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/41—Higher-level, semantic clustering, classification or understanding of video scenes, e.g. detection, labelling or Markovian modelling of sport events or news items
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/74—Image or video pattern matching; Proximity measures in feature spaces
- G06V10/761—Proximity, similarity or dissimilarity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/80—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
- G06V10/806—Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of extracted features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/84—Arrangements for image or video recognition or understanding using pattern recognition or machine learning using probabilistic graphical models from image or video features, e.g. Markov models or Bayesian networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/46—Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/20—Movements or behaviour, e.g. gesture recognition
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Artificial Intelligence (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Computational Linguistics (AREA)
- Probability & Statistics with Applications (AREA)
- Psychiatry (AREA)
- Social Psychology (AREA)
- Human Computer Interaction (AREA)
- Image Analysis (AREA)
Abstract
本申请涉及数据处理技术领域,可应用于云技术、人工智能、智慧交通、辅助驾驶等各种场景,尤其涉及一种动作识别方法、装置、电子设备及存储介质,该方法为:获取待识别帧序列,并获取基于各候选动作分别生成的提示语句,其中,待识别帧序列中包括从待识别视频中采样的视频帧;再采用目标动作识别模型,输出待识别帧序列在各候选动作上的匹配概率;之后,基于各匹配概率,确定待识别视频对应的目标动作。这样,确定的视频特征中不仅汇集了各视频帧各自的静态图像语义的影响,还汇集了表征各视频帧间动态变化的语义信息的影响,提高了视频特征提取效果,为动作识别的准确性提供了保障。
Description
技术领域
本申请涉及数据处理技术领域,尤其涉及一种动作识别方法、装置、电子设备及存储介质。
背景技术
随着人工智能技术的发展,可以借助于神经网络模型,对待发布的视频进行动作识别,避免发布不符合预设的发布规范的视频。
相关技术下,在针对视频进行动作识别时,仅提取了视频帧的帧图像特征,由于视频特征中仅融合了静态的图像语义,所以动作识别效果较差,无法保障动作识别的准确性。
发明内容
本申请实施例提供一种动作识别方法、装置、电子设备及存储介质,用以提高对于视频的动作识别准确性。
第一方面,提出一种动作识别方法,包括:
获取待识别帧序列,并获取基于各候选动作分别生成的提示语句,其中,所述待识别帧序列中包括:从待识别视频中采样的视频帧;
采用已训练的目标动作识别模型,执行以下操作:
分别提取所述待识别帧序列中各视频帧的帧图像特征,并对获得的各帧图像特征进行融合处理,得到图像融合特征;基于帧间隔在目标步长范围内的,每两个视频帧之间的帧图像特征的差异,得到所述待识别帧序列的运动融合特征;根据所述图像融合特征和所述运动融合特征,获得视频特征;
分别提取各提示语句各自的文本特征;
依据各文本特征各自与所述视频特征之间的特征相似度,分别获得 所述待识别帧序列在所述各候选动作上的匹配概率;
基于各匹配概率,确定所述待识别视频对应的目标动作。
第二方面,提出一种动作识别装置,包括:
获取单元,用于获取待识别帧序列,并获取基于各候选动作分别生成的提示语句,其中,所述待识别帧序列中包括:从待识别视频中采样的视频帧;
执行单元,用于采用已训练的目标动作识别模型,执行以下操作:
分别提取所述待识别帧序列中各视频帧的帧图像特征,并对获得的各帧图像特征进行融合处理,得到图像融合特征;基于帧间隔在目标步长范围内的,每两个视频帧之间的帧图像特征的差异,得到所述待识别帧序列的运动融合特征;根据所述图像融合特征和所述运动融合特征,获得视频特征;
分别提取各提示语句各自的文本特征;
依据各文本特征各自与所述视频特征之间的特征相似度,分别获得 所述待识别帧序列在所述各候选动作上的匹配概率;
确定单元,用于基于各匹配概率,确定所述待识别视频对应的目标动作。
可选的,所述分别提取各提示语句各自的文本特征时,所述执行单元用于:
针对各提示语句,分别执行以下操作:在一个提示语句中,确定与候选动作的动作类型名称对应的目标词位区域,以及与非动作类型名称的文本内容对应的其他词位区域;对所述目标词位区域和所述其他词位区域的文本内容分别进行词嵌入处理,并将所述运动融合特征,分别与所述其他词位区域对应的词嵌入结果进行叠加,得到的所述一个提示语句对应的语句嵌入结果;
基于各语句嵌入结果进行特征提取,得到所述各提示语句各自对应的文本特征。
可选的,所述各候选动作,是所述执行单元采用以下任意一种方式确定的:
将训练初始动作识别模型得到目标动作识别模型时采用的各样本动作,分别确定为候选动作;
将训练初始动作识别模型得到目标动作识别模型时采用的各样本动作,以及设置的各扩展动作,分别确定为候选动作。
可选的,所述获取基于各候选动作分别生成的提示语句时,所述执行单元用于:
获取词位模板;所述词位模板中包括针对候选动作的动作类型名称预留的目标词位区域,以及针对至少一个可学习的提示向量预留的其他词位区域;
针对各候选动作,分别执行以下操作:将一个候选动作对应的动作类型名称填充至所述词位模板中的所述目标词位区域,得到对应的一个提示语句可选的,所述基于帧间隔在目标步长范围内的,每两个视频帧之间的帧图像特征的差异,得到所述待识别帧序列的运动融合特征时,所述执行单元用于:
确定目标步长范围;
按照所述各视频帧的时序顺序依次读取每个视频帧,并针对读取的视频帧执行以下操作:在时序顺序在所述视频帧之后的其他视频帧中,确定与所述视频帧之间的帧间隔在所述目标步长范围内的目标视频帧;分别计算所述视频帧与每个目标视频帧之间的图像特征差异,得到对应的运动特征;
对获得的各运动特征进行融合处理,得到运动融合特征。
可选的,所述待识别帧序列,是采用以下任意一项操作构建的:
采用预设的对象识别算法,确定所述待识别视频中包含的各动作产生对象,并在所述待识别视频中,确定所述各动作产生对象各自对应的至少一个视频子段,以及在每个视频子段中,采样得到对应的一个待识别帧序列,其中,每个视频子段中,各视频帧时序连续且对应的视频帧总数超过设定值;
采用预设的动作起止预测算法,从所述待识别视频中确定出各动作起止时段,并在每个动作起止时段指示的视频子段中,采样得到对应的一个待识别帧序列。
可选的,所述基于各匹配概率,确定所述待识别视频对应的目标动作之后,所述确定单元还用于:
获取针对所述待识别视频对应的至少一个待识别帧序列,分别识别的目标动作;
确定至少一个目标动作中不包含预设的异常动作的情况下,基于所述至少一个目标动作,确定所述待识别视频对应的动作标签,并发布添加有所述动作标签的所述待识别视频。
可选的,所述获取待识别帧序列之后,所述采用已训练的目标动作识别模型,执行以下操作之前,所述执行单元还用于:
采用预设的缩放方式,将所述各视频帧分别调整为指定尺寸;
针对指定尺寸的所述各视频帧,分别进行图像像素值的归一化处理,得到处理后的所述各视频帧。
可选的,所述装置还包括训练单元,所述目标动作识别模型,是所述训练单元采用以下方式训练得到的:
获取初始动作识别模型和各训练样本,其中,所述初始动作识别模型中包括预训练后的文本编码网络和图像编码网络,以及待训练的其他网络;一条训练样本中包括:一个样本帧序列、基于各样本动作生成的各样本提示语句,以及样本识别结果;
采用所述各训练样本,对所述初始动作识别模型进行多轮迭代训练,直至满足预设的收敛条件,得到训练后的目标动作识别模型。
可选的,在基于读取的训练样本,对所述初始动作识别模型的一轮迭代训练过程中,所述训练单元用于执行以下操作:
针对样本帧序列中的各样本视频帧,分别得到向量化处理结果,并采用所述图像编码网络,基于各向量化处理结果,提取对应的帧图像特征,以及基于各帧图像特征,获得图像融合特征和运动融合特征;
针对各提示语句,分别获得在所述运动融合特征影响下的语句嵌入结果,并采用所述文本编码网络,基于各语句嵌入结果,分别提取对应的文本特征;
依据各文本特征各自与所述视频特征间的特征相似度,分别获得所述样本帧序列在所述各样本动作上的匹配概率,并基于由各匹配概率确定的预测识别结果,与样本识别结果间的交叉熵损失,调整所述其他网络的网络参数。
第三方面,提出一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述的方法。
第四方面,提出一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的方法。
第五方面,提出一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现上述任一项所述的方法。
本申请有益效果如下:
本申请实施例中,提出了一种动作识别方法、装置、电子设备及存储介质,获取待识别帧序列,并获取基于各候选动作分别生成的提示语句,其中,待识别帧序列中包括:从待识别视频中抽取的视频帧;之后,采用已训练的目标动作识别模型,基于待识别帧序列提取视频特征,以及分别提取各提示语句各自的文本特征后,依据各文本特征各自与视频特征之间的特征相似度,分别获得待识别帧序列在各候选动作上的匹配概率;进而依据各匹配概率,确定待识别视频对应的目标动作。
在采用目标动作识别模型,提取视频特征的过程中,分别提取待识别帧序列中各视频帧的帧图像特征,并对获得的各帧图像特征进行融合处理,得到图像融合特征;以及,基于帧间隔在预设步长范围内的,每两个视频帧之间的帧图像特征差异,得到待识别帧序列的运动融合特征;再根据图像融合特征和运动融合特征,获得视频特征。
这样,确定的视频特征中汇集了两方面的特征内容,一方面是从图像内容的角度得到的图像融合特征,另一方面是基于各视频帧之间的帧图像特征差异,得到的运动融合特征;使得得到的视频特征中,不仅汇集了各视频帧各自的静态图像语义的影响,还汇集了表征各视频帧间动态变化的语义信息的影响,相当于在提取视频特征的过程中,引入了能够描述动作动态变化的特征内容,因而提取的视频特征能够有效地描述视频中的动作变化,提高了视频特征的提取效果,为依据视频特征进行的动作匹配提供了有效的匹配依据;
进而,在依据提取的视频特征和各文本特征进行相似度计算,以获得待识别帧序列在各候选动作上的匹配概率的过程中,借助于能够有效描述出待识别视频中静态图像语义和动态运动信息的视频特征,能够准确地确定待识别帧序列在各候选动作上的匹配概率,提高了各匹配概率的可信度;因而在依据各匹配概率最终确定目标动作时,能够得到很好的动作识别效果,而且,为动作识别的准确性提供了保障。
附图说明
图1A为本申请实施例中一种假设的动作识别模型训练过程示意图;
图1B为本申请实施例中另一种假设的动作识别模型的训练过程示意图;
图2为本申请实施例中可能的应用场景示意图;
图3为本申请实施例中动作识别的过程示意图;
图4A为本申请实施例中一种基于待识别视频确定各视频子段的方式示意图;
图4B为本申请实施例中另一种基于待识别视频确定各视频子段的方式示意图;
图5A为本申请实施例构建的一种初始动作识别模型的模型结构示意图;
图5B为本申请实施例构建的另一种初始动作识别模型的模型结构示意图;
图6A为本申请实施例中训练得到目标动作识别模型的过程示意图;
图6B为本申请实施例中生成训练样本的过程示意图;
图7A为本申请实施例中应用目标动作识别模型处理得到各匹配概率的过程示意图;
图7B为本申请实施例中得到图像融合特征涉及到的模型结构示意图;
图7C为本申请实施例中确定语句嵌入结果的过程示意图;
图8为本申请实施例中视频发布的过程示意图;
图9为本申请实施例中图像生成装置的逻辑结构示意图;
图10为应用本申请实施例的一种电子设备的硬件组成结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请技术方案的一部分实施例,而不是全部的实施例。基于本申请文件中记载的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请技术方案保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够在除了这里图示或描述的那些以外的顺序实施。
以下对本申请实施例中的部分用语进行解释说明,以便于本领域技术人员理解。
对比语言-图像预训练(Contrastive Language-Image Pretrain,CLIP)模型:是一种基于带噪对比学习的大规模文本-图像跨模态预训练模型,处于开源状态,在图像领域具有强大的判别能力。需要说明的是,CLIP是基于海量文本-图像对的预训练模型,近年来在图像分类等下游任务中取得很大成果。将CLIP模型适配到下游任务的训练场景中时需要一定的设计,因为CLIP模型的训练样本为文本和图像对,文本通常为长句或者短语,而在分类任务中,图像的类别名称往往只是单词粒度的文本,因此造成了CLIP训练模态和实际应用的模态之间的差距,此时就需要通过提示学习的方式消除差距。
提示学习(Prompts Learning):在本申请实施例中,具体指代文本提示(TextPrompts)学习,具体的,通过设置一个通用的词位模板,将描述动作类别的文本标签重构为模型接受的文本输入;需要说明的是,本申请提出的技术方案中,借助于提示学习,可以显著缩小输入模型的帧序列所对应的动作标签,与输入模型的文本之间的语义差距,从而更好的实现针对视频的动作识别任务。
人工智能(Artificial Intelligence,AI):是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
下面对本申请实施例的设计思想进行简要介绍:
为了实现针对视频的动作识别,申请人在构思本申请提出的技术方案的过程中,想到可以借助于神经网络模型实现处理。
参阅图1A所示,其为本申请实施例中一种假设的动作识别模型训练过程示意图,假设采用图1A所示意的训练过程进行训练,则先构建各训练样本,其中,一条训练样本中包括样本帧序列、样本帧序列对应的真值动作,以及基于提示模板和各样本动作生成各样本提示语句;在生成样本帧序列时,可以从样本视频中采样T个样本视频帧,得到对应的样本帧序列,样本提示语句是基于固定的提示模板和各样本动作生成的。
例如,提示模板形如:“an action of [CLASS]”,其中,[CLASS]对应的内容表示类别标签(即样本动作);在具体生成样本提示语句时,可以将提示模板中的“CLASS”替换为具体的样本动作,如,CLASS=“Walk”表示“行走”动作;CLASS=“Run”表示“奔跑”动作等。
进而,采用各训练样本对图1A所示意的动作识别模型进行多轮迭代训练,直至模型收敛,得到训练后的目标动作识别模型。
在一轮迭代训练过程中,基于CLIP模型,提取样本视频帧和样本提示语句的跨模态特征,其中,样本提示语句是通过固定的提示模板和各样本动作生成的;在获得一个样本帧序列对应的视频特征的过程中,对T个样本视频帧分别进行特征提取,得到T个帧图像特征,再将提取的T个帧图像特征直接进行算术平均(Mean),得到对应的视频特征;在提取各样本提示语句各自对应的文本特征的过程中,借助于CLIP模型,针对各样本提示语句分别提取得到相应的文本特征。
之后,借助于图1A所示意的模型,通过分别计算视频特征和各文本特征之间的余弦相似度,确定对应的预测动作;再基于预测动作与对应的真值动作之间的预测差异,计算交叉熵损失,并借助于交叉熵损失实现模型参数的调整,使得通过交叉熵损失的约束,能够最大化真值(Ground Truth)类别的相似度。
在此基础上,在具体的应用过程中,针对视频进行动作识别时,先从视频中抽取出待识别帧序列,再分别将构建模型训练样本时确定的各样本动作,填充至预设的提示模板中,得到提示语句;之后,采用训练后的目标动作识别模型,执行以下操作:分别提取各提示语句的文本特征,以及将针对待识别帧序列中各视频帧分别提取的帧图像特征,进行算数平均处理,得到对应的视频特征,再通过分别计算各文本特征和视频特征之间的相似度,确定对应的预测动作类别。
然而,由于目前采用目标动作识别模型提取的视频特征,是通过计算各视频帧的平均帧图像特征得到的,视频特征中仅融合了静态的图像语义,使得视频特征无法有效地描述视频中的动作变化,极大的降低了动作识别效果,无法保障动作识别的准确性。
在此基础上,申请人又想到可以在训练动作识别模型的过程中,引入可学习的提示向量。
参阅图1B所示,其为本申请实施例中另一种假设的动作识别模型的训练过程示意图,在附图1B示意的训练方式中,为了提取文本特征,设置了一组可学习的提示向量(Prompts Vectors),并与类别标签进行组装,因此输入至编码网络(text encoder)的内容格式为: “[...][Vn-3][Vn-2][Vn-1][CLASS][Vn+1][Vn+2][Vn+3][...]”,其中,在训练过程中,[Vi]是可学习的文本。进而,得到text encoder输出的文本特征(text embedding)。
为了提取视频特征,采样T帧图像,并使用CLIP的图像编码网络(Image encoder)得到T帧图像的图像特征,然后将T帧图像特征输入到一层Transformer层进行融合,得到视频特征。
另外,在模型训练过程中,计算CLIP模型提取到的视频特征和文本特征间的余弦相似度,并通过交叉熵损失进行训练。
进而,在具体的应用过程中,针对视频进行动作识别时,先从视频中抽取出待识别帧序列,再分别将构建模型训练样本时确定的各样本动作,填充至预设的提示模板中,得到提示语句;之后,采用训练后的目标动作识别模型,执行以下操作:分别提取各提示语句的文本特征,以及将针对待识别帧序列中各视频帧分别提取的帧图像特征,进行融合处理,得到视频特征;再通过分别计算各文本特征和视频特征之间的相似度,确定对应的预测动作类别。
然而,由于此种训练方式得到的目标动作模型,在提取视频特征时,是通过融合静态的图像语义得到视频特征,使得视频特征依旧无法有效地描述视频中的动作变化,极大的降低了动作识别效果,无法保障动作识别的准确性。
有鉴于此,本申请实施例中,提出了一种动作识别方法、装置、电子设备及存储介质,获取待识别帧序列,并获取基于各候选动作分别生成的提示语句,其中,待识别帧序列中包括:从待识别视频中抽取的视频帧;之后,采用已训练的目标动作识别模型,基于待识别帧序列提取视频特征,以及分别提取各提示语句各自的文本特征后,依据各文本特征各自与视频特征之间的特征相似度,分别获得待识别帧序列在各候选动作上的匹配概率;进而依据各匹配概率,确定待识别视频对应的目标动作。
在采用目标动作识别模型,提取视频特征的过程中,分别提取待识别帧序列中各视频帧的帧图像特征,并对获得的各帧图像特征进行融合处理,得到图像融合特征;以及,基于帧间隔在预设步长范围内的,每两个视频帧之间的帧图像特征差异,得到待识别帧序列的运动融合特征;再根据图像融合特征和运动融合特征,获得视频特征。
这样,确定的视频特征中汇集了两方面的特征内容,一方面是从图像内容的角度得到的图像融合特征,另一方面是基于各视频帧之间的帧图像特征差异,得到的运动融合特征;使得得到的视频特征中,不仅汇集了各视频帧各自的静态图像语义的影响,还汇集了表征各视频帧间动态变化的语义信息的影响,相当于在提取视频特征的过程中,引入了能够描述动作动态变化的特征内容,因而提取的视频特征能够有效地描述视频中的动作变化,提高了视频特征的提取效果,为依据视频特征进行的动作匹配提供了有效的匹配依据;
进而,在依据提取的视频特征和各文本特征进行相似度计算,以获得待识别帧序列在各候选动作上的匹配概率的过程中,借助于能够有效描述出待识别视频中静态图像语义和动态运动信息的视频特征,能够准确地确定待识别帧序列在各候选动作上的匹配概率,提高了各匹配概率的可信度;因而在依据各匹配概率最终确定目标动作时,能够得到很好的动作识别效果,而且,为动作识别的准确性提供了保障。
以下结合说明书附图对本申请的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本申请,并不用于限定本申请,并且在不冲突的情况下,本申请实施例及实施例中的特征可以相互组合。
参阅图2所示,其为本申请实施例中可能的应用场景示意图。该应用场景示意图中,包括服务端设备210,以及客户端设备220。
在本申请一些可行实施例中,可以由服务端设备210训练得到目标动作识别模型,进而在接收客户端设备220发送的待识别视频后,借助于目标动作识别模型,实现对待识别视频的动作识别;
或者,在另一些可行的实施例中,服务端设备210可以获取其他设备训练得到的目标动作识别模型,进而在接收客户端设备220发送的待识别视频后,借助于目标动作识别模型,实现对待识别视频的动作识别。
服务端设备210可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。
客户端设备220包括但不限于手机、平板电脑、笔记本、电子书阅读器、智能语音交互设备、智能家电、车载终端、飞行器等。本发明实施例可应用于各种场景,包括但不限于云技术、人工智能、智慧交通、辅助驾驶等。
需要说明的是,本申请实施例中,客户端设备220基于待识别视频发起动作识别时,可以借助于目标应用,实现待识别视频的发送,其中,目标应用可以是小程序应用,或者,客户端应用,又或者,网页应用,本申请对此不做具体限制。
本申请实施例中,服务端设备210与客户端设备220之间,可以通过有线网络或无线网络进行通信,以下的说明中仅以由服务端设备210实现目标动作识别模型的训练,以及实现对视频的动作识别为例,对相关的处理过程进行示意性说明。
下面结合几种可能的应用场景,对针对视频的动作识别过程进行说明:
场景一、视频内容审核。
在场景一对应的应用场景下,服务端设备可以在视频发布之前对视频进行内容审核,识别出视频对应的目标动作。
具体的,服务端设备获取待识别视频后,借助于训练后的目标动作识别模型,对待识别视频进行动作识别,确定待识别视频在各候选动作上的匹配概率;进而依据各匹配概率,确定待识别视频对应的目标动作。
进而,依据识别出的目标动作,与预设的各异常动作的匹配情况,确定待识别视频中是否包括异常动作;之后,在确定待识别视频中不包括异常动作时,可以直接将识别的目标动作,确定为该待识别视频关联的动作标签,并发布该待识别视频,反之,在确定待识别视频中包括异常动作时,则可以将该待识别视频判定为不可发布。
场景二、视频内容分类。
在场景二对应的应用场景下,服务端设备可以在视频发布之后对视频进行内容分类,识别出视频对应的目标动作,其中,视频具体可以是影视作品等。
具体的,服务端设备获取待识别视频后,借助于训练后的目标动作识别模型,对待识别视频进行动作识别,确定待识别视频在各候选动作上的匹配概率;进而依据各匹配概率,确定待识别视频对应的目标动作。
之后,在确定待识别视频中包括的目标动作后,可以依据目标动作对视频进行内容分类。
场景三、视频中异常内容识别。
在场景三对应的应用场景下,在诸如不文明行为检测的场景下,服务端设备可以依据视频记录的内容,识别出视频中是否记录有异常动作。
具体的,服务端设备获取视频后,借助于训练后的目标动作识别模型,对视频进行动作识别,确定待识别视频在各候选动作上的匹配概率;进而依据各匹配概率,确定待识别视频对应的目标动作,其中,各候选动作是针对各类不文明行为预设的。
进而依据识别出的目标动作,与预设的各异常动作的匹配情况,确定待识别视频中是否包括异常动作;之后,在确定待识别视频中包括异常动作时,可以触发针对该异常动作的警示通知。
另外,需要理解的是,在本申请的具体实施方式中,涉及对待识别视频的获取和识别,当本申请记载的实施例运用到具体产品或技术中时,需要获得相关对象的许可或者同意,且相关数据的收集、使用和处理需要遵守相关国家和地区的相关法律法规和标准。
下面首先结合附图,从服务端设备的角度,对动作识别过程进行说明:
参阅图3所示,其为本申请实施例中动作识别的过程示意图,下面结合附图3,对服务端设备针对待识别视频进行动作识别的过程进行说明:
步骤301:服务端设备获取待识别帧序列,并获取基于各候选动作分别生成的提示语句,其中,待识别帧序列中包括:从待识别视频中采样的视频帧。
本申请实施例中,考虑到待识别视频中通常包括很多视频帧,为了降低处理压力,通常从待识别视频中采样指定数目的视频帧,得到对应的待识别帧序列;而且,即使待识别视频中包括的总视频帧较少,但为了规范化的进行统一处理,通常从待识别视频中采样指定数目的视频帧,得到对应的待识别帧序列。
基于此,服务端设备获取的每个待识别帧序列中,包括指定数目的视频帧;另外,在执行动作识别的过程中,服务端设备获取的待识别帧序列的数目可以为一个,或者,服务端设备获取的待识别帧序列的数目,可以与能够同时输入目标动作识别模型的待识别帧序列的数目相同。
本申请实施例中,默认一个待识别帧序列,对应一个能够识别出的目标动作;而且,就服务端设备获取的待识别帧序列而言,待识别帧序列中包括的总视频帧数,是根据目标动作识别模型对于一个待识别视频预设的采样帧数确定的,其中,预设的采样帧数的取值根据实际的处理需要设置,例如,可以是3、8、16等数值中的任意一个。
例如,假设目标动作识别模型中采样帧数为8,那么,服务端设备获取的待识别帧序列中,包括从待识别视频中采样的8个视频帧。
另外,本申请可能的实施例中,在服务端设备获取的待识别视频帧,是由该服务端设备预先从待识别视频中采样得到的情况下,服务端设备可以从一个待识别视频中采样得到一个待识别帧序列;或者,考虑到一个待识别视频中可能包括多种待识别动作,那么,为了同时满足一个待识别帧序列,对应一个能够识别出的目标动作,以及能够识别出待识别视频中包括的全部动作的需要,服务端设备可以基于一个待识别视频,采样得到至少一个待识别帧序列。
下面以针对一个待识别视频,采样得到至少一个待识别帧序列时采用的方式进行说明:
采样方式一、确定待识别视频中包括的动作产生对象,并针对每个动作产生对象,采样得到至少一个待识别帧序列。
在采样方式一对应的处理过程中,服务端设备获取待识别视频后,采用预设的对象识别算法,确定待识别视频中包含的各动作产生对象,并在待识别视频中,确定各动作产生对象各自对应的至少一个视频子段,以及在每个视频子段中,采样得到对应的一个待识别帧序列,其中,每个视频子段中,各视频帧时序连续且对应的视频帧总数超过设定值;各个动作产生对象是指在待识别视频中出镜且产生动作的对象。
具体的,在待识别视频中包括多个动作产生对象的情况下,服务端设备可以针对待识别视频进行对象识别,并依据识别出的各动作产生对象,分别执行以下操作:确定一个动作产生对象出镜的各视频片段。
需要说明的是,本申请实施例中,考虑对一个动作产生对象在待识别视频中可能存在不同的动作,而且,一个动作产生对象在待识别视频中的出镜时间可能不连续;与此同时,考虑到时序不连续的视频片段,极可能对应不同的动作,另外,考虑到依据包括较少帧数的视频片段,可能很难实现动作识别,故一个视频片段被确定为一个动作产生对象对应的视频子段时,该视频片段需要满足以下条件:包含的各视频帧时序连续,且包含的视频帧总数超过设定值,其中,设定值的取值根据实际的处理需要设置,本申请对此不做具体限制。
例如,参阅图4A所示,其为本申请实施例中一种基于待识别视频确定各视频子段的方式示意图,根据图4A所示意的内容可知,获得时长为30S的待识别视频后,针对待识别视频进行对象特征识别,并针对识别出的各对象特征分别进行视频子段整理;之后,针对识别出的对象特征1,确定待识别视频中时间范围为00:00:05,000 -00:00:10,000的视频片段,为对象特征1对应的一个视频子段,以及确定待识别视频中时间范围为00:00:22,000 -00:00:30,000的视频片段,为对象特征1对应的一个视频子段;同理,针对对象特征2,确定待识别视频中时间范围为00:00:12,000 -00:00:20,000的视频片段,为对象特征2对应的视频子段。
进而,服务端设备可以采用预设的采样方式,针对每个视频子段,采样得到对应的一个待识别帧序列,其中,本申请中提及的针对视频的采样,可以理解为在视频中抽取视频帧。
具体的,服务端设备可以采用预设的采样方式,针对每个视频子段,分别执行以下操作:从视频子段中采样出指定数目的视频帧,并按照各视频帧在视频子段中的时序顺序,组合得到对应的待识别帧序列。
其中,服务端设备在基于视频子段生成待识别帧序列时,可以根据预设的指定数目,以及视频子段对应的视频时长,确定需要从每秒视频中抽取的视频帧数,并依据确定的抽取方式,从视频子段中抽取出指定数目的视频帧;或者,服务端设备可以采用本领域通用的,从视频中采样得到视频帧序列的方式,实现采样处理。
采样方式二、在待识别视频中确定各动作起止时段,并在每个动作起止时段指示的视频子段中,采样得到对应的一个待识别帧序列。
在采样方式二对应的处理过程中,服务端设备获取待识别视频后,采用预设的动作起止预测算法,从待识别视频中确定出各动作起止时段,并在每个动作起止时段指示的视频子段中,采样得到对应的一个待识别帧序列。
具体的,服务端设备可以采用能够预测视频中各动作起止时段的算法,从待识别视频中确定出各动作起止时段;之后,按照确定的各动作起止时段,在待识别视频中确定相应的各视频子段,其中,能够预测视频中各动作起止时段的算法可以是actionlocalization等。
例如,参阅图4B所示,其为本申请实施例中另一种基于待识别视频确定各视频子段的方式示意图,根据图4B所示意的内容可知,获得时长为30S的待识别视频后,针对待识别视频进行动作起止时段的预测,以及针对识别出的各动作起止时段分别进行视频子段整理;具体的,针对识别出的动作起止时段00:00:05,000 -00:00:10,000的视频片段、00:00:22,000 -00:00:30,000,以及00:00:12,000 -00:00:20,000,能够分别确定对应的视频子段。
进而,服务端设备在基于视频子段生成待识别帧序列时,可以根据预设的指定数目和视频子段对应的视频时长,确定需要从每秒视频中采样的视频帧数,并依据确定的采样方式,从视频子段中采样出指定数目的视频帧;或者,服务端设备可以采用本领域通用的,从视频中采样得到视频帧序列的方式,实现采样处理。
这样,借助于采样方式一和采样方式二所提出的采样方式,能够兼顾不同应用场景下对于待识别帧序列的构建需求,针对待识别视频充分抽取能够识别出目标动作的视频子段,避免对于待识别视频中包括的动作类别的漏识别,为针对待识别视频充分进行的动作识别提供了保障。
需要说明的是,本申请实施例中,后续进行动作识别时,采用的是基于初始动作识别模型训练得到的目标动作识别模型,且初始动作识别模型中包括:预训练后的文本编码网络和图像编码网络,其中,文本编码网络和图像编码网络可以是,开源的CLIP模型的文本编码网络和图像编码网络;另外,在可行的实现方式中,初始动作识别模型中包括可学习的提示向量,针对提示语句构建的文本特征受可学习的提示向量的影响,或者,得到的文本特征受运动特征和可学习的提示向量的共同影响,又或者,初始动作识别模型中不包括可学习的提示向量,直接借助于文本编码网络实现特征提取。
基于此,在本申请可行的实施中,对于训练后的目标动作识别模型而言,借助于引入的可学习的提示向量,以及CLIP模型在经过上亿量级的图像-文本对的训练后,开源的文本编码网络和图像编码网络,使得目标动作识别模型能够兼容zero-shot,或者,few-shot的训练场景,换言之,在应用目标动作识别模型进行动作识别时,确定的各候选动作中,可能包括模型训练时的各样本动作以外的其他动作。
在本申请另一些可能的实施例中,训练后的目标动作识别模型,可能仅在各训练样本中涉及的各样本动作上,取得很好的识别效果。
综上,服务端设备在进行动作识别时,涉及到的各候选动作,是采用以下任意一种方式确定的:
方式一、将训练初始动作识别模型得到目标动作识别模型时采用的各样本动作,分别确定为候选动作。
方式二、将训练初始动作识别模型得到目标动作识别模型时采用的各样本动作,以及设置的各扩展动作,分别确定为候选动作。
需要说明的是,对于各候选动作中可能包括的扩展动作而言,在初始动作识别模型中预训练的文本编码网络和图像编码网络,为开源的CLIP模型的文本编码网络和图像编码网络的情况下,扩展动作可以理解为在CLIP训练阶段,作为样本动作的动作,其中,由于CLIP训练阶段使用的样本量为数亿量级,故可以默认训练CLIP时的样本动作,覆盖能够想到的全部动作类别。
这样,能够根据目标动作识别模型的处理能力,合理的确定能够识别的动作范围。
进一步的,服务端设备获取基于各候选动作分别生成的提示语句的过程中,先获取词位模板;词位模板中包括针对候选动作的动作类型名称预留的目标词位区域,以及针对至少一个可学习的提示向量预留的其他词位区域;再针对各候选动作,分别执行以下操作:将一个候选动作对应的动作类型名称填充至词位模板中的目标词位区域,得到对应的一个提示语句。
具体的,服务端设备在获取提示语句时,按照词位模板约束的不同词位区域,将候选动作的动作类型名称,填充至相应的词位位置,得到对应的提示语句,其中,针对动作类型名称预留的目标词位区域中包括的词位数目,以及其他词位区域中包括的词位数目,均是根据实际的处理需要设置的,本申请对此不做具体限制。初始化文本的内容根据实际的处理需要配置。
在本申请一些可行的实现方式中,服务端设备获取的词位模板中可以仅标识出目标词位区域和其他词位区域,使得在具体生成提示语句时,需要在目标词位区域中填充候选动作对应的动作类型名称,以及在其他词位区域中填充初始化文本,其中,初始化文本具体可以是随机的文本内容,或者,指定的文本内容,本申请对此不做具体限制。
在本申请另一些可行的实施例中,服务端设备获取的词位模板中可以在标识出目标词位区域和其他词位区域的基础上,针对其他词位区域填充有初始化文本,使得在具体生成提示语句时,仅需要将候选动作的动作类型名称,填充至目标词位区域。
例如,词位模板形如“human action of ”,该词位模板中包括四个词位,词位1-3的内容分别是,“human”、“action”,以及“of”,词位4为空,是针对候选动作的动作类型名称预留的;基于此,在将动作类型名称“walk”,填充至词位模板中的目标词位区域后,得到的一条提示语句为“human action of walk”。
需要说明的是,本申请实施例中,在初始动作识别模型中包括可学习的提示向量的情况下,在模型训练过程中,其他词位区域的文本内容对应的词嵌入结果,随模型训练而更新;而且,应该理解的是,词位模板中目标词位区域和其他词位区域中各自包括的词位数目,与初始动作识别模型的输入形式是匹配的,换言之,在构建初始动作识别模型的阶段,确定可学习提示向量的数目,以及确定初始动作识别模型识别的候选动作之后,可以确定输入至初始动作识别模型中的内容形式,因此,可以针对性的构建与模型输入匹配的词位模板,使得能够依据词位模板生成合适的提示语句。
这样,由于词位模板中分别指示了不同内容对应的词位区域,故能够差异性的区分动作类型名称对应的文本内容和其他文本内容,为后续针对不同词嵌入结果差异性地施加运动特征的影响,提供了处理依据。
步骤302:服务端设备采用已训练的目标动作识别模型,基于待识别帧序列和各提示语句,输出待识别帧序列在各候选动作上的匹配概率。
本申请实施例中,服务端设备获取待识别帧序列后,采用已训练的目标动作识别模型,实现动作识别。
下面首先对训练得到目标动作识别模型的过程进行说明:
参阅图5A所示,其为本申请实施例构建的一种初始动作识别模型的模型结构示意图,根据图5A所示意的内容可知,在预设输入的帧序列中包括3个视频帧的情况下,构建的初始动作识别模型形如图5A所示。
继续结合附图5A进行说明,构建的初始动作识别模型中包括以下部分:
(1)图像分块嵌入(Patch Embedding)网络:实现图像切块和嵌入处理的模型部分,用于将各视频帧分别切分为不相交的图像块(Patches),然后将得到的Patches映射为视觉token序列;
(2)图像编码(Image Encoder)网络:具体可以是CLIP模型的图像编码器,接受视觉token序列(即向量化处理结果)作为输入,输出图像的视觉特征(或称帧图像特征),其中,在训练阶段,Image Encoder的参数是固定的,不参与训练,换言之,在构建的初始动作识别模型中,Image Encoder是预训练后的,且在模型训练过程中不进行参数调整;
(3)Spatial Transformer网络:基于Image Encoder输出的各视频帧的视觉特征(或称帧图像特征),采用一层标准的Transformer结构,或者,采用CNN结构,实现视觉信息融合,得到由融合处理后的各帧图像特征构成的Ts(I);
(4)运动特征提取网络(Motion Modeling Block + Motion Transformer):基于各视频帧的视觉特征(即帧图像特征),计算各运动特征,然后将各运动特征级联(Concatenate)之后,采用一层标准的Transformer结构,或者,采用CNN结构,进行融合和建模,输出由融合处理后的各运动特征构成的Tm(D);
(5)初始化(Initialization)网络:用于针对每个提示语句中不同词位的文本内容,分别生成对应的词嵌入结果;
(6)文本编码网络(Text Encoder):具体可以是CLIP模型中的文本编码器,负责对各提示语句各自对应的语句嵌入结果进行处理,分别提取文本特征T。
参阅图5B所示,其为本申请实施例构建的另一种初始动作识别模型的模型结构示意图,根据图5B所示意的内容可知,在预设输入的帧序列中包括3个视频帧的情况下,构建的初始动作识别模型形如图5B所示。
继续结合附图5B进行说明,构建的初始动作识别模型中包括以下部分:
(1)图像分块嵌入(Patch Embedding)网络:实现图像切块和嵌入处理的模型部分,用于将各视频帧分别切分为不相交的图像块(Patches),然后将得到的Patches映射为视觉token序列;
(2)图像编码(Image Encoder)网络:具体可以是CLIP模型的图像编码器,接受视觉token序列(即向量化处理结果)作为输入,输出图像的视觉特征(或称帧图像特征),其中,在训练阶段,Image Encoder的参数是固定的,不参与训练,换言之,在构建的初始动作识别模型中,Image Encoder是预训练后的,且在模型训练过程中不进行参数调整;
(3)Spatial Transformer网络:基于Image Encoder输出的各视频帧的视觉特征(或称帧图像特征),采用一层标准的Transformer结构,或者,采用CNN结构,实现视觉信息融合,得到由融合处理后的各帧图像特征构成的Ts(I);
(4)运动特征提取网络(Motion Modeling Block + Motion Transformer):基于各视频帧的视觉特征(即帧图像特征),计算各运动特征,然后将各运动特征级联(Concatenate)之后,采用一层标准的Transformer结构,或者,采用CNN结构,进行融合和建模,输出由融合处理后的各运动特征构成的Tm(D);
(5)运动特征转换网络(Motion Adapter):用于对Tm(D)进行维度变换,使它能作用于可学习文本提示(Prompts)的生成,需要说明的是,Motion Adapter网络具体可以对应多层感知机(Multilayer Perceptron,MLP)+MLP的结构,或者,可以对应Transformer+MLP的复杂结构;
(6)运动提示学习(Motion Prompts Learning)网络:用于在运动信息的指导下通过训练得到面向运动描述的文本提示;该网络中包含一组可学习的Prompts向量,假设可学习token数为3,则该模块所生成的Prompts格式为: “ [V0][V1][V2][CLASS]”,其中,是可学习的,{[Vi]}的初始化可以使用固定的Prompts模板“ human action of[CLASS]”生成,例如,可以按照CLIP文本编码方式,将每个Prompts向量的长度会统一处理为77(用于处理很长的文本输入);
(7)初始化(Initialization)网络:用于针对每个提示语句中不同词位的文本内容,分别生成对应的词嵌入结果;
(8)文本编码网络(Text Encoder):具体可以是CLIP模型中的文本编码器,负责对各提示语句各自对应的语句嵌入结果进行处理,分别提取文本特征T。
服务端设备构建初始动作识别模型之后,参阅图6A所示,其为本申请实施例中训练得到目标动作识别模型的过程示意图,下面结合附图6A,对训练得到目标动作识别模型的过程进行说明:
步骤601:服务端设备获取初始动作识别模型和各训练样本,其中,初始动作识别模型中包括预训练后的文本编码网络和图像编码网络,以及待训练的其他网络;一条训练样本中包括:一个样本帧序列、基于各样本动作生成的各样本提示语句,以及样本识别结果。
具体的,服务端设备获取初始动作识别模型后,可以依据初始动作识别模型,确定初始动作识别模型中包括的,预训练后且无需继续训练的文本编码网络和图像编码网络,以及确定初始动作识别模型中包括的,需要训练的其他网络。
例如,结合附图5A所示意的初始动作识别模型可知,需要训练的其他网络具体包括:Spatial Transformer网络和运动特征提取网络。
又例如,结合图5B所示意的初始动作识别模型可知,需要训练的其他网络具体包括:Spatial Transformer网络、运动特征提取网络、运动特征转换网络,以及运动提示学习网络。
与此同时,为了针对动作识别任务,实现对初始动作识别模型的训练,服务端设备需要针对性构建各训练样本,其中,在构建训练样本的过程中,可以在获取样本视频后,按照步骤301涉及到的采样得到帧序列的方式,从样本视频中采样出样本帧序列;进而,基于一个样本帧序列标注出对应的样本识别结果,以及确定对应的各样本提示语句;不同训练样本中可以采用相同的各样本提示语句。
在可行的实现方式中,服务端设备可以定义样本动作集合, />表征一个样本动作;并针对任意一个样本动作i,构建样本动作i的训练集和测试集/> ,其中,N、/>和/>分别表示类别的数量(或称样本动作的总数)、对应类别的样本视频的数量和对应类别的测试视频的数量。
在针对样本动作i,确定模型训练时采用的样本帧序列时,对于任意的样本视频,可以从样本视频中采样得到各样本视频帧,并将各样本视频帧分别缩放到固定尺寸,如,224像素×224像素;然后对各样本视频帧进行归一化操作,即,将样本视频帧中每一个像素的RGB值减去RGB通道对应的均值,然后除以RGB通道对应的标准差,从而将样本视频帧中每一个像素值放缩到-1到1之间;之后,根据处理后的各样本视频帧,得到样本帧序列。
例如,参阅图6B所示,其为本申请实施例中生成训练样本的过程示意图,根据图6B所示意的内容可知,以生成一条训练样本的过程为例,假设预设的各样本动作包括:行走(walk)、奔跑(run),以及游泳(swim);那么,结合预设的词位模板,能够得到三个样本提示语句;与此同时,基于样本视频能够抽取一个样本帧序列,再针对样本帧序列进行动作标注,假设对应的动作为“walk”,那么,得到的样本识别结果为:walk对应为1,其他样本动作对应为0。
步骤602:服务端设备采用各训练样本,对初始动作识别模型进行多轮迭代训练,直至满足预设的收敛条件,得到训练后的目标动作识别模型。
需要说明的是,预设的收敛条件可以是:总训练轮数达到第一阈值,或者,计算得到的模型损失连续低于第二阈值的次数达到第三阈值,其中,第一阈值、第二阈值,以及第三阈值的取值根据实际的处理需要设置。
下面以针对初始动作识别模型进行的一轮迭代训练,且输入的样本帧序列为1个(即batchsize取值为1)为例,对一轮迭代训练过程中涉及到的处理过程进行说明:
在对图5A所示意的初始动作识别模型进行一轮迭代训练的过程中,执行以下操作:针对样本帧序列中的各样本视频帧,分别得到向量化处理结果,并采用图像编码网络,基于各向量化处理结果,提取对应的帧图像特征,以及基于各帧图像特征,获得图像融合特征和运动融合特征;再基于各提示语句,分别获得对应的语句嵌入结果,并采用文本编码网络,基于各语句嵌入结果,分别提取对应的文本特征;之后,依据各文本特征各自与视频特征间的特征相似度,分别获得样本帧序列在各样本动作上的匹配概率,并基于由各匹配概率确定的预测识别结果,与样本识别结果间的交叉熵损失,调整初始动作识别模型中其他网络的网络参数。
在对图5B所示意的初始动作识别模型进行一轮迭代训练的过程中,执行以下操作:针对样本帧序列中的各样本视频帧,分别得到向量化处理结果,并采用图像编码网络,基于各向量化处理结果,提取对应的帧图像特征,以及基于各帧图像特征,获得图像融合特征和运动融合特征;再针对各提示语句,分别获得在运动融合特征影响下的语句嵌入结果,并采用文本编码网络,基于各语句嵌入结果,分别提取对应的文本特征;之后,依据各文本特征各自与视频特征间的特征相似度,分别获得样本帧序列在各样本动作上的匹配概率,并基于由各匹配概率确定的预测识别结果,与样本识别结果间的交叉熵损失,调整其他网络的网络参数。
需要说明的是,模型训练过程中,在模型内部执行的处理过程,与应用训练后的目标动作识别模型进行动作识别时执行的处理过程,具有相同的处理逻辑,因此,相关的处理过程将在后续模型应用过程中进行详细说明。
本申请实施例中,服务端设备同理采用上述训练过程,对初始动作识别模型进行多轮迭代训练后,能够得到训练后的目标动作识别模型。
这样,借助于附图5B示意的初始动作识别模型,不仅能够在视频特征的提取过程中,引入运动信息的影响,还能够在文本特征的提取过程中,引入运动信息的影响,使得能够充分考量视频中动态动作的影响,极大的提高了模型处理的可信度。
另外,结合附图5A和5B示意的,本申请可行的初始动作识别模型的结构可知,确定的视频特征中汇集了两方面的特征内容,一方面是从图像内容的角度得到的图像融合特征,另一方面是基于各视频帧之间的帧图像特征差异,得到的运动融合特征;基于此,在完成模型训练后,均能够在特征提取过程中引入运动信息的影响,有助于得到相比于现有技术更加准确的动作匹配结果;而且,在模型训练过程中,引入了可学习的提示向量的情况下,能够借助于运动融合特征,指导可学习的提示向量的学习过程,使得得到的文本描述更聚焦于运动本身,得到更精确的文本特征,因而在完成训练后,能够提升目标动作识别模型对于未知动作的感知能力,提高模型的通用性。
进而,服务端设备训练得到目标动作识别模型之后,采用目标动作识别模型对待识别帧序列进行处理之前,为了降低模型的处理压力,可以对待识别帧序列中的各视频帧,分别进行尺寸缩放处理和归一化处理。
具体的,采用预设的缩放方式,将各视频帧分别调整为指定尺寸;再针对指定尺寸的各视频帧,分别进行图像像素值的归一化处理,得到处理后的各视频帧。
其中,指定尺寸是根据实际的处理需要设置的,具体可以是224像素×224像素;在针对各视频帧进行归一化处理时,针对每个视频帧执行以下操作:将视频帧中每一个像素的RGB值减去RGB通道对应的均值,然后,将得到的结果除以RGB通道对应的标准差,从而将视频帧中每一个像素值放缩到-1到1之间。
这样,通过将各视频帧的大小缩放为指定尺寸,以及将各视频帧的像素值放缩至-1到1之间,能够实现对各视频帧的规范化处理,而且,由于像素值的取值位于-1到1之间,故能够极大地降低模型的计算难度,降低模型的处理压力。
进一步的,参阅图7A所示,其为本申请实施例中应用目标动作识别模型处理得到各匹配概率的过程示意图,下面结合附图7A,对采用目标动作识别模型,处理得到待识别帧序列在各候选动作上的匹配概率的过程进行说明:
步骤701:服务端设备采用目标动作识别模型,提取待识别帧序列对应的视频特征。
服务端设备将包括各视频帧的待识别帧序列输入目标动作识别模型后,采用目标动作识别模型,分别提取待识别帧序列中各视频帧的帧图像特征,并对获得的各帧图像特征进行融合处理,得到图像融合特征;再基于帧间隔在目标步长范围内的,每两个视频帧之间的帧图像特征的差异,得到待识别帧序列的运动融合特征;之后,根据图像融合特征和运动融合特征,获得视频特征。
服务端设备在获得的各帧图像特征之间进行融合处理,得到图像融合特征的过程中,先从整体上,针对各帧图像特征进行融合处理,得到各视频帧各自对应的特征融合结果;再将各特征融合结果的平均值,作为待识别帧序列对应的图像融合特征。
参阅图7B所示,其为本申请实施例中得到图像融合特征涉及到的模型结构示意图,输入目标动作识别模型的各视频帧 通过Patch Embedding进行切分和向量化映射;之后,通过CLIP的Image Encoder处理成维度大小为的特征张量I,其中,b表示batchsize,是指同时输入目标动作识别模型的待识别帧序列的个数,如b的取值为1;3表示每一个视频输入有3个视频帧被采样(即一个待识别帧序列中包括3个视频帧),512表示每个帧图像特征的特征维度为512维;
继续结合附图7B进行说明,采用Spatial Transformer对得到的特征张量进行处理,将3帧独立的帧图像特征进行融合,生成一个视频粒度的特征表达Ts (I),并且输出的特征维度不变,即,其中,视频粒度的特征表达相当于是各视频帧的特征融合结果的组合;之后,采用Mean Pooling,将Ts (I)在第二个维度上取平均,得到维度为/>的图像融合特征,即,针对每个待识别帧序列,计算各视频帧的特征融合结果的平均值,得到对应的图像融合特征。
这样,相当于从图像静态内容的角度,实现了对各帧图像特征的提取和融合,使得在得到的图像融合特征中,能够融合图像静态语义的影响。
进一步的,服务端设备基于帧间隔在目标步长范围内的,每两个视频帧之间的帧图像特征的差异,得到待识别帧序列的运动融合特征的过程中,确定目标步长范围;再按照各视频帧的时序顺序依次读取每个视频帧,并针对读取的视频帧执行以下操作:在时序顺序在视频帧之后的其他视频帧中,确定与视频帧之间的帧间隔在目标步长范围内的目标视频帧;分别计算视频帧与每个目标视频帧之间的图像特征差异,得到对应的运动特征。之后,对获得的各运动特征进行融合处理,得到运动融合特征。
需要说明的是,两个视频帧之间的步长,是根据两个视频帧在待识别帧序列中的帧间隔确定的,具体的,对于待识别帧序列中的各视频帧而言,在待识别帧序列中,能够分别确定对应的序号,那么,可以将两个视频帧之间的序号差值,确定为帧间隔,也即两个视频帧之间的步长。
例如,假设待识别帧序列中包括8个视频帧,那么第1个视频帧和第8个视频帧之间的步长为8-1=7。
另外,应该理解的是,本申请实施例中,根据实际的处理需要,可以针对视频帧之间的步长,设置目标步长范围,使得对于任意一个视频帧而言,与该视频帧之间的步长在目标步长范围内的其他视频帧,可以作为确定运动特征时所考量的视频帧;而且,考虑到动作进行的时序性,故在确定运动特征的过程中,当确定与一个视频帧(假设视频帧M)之间满足目标步长范围的其他视频帧时,对于其他视频帧的确定具有单向性,即,在发生在视频帧M之后的各视频帧中,确定与视频帧M之间满足目标步长范围的其他视频帧。
例如,假设待识别帧序列中包括8个视频帧,目标步长范围是1-7,那么,针对待识别帧序列中的第1个视频帧(记为视频帧1),确定的目标视频帧包括:视频帧2-8。
结合附图5A和5B的模型结构进行说明,服务端设备采用目标动作识别模型,获得运动特征的过程中,采用Motion Modeling Block,针对各视频帧的帧图像特征,计算得到各运动特征,其中,一个运动特征是通过计算两个视频帧的视觉特征差异确定的,即,通过计算两个帧图像特征的差值得到。
继续进行运动特征的说明,采用Image Encoder,针对视频帧i和视频帧j,分别提取得到帧图像特征后,假设视频帧i和视频帧j之间的步长:s=j-i,位于目标步长范围[1,T-1]之间,其中,T表示视频帧序列中包括的总帧数;那么在视频帧i和视频帧j之间,能够确定一个图像特征差异(即一个运动特征)。同理,在待识别帧序列中包括T个视频帧的情况下,一共可以获得个运动特征。
需要说明的是,由于不同运动特征对应的视频帧间的步长不同,故根据实际的处理需要,可以根据运动特征对应的步长大小,将对应的步长大小超过设定门限值的运动特征,细化为长期运动特征,以及将对应的步长大小不超过设定门限值的运动特征,细化为短期运动特征,而且,根据实际的处理需要,可以针对长期运动特征和短期运动特征设置不同的影响权重,使得后续在确定运动融合特征时,能够不同程度的考量长度运动特征和短期运动特征的影响。
进而,服务端设备采用目标动作识别模型,获得各运动特征之后,继续采用服务端设备中的运动变换网络,在各运动特征之间进行融合处理,得到各运动特征各自对应的特征融合结果,之后,将各特征融合结果的均值,确定为待识别帧序列对应的运动融合特征。
例如,结合附图5A和附图5B示意的模型结构进行说明,将得到的各运动特征(记为Dij)经过级联处理(Concatenate)后,将得到的级联结果输入至Motion Transformer网络,得到各特征融合结果组成的,其中,L为确定的运动特征的总数;512为特征维度;b表示batchsize,是指同时输入目标动作识别模型的待识别帧序列的个数;进而,借助于Mean Pooling网络,将/>在第二个维度上进行平均处理,得到维度为/>的运动融合特征。
这样,通过计算步长符合要求的各视频帧之间的帧图像特征差异,能够表征不同视频帧之间的特征变化,因而通过构建能描述视频帧之间变化情况的运动特征,能够引入运动信息的影响,使得后续生成的视频特征能够更好的表征运动的变化情况;另外,通过融合各运动特征的影响,得到运动融合特征,能够从待识别帧序列的整体上,确定出动态运动信息。
进而,将得到的图像融合特征和运动融合特征进行特征相加,得到对应的视频特征。
例如,继续上述结合附图5A和5B的举例说明可知,将得到的图像融合特征和运动融合特征进行相加,能够得到维度为的视频特征(记为V)。
步骤702:服务端设备采用目标动作识别模型,分别提取各提示语句各自的文本特征。
执行步骤702时,在目标动作识别模型的结构形如图5A所示的情况下,服务端设备采用目标动作识别模型,提取各提示语句各自的文本特征的过程中,将各提示语句的语句嵌入结果输入文本编码网络(Text Encodr),得到各提示语句各自对应的文本特征。
在目标动作识别模型的结构形如图5B所示的情况下,服务端设备采用目标动作识别模型,提取各提示语句各自的文本特征的过程中,针对各提示语句,分别执行以下操作:在一个提示语句中,确定与候选动作的动作类型名称对应的目标词位区域,以及与非动作类型名称的文本内容对应的其他词位区域;对目标词位区域和其他词位区域的文本内容分别进行词嵌入处理,并将运动融合特征,分别与其他词位区域对应的词嵌入结果进行叠加,得到的一个提示语句对应的语句嵌入结果。进而,基于各语句嵌入结果进行特征提取,得到各提示语句各自对应的文本特征。
例如,参阅图7C所示,其为本申请实施例中确定语句嵌入结果的过程示意图,根据图7C所示意的内容可知,采用目标动作识别模型确定语句嵌入结果时,先针对提示语句中每个词位的文本内容,进行词嵌入处理,分别得到对应的词嵌入结果,其中,其他词位区域中包括词位1-3,对应的是可学习的提示向量;词位1-3各自对应的词嵌入结果,是可学习的提示向量对应的初始化结果;目标词位区域中包括词位4。之后,将运动融合特征作用于每个可学习的提示向量对应的词嵌入结果,得到相应叠加结果,最终得到由叠加结果1、叠加结果2、叠加结果3,以及词嵌入结果4组成的语句嵌入结果。
从模型中网络处理的角度而言,结合附图5B的模型结构,在提取各提示语句各自对应的文本特征的过程中,实现的处理操作如下:
先将运动融合特征输入Motion Adapter网络进行特征维度的自适应调整,维度调整过程中涉及到的处理公式如下:
其中,表示运动融合特征;MLP表示多层感知机,ReLU表示非线性激活层,Mean表示对/>在第二个维度进行平均,d表示可学习的提示(Prompts)向量的维度,一般为512或者768。
进而,将维度转换后的运动融合特征M与Motion Prompts Learning网络中的[Vi]相加,其中,[Vi]是指可学习的提示向量对应的词嵌入结果,对应附图5B中“human”、“action”,以及“of”各自对应的词嵌入结果,这一过程将运动信息注入到Prompts向量中,得到对应的叠加结果,维度为,其中,N表示动作类别数量(即各候选动作的总数)。
之后,将各提示语句各自对应的语句嵌入结果,输入CLIP的Text Encoder,生成每一个提示语句对应的文本特征。
这样,能够在文本特征的提取过程中,注入运动融合特征的影响,为可学习的提示向量在模型训练过程中的学习,提供了学习方向,而且,借助于视频帧之间的运动特征,使得文本特征能够更聚焦于运动本身,而且使得生成的文本特征能够更好的对视频中的运动进行描述,潜在的提升了学习的效果。
步骤703:服务端设备采用目标动作识别模型,依据各文本特征各自与视频特征之间的特征相似度,分别获得待识别帧序列在各候选动作上的匹配概率。
具体的,服务端设备采用目标动作识别模型,针对一个待识别帧序列,确定视频特征V和各提示语句各自对应的文本特征T后,通过分别计算各文本特征T和视频特征V的点乘计算结果,确定当前的待识别帧序列在各个候选动作上的相似度向量,然后用Softmax函数对相似度向量进行进一步计算,得到在各候选动作上的匹配概率,其中,N为各候选动作的总数。
综上,借助于步骤701-703的处理,服务端设备能够针对待识别帧序列,确定在各候选动作上的匹配概率。
步骤303:服务端设备基于各匹配概率,确定待识别视频对应的目标动作。
具体的,服务端设备针对待识别帧序列,确定在各候选动作上的匹配概率后,将匹配概率最高的候选动作,确定为该待识别帧序列对应的目标动作。
进而,基于各匹配概率,确定待识别视频对应的目标动作之后,由于在可行的实现方案中,针对一个待识别视频能够得到至少一个待识别帧序列,故在针对待识别视频完成动作识别后,可以对该待识别视频中包括的目标动作进行汇总。
具体的,获取针对待识别视频对应的至少一个待识别帧序列,分别识别的目标动作;进而,确定至少一个目标动作中不包含预设的异常动作的情况下,基于至少一个目标动作,确定待识别视频对应的动作标签,并发布添加有动作标签的待识别视频。
这样,能够在视频发布场景下,在针对待识别视频完成动作识别后,依据识别的目标动作进行异常判定,并在确定待识别视频中不包括异常动作后,正常发布视频,提高了视频发布过程的合规性和安全性。
参阅图8所示,其为本申请实施例中视频发布的过程示意图,下面结合附图8,以视频发布场景下的内容审核过程为例,对作为服务端设备的云服务器针对客户端设备上传的待识别视频,进行处理的过程进行说明:
用户ZQ在客户端设备上,基于待识别视频发起视频发布请求;
云服务器获取用户ZQ上传的待识别视频,并采用目标动作识别模型,确定待识别视频在预设的各候选动作上的匹配概率;之后,在基于各匹配概率,确定待识别视频对应的目标动作后,在确定目标动作不是异常动作情况下,发布待识别视频。
综上,本申请提出了一种用于视频动作识别的提示学习方法。该方法实现了对视频的运动信息(即运动特征)的建模和融合,用来表征描述运动本身的语义信息(Semantic),从而生成实例化的视频文本提示(Prompts),因此最终生成的文本特征能够更聚焦于运动本身;与此同时,借助于本申请提出的,面对视频运动建模的可学习的提示向量,能够更高效且准确的将CLIP模型的判别能力从图像领域迁移到视频领域,实现高效、通用的视频动作识别。
而且,本申请方案相比于现有技术的方案,处理效果有明显的提升,在开源数据集HMDB51上与现有技术的比较如下:
参阅表1所示,其为本申请实施例中本申请与现有技术的预测情况比对表。其中,S表示训练过程中确定运动征时采用的步长。S=1表示仅考虑短期运动信息,随着S增加,逐渐融入长期运动信息,其中,表1中的百分数取值为预测的准确率。
表1
基于同一发明构思,参阅图9所示,其为本申请实施例中动作识别装置的逻辑结构示意图,动作识别装置900中包括获取单元901、执行单元902,以及确定单元903,其中,
获取单元901,用于获取待识别帧序列,并获取基于各候选动作分别生成的提示语句,其中,待识别帧序列中包括:从待识别视频中采样的视频帧;
执行单元902,用于采用已训练的目标动作识别模型,执行以下操作:
分别提取待识别帧序列中各视频帧的帧图像特征,并对获得的各帧图像特征进行融合处理,得到图像融合特征;基于帧间隔在目标步长范围内的,每两个视频帧之间的帧图像特征的差异,得到待识别帧序列的运动融合特征;根据图像融合特征和运动融合特征,获得视频特征;
分别提取各提示语句各自的文本特征;
依据各文本特征各自与视频特征之间的特征相似度,分别获得待识别帧序列在各候选动作上的匹配概率;
确定单元903,用于基于各匹配概率,确定待识别视频对应的目标动作。
可选的,分别提取各提示语句各自的文本特征时,执行单元902用于:
针对各提示语句,分别执行以下操作:在一个提示语句中,确定与候选动作的动作类型名称对应的目标词位区域,以及与非动作类型名称的文本内容对应的其他词位区域;对目标词位区域和其他词位区域的文本内容分别进行词嵌入处理,并将运动融合特征,分别与其他词位区域对应的词嵌入结果进行叠加,得到的一个提示语句对应的语句嵌入结果;
基于各语句嵌入结果进行特征提取,得到各提示语句各自对应的文本特征。
可选的,各候选动作,是执行单元902采用以下任意一种方式确定的:
将训练初始动作识别模型得到目标动作识别模型时采用的各样本动作,分别确定为候选动作;
将训练初始动作识别模型得到目标动作识别模型时采用的各样本动作,以及设置的各扩展动作,分别确定为候选动作。
可选的,获取基于各候选动作分别生成的提示语句时,执行单元902用于:
获取词位模板;词位模板中包括针对候选动作的动作类型名称预留的目标词位区域,以及针对至少一个可学习的提示向量预留的其他词位区域;
针对各候选动作,分别执行以下操作:将一个候选动作对应的动作类型名称填充至词位模板中的目标词位区域,得到对应的一个提示语句可选的,基于帧间隔在目标步长范围内的,每两个视频帧之间的帧图像特征的差异,得到待识别帧序列的运动融合特征时,执行单元902用于:
确定目标步长范围;
按照各视频帧的时序顺序依次读取每个视频帧,并针对读取的视频帧执行以下操作:在时序顺序在视频帧之后的其他视频帧中,确定与视频帧之间的帧间隔在目标步长范围内的目标视频帧;分别计算视频帧与每个目标视频帧之间的图像特征差异,得到对应的运动特征;
对获得的各运动特征进行融合处理,得到运动融合特征。
可选的,待识别帧序列,是采用以下任意一项操作构建的:
采用预设的对象识别算法,确定待识别视频中包含的各动作产生对象,并在待识别视频中,确定各动作产生对象各自对应的至少一个视频子段,以及在每个视频子段中,采样得到对应的一个待识别帧序列,其中,每个视频子段中,各视频帧时序连续且对应的视频帧总数超过设定值;
采用预设的动作起止预测算法,从待识别视频中确定出各动作起止时段,并在每个动作起止时段指示的视频子段中,采样得到对应的一个待识别帧序列。
可选的,基于各匹配概率,确定待识别视频对应的目标动作之后,确定单元903还用于:
获取针对待识别视频对应的至少一个待识别帧序列,分别识别的目标动作;
确定至少一个目标动作中不包含预设的异常动作的情况下,基于至少一个目标动作,确定待识别视频对应的动作标签,并发布添加有动作标签的待识别视频。
可选的,获取待识别帧序列之后,采用已训练的目标动作识别模型,执行以下操作之前,执行单元902还用于:
采用预设的缩放方式,将各视频帧分别调整为指定尺寸;
针对指定尺寸的各视频帧,分别进行图像像素值的归一化处理,得到处理后的各视频帧。
可选的,装置还包括训练单元904,目标动作识别模型,是训练单元904采用以下方式训练得到的:
获取初始动作识别模型和各训练样本,其中,初始动作识别模型中包括预训练后的文本编码网络和图像编码网络,以及待训练的其他网络;一条训练样本中包括:一个样本帧序列、基于各样本动作生成的各样本提示语句,以及样本识别结果;
采用各训练样本,对初始动作识别模型进行多轮迭代训练,直至满足预设的收敛条件,得到训练后的目标动作识别模型。
可选的,在基于读取的训练样本,对初始动作识别模型的一轮迭代训练过程中,训练单元904用于执行以下操作:
针对样本帧序列中的各样本视频帧,分别得到向量化处理结果,并采用图像编码网络,基于各向量化处理结果,提取对应的帧图像特征,以及基于各帧图像特征,获得图像融合特征和运动融合特征;
针对各提示语句,分别获得在运动融合特征影响下的语句嵌入结果,并采用文本编码网络,基于各语句嵌入结果,分别提取对应的文本特征;
依据各文本特征各自与视频特征间的特征相似度,分别获得样本帧序列在各样本动作上的匹配概率,并基于由各匹配概率确定的预测识别结果,与样本识别结果间的交叉熵损失,调整其他网络的网络参数。
在介绍了本申请示例性实施方式的动作识别方法和装置之后,接下来,介绍根据本申请的另一示例性实施方式的电子设备。
所属技术领域的技术人员能够理解,本申请的各个方面可以实现为系统、方法或程序产品。因此,本申请的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
与上述方法实施例基于同一发明构思,在本申请实施例中的电子设备对应的是服务端设备的情况下,参阅图10所示,其为应用本申请实施例的一种电子设备的硬件组成结构示意图,电子设备1000可以至少包括处理器1001、以及存储器1002。其中,存储器1002存储有计算机程序,当计算机程序被处理器1001执行时,使得处理器1001执行上述任意一种动作识别的步骤。
在一些可能的实施方式中,根据本申请的电子设备可以包括至少一个处理器、以及至少一个存储器。其中,存储器存储有计算机程序,当计算机程序被处理器执行时,使得处理器执行本说明书上述描述的根据本申请各种示例性实施方式的动作识别的步骤。例如,处理器可以执行如图3中所示的步骤。
与上述方法实施例基于同一发明构思,本申请提供的动作识别的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在电子设备上运行时,程序代码用于使电子设备执行本说明书上述描述的根据本申请各种示例性实施方式的动作识别方法中的步骤,例如,电子设备可以执行如图3中所示的步骤。
程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例做出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (16)
1.一种动作识别方法,其特征在于,包括:
获取待识别帧序列,并获取基于各候选动作分别生成的提示语句,其中,所述待识别帧序列中包括:从待识别视频中采样的视频帧;
采用已训练的目标动作识别模型,执行以下操作:
分别提取所述待识别帧序列中各视频帧的帧图像特征,并对获得的各帧图像特征进行融合处理,得到图像融合特征;基于帧间隔在目标步长范围内的,每两个视频帧之间的帧图像特征的差异,得到所述待识别帧序列的运动融合特征;根据所述图像融合特征和所述运动融合特征,获得视频特征;
分别提取各提示语句各自的文本特征;
依据各文本特征各自与所述视频特征之间的特征相似度,分别获得所述待识别帧序列在所述各候选动作上的匹配概率;
基于各匹配概率,确定所述待识别视频对应的目标动作。
2.如权利要求1所述的方法,其特征在于,所述分别提取各提示语句各自的文本特征,包括:
针对各提示语句,分别执行以下操作:在一个提示语句中,确定与候选动作的动作类型名称对应的目标词位区域,以及与非动作类型名称的文本内容对应的其他词位区域;对所述目标词位区域和所述其他词位区域的文本内容分别进行词嵌入处理,并将所述运动融合特征,分别与所述其他词位区域对应的词嵌入结果进行叠加,得到的所述一个提示语句对应的语句嵌入结果;
基于各语句嵌入结果进行特征提取,得到所述各提示语句各自对应的文本特征。
3.如权利要求1所述的方法,其特征在于,所述各候选动作,是采用以下任意一种方式确定的:
将训练初始动作识别模型得到目标动作识别模型时采用的各样本动作,分别确定为候选动作;
将训练初始动作识别模型得到目标动作识别模型时采用的各样本动作,以及设置的各扩展动作,分别确定为候选动作。
4.如权利要求1所述的方法,其特征在于,所述获取基于各候选动作分别生成的提示语句,包括:
获取词位模板;所述词位模板中包括针对候选动作的动作类型名称预留的目标词位区域,以及针对至少一个可学习的提示向量预留的其他词位区域;
针对各候选动作,分别执行以下操作:将一个候选动作对应的动作类型名称填充至所述词位模板中的所述目标词位区域,得到对应的一个提示语句。
5.如权利要求1所述的方法,其特征在于,所述基于帧间隔在目标步长范围内的,每两个视频帧之间的帧图像特征的差异,得到所述待识别帧序列的运动融合特征,包括:
确定目标步长范围;
按照所述各视频帧的时序顺序依次读取每个视频帧,并针对读取的视频帧执行以下操作:在时序顺序在所述视频帧之后的其他视频帧中,确定与所述视频帧之间的帧间隔在所述目标步长范围内的目标视频帧;分别计算所述视频帧与每个目标视频帧之间的图像特征差异,得到对应的运动特征;
对获得的各运动特征进行融合处理,得到运动融合特征。
6.如权利要求1所述的方法,其特征在于,所述待识别帧序列,是采用以下任意一项操作构建的:
采用预设的对象识别算法,确定所述待识别视频中包含的各动作产生对象,并在所述待识别视频中,确定所述各动作产生对象各自对应的至少一个视频子段,以及在每个视频子段中,采样得到对应的一个待识别帧序列,其中,每个视频子段中,各视频帧时序连续且对应的视频帧总数超过设定值;
采用预设的动作起止预测算法,从所述待识别视频中确定出各动作起止时段,并在每个动作起止时段指示的视频子段中,采样得到对应的一个待识别帧序列。
7.如权利要求6所述的方法,其特征在于,所述基于各匹配概率,确定所述待识别视频对应的目标动作之后,还包括:
获取针对所述待识别视频对应的至少一个待识别帧序列,分别识别的目标动作;
确定至少一个目标动作中不包含预设的异常动作的情况下,基于所述至少一个目标动作,确定所述待识别视频对应的动作标签,并发布添加有所述动作标签的所述待识别视频。
8.如权利要求1-7任一项所述的方法,其特征在于,所述获取待识别帧序列之后,所述采用已训练的目标动作识别模型,执行以下操作之前,还包括:
采用预设的缩放方式,将所述各视频帧分别调整为指定尺寸;
针对指定尺寸的所述各视频帧,分别进行图像像素值的归一化处理,得到处理后的所述各视频帧。
9.如权利要求1-7任一项所述的方法,其特征在于,所述目标动作识别模型,是采用以下方式训练得到的:
获取初始动作识别模型和各训练样本,其中,所述初始动作识别模型中包括预训练后的文本编码网络和图像编码网络,以及待训练的其他网络;一条训练样本中包括:一个样本帧序列、基于各样本动作生成的各样本提示语句,以及样本识别结果;
采用所述各训练样本,对所述初始动作识别模型进行多轮迭代训练,直至满足预设的收敛条件,得到训练后的目标动作识别模型。
10.如权利要求9所述的方法,其特征在于,在基于读取的训练样本,对所述初始动作识别模型的一轮迭代训练过程中,执行以下操作:
针对样本帧序列中的各样本视频帧,分别得到向量化处理结果,并采用所述图像编码网络,基于各向量化处理结果,提取对应的帧图像特征,以及基于各帧图像特征,获得图像融合特征和运动融合特征;
针对各提示语句,分别获得在所述运动融合特征影响下的语句嵌入结果,并采用所述文本编码网络,基于各语句嵌入结果,分别提取对应的文本特征;
依据各文本特征各自与所述视频特征间的特征相似度,分别获得所述样本帧序列在所述各样本动作上的匹配概率,并基于由各匹配概率确定的预测识别结果,与样本识别结果间的交叉熵损失,调整所述其他网络的网络参数。
11.一种动作识别装置,其特征在于,包括:
获取单元,用于获取待识别帧序列,并获取基于各候选动作分别生成的提示语句,其中,所述待识别帧序列中包括:从待识别视频中采样的视频帧;
执行单元,用于采用已训练的目标动作识别模型,执行以下操作:
分别提取所述待识别帧序列中各视频帧的帧图像特征,并对获得的各帧图像特征进行融合处理,得到图像融合特征;基于帧间隔在目标步长范围内的,每两个视频帧之间的帧图像特征的差异,得到所述待识别帧序列的运动融合特征;根据所述图像融合特征和所述运动融合特征,获得视频特征;
分别提取各提示语句各自的文本特征;
依据各文本特征各自与所述视频特征之间的特征相似度,分别获得所述待识别帧序列在所述各候选动作上的匹配概率;
确定单元,用于基于各匹配概率,确定所述待识别视频对应的目标动作。
12.如权利要求11所述的装置,其特征在于,所述分别提取各提示语句各自的文本特征时,所述执行单元用于:
针对各提示语句,分别执行以下操作:在一个提示语句中,确定与候选动作的动作类型名称对应的目标词位区域,以及与非动作类型名称的文本内容对应的其他词位区域;对所述目标词位区域和所述其他词位区域的文本内容分别进行词嵌入处理,并将所述运动融合特征,分别与所述其他词位区域对应的词嵌入结果进行叠加,得到的所述一个提示语句对应的语句嵌入结果;
基于各语句嵌入结果进行特征提取,得到所述各提示语句各自对应的文本特征。
13.如权利要求11所述的装置,其特征在于,所述各候选动作,是所述执行单元采用以下任意一种方式确定的:
将训练初始动作识别模型得到目标动作识别模型时采用的各样本动作,分别确定为候选动作;
将训练初始动作识别模型得到目标动作识别模型时采用的各样本动作,以及设置的各扩展动作,分别确定为候选动作。
14.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-10任一项所述的方法。
15.一种计算机可读存储介质,其上存储有计算机程序,其特征在于:所述计算机程序被处理器执行时实现如权利要求1-10任一项所述的方法。
16.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-10任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311226829.9A CN116994188A (zh) | 2023-09-22 | 2023-09-22 | 一种动作识别方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311226829.9A CN116994188A (zh) | 2023-09-22 | 2023-09-22 | 一种动作识别方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116994188A true CN116994188A (zh) | 2023-11-03 |
Family
ID=88528557
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311226829.9A Pending CN116994188A (zh) | 2023-09-22 | 2023-09-22 | 一种动作识别方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116994188A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117455744A (zh) * | 2023-12-22 | 2024-01-26 | 安盛信达科技股份公司 | 一种智慧社区物联网数据处理方法及系统 |
CN117876941A (zh) * | 2024-03-08 | 2024-04-12 | 杭州阿里云飞天信息技术有限公司 | 目标多模态模型系统及构建方法、视频处理模型训练方法、视频处理方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116416480A (zh) * | 2023-06-09 | 2023-07-11 | 清华大学 | 一种基于多模板提示学习的视觉分类方法和装置 |
CN116645624A (zh) * | 2023-02-27 | 2023-08-25 | 华润数字科技有限公司 | 视频内容理解方法和系统、计算机设备、存储介质 |
-
2023
- 2023-09-22 CN CN202311226829.9A patent/CN116994188A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116645624A (zh) * | 2023-02-27 | 2023-08-25 | 华润数字科技有限公司 | 视频内容理解方法和系统、计算机设备、存储介质 |
CN116416480A (zh) * | 2023-06-09 | 2023-07-11 | 清华大学 | 一种基于多模板提示学习的视觉分类方法和装置 |
Non-Patent Citations (2)
Title |
---|
QIANG WANG等: "Seeing in Flowing: Adapting CLIP for Action Recognition with Motion Prompts Learning", 《ARXIV:2308.04828》, pages 5339 - 5347 * |
肖秦琨,高嵩著;: "《动态贝叶斯网络智能信息处理及应用》", 30 September 2019, 北京:国防工业出版社, pages: 186 - 189 * |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117455744A (zh) * | 2023-12-22 | 2024-01-26 | 安盛信达科技股份公司 | 一种智慧社区物联网数据处理方法及系统 |
CN117455744B (zh) * | 2023-12-22 | 2024-03-22 | 安盛信达科技股份公司 | 一种智慧社区物联网数据处理方法及系统 |
CN117876941A (zh) * | 2024-03-08 | 2024-04-12 | 杭州阿里云飞天信息技术有限公司 | 目标多模态模型系统及构建方法、视频处理模型训练方法、视频处理方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3477519B1 (en) | Identity authentication method, terminal device, and computer-readable storage medium | |
CN116994188A (zh) | 一种动作识别方法、装置、电子设备及存储介质 | |
CN115131638B (zh) | 视觉文本预训练模型的训练方法、装置、介质和设备 | |
CN117079299B (zh) | 数据处理方法、装置、电子设备及存储介质 | |
CN111914076A (zh) | 一种基于人机对话的用户画像构建方法、系统、终端及存储介质 | |
CN114282013A (zh) | 一种数据处理方法、装置及存储介质 | |
CN113762326A (zh) | 一种数据识别方法、装置、设备及可读存储介质 | |
CN114821401A (zh) | 视频审核方法、装置、设备、存储介质及程序产品 | |
CN114267345A (zh) | 模型训练方法、语音处理方法及其装置 | |
CN113128526B (zh) | 图像识别方法、装置、电子设备和计算机可读存储介质 | |
CN113362852A (zh) | 一种用户属性识别方法和装置 | |
CN114519397A (zh) | 基于对比学习的实体链接模型的训练方法、装置、设备 | |
CN116152938A (zh) | 身份识别模型训练和电子资源转移方法、装置及设备 | |
CN116543798A (zh) | 基于多分类器的情感识别方法和装置、电子设备、介质 | |
CN111259698B (zh) | 用于获取图像的方法及装置 | |
CN116959123A (zh) | 一种人脸活体检测方法、装置、设备及存储介质 | |
CN114708429A (zh) | 图像处理方法、装置、计算机设备及计算机可读存储介质 | |
CN111291640B (zh) | 用于识别步态的方法和装置 | |
CN114067362A (zh) | 基于神经网络模型的手语识别方法、装置、设备及介质 | |
CN114676705A (zh) | 一种对话关系处理方法、计算机及可读存储介质 | |
CN114329068B (zh) | 一种数据处理方法及装置、电子设备、存储介质 | |
CN116049446B (zh) | 一种事件抽取方法、装置、设备及计算机可读存储介质 | |
CN118155214B (zh) | 一种提示学习方法、图像分类方法及相关装置 | |
CN116127081A (zh) | 一种数据处理方法、设备以及计算机可读存储介质 | |
CN114529937A (zh) | 社交关系识别方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |