掌桥专利:专业的专利平台
掌桥专利
首页

基于肢体识别的视频匹配方法、装置、设备及存储介质

文献发布时间:2023-06-19 11:52:33


基于肢体识别的视频匹配方法、装置、设备及存储介质

技术领域

本发明涉及图像匹配技术领域,尤其涉及一种基于肢体识别的视频匹配方法、装置、计算机设备及存储介质。

背景技术

现有技术中,针对于肢体动作匹配已经引入了姿态识别模型予以判别,例如在舞蹈视频打分系统中,通过识别出的肢体点位置近似相似度方法来评估舞蹈的分数;但是上述方法存在如下不足:其一,在出现无人的风景视频时也可能会识别出人体肢体点的错误识别现象;其二,采用肢体点位置近似相似度计算的方法,会将两段视频中差异信息被弱化,进而导致最终评估的舞蹈分数差距不大;其三,两段视频动作起始帧对齐的问题,也即两段视频动作开始时间无法统一对齐,进而导致最终肢体动作匹配准确率较低。

发明内容

本发明实施例提供一种基于肢体识别的视频匹配方法、装置、计算机设备及存储介质,以解决肢体动作匹配准确率较低的问题。

一种基于肢体识别的视频匹配方法,包括:

获取待匹配视频以及与所述待匹配视频对应的标准视频;所述待匹配视频包含至少一帧待匹配图像;所述标准视频包含至少一帧标准图像;

将所述待匹配视频输入至预设肢体分类模型,以确定所述待匹配视频是否为正常匹配视频;

若所述待匹配视频为正常匹配视频,则将所述标准视频以及所述待匹配视频分别输入至预设姿态识别模型中,得到与各帧标准图像对应的标准肢体序列,以及与各帧待匹配图像对应的待匹配肢体序列;

根据各所述标准肢体序列,通过极值关键帧识别方法确定与所述标准视频对应的关键帧索引序列;

通过最大均值视频段识别方法,确定各所述待匹配肢体序列中与所述关键帧索引序列匹配的多个匹配索引序列以及与其对应的序列匹配值;

根据与各所述匹配索引序列对应的序列匹配值,确定所述待匹配视频的视频匹配结果。

一种基于肢体识别的视频匹配装置,包括:

标准视频获取模块,用于获取待匹配视频以及与所述待匹配视频对应的标准视频;所述待匹配视频包含至少一帧待匹配图像;所述标准视频包含至少一帧标准图像;

匹配视频判断模块,用于将所述待匹配视频输入至预设肢体分类模型,以确定所述待匹配视频是否为正常匹配视频;

姿态识别模块,用于若所述待匹配视频为正常匹配视频,则将所述标准视频以及待匹配视频分别输入至预设姿态识别模型中,得到与各帧标准图像对应的标准肢体序列,以及与各帧待匹配图像对应的待匹配肢体序列;

关键帧识别模块,用于根据各所述标准肢体序列,通过极值关键帧识别方法确定与所述标准视频对应的关键帧索引序列;

序列匹配值确定模块,用于通过最大均值视频段识别方法,确定各所述待匹配肢体序列中与所述关键帧索引序列匹配的多个匹配索引序列以及与其对应的序列匹配值;

视频匹配结果确定模块,用于根据与各所述匹配索引序列对应的序列匹配值,确定所述待匹配视频的视频匹配结果。

一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述基于肢体识别的视频匹配方法。

一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述基于肢体识别的视频匹配方法。

上述基于肢体识别的视频匹配方法、装置、计算机设备及存储介质,该方法通过获取待匹配视频以及与所述待匹配视频对应的标准视频;所述待匹配视频包含至少一帧待匹配图像;所述标准视频包含至少一帧标准图像;将所述待匹配视频输入至预设肢体分类模型,以确定所述待匹配视频是否为正常匹配视频;若所述待匹配视频为正常匹配视频,则将所述标准视频以及待匹配视频分别输入至预设姿态识别模型中,得到与各帧标准图像对应的标准肢体序列,以及与各帧待匹配图像对应的待匹配肢体序列;根据各所述标准肢体序列,通过极值关键帧识别方法确定与所述标准视频对应的关键帧索引序列;通过最大均值视频段识别方法,确定各所述待匹配肢体序列中与所述关键帧索引序列匹配的多个匹配索引序列以及与其对应的序列匹配值;根据与各所述匹配索引序列对应的序列匹配值,确定所述待匹配视频的视频匹配结果。

本发明采用将两段视频对齐的方式是通过极值关键帧识别方法以及最大均值视频段识别方法结合,进而通过最大肢体元素以及最小肢体元素找到对齐段落后进行低维度的对应帧相似度计算;提高了视频匹配的准确率;本发明还引入了预设肢体分类模型,当待匹配视频不是正常匹配视频时,不需要执行后续步骤确定视频匹配结果,进而减小了计算机的计算复杂度,同时也提高了视频匹配的效率以及准确率。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1是本发明一实施例中基于肢体识别的视频匹配方法的一应用环境示意图;

图2是本发明一实施例中基于肢体识别的视频匹配方法的一流程图;

图3是本发明一实施例中基于肢体识别的视频匹配方法中步骤S40的一流程图;

图4是本发明一实施例中基于肢体识别的视频匹配方法中步骤S50的一流程图;

图5是本发明一实施例中基于肢体识别的视频匹配方法中步骤S503的一流程图;

图6是本发明一实施例中基于肢体识别的视频匹配装置的一原理框图;

图7是本发明一实施例中基于肢体识别的视频匹配装置中关键帧识别模块的一原理框图;

图8是本发明一实施例中基于肢体识别的视频匹配装置中序列匹配值确定模块的一原理框图;

图9是本发明一实施例中基于肢体识别的视频匹配装置中滑动匹配单元的一原理框图;

图10是本发明一实施例中计算机设备的一示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例提供的基于肢体识别的视频匹配方法,该基于肢体识别的视频匹配方法可应用如图1所示的应用环境中。具体地,该基于肢体识别的视频匹配方法应用在基于肢体识别的视频匹配系统中,该基于肢体识别的视频匹配系统包括如图1所示的客户端和服务器,客户端与服务器通过网络进行通信,用于解决肢体动作匹配准确率较低的问题。其中,客户端又称为用户端,是指与服务器相对应,为客户提供本地服务的程序。客户端可安装在但不限于各种个人计算机、笔记本电脑、智能手机、平板电脑和便携式可穿戴设备上。服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。

在一实施例中,如图2所示,提供一种基于肢体识别的视频匹配方法,以该方法应用在图1中的服务器为例进行说明,包括如下步骤:

S10:获取待匹配视频以及与所述待匹配视频对应的标准视频;所述待匹配视频包含至少一帧待匹配图像;所述标准视频包含至少一帧标准图像;

可以理解地,标准视频指的是校验无误的视频;待匹配视频指的是等待匹配的视频;示例性地,在舞蹈视频打分场景中,标准视频可以为没有错误的舞蹈动作的示范视频;待匹配视频可以为不同学员学习标准视频中的舞蹈自行拍摄的视频。待匹配图像指的是待匹配视频中包含肢体动作的图像,在本实施例中的待匹配视频为至少有一帧待匹配图像包含肢体动作,也即不包含任何肢体动作的待匹配视频被如人工筛选,或者采用步骤S20中的预设肢体分类模型提前剔除。标准图像指的是标准视频中包含肢体动作的图像。

S20:将所述待匹配视频输入至预设肢体分类模型,以确定所述待匹配视频是否为正常匹配视频;

可以理解地,预设肢体分类模型是基于神经网络的二分类模型,该预设肢体分类模型可以识别出待匹配图像中是否包含人体亦或者是肢体动作;示例性地,假设待匹配图像中包含人体亦或者肢体动作,则预设肢体分类模型会将该待匹配图像标注为1,也即将该待匹配图像分类至包含人体亦或者肢体动作的类别;假设待匹配图像中不包含人体亦或者肢体动作,则预设肢体分类模型会将该待匹配图像标注为0,也即将该待匹配图像分类至不包含人体亦或者肢体动作的类别。

进一步地,本实施例中的预设肢体分类模型可以基于步骤S30中的预设姿态识别模型进行训练,也即通过多个标准视频输入至预设姿态识别模型之后,预设姿态识别模型会输出与包含肢体动作的标准图像对应的标准肢体序列,进而将标准肢体序列输入至预设肢体分类模型中,以令预设肢体分类模型识别该标准肢体序列并对其进行标注。

在一实施例中,步骤S20中,包括:

通过所述预设肢体分类模型确定所述待匹配视频中各帧待匹配图像中是否包含肢体动作;

获取包含肢体动作的待匹配图像的第一总数量,以及所述待匹配视频中所有待匹配图像的第二总数量;

可以理解地,第一总数量是指待匹配视频中包含肢体动作的待匹配图像的总数量;第二总数量是指待匹配视频中所有待匹配图像的总数量。

在所述第一总数量与所述第二总数量之间的比值大于或等于预设数量比值时,确定所述待匹配视频为正常匹配视频。

其中,预设数量比值可以根据应用场景的精确度需求进行确定,示例性地,预设数量比值可以设定为80%,90%等。

具体地,在通过预设肢体分类模型确定待匹配视频中各帧待匹配图像中是否包含肢体动作之后,记录包含肢体动作的待匹配图像的第一总数量,以及记录待匹配图像的第二总数量;将第一总数量与第二总数量之间的比值与预设数量比值进行比较,若第一总数量与第二总数量之间的比值大于或等于预设数量比值,则表征待匹配视频中包含肢体动作的待匹配图像符合数量要求,即确定待匹配视频为正常匹配视频。若第一总数量与第二总数量之间的比值小于预设数量比值,则表征待匹配视频中包含肢体动作的待匹配图像较少,不符合数量要求,因此确定待匹配视频不为正常匹配视频。

进一步地,若待匹配视频不是正常匹配视频,则发送视频上传错误指令至预设接收方,以令预设接收方更新待匹配视频。

若第一总数量与第二总数量之间的比值小于预设数量比值,则确定待匹配视频为异常匹配视频,也即表征该待匹配视频中包含较少的具有肢体动作的待匹配图像帧,因此发送视频上传错误指令至预设接收方,以令预设接收方更新待匹配视频;其中,更新的方式可以为重新上传新的待匹配视频。其中预设接收方可以为发送待匹配视频的一方。

S30:若所述待匹配视频为正常匹配视频,则将所述标准视频以及待匹配视频分别输入至预设姿态识别模型中,得到与各帧标准图像对应的标准肢体序列,以及与各帧待匹配图像对应的待匹配肢体序列;

可以理解地,预设姿态识别模型用于识别待匹配视频中待匹配图像的肢体动作,以及标准视频中标准图像的肢体动作。标准肢体序列指的是标准图像中各肢体元素的坐标位置的序列组合,待匹配肢体序列指的是待匹配图像中各肢体元素的坐标位置的序列组合。

进一步地,本实施例中的肢体元素包含但不限于头部肢体元素、左肩膀肢体元素、右肩膀肢体元素、左手肘肢体元素、右手肘肢体元素、左手腕肢体元素、右手腕肢体元素、左臀部肢体元素、右臀部肢体元素、左膝盖肢体元素、右膝盖肢体元素、左脚踝肢体元素以及右脚踝肢体元素。针对于每一帧标准图像,均对应一个包含上述13种肢体元素的坐标位置的标准肢体序列,示例性地,该标准肢体序列可以为:[(x00,y00),(x01,y01),(x02,y02),(x03,y03),(x04,y04),(x05,y05),…,(x013,y013)]。

具体地,若待匹配视频为正常匹配视频,则将标准视频以及待匹配视频分别输入至预设姿态识别模型中,以令预设姿态识别模型识别出包含肢体动作的待匹配图像以及标准图像,并对各包含肢体动作的标准图像以及待匹配图像进行肢体元素坐标位置标注,进而输出与各帧标准图像对应的标准肢体序列,以及与各帧待匹配图像对应的待匹配肢体序列。

S40:根据各所述标准肢体序列,通过极值关键帧识别方法确定与所述标准视频对应的关键帧索引序列;

可以理解地,极值关键帧识别方法指的是从所有标准肢体序列中,确定各肢体元素的最大值以及最小值的方法。

在一实施例中,如图3所示,步骤S40中,所述标准肢体序列关联图像帧标签;也即所述根据各所述标准肢体序列,通过极值关键帧识别方法确定与所述标准视频对应的关键帧索引序列,包括:

S401:获取所有所述标准肢体序列中的标准肢体元素,其中,每个所述标准肢体序列中包含预设数量类别的标准肢体元素,且每个所述标准肢体序列中的每一类标准肢体元素仅为一个;

可以理解地,在步骤S30中指出本实施例中的肢体元素包含但不限于头部肢体元素、左肩膀肢体元素、右肩膀肢体元素、左手肘肢体元素、右手肘肢体元素、左手腕肢体元素、右手腕肢体元素、左臀部肢体元素、右臀部肢体元素、左膝盖肢体元素、右膝盖肢体元素、左脚踝肢体元素以及右脚踝肢体元素。因此,标准肢体序列中的标准肢体元素也为上述所有肢体元素。在本实施例中,预设数量类别为13类;进一步地,针对一帧包含肢体动作的标准图像(本实施例中仅讨论一帧包含肢体动作的标准图像仅包含一个个体的肢体动作)对应于一个标准肢体序列,因此一个标准肢体序列中的每一类标准肢体元素仅为一个,也即每一类标准肢体元素的坐标信息在一帧标准图像中有且仅有一个。

S402:提取每一类标准肢体元素中的最大肢体元素以及最小肢体元素;

可以理解地,最大肢体元素指的是每一类标准肢体元素中二维坐标信息的最大值,最小肢体元素指的是每一类标准肢体元素中坐标信息的最小值。进一步地,针对于不同类型的标准视频以及待匹配视频可以存在不同的提取最大肢体元素以及最小肢体元素的方法,示例性地,假设标准视频以及待匹配视频中肢体动作变化存在较少蹲下跳跃的动作时,如广场舞等,则可以仅考虑各标准肢体元素中二维坐标信息中横向坐标信息,也即提取横向坐标信息中的最大值作为最大肢体元素,以及横向坐标信息中的最小值作为最小肢体元素;若标准视频以及待匹配视频中肢体动作变化存在很多蹲下跳跃的动作时,如武打动作视频等,则可以综合考虑各标准肢体元素中二维坐标信息中横向坐标信息以及纵向坐标信息,从而根据各标准肢体元素中二维坐标信息中横向坐标信息以及纵向坐标信息,确定每一类标准肢体元素中的最大肢体元素以及最小肢体元素。

S403:根据提取的所有最大肢体元素以及与各所述最大肢体元素对应的图像帧标签生成最大帧索引序列,同时根据提取的所有所述最小肢体元素以及与各所述最小肢体元素对应的图像帧标签生成最小帧索引序列;

可以理解地,最大肢体元素是从所有标准肢体序列中的标准肢体元素中确定的,且每一标准肢体序列对应一帧标准图像,因此最大肢体元素与一帧标准图像关联,因此与各最大肢体元素对应的图像帧标签指的是与各最大肢体元素对应的标准图像的帧数,也即该标准图像在标准视频中的帧排序。示例性地,假设其中一类最大肢体元素是从标准视频的第16帧标准图像中的一个肢体元素,则与该最大肢体元素对应的图像帧标签为16帧。同理,与各最小肢体元素对应的图像帧标签指的是与各最小肢体元素对应的标准图像的帧数。进一步地,由于本实施例中采用的是极值关键帧识别方法,因此每一类标准肢体元素可能出现在不同的标准图像中,但同时也可能存在多个标准肢体元素对应的图像帧标签是相同的,也即一帧标准图像中可能同时出现多类最大肢体元素,亦或者多类最小肢体元素。

S404:对所述最大帧索引序列以及所述最小帧索引序列进行序列合并处理,得到所述关键帧索引序列。

具体地,在根据提取的所有最大肢体元素以及与各所述最大肢体元素对应的图像帧标签生成最大帧索引序列,同时根据提取的所有所述最小肢体元素以及与各所述最小肢体元素对应的图像帧标签生成最小帧索引序列之后,合并最大帧索引序列以及最小帧索引序列,以得到合并后的关键帧索引序列,也即关键帧索引序列中包含所有最大肢体元素以及最小肢体元素,并同时附带与其对应的图像帧标签,以该图像帧标签作为帧索引,便于在步骤S50中确定匹配索引序列。

S50:通过最大均值视频段识别方法,确定各所述待匹配肢体序列中与所述关键帧索引序列匹配的多个匹配索引序列以及与其对应的序列匹配值;

可以理解地,匹配索引序列指的是待匹配肢体序列中,与关键帧索引序列中各最大肢体元素以及最小肢体元素匹配的序列;序列匹配值指的是匹配索引序列与对应的最大肢体元素的元素视频段之间的匹配程度,该序列匹配值可以通过余弦相似度算法确定。

在一实施例中,如图4所述,步骤S50中,包括:

S501:根据与各所述最大肢体元素对应的图像帧标签,自所述标准视频中选取与各所述最大肢体元素对应的第一肢体元素视频段;所述第一肢体元素视频段包含第一预设数量帧的标准图像;

示例性地,假设其中一类最大肢体元素对应的图像帧标签为标准视频中的第16帧标准图像,则选取的第一肢体元素视频段可以为标准视频中以第16帧标准图像为起始帧往后的20帧标准图像组成的视频段,也即标准视频中第16帧至第35帧的标准图像构成的视频段即为第一肢体元素视频段。

S502:根据与各所述最大肢体元素对应的图像帧标签,自所述待匹配视频中选取与各所述最大肢体元素对应的第二肢体元素视频段;所述第二肢体元素视频段包含第二预设数量帧的待匹配图像;所述第二预设数量帧大于所述第一预设数量帧;

示例性地,假设其中一类最大肢体元素对应的图像帧标签为标准视频中的第16帧标准图像,则选取的第二肢体元素视频段可以为待匹配视频中以第6帧待匹配图像为起始帧往后的20帧待匹配图像,以及以第26帧待匹配图像为起始帧往后的20帧待匹配图像组成的视频段,也即待匹配视频中第6帧至第45帧的待匹配图像构成的视频段即为第二肢体元素视频段。

S503:将所述第一肢体元素视频段在所述第二肢体元素视频段上滑动匹配,以确定在所述第二肢体元素视频段中与各所述第一肢体元素视频段对应的滑动匹配序列;

可以理解地,滑动匹配过程即为第一肢体元素视频段与第二肢体元素视频段的匹配过程,以确定在第二肢体元素视频段中与各第一肢体元素视频段对应的滑动匹配序列。

在一实施例中,如图5所示,步骤S503中,包括:

S5031:将所述第二肢体元素视频段中的各帧待匹配图像,按照时间顺序展示在预设视频时间轴上;

S5032:将所述第一肢体元素视频段作为匹配滑动窗口,并将匹配滑动窗口与所述第二肢体元素视频段的起始帧对齐之后,将与所述第一预设数量帧相同的所述第二肢体元素视频段记录为第一匹配序列;

可以理解地,将第一肢体元素视频段作为匹配滑动窗口之后,该匹配滑动窗口的长度即为第一肢体元素视频段中第一预设数量帧的长度。进一步地,在将第二肢体元素视频段中的所有待匹配图像,按照时间顺序(也即各待匹配图像的获取时间顺序)展示在预设视频时间轴上,该预设视频时间轴上的各待匹配图像按照时间从先到后的顺序展示,进而将第一肢体元素视频段作为滑动匹配窗口,并将匹配滑动窗口与第二肢体元素视频段的起始帧对齐;将与第一预设数量帧相同的第二肢体元素视频段记录为第一匹配序列,也即第一匹配序列是第二肢体元素视频段中,以第二肢体元素视频段起始帧待匹配图像为起始图像,具有第一预设数量待匹配图像的图像序列。

S5033:将所述匹配滑动窗口在所述第二肢体元素视频段上,向远离所述起始帧的方向移动预设帧数步长;

可选地,预设帧数步长可以根据第二肢体元素视频段中待匹配图像的数量进行确定,示例性地,在第二肢体元素视频段中待匹配图像数量较少时,预设帧数步长可以设定为1;在第二肢体元素视频段中待匹配图像数量较多时,预设帧数补偿可以设定为3等。

具体地,在将第一肢体元素视频段作为匹配滑动窗口,并将匹配滑动窗口与第二肢体元素视频段的起始帧对齐之后,将与第一预设数量帧相同的第二肢体元素视频段记录为第一匹配序列之后,将匹配滑动窗口在第二肢体元素视频段上,向远离起始帧的方向移动预设帧数步长。

S5034:将位于第一匹配序列中的最后一个待匹配图像之后的预设帧数步长的待匹配图像加入至第一匹配序列,并自所述起始帧起删除第一匹配序列中预设帧数步长的待匹配图像,得到第二匹配序列;

具体地,在将匹配滑动窗口在第二肢体元素视频段上,向远离起始帧的方向移动预设帧数步长之后,将位于第一匹配序列中最后一个待匹配图像之后的预设帧数步长的待匹配图像加入至第一匹配序列,并自第一匹配序列的起始帧待匹配图像开始,删除预设帧数步长的待匹配图像,得到第二匹配序列,此时第二匹配序列中待匹配图像的数量等于第一预设数量帧。示例性地,假设预设帧数步长为1,则在得到第一匹配序列之后,将滑动匹配窗口向后移动一帧,此时与滑动匹配窗口对齐的为第二肢体元素视频段中第二帧待匹配图像。

S5035:检测所述第二匹配序列中的最后一个待匹配图像之后的预设帧数步长后的待匹配图像的帧数是否大于或等于所述预设帧数步长;

S5036:若所述第二匹配序列中的最后一个待匹配图像之后的预设帧数步长后的待匹配图像的帧数小于所述预设帧数步长,则将所述第一匹配序列以及所述第二匹配序列记录为所述滑动匹配序列。

具体地,在将位于第一匹配序列中的最后一个待匹配图像之后的预设帧数步长的待匹配图像加入至第一匹配序列,并自所述起始帧起删除第一匹配序列中预设帧数步长的待匹配图像,得到第二匹配序列之后,检测第二匹配序列中最后一个待匹配图像之后的预设帧数步长后的待匹配图像的帧数是否大于或等于预设帧数步长;示例性地,假设预设帧数步长为2,则在得到第二匹配序列之后,需要将滑动匹配窗口在第二肢体元素视频段上继续往后移动两个帧数步长,若在移动后第二肢体元素视频段的待匹配图像为0或者为1,则无法生成与滑动窗口匹配的第三匹配序列;因此,若第二匹配序列中最后一个待匹配图像之后的预设帧数步长后的待匹配图像的帧数小于预设帧数步长,此时无法再生成新的匹配序列,进而直接将第一匹配序列以及第二匹配序列记录为滑动匹配序列。

在一实施例中,步骤S5035之后,还包括:

若所述第二匹配序列中的最后一个待匹配图像之后的预设帧数步长后的待匹配图像的帧数大于或等于所述预设帧数步长,则将位于第二匹配序列中的最后一个待匹配图像之后的预设帧数步长的待匹配图像加入至第二匹配序列,并自所述起始帧起删除第二匹配序列中预设帧数步长的待匹配图像,得到第三匹配序列;

具体地,在检测所述第二匹配序列中的最后一个待匹配图像之后的预设帧数步长后的待匹配图像的帧数是否大于或等于所述预设帧数步长之后,若第二匹配序列中的最后一个待匹配图像之后的预设帧数步长后的待匹配图像的帧数大于或等于预设帧数步长,则将位于第二匹配序列中的最后一个待匹配图像之后的预设帧数步长的待匹配图像加入至第二匹配序列,并自所述起始帧起删除第二匹配序列中预设帧数步长的待匹配图像,得到第三匹配序列。

检测所述第三匹配序列中的最后一个待匹配图像之后的预设帧数步长后的待匹配图像的帧数是否大于或等于所述预设帧数步长;

若所述第三匹配序列中的最后一个待匹配图像之后的预设帧数步长后的待匹配图像的帧数小于所述预设帧数步长,则将所述第一匹配序列、所述第二匹配序列以及所述第三匹配序列记录为所述滑动匹配序列。

具体地,在将位于第二匹配序列中的最后一个待匹配图像之后的预设帧数步长的待匹配图像加入至第二匹配序列,并自起始帧起删除第二匹配序列中预设帧数步长的待匹配图像,得到第三匹配序列之后,检测第三匹配序列中的最后一个待匹配图像之后的预设帧数步长后的待匹配图像的帧数是否大于或等于预设帧数步长;若第三匹配序列中的最后一个待匹配图像之后的预设帧数步长后的待匹配图像的帧数小于所述预设帧数步长,则将第一匹配序列、第二匹配序列以及第三匹配序列记录为滑动匹配序列。

进一步地,若第三匹配序列中最后一个待匹配图像之后的预设帧数步长后的待匹配图像的帧数大于或等于预设帧数步长,则继续移动滑动匹配窗口,以得到第四匹配序列;进一步地,在第四匹配序列之后,可能还包括第五匹配序列,第六匹配序列等,确定各匹配序列的方法在上述说明中均已指出,因此在此不再赘述。

S504:通过预设相似度算法确定各所述滑动匹配序列和与其对应的所述第一肢体元素视频段之间的序列相似度分值;

具体地,在将所述第一肢体元素视频段在所述第二肢体元素视频段上滑动匹配,以确定在所述第二肢体元素视频段中与各所述第一肢体元素视频段对应的第一滑动匹配序列之后,通过预设相似度算法(如余弦相似度算法)确定各滑动匹配序列和与其对应的第一肢体元素视频段之间的序列相似度分值。其中,序列相似度分值表征滑动匹配序列与第一肢体元素视频段之间的相似程度,序列相似度分值越高表征滑动匹配序列与第一肢体元素视频段之间的相似程度越高,反之序列相似度分值越低表征滑动匹配序列与第一肢体元素视频段之间的相似程度越低。

S505:将同一最大肢体元素对应的最大的序列相似度分值记录为所述序列匹配值,并将与所述序列匹配值对应的滑动匹配序列记录为所述匹配索引序列。

可以理解地,针对于一个最大肢体元素存在多个滑动匹配序列,以及与各滑动匹配序列对应的序列相似度分值,进而只需要将与同一个最大肢体元素对应的最大的序列相似度分值记录为序列匹配值,并将与序列匹配值对应的滑动匹配序列记录为匹配索引序列。

S60:根据与各所述匹配索引序列对应的序列匹配值,确定所述待匹配视频的视频匹配结果。

具体地,在通过最大均值视频段识别方法,确定各所述待匹配肢体序列中与所述关键帧索引序列匹配的多个匹配索引序列以及与其对应的序列匹配值之后,根据与各所述匹配索引序列对应的序列匹配值,确定所述待匹配视频的视频匹配结果。

在一实施例中,步骤S60中,包括:

获取所述匹配索引序列的索引序列总数;

根据与各所述匹配索引序列对应的序列匹配值以及所述索引序列总数,通过平均值算法确定所述视频匹配结果。

可以理解地,索引序列总数为匹配索引序列的总数量;具体地,在通过最大均值视频段识别方法,确定各所述待匹配肢体序列中与所述关键帧索引序列匹配的多个匹配索引序列以及与其对应的序列匹配值之后,获取匹配索引序列的索引序列总数,根据与各匹配索引序列对应的序列匹配值以及索引序列总数,也即将与各匹配索引序列对应的序列匹配值之和,与索引序列总数之间比值记录为视频匹配结果。该视频匹配结果表征了待匹配视频与标准视频之间的匹配程度,示例性地,本实施例若应用在舞蹈视频打分场景中,则该视频匹配结果可以为对待匹配视频的舞蹈打分分值。

在本实施例中,采用将两段视频对齐的方式是通过极值关键帧识别方法以及最大均值视频段识别方法结合,进而通过最大肢体元素以及最小肢体元素找到对齐段落后进行低维度的对应帧相似度计算;提高了视频匹配的准确率;本实施例还引入了预设肢体分类模型,当待匹配视频不是正常匹配视频时,不需要执行后续步骤确定视频匹配结果,进而减小了计算机的计算复杂度,同时也提高了视频匹配的效率以及准确率。

应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。

在一实施例中,提供一种基于肢体识别的视频匹配装置,该基于肢体识别的视频匹配装置与上述实施例中基于肢体识别的视频匹配方法一一对应。如图6所示,该基于肢体识别的视频匹配装置包括标准视频获取模块10、匹配视频判断模块20、姿态识别模块30、关键帧识别模块40、序列匹配值确定模块50和视频匹配结果确定模块60。各功能模块详细说明如下:

标准视频获取模块10,用于获取待匹配视频以及与所述待匹配视频对应的标准视频;所述待匹配视频包含至少一帧待匹配图像;所述标准视频包含至少一帧标准图像;

匹配视频判断模块20,用于将所述待匹配视频输入至预设肢体分类模型,以确定所述待匹配视频是否为正常匹配视频;

姿态识别模块30,用于若所述待匹配视频为正常匹配视频,则将所述标准视频以及所述待匹配视频分别输入至预设姿态识别模型中,得到与各帧标准图像对应的标准肢体序列,以及与各帧待匹配图像对应的待匹配肢体序列;

关键帧识别模块40,用于根据各所述标准肢体序列,通过极值关键帧识别方法确定与所述标准视频对应的关键帧索引序列;

序列匹配值确定模块50,用于通过最大均值视频段识别方法,确定各所述待匹配肢体序列中与所述关键帧索引序列匹配的多个匹配索引序列以及与其对应的序列匹配值;

视频匹配结果确定模块60,用于根据与各所述匹配索引序列对应的序列匹配值,确定所述待匹配视频的视频匹配结果。

优选地,匹配视频判断模块20包括:

肢体动作识别单元,用于通过所述预设肢体分类模型确定所述待匹配视频中各帧待匹配图像中是否包含肢体动作;

图像数量获取单元,用于获取包含肢体动作的待匹配图像的第一总数量,以及所述待匹配视频中所有待匹配图像的第二总数量;

图像数量比较单元,用于在所述第一总数量与所述第二总数量之间的比值大于或等于预设数量比值时,确定所述待匹配视频为正常匹配视频。

优选地,如图7所示,关键帧识别模块40包括:

肢体元素获取单元401,用于获取所有所述标准肢体序列中的标准肢体元素,其中,每个所述标准肢体序列中包含预设数量类别的标准肢体元素;且一个所述标准肢体序列中的每一类所述标准肢体元素仅为一个;

肢体元素提取单元402,用于提取每一类标准肢体元素中的最大肢体元素以及最小肢体元素;

帧索引序列生成单元403,用于根据提取的所有最大肢体元素以及与各所述最大肢体元素对应的图像帧标签生成最大帧索引序列,同时根据提取的所有所述最小肢体元素以及与各所述最小肢体元素对应的图像帧标签生成最小帧索引序列;

序列合并单元404,用于对所述最大帧索引序列以及所述最小帧索引序列进行序列合并处理,得到所述关键帧索引序列。

优选地,如图8所示,序列匹配值确定模块50包括:

第一视频段选取单元501,用于根据与各所述最大肢体元素对应的图像帧标签,自所述标准视频中选取与各所述最大肢体元素对应的第一肢体元素视频段;所述第一肢体元素视频段包含第一预设数量帧的标准图像;

第二视频段选取单元502,用于根据与各所述最大肢体元素对应的图像帧标签,自所述待匹配视频中选取与各所述最大肢体元素对应的第二肢体元素视频段;所述第二肢体元素视频段包含第二预设数量帧的待匹配图像;所述第二预设数量帧大于所述第一预设数量帧;

滑动匹配单元503,用于将所述第一肢体元素视频段在所述第二肢体元素视频段上滑动匹配,以确定在所述第二肢体元素视频段中与各所述第一肢体元素视频段对应的滑动匹配序列;

相似度匹配单元504,用于通过预设相似度算法确定各所述滑动匹配序列和与其对应的所述第一肢体元素视频段之间的序列相似度分值;

匹配索引序列确定单元505,用于将同一最大肢体元素对应的最大的序列相似度分值记录为所述序列匹配值,并将与所述序列匹配值对应的滑动匹配序列记录为所述匹配索引序列。

优选地,滑动匹配单元503包括:

匹配图像展示子单元5031,用于将所述第二肢体元素视频段中的各帧待匹配图像,按照时间顺序展示在预设视频时间轴上;

第一匹配序列记录子单元5032,用于将所述第一肢体元素视频段作为匹配滑动窗口,并将匹配滑动窗口与所述第二肢体元素视频段的起始帧对齐之后,将与所述第一预设数量帧相同的所述第二肢体元素视频段记录为第一匹配序列;

窗口移动子单元5033,用于将所述匹配滑动窗口在所述第二肢体元素视频段上,向远离所述起始帧的方向移动预设帧数步长;

第二匹配序列确定子单元5034,用于将位于第一匹配序列中的最后一个待匹配图像之后的预设帧数步长的待匹配图像加入至第一匹配序列,并自所述起始帧起删除第一匹配序列中预设帧数步长的待匹配图像,得到第二匹配序列;

第一图像帧数检测子单元5035,用于检测所述第二匹配序列中的最后一个待匹配图像之后的预设帧数步长后的待匹配图像的帧数是否大于或等于所述预设帧数步长;

第一滑动匹配序列记录子单元5036,用于若所述第二匹配序列中的最后一个待匹配图像之后的预设帧数步长后的待匹配图像的帧数小于所述预设帧数步长,则将所述第一匹配序列以及所述第二匹配序列记录为所述滑动匹配序列。

优选地,滑动匹配单元503还包括:

第三匹配序列确定子单元,用于若所述第二匹配序列中的最后一个待匹配图像之后的预设帧数步长后的待匹配图像的帧数大于或等于所述预设帧数步长,则将位于第二匹配序列中的最后一个待匹配图像之后的预设帧数步长的待匹配图像加入至第二匹配序列,并自所述起始帧起删除第二匹配序列中预设帧数步长的待匹配图像,得到第三匹配序列;

第二图像帧数检测子单元,用于检测所述第三匹配序列中的最后一个待匹配图像之后的预设帧数步长后的待匹配图像的帧数是否大于或等于所述预设帧数步长;

第二滑动匹配序列记录子单元,用于若所述第三匹配序列中的最后一个待匹配图像之后的预设帧数步长后的待匹配图像的帧数小于所述预设帧数步长,则将所述第一匹配序列、所述第二匹配序列以及所述第三匹配序列记录为所述滑动匹配序列。

优选地,视频匹配结果确定模块60包括:

索引序列总数获取单元,用于获取所述匹配索引序列的索引序列总数;

视频匹配结果确定单元,用于根据与各所述匹配索引序列对应的序列匹配值以及所述索引序列总数,通过平均值算法确定所述视频匹配结果。

关于基于肢体识别的视频匹配装置的具体限定可以参见上文中对于基于肢体识别的视频匹配方法的限定,在此不再赘述。上述基于肢体识别的视频匹配装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。

在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图10所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储上述实施例中基于肢体识别的视频匹配方法所使用到的数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于肢体识别的视频匹配方法。

在一个实施例中,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述实施例中的基于肢体识别的视频匹配方法。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述实施例中的基于肢体识别的视频匹配方法。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。

以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。

相关技术
  • 基于肢体识别的视频匹配方法、装置、设备及存储介质
  • 基于肢体识别的控制方法、装置、电子设备及存储介质
技术分类

06120113083053