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

一种视频数据处理方法、设备以及可读存储介质与流程

2021-10-19 23:58:00 来源:中国专利 TAG:互联网 数据处理 可读 方法 设备


1.本技术涉及互联网技术领域,尤其涉及一种视频数据处理方法、设备以及可读存储介质。


背景技术:

2.随着互联网技术的快速发展,以及计算能力的提升,视频处理技术的性能大幅提升。
3.视频处理技术可以对视频进行分类、检测、分析等,是计算机视觉领域中非常有挑战性的课题,在学术界与工业界均受到了广泛的重视。现有的人工智能识别技术只能针对静止状态的对象进行行为识别,但对于运动状态的行为识别性能较差,因此在运动场景下(例如在花样滑冰项目中),就更加难以通过现有的模型去识别连续运动动作的类别,因此,就只能通过人工的方式进行人工识别相应的动作类型,以记录成运动场记信息,导致动作类型的识别准确率和识别效率都比较低,且会消耗大量人力,还可能存在人为误差,造成运动场记信息的生成效率低下。


技术实现要素:

4.本技术实施例提供了一种视频数据处理方法、设备以及可读存储介质,可以提高识别动作类型的准确率,且提升运动场记信息的生成效率。
5.本技术实施例一方面提供了一种视频数据处理方法,包括:
6.获取待处理视频中针对目标对象的运动事件片段;
7.若运动事件片段包括连续运动动作片段,则识别连续运动动作片段中的运动状态分割点,根据运动状态分割点对连续运动动作片段进行拆分,得到至少两个单独运动动作片段;
8.分别在每个单独运动动作片段中对目标对象的关键部位进行跟踪,得到每个单独运动动作片段分别对应的关键部位位置信息,根据关键部位位置信息识别连续运动动作片段对应的第一事件标签;第一事件标签用于在目标对象关联的运动场记信息中记录每个单独运动动作片段分别对应的动作类型。
9.本技术实施例一方面提供了一种视频数据处理装置,包括:
10.获取模块,用于获取待处理视频中针对目标对象的运动事件片段;
11.拆分模块,用于若运动事件片段包括连续运动动作片段,则识别连续运动动作片段中的运动状态分割点,根据运动状态分割点对连续运动动作片段进行拆分,得到至少两个单独运动动作片段;
12.第一识别模块,用于分别在每个单独运动动作片段中对目标对象的关键部位进行跟踪,得到每个单独运动动作片段分别对应的关键部位位置信息,根据关键部位位置信息识别连续运动动作片段对应的第一事件标签;第一事件标签用于在目标对象关联的运动场记信息中记录每个单独运动动作片段分别对应的动作类型。
13.其中,获取模块,包括:
14.抽帧单元,用于对包含目标对象的待处理视频进行抽帧,得到第一视频帧序列;
15.第一特征提取单元,用于将第一视频帧序列输入特征提取网络,获取第一视频帧序列对应的图片特征;
16.时序动作分割单元,用于将图片特征输入动作分割网络,获取第一视频帧序列对应的时序特征;时序特征包括第一视频帧序列中的运动事件对应的起止时间戳;根据时序特征中的运动事件对应的起止时间戳,从第一视频帧序列中提取针对运动事件的运动事件片段。
17.其中,连续运动动作片段为连续跳跃动作片段;
18.拆分模块,包括:
19.状态划分单元,用于确定连续跳跃动作片段中的每个视频帧分别对应的运动状态;根据运动状态,将连续跳跃动作片段划分为至少两个腾空视频帧序列和至少三个落地视频帧序列;运动状态是指目标对象在运动过程中的状态;
20.拆分单元,用于将目标落地视频帧序列的中间时刻确定为运动状态分割点,根据动作状态分割点对连续跳跃动作片段进行拆分,得到至少两个单独跳跃动作片段;目标落地视频帧序列包括至少三个落地视频帧序列中除第一个落地视频帧序列和最后一个落地视频帧序列外的视频帧序列。
21.其中,运动状态包括腾空状态和落地状态;连续跳跃动作片段包括视频帧t
i
,i为正整数,且i小于所述连续跳跃动作片段中的视频帧的总数量;
22.状态划分单元,包括:
23.腾空序列确定子单元,用于从连续跳跃动作片段中获取连续的视频帧t
i
至视频帧t
i n
;n为正整数,且i n小于或等于连续跳跃动作片段中的视频帧的总数量;若连续的频帧t
i
至视频帧t
i n
‑1对应的运动状态均为腾空状态,且视频帧t
i n
和视频帧t
i
‑1分别对应的运动状态均为落地状态,且连续的视频帧t
i
至视频帧t
i n
‑1对应的视频帧数量大于腾空数量阈值,则将连续的视频帧t
i
至视频帧t
i n
‑1确定为腾空视频帧序列;连续跳跃动作片段中所存在的腾空视频帧序列的数量为至少两个;
24.落地序列确定子单元,用于将连续跳跃动作片段中除了至少两个腾空视频帧序列外的视频帧序列,确定为至少三个落地视频帧序列。
25.其中,连续运动动作片段为连续跳跃动作片段,每个单独运动动作片段均为单独跳跃动作片段,第一事件标签还包括动作评估质量和腾空旋转圈数;
26.上述视频数据处理装置,还包括:
27.第一抽帧模块,用于分别对每个单独跳跃动作片段进行抽帧,得到至少两个第二视频帧序列;
28.第一动作理解模块,用于将至少两个第二视频帧序列输入动作理解网络,通过动作理解网络输出连续跳跃动作片段对应的动作评估质量以及腾空旋转圈数;
29.则第一识别模块,具体用于分别在每个单独跳跃动作片段中对目标对象的关键部位进行跟踪,得到每个单独跳跃动作片段分别对应的关键部位位置信息,根据关键部位位置信息识别每个单独跳跃动作片段分别对应的动作类型;且具体用于根据动作评估质量、腾空旋转圈数以及动作类型生成连续跳跃动作片段对应的第一事件标签。
30.其中,至少两个第二视频帧序列包括第二视频帧序列s,动作理解网络包括m个非局部组件,m为正整数;
31.第一动作理解模块,包括:
32.第二特征提取单元,用于将第二视频帧序列s拆分为m个子序列,通过m个非局部组件分别对m个子序列进行特征提取,得到m个中间动作特征;分别对m个中间动作特征进行一维卷积,得到m个一维卷积动作特征;
33.单独输出单元,用于通过动作理解网络中的全连接层对m个一维卷积动作特征进行合并,得到目标动作特征,通过动作理解网络中的分类层输出目标动作特征对应的单独动作评估质量以及单独腾空旋转圈数;
34.合并输出单元,用于当获得至少两个第二视频帧序列中每个第二视频帧序列分别对应的单独动作评估质量以及单独腾空旋转圈数时,根据每个第二视频帧序列分别对应的单独动作评估质量以及单独腾空旋转圈数,生成连续跳跃动作片段对应的动作评估质量以及腾空旋转圈数。
35.其中,上述视频数据处理装置,还包括:
36.模型训练模块,用于对连续跳跃动作样本片段进行标注,在标注后的连续跳跃动作样本片段中均匀抽取k个视频帧,在k个视频帧中抽取连续的p个视频帧作为输入序列,输入初始动作理解网络,通过初始动作理解网络输出连续跳跃动作样本片段对应的预测动作评估质量以及预测腾空旋转圈数;p等于初始动作理解网络对应的模型输入数据长度;
37.模型修正模块,用于根据预测动作评估质量生成质量损失函数,根据预测腾空旋转圈数生成动作损失函数,根据质量损失函数和动作损失函数生成目标损失函数,通过目标损失函数对初始动作理解网络中的模型参数进行修正,得到动作理解网络。
38.其中,关键部位位置信息的信息数量为至少两个;至少两个单独运动动作片段包括单独运动动作片段h;
39.第一识别模块,包括:
40.位置信息获取单元,用于在单独运动动作片段h中对目标对象的关键部位进行跟踪,得到单独运动动作片段h对应的至少两个关键部位位置信息;
41.动作识别单元,用于预测至少两个关键部位位置信息中每个关键部位位置信息分别对应的动作类型预测概率,对预测得到的至少两个动作类型预测概率进行平均处理,得到平均动作类型预测概率,根据平均动作类型预测概率识别单独运动动作片段h对应的动作类型;
42.标签生成单元,用于当获得至少两个单独运动动作片段中每个单独运动动作片段分别对应的动作类型时,根据每个单独运动动作片段分别对应的动作类型生成连续运动动作片段对应的第一事件标签。
43.其中,至少两个关键部位位置信息包括全局关键部位位置信息、局部关键部位位置信息、融合关键部位位置信息、全局位移关键部位位置信息以及局部位移关键部位位置信息;
44.位置信息获取单元,包括:
45.第一位置信息获取子单元,用于在单独运动动作片段h中对目标对象的关键部位进行跟踪,得到关键部位的全局坐标,作为单独运动动作片段h对应的全局关键部位位置信
息;
46.第二位置信息获取子单元,用于根据全局关键部位位置信息得到关键部位的局部坐标,作为单独运动动作片段h对应的局部关键部位位置信息;
47.第三位置信息获取子单元,用于将全局关键部位位置信息中目标关键部位对应的全局坐标与局部关键部位位置信息中除目标关键部位外的关键部位对应的局部坐标进行融合,得到单独运动动作片段h对应的融合关键部位位置信息;
48.第四位置信息获取子单元,用于将全局关键部位位置信息在单独运动动作片段h中的每相邻两个视频帧之间的坐标位移,作为单独运动动作片段h对应的全局位移关键部位位置信息;
49.第五位置信息获取子单元,用于将局部关键部位位置信息在单独运动动作片段h中的每相邻两个视频帧之间的坐标位移,作为单独运动动作片段h对应的局部位移关键部位位置信息。
50.其中,上述视频数据处理装置,还包括:
51.第二抽帧模块,用于若运动事件片段包括旋转动作片段,则对旋转动作片段进行抽帧,得到第三视频帧序列;
52.第二动作理解模块,用于将第三视频帧序列输入动作理解网络,通过动作理解网络中的非局部组件识别旋转动作片段对应的第二事件标签;第二事件标签用于在目标对象关联的运动场记信息中记录旋转动作片段对应的动作类型以及动作评估质量。
53.其中,上述视频数据处理装置,还包括:
54.第三动作理解模块,用于若运动事件片段包括非连续跳跃动作片段,则对非连续跳跃动作片段进行抽帧,得到第四视频帧序列,将第四视频帧序列输入动作理解网络,得到非连续跳跃动作片段对应的动作评估质量以及腾空旋转圈数;
55.第二识别模块,用于在非连续跳跃动作片段中对目标对象的关键部位进行跟踪,得到非连续跳跃动作片段对应的关键部位位置信息,根据关键部位位置信息识别非连续跳跃动作片段对应的动作类型;且用于将非连续跳跃动作片段对应的动作评估质量、腾空旋转圈数以及动作类型确定为非连续跳跃动作片段对应的第三事件标签;第三事件标签用于在目标对象关联的运动场记信息中记录非连续跳跃动作片段对应的动作评估质量、腾空旋转圈数以及动作类型。
56.其中,上述视频数据处理装置,还包括:
57.第一标签确定模块,用于若运动事件片段包括入场事件片段,则将入场事件片段对应的起止时间戳作为入场事件片段对应的第四事件标签;第四事件标签用于在目标对象关联的运动场记信息中记录入场事件片段对应的开始时间戳和结束时间戳;
58.第二标签确定模块,用于若运动事件片段包括退场事件片段,则将退场事件片段对应的起止时间戳作为退场事件片段对应的第五事件标签;第五事件标签用于在目标对象关联的运动场记信息中记录退场事件片段对应的开始时间戳和结束时间戳;
59.第三标签确定模块,用于若运动事件片段包括得分显示事件片段,则将得分显示事件片段对应的起止时间戳作为得分显示事件片段对应的第六事件标签;第六事件标签用于在目标对象关联的运动场记信息中记录得分显示事件片段对应的开始时间戳和结束时间戳。
60.其中,上述视频数据处理装置,还包括:
61.场记信息生成模块,用于根据起止时间戳的时间顺序,将连续运动动作片段对应的第一事件标签依次排列在目标对象关联的运动场记信息中;
62.重要片段截取模块,用于根据运动事件对应的起止时间戳,从待处理视频中截取出重要事件片段,将重要事件片段拼接成视频集锦;运动事件片段属于重要事件片段。
63.本技术实施例一方面提供了一种计算机设备,包括:处理器、存储器、网络接口;
64.上述处理器与上述存储器、上述网络接口相连,其中,上述网络接口用于提供数据通信功能,上述存储器用于存储计算机程序,上述处理器用于调用上述计算机程序,以执行本技术实施例中的方法。
65.本技术实施例一方面提供了一种计算机可读存储介质,上述计算机可读存储介质中存储有计算机程序,上述计算机程序适于由处理器加载并执行本技术实施例中的方法。
66.本技术实施例一方面提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中,计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本技术实施例中的方法。
67.本技术实施例可以从待处理视频中自动提取出针对目标对象的运动事件片段,且通过对运动事件片段中的连续运动动作片段进行拆分、提取每个单独运动动作片段的关键部位位置信息等处理,可以基于关键部位位置信息识别出每个单独运动动作片段对应的动作类型,从而可以实现针对连续运动动作片段的自动精准分类,因此,可以提高对动作类型的识别准确率以及识别效率,另外,还可以根据连续运动动作片段对应的事件标签自动生成目标对象关联的运动场记信息,避免了耗费大量人力进行运动场记信息的登记,从而可以提升运动场记信息的生成效率。
附图说明
68.为了更清楚地说明本技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
69.图1是本技术实施例提供的一种系统架构示意图;
70.图2是本技术实施例提供的一种视频数据处理的场景示意图;
71.图3是本技术实施例提供的一种视频数据处理方法的流程示意图;
72.图4a

图4c是本技术实施例提供的一种视频数据处理的场景示意图;
73.图5是本技术实施例提供的一种视频数据处理方法的流程示意图;
74.图6是本技术实施例提供的一种三维人体骨架的结构示意图;
75.图7是本技术实施例提供的一种视频数据处理方法的流程示意图;
76.图8是本技术实施例提供的一种动作理解网络的结构示意图;
77.图9a

图9b是本技术实施例提供的一种视频数据处理方法的流程示意图;
78.图10是本技术实施例提供的一种视频数据处理装置的结构示意图;
79.图11是本技术实施例提供的一种计算机设备的结构示意图。
具体实施方式
80.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
81.人工智能(artificial intelligence,ai)是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。换句话说,人工智能是计算机科学的一个综合技术,它企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器。人工智能也就是研究各种智能机器的设计原理与实现方法,使机器具有感知、推理与决策的功能。
82.人工智能技术是一门综合学科,涉及领域广泛,既有硬件层面的技术也有软件层面的技术。人工智能基础技术一般包括如传感器、专用人工智能芯片、云计算、分布式存储、大数据处理技术、操作/交互系统、机电一体化等技术。人工智能软件技术主要包括计算机视觉技术、语音处理技术、自然语言处理技术以及机器学习/深度学习等几大方向。
83.计算机视觉技术(computer vision,cv)是一门研究如何使机器“看”的科学,更进一步的说,就是指用摄影机和电脑代替人眼对目标进行识别、跟踪和测量等机器视觉,并进一步做图形处理,使电脑处理成为更适合人眼观察或传送给仪器检测的图像。作为一个科学学科,计算机视觉研究相关的理论和技术,试图建立能够从图像或者多维数据中获取信息的人工智能系统。计算机视觉技术通常包括数据处理、图像识别、图像语义理解、图像检索、ocr、视频处理、视频语义理解、视频内容/行为识别、三维物体重建、3d技术、虚拟现实、增强现实、同步定位与地图构建等技术,还包括常见的人脸识别、指纹识别等生物特征识别技术。
84.本技术实施例提供的方案涉及人工智能的计算机视觉技术以及深度学习等技术,具体过程通过如下实施例进行说明。
85.请参见图1,是本技术实施例提供的一种系统架构示意图。如图1所示,该系统架构可以包括服务器10a以及终端集群,终端集群可以包括:终端设备10b终端设备10c、

、终端设备10d,其中,终端集群之间可以存在通信连接,例如终端设备10b与终端设备10c之间存在通信连接,终端设备10b与终端设备10d之间存在通信连接。同时,终端集群中的任一终端设备可以与服务器10a存在通信连接,例如终端设备10b与服务器10a之间存在通信连接,其中,上述通信连接不限定连接方式,可以通过有线通信方式进行直接或间接地连接,也可以通过无线通信方式进行直接或间接地连接,还可以通过其它方式,本技术在此不做限制。
86.应该理解,如图1所示的终端集群中的每个终端设备均可以安装有应用客户端,当该应用客户端运行于各终端设备中时,可以分别与上述图1所示的服务器10a之间进行数据交互。其中,该应用客户端可以为多媒体客户端(例如,视频客户端)、社交客户端、娱乐客户端(例如,游戏客户端)、教育客户端、直播客户端等具有帧序列(例如,帧动画序列)加载和播放功能的应用客户端。其中,该应用客户端可以为独立的客户端,也可以为集成在某客户端(例如多媒体客户端、社交客户端、教育客户端等)中的嵌入式子客户端,在此不做限定。服务器10a通过通信功能为终端集群提供服务,当终端设备(可以是终端设备10b、终端设备10c或终端设备10d)获取到视频片段a,并需要对视频片段a进行处理时,例如从视频片段a
中剪辑出重要事件片段(例如精彩片段),并对重要事件片段进行分类、打标签,终端设备可以通过上述应用客户端将视频片段a发送至服务器10a。服务器10a接收到终端设备发送的视频片段a后,可以从视频片段a中获取针对目标对象的运动事件片段b(如某场花样滑冰比赛的视频片段中参赛运动员展现出跳跃动作、旋转动作时的片段),并对运动事件片段b进行检测,若检测到运动事件片段b包括连续运动动作片段c,则服务器10a可以进一步识别连续运动动作片段c中的运动状态分割点,从而可以根据运动状态分割点对连续运动动作片段c进行拆分,得到至少两个单独运动动作片段,进一步,服务器10a可以获取每个单独运动动作片段分别对应的关键部位位置信息,从而可以根据关键部位位置信息识别连续运动动作片段c对应的第一事件标签,后续,服务器10a可以根据第一事件标签,在目标对象关联的运动场记信息中记录每个单独运动动作片段分别对应的动作类型,还可以根据运动事件片段b对应的起止时间戳,从视频片段a中截取出重要事件片段拼接成视频集锦,从而可以将运动场记信息和视频集锦返回给终端设备的应用客户端,终端设备的应用客户端接收到服务器10a发送的运动场记信息和视频集锦后,可以在其对应的屏幕上显示运动场记信息和视频集锦。其中,运动场记信息还可以包括运动事件片段b对应的开始时间戳、结束时间戳、动作评估质量等信息,此处仅以动作类型的识别为例进行说明。
87.可以理解的是,本技术实施例所提供的方法可以由计算机设备执行,计算机设备包括但不限于终端设备或服务器。本技术实施例中的服务器10a可以为计算机设备。上述服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn、以及大数据和人工智能平台等基础云计算服务的云服务器。上述终端设备可以是智能手机、平板电脑、笔记本电脑、台式计算机、掌上电脑、移动互联网设备(mobile internet device,mid)、可穿戴设备(例如智能手表、智能手环等)、智能电视、智能车载等可以运行上述应用客户端的智能终端。终端设备以及服务器的数量不做限制,且两者之间可以通过有线或无线通信方式进行直接或间接地连接,本技术在此不做限制。
88.下面以处理一段花样滑冰比赛的视频片段为例进行说明,请一并参见图2,是本技术实施例提供的一种视频数据处理的场景示意图。如图2所示,实现该视频数据处理场景的计算机设备可以包括特征提取、事件分类、多任务动作理解、骨架结构分类等模块,这些模块的实现过程可以在如图1所示的服务器10a中进行,也可以在终端设备中进行,此处不做限制。如图2所示,终端用户可以通过终端设备中的应用客户端上传存储在本地的一段花样滑冰比赛的视频片段20a,或者,可以将该视频片段20a对应的资源地址(例如视频链接)通过应用客户端进行发送。计算机设备在接收到终端设备发送的视频处理请求后,会调用相关接口(如web接口,还可以通过其它形式,本技术实施例不做限制)将该视频片段20a传输给视频处理模型,该视频处理模型可以包括上述所说的特征提取、事件分类、多任务动作理解、骨架结构分类等多个模块。该视频处理模型首先会对视频片段20a进行抽帧,得到第一视频帧序列20b,进而可以对第一视频帧序列20b进行特征提取,以提取出第一视频帧序列20b中每个视频帧对应的图片特征,组成图片特征序列20c,根据该图片特征序列20c可以进一步得到第一视频帧序列20b对应的时序特征,该时序特征可以包括运动事件对应的起止时间序列,即每个运动事件对应的起止时间戳所组成的序列,根据上述图片特征以及时序
特征可以将第一视频帧序列20b拆分为若干个较短的视频帧序列,且得到每个较短视频帧序列对应的事件类型,从而可以把具有运动事件类型的视频帧序列从第一视频帧序列20b中提取出来,作为运动事件片段,其中,起止时间戳具体包括开始时间戳和结束时间戳。此外,根据上述获得的运动事件对应的起止时间戳,可以从视频片段20a中截取出对应的片段,为了便于理解和区分,将此处截取所得的片段称作重要事件片段,后续可以将重要事件片段拼接成视频集锦20f返回给终端用户的终端设备。实际上,由于上述运动事件片段是从抽帧所得的第一视频帧序列20b中提取得到的,因此运动事件片段可以看作是重要事件片段的子集,即“重要事件”与“运动事件”的含义相同,其中,重要事件(或运动事件)可以指画面中包含有目标对象的事件,或者画面中虽然没有包含目标对象,但具有特殊意义的事件,可以理解,重要事件的具体含义在不同的场景下可以有不同的表示,例如在花样滑冰比赛中,重要事件可以指参赛运动员入场、参赛运动员退场、非连续跳跃、连续跳跃、旋转、得分显示等事件。
89.其中,计算机设备可以利用具有海量视频的视频数据库,训练深度神经网络生成上述特征提取、事件分类、多任务动作理解、骨架结构分类等模块,具体生成过程可以参见后续的实施例。
90.经过上述步骤得到运动事件片段以及各个片段分别对应的事件类型后,由于需要进一步获取更详细的信息(例如动作类型),因此还需要对运动事件片段进行过滤和检测,例如,在花样滑冰比赛中,针对连续跳跃动作片段、非连续跳跃动作片段、旋转动作片段的动作识别和分类显然具有更大的价值和意义,因此后续可以不需要对入场片段、退场片段、得分显示片段进行检测,且由于连续跳跃动作片段较为特殊,即在连续跳跃动作片段中,前后两个动作间隔的时间很短,为了提升动作识别的准确率和效率,计算机设备可以先将连续跳跃动作片段拆分为若干个单独跳跃动作片段,进而可以对若干个单独跳跃动作片段、非连续跳跃动作片段、旋转动作片段进行抽帧,得到若干个对应的视频帧序列,如图2所示,假设得到10个视频帧序列,分别为视频帧序列b1、视频帧序列b2、

、视频帧序列b9、视频帧序列b10,将这10个视频帧序列输入多任务动作理解模块,可以得到每个视频帧序列对应的事件标签,如图2中的事件标签20d所示,该事件标签20d具体可以包括动作类型和动作评估质量,在花样滑冰比赛中,针对单独跳跃动作片段和非连续跳跃动作片段,事件标签20d还可以包括对应的腾空旋转圈数。
91.然而,由于花样滑冰比赛中的跳跃动作很难被准确分类,因此本技术实施例采用了骨架结构分类模块来对跳跃动作(包括单独跳跃动作片段和非连续跳跃动作片段)进行单独的动作分类,以提高分类准确率。假设上述10个视频帧序列中,视频帧序列b1、视频帧序列b2、视频帧序列b3均为某个连续跳跃动作片段拆分后得到的单独跳跃动作片段,下述以计算机设备对视频帧序列b1进行跳跃动作分类为例进行叙述,对其它视频帧序列进行跳跃动作分类的过程可以参见视频帧序列b1。具体过程为:计算机设备在视频帧序列b1中对目标对象(即该连续跳跃动作片段中的参赛运动员)的关键部位进行跟踪,得到至少两个关键部位位置信息,根据至少两个关键部位位置信息中每个关键部位位置信息分别对应的动作类型预测概率,对预测得到的至少两个动作类型预测概率进行平均处理,得到平均动作类型预测概率,从而可以根据该平均动作类型预测概率识别出视频帧序列b1对应的跳跃动作类型,将该跳跃动作类型作为频帧序列b1对应的事件标签。可以理解,对非连续跳跃动作
片段抽帧得到的视频帧序列进行跳跃动作分类的过程也可以参见视频帧序列b1。此外,对视频帧序列b1进行抽帧后,可以得到第二视频帧序列,将第二视频帧序列输入多任务动作理解模块,可以通过多任务动作理解模块得到视频帧序列b1对应的动作评估质量以及腾空旋转圈数,从而可以将相应的动作类型、动作评估质量以及腾空旋转圈数作为视频帧序列b1对应的事件标签。生成其它视频帧序列对应的事件标签的过程可以参见视频帧序列b1,这里不再进行赘述。
92.进一步,根据每个运动事件对应的事件标签,计算机设备可以生成与参赛运动员相关联的场记单20e,具体的,可以根据上述得到的起止时间戳的时间顺序,将每个运动事件对应的事件标签依次排列在场记单20e中,对于入场事件、退场事件以及得分显示事件,其对应的事件标签可以为事件对应的开始时间戳和结束时间戳,如图2所示,例如可以在场记单20e中显示“t1

t2选手入场”,表示参赛运动员的入场时间为视频片段20a中的t1时刻至t2时刻。从场记单20e可以看到,花样滑冰比赛中的动作评估质量主要分为两个部分,即基础分(bv,base value)以及执行分(goe,grade of execution)。需要说明的是,针对连续跳跃动作片段,需要将此前拆分得到的若干个单独跳跃动作片段对应的事件标签进行汇总融合才能得到连续跳跃动作片段最终的事件标签,例如,将每个单独跳跃动作片段对应的基础分相加可以得到连续跳跃动作片段对应的最终基础分,将每个单独跳跃动作片段对应的执行分相加可以得到连续跳跃动作片段对应的最终执行分,将每个单独跳跃动作片段对应的腾空旋转圈数进行相加求和可以得到连续跳跃动作片段对应的最终腾空旋转圈数,可选的,可以按时间顺序对每个单独跳跃动作片段对应的腾空旋转圈数进行排列组合得到一个数组,作为连续跳跃动作片段对应的最终腾空旋转圈数,例如,假设上述视频帧序列b1对应的腾空旋转圈数为c1,视频帧序列b2对应的腾空旋转圈数为c2,视频帧序列b3对应的腾空旋转圈数为c3,如图2中的场记单20e所示,上述三个视频帧序列均属于t3时刻

t4时刻的连续跳跃动作片段,其对应的最终腾空旋转圈数可显示为“c1 c2 c3”。进而可以将上述最终基础分、最终执行分、最终腾空旋转圈数输出作为该连续跳跃动作片段对应的事件标签。
93.最后,计算机设备可以将场记单20e以及此前将重要事件片段进行拼接所得的视频集锦20f打包在一起,以统一资源定位系统(uniform resource locator,url)的信息位置表示方法,将对应的资源地址通过接口返回给终端用户的终端设备,进而终端设备可以响应该终端用户针对该资源地址的触发操作,在其屏幕上显示视频集锦20f以及场记单20e。
94.可以理解的是,该计算机设备可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、cdn、以及大数据和人工智能平台等基础云计算服务的云服务器。所以上述提及的模块均可以发布在多个物理服务器,或多个云服务器上,即通过分布式或集群并行完成终端用户上传的所有视频片段的计算,进而可以快速地对视频片段进行自动切割、分类以及生成事件标签。
95.综上所述,本技术实施例基于深度神经网络,可以从待处理视频中快速获取针对目标对象的运动事件片段以及每个运动事件片段对应的事件类型,进而可以对每个运动事件片段进行分类、添加事件标签,此外,针对连续运动动作片段(如连续跳跃动作片段),可以先将其拆分为若干个单独运动动作片段,进而利用骨架检测得到的关键部位位置信息来
实现更准确地动作分类,因此,可以提高对动作类型的识别准确率以及识别效率,最终可以从待处理视频中自动分割出所有重要事件片段,且自动生成场记单,在实际业务场景中,可以替代人工操作,节约大量人工成本并减少人为误差,提升运动场记信息的生成效率。
96.进一步地,请参见图3,是本技术实施例提供的一种视频数据处理方法的流程示意图。该视频数据处理方法可以由图1所述的终端设备或服务器执行,也可以由终端设备和服务器共同执行,本技术实施例中,以该方法由服务器执行为例进行说明。如图3所示,该方法可以包括以下步骤:
97.步骤s101,获取待处理视频中针对目标对象的运动事件;
98.具体的,请一并参见图4a

图4c,是本技术实施例提供的一种视频数据处理的场景示意图。如图4a所示,终端用户通过终端设备30a上传视频片段30b作为待处理视频,最终可以得到视频片段30b中的若干个重要事件片段拼接而成的视频集锦以及对应的场记单。首先,终端设备30a可以在屏幕上显示一些提示信息以便终端用户可以根据提示信息完成相关操作,例如区域301a中可以显示“将文件拖到此处,或点击上传”的文本提示内容,表明终端用户可以通过拖拽存储在本地的待处理视频到区域301a中进行上传,或者,通过点击“点击上传”控件来选择本地的待处理视频进行上传,若本地没有保存待处理视频,则如终端设备30a中的区域302a所示,终端用户可以通过输入待处理视频的资源链接(例如可以将其资源链接复制并粘贴到对应输入框),后续服务器可以通过该资源链接来获取待处理视频,链接格式可以为url格式、html格式、ubb格式等,终端用户可以根据待处理视频对应的资源链接的具体格式来进行选择,此外,还可以根据实际业务场景来进行链接格式选项的增减,本技术实施例不做限制。假设终端用户选择本地的一个视频片段30b进行处理,则终端设备30a可以响应终端用户针对“确认上传”控件303a的触发操作(例如点击操作),将视频片段30b发送至服务器30c(即对应图1中的服务器10a)。其中,视频片段30b中包含有目标对象,目标对象的数量可以为一个或多个,这里不做限制。
99.服务器30c在获取到视频片段30b后,可以利用视频编辑器或视频编辑算法对视频片段30b进行解码并抽帧,例如通过adobe premiere pro(由adobe公司开发的一款常用的视频编辑软件)、fast forward mpeg(简称ffmpeg,是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序)以及open cv(是一个基于伯克利软件套件许可发行的跨平台计算机视觉和机器学习软件库,可以运行在多种操作系统上),服务器30c可以获取视频片段30b的每一帧图像,进而可以按固定时间间隔对得到的多帧图像进行均匀抽帧,从而可以得到第一视频帧序列30d,假设抽帧后可以得到99个视频帧,如图4a所示,对视频片段30b均匀抽帧后可以得到第一视频帧301d、第一视频帧302d、

、第一视频帧398d以及第一视频帧399d,将第一视频帧301d、第一视频帧302d、

、第一视频帧398d以及第一视频帧399d按照视频时间顺序组成第一视频帧序列30d。其中,均匀抽帧时所选取的固定时间间隔具体是多少需要根据实际情况来决定,以能均匀获取到每个重要事件片段的视频帧为佳,本技术实施例在此不做限制。
100.可选的,若终端设备30a安装有视频编辑器或者可以运行视频编辑算法,那么终端用户可以先通过在终端设备30a上对视频片段30b进行解码并抽帧,生成其对应的第一视频帧序列30d,然后将第一视频帧序列30d发送至服务器30c。本地生成视频片段30b对应的第一视频帧序列30d的过程,与服务器30c生成视频片段30b对应的第一视频帧序列30d的过程
一致,故此处不再进行赘述。
101.进一步,服务器30c将第一视频帧序列30d输入特征提取网络301e进行特征提取,可以得到第一视频帧序列30d对应的图片特征30f,由于实际业务中的视频片段都是彩色的,也即抽取得到的视频帧均为彩色图片,例如rgb模式的彩色图片具有红色(red)、绿色(green)、蓝色(blue)三个色彩通道,因此特征提取网络301e具体可以是rgb卷积网络,可以抽取每个视频帧的图片rgb特征,对这些图片rgb特征进行融合,可以获得第一视频帧序列30d对应的图片特征30f,进而服务器30c可以将图片特征30f输入动作分割网络30g(也可以称为时序动作分割网络),得到运动事件对应的起止时间戳,将每个运动事件对应的起止时间戳按先后顺序进行排列组合即可得到第一视频帧序列30d对应的时序特征30h,例如,时序特征30h可以包括时间戳t1、时间戳t2、时间戳t3、

、时间戳tj共j个时间戳,j为正整数,相邻两个时间戳组成一对起止时间戳,即一对起止时间戳包括开始时间戳和结束时间戳,例如时间戳t1

时间戳t2、时间戳t3

时间戳t4,可以理解,前一对起止时间戳中的结束时间戳可能与下一对起止时间戳中的开始时间戳相等,例如,t2等于t3,但为了后续方便说明和区分,此处仍会将该时间戳分别标记为t2和t3。进一步,根据时序特征30h,服务器30c可以从第一视频帧序列30d中提取出针对运动事件的运动事件片段30i,如图4a所示,假设j等于18,则可以获取9个运动事件片段,包括运动事件片段301i、运动事件片段302i、

、运动事件片段309i,分别将运动事件片段301i、运动事件片段302i、

、运动事件片段309i各自对应的视频帧输入卷积网络302e进行事件分类,可以得到每个运动事件片段对应的具体的事件类型,例如,当视频片段30b为一段花样滑冰比赛的视频片段时,其事件类型可以包括入场事件类型、退场事件类型、非连续跳跃事件类型、连续跳跃事件类型、旋转事件类型、得分显示事件类型等。其中,特征提取网络301e与卷积网络302e可以为同一个网络模型,也可以是网络结构相同的两个独立网络模型,具体都可以为rgb卷积网络,rgb卷积网络可以是cnn网络中的卷积层,此时rgb卷积网络相当于一个n 1分类(即n类运动事件 背景)的图片分类器,通过rgb卷积网络对视频帧进行卷积处理,可以用于抽取图片特征以及事件分类。
102.其中,rgb卷积网络和动作分割网络均为深度神经网络,需要通过足够多的样本数据去对这些网络进行训练,以使网络的输出与预期值相符。具体的,针对rgb卷积网络,首先要收集大量的同一类视频作为训练视频,例如需要获得可以对花样滑冰比赛的视频进行处理的网络,则可以将大量的花样滑冰比赛的视频片段作为训练集,对训练集中的所有训练视频片段以固定时间间隔进行抽帧,组成第一训练序列,进而可以对第一训练序列中的视频帧按照事件类型进行人工标注,将进行数据标注后的第一训练序列输入初始rgb卷积网络,对初始rgb卷积网络进行训练,通过反向传播算法可以对初始rgb卷积网络结构中的初始化参数进行更新,直到损失值到达预期效果,最终可以得到一个可以抽取图片特征以及进行事件分类的rgb卷积网络。针对动作分割网络,首先按照事件类型对训练集中的所有训练视频片段进行人工标注,标注出运动事件对应的起止时间和事件类型,进而基于数据标注后的所有训练视频片段,以固定时间间隔进行抽帧,将抽取出来的视频帧输入上述训练好的rgb卷积网络进行特征抽取,得到的图片特征可以组成第二训练序列,使用第二训练序列训练初始动作分割网络,最终可以得到用于输出运动事件的起止时间戳的动作分割网络。此外,除了收集视频数据对网络进行训练,还需要将一部分视频数据划分为测试集,用于近似估计训练好的网络的泛化能力,验证网络的最终效果,本技术实施例在此不再进行
赘述。
103.步骤s102,若运动事件片段包括连续运动动作片段,则识别连续运动动作片段中的运动状态分割点,根据运动状态分割点对连续运动动作片段进行拆分,得到至少两个单独运动动作片段;
104.具体的,服务器可以识别运动事件片段中是否包括连续运动动作片段,由于后续的动作分类以及动作质量评估的模型是基于每一个单独运动动作片段进行的,因此若运动事件片段中存在连续运动动作片段,则为了提高识别准确率,在对其进行动作分类以及动作质量评估之前,服务器需要对该连续运动动作片段进行拆分,在花样滑冰比赛中,连续运动动作片段可以为连续跳跃动作片段。服务器首先对连续跳跃动作片段中的每个视频帧对应的运动状态进行识别,其中,运动状态是指目标对象在运动过程中的状态,则服务器可以根据每个视频帧对应的运动状态,将连续跳跃动作片段划分为至少两个腾空视频帧序列和至少三个落地视频帧序列,进而可以将目标落地视频帧序列的中间时刻确定为运动状态分割点,根据动作状态分割点对连续跳跃动作片段进行拆分,最终可以得到至少两个单独跳跃动作片段,其中,目标落地视频帧序列包括至少三个落地视频帧序列中除第一个落地视频帧序列和最后一个落地视频帧序列外的视频帧序列。
105.请一并参见图4b,结合上述步骤s101,如图4b所示,假设视频片段30a为花样滑冰比赛的视频片段,运动事件片段30i中的一个运动事件片段303i为连续跳跃动作片段,且连续跳跃动作片段303i共包括16个视频帧,具体为视频帧t1、视频帧t2、视频帧t3、

、视频帧t15以及视频帧t16。需要说明的是,在连续跳跃动作片段中具体可以包括两种运动状态,分别为腾空状态和落地状态,腾空状态是指目标对象位于空中的状态,落地状态则指目标对象位于地面的状态,例如视频帧t1对应的运动状态为落地状态。则当服务器30c获取视频帧t1

视频帧t16各自对应的运动状态后,可以将连续跳跃动作片段303i划分为3个落地视频帧序列和2个腾空视频帧序列,如图4b所示,视频帧t1为落地视频帧序列1,视频帧t2

视频帧t5为腾空视频帧序列1,视频帧t6

视频帧t12为落地视频帧序列2,视频帧t13

视频帧t15为腾空视频帧序列2,视频帧t16为落地视频帧序列3,则除去落地视频帧序列1和落地视频帧序列3后只剩下落地视频帧序列2可以作为目标落地视频帧序列,选取落地视频帧序列2的中间时刻,即视频帧t9对应的时刻t’,作为运动状态分割点,进而服务器30c可以根据运动状态分割点t’,将连续跳跃动作片段303i拆分为单独跳跃动作片段3031i以及单独跳跃动作片段3032i,其中,单独跳跃动作片段3031i包括视频帧t1

视频帧t9,单独跳跃动作片段3032i包括视频帧t10

视频帧t16。对运动事件片段30i中的其它连续跳跃动作片段的拆分过程与对连续跳跃动作片段303i的拆分过程一致,若其它连续跳跃动作片段中包括三个以上的落地视频帧序列,则目标落地视频帧序列的数量为两个或两个以上,故最终可以得到三个或三个以上的单独跳跃动作片段,此处不再进行赘述。
106.其中,若连续跳跃动作片段包括视频帧t
i
,i为正整数,且i小于该连续跳跃动作片段中的视频帧的总数量,则将连续跳跃动作片段划分为至少两个腾空视频帧序列和至少三个落地视频帧序列的具体过程可以为:从该连续跳跃动作片段中获取连续的视频帧t
i
至视频帧t
i n
,n为正整数,且i n小于或等于该连续跳跃动作片段中的视频帧的总数量,若连续的频帧t
i
至视频帧t
i n
‑1对应的运动状态均为腾空状态,且视频帧t
i n
和视频帧t
i
‑1分别对应的运动状态均为落地状态,且连续的视频帧t
i
至视频帧t
i n
‑1对应的视频帧数量大于或等于
腾空数量阈值,则将连续的视频帧t
i
至视频帧t
i n
‑1确定为腾空视频帧序列,上述连续跳跃动作片段中所存在的腾空视频帧序列的数量为至少两个,进而可以将该连续跳跃动作片段中除了至少两个腾空视频帧序列外的视频帧序列,确定为至少三个落地视频帧序列。
107.请再参见图4b,对于连续跳跃动作片段303i,服务器30c可以识别到视频帧t1对应的运动状态为落地状态,视频帧t2、视频帧t3、视频帧t4以及视频帧t5对应的运动状态均为腾空状态,视频帧t6对应的运动状态为落地状态,易知从视频帧t2到视频帧t5总共包括4个视频帧,若腾空数量阈值小于4,例如腾空数量阈值为3时,则可以将视频帧t2

视频帧t5确定为腾空视频帧序列,对其它腾空视频帧序列的判定与上述过程一致,在连续跳跃动作片段303i中除去腾空视频帧序列后的视频帧则组成落地视频帧序列。简单来说,服务器可以先识别出每两个相邻落地状态的视频帧,若这两个视频帧之间的中间视频帧均为腾空状态,且中间视频帧的数量大于或等于腾空数量阈值,则可以认为这两个视频帧之间的中间视频帧可以组成腾空视频帧序列,若中间视频帧的数量小于腾空数量阈值,则认为这两个视频帧之间的中间视频帧可以组成落地视频帧序列。
108.需要说明的是,上述对连续跳跃动作片段进行拆分的过程可以在一个图片分类器中实现,具体的,该图片分类器可以基于二分类图片卷积网络,首先,将从连续跳跃动作样本片段中抽取的视频帧组成第三训练序列,并对其进行标注,具体标注为“腾空”或“落地”两个类型,进而将标注后的第三训练序列输入到一个二分类图片卷积网络中,对该二分类图片卷积网络进行训练,最终可以得到一个训练好的图片分类器,后续可将连续跳跃动作片段中的所有视频帧输入到该图片分类器中,输出每一帧是否为腾空状态,若不满连续m帧均为腾空状态的视频帧会被判定为落地视频帧序列,以减小图片分类器误判的影响(m等于上述所说的腾空数量阈值),最终可以根据得到的运动状态分割点对连续跳跃动作片段进行拆分,即可将连续跳跃动作片段分割为若干段首尾相连的单独跳跃动作片段。
109.步骤s103,分别在每个单独运动动作片段中对目标对象的关键部位进行跟踪,得到每个单独运动动作片段分别对应的关键部位位置信息,根据关键部位位置信息识别连续运动动作片段对应的第一事件标签;第一事件标签用于在目标对象关联的运动场记信息中记录每个单独运动动作片段分别对应的动作类型。
110.具体的,服务器可以在每个单独运动动作片段中对目标对象的关键部位进行跟踪,从而得到每个单独跳跃动作片段分别对应的关键部位位置信息,根据关键部位位置信息可以识别出每个单独跳跃动作片段分别对应的动作类型,进而可以根据动作类型生成连续跳跃动作片段对应的第一事件标签,第一事件标签用于在目标对象关联的运动场记信息中记录每个单独运动动作片段分别对应的动作类型。此外,通过动作理解网络可以得到每个单独运动动作片段对应的动作评估质量和腾空旋转圈数,具体过程可以参见下述图7所对应实施例中的步骤s201

步骤s202。
111.需要说明的是,虽然动作理解网络也可以识别每个单独运动动作片段对应的动作类型,但其对单独运动动作(例如跳跃动作)的分类准确率较低,因此本技术实施例采取对单独运动动作片段进行单独动作分类的思路,并采用关键部位位置信息(或者可称为三维人体骨架信息)来提升分类准确率,此处关键部位位置信息的获取以及动作类型的识别可以在动作分类网络中进行,且动作分类网络与上述动作理解网络可以并行运行,以提升整个模型的执行效率。
112.请一并参见图4c,以对单独跳跃动作片段3031i的处理为例进行说明,如图4c所示,将单独跳跃动作片段3031i输入动作分类网络30l可以得到其对应的动作类型30o,对图4b中的单独跳跃动作片段3032i的处理过程一致,这里不再进行赘述,最终可得到单独跳跃动作片段3032i对应的动作类型30r。则将动作类型30o以及动作类型30r按时序排列即可得到连续跳跃动作片段303i对应的所有动作类型,因此得到的所有动作类型可以组成连续跳跃动作片段303i对应的第一事件标签,生成其它连续跳跃动作片段对应的第一事件标签的过程与上述过程一致。
113.其中,动作分类网络具体可以包括三维骨架检测网络以及图卷积分类网络,用于专门对跳跃动作进行分类,上述关键部位位置信息的信息数量为至少两个,假设至少两个单独运动动作片段包括单独运动动作片段h,请一并参见图5,图5是本技术实施例提供的一种视频数据处理方法的流程示意图。如图5所示,在动作分类网络中执行的具体步骤可以包括:
114.步骤s1031,在单独运动动作片段h中对目标对象的关键部位进行跟踪,得到单独运动动作片段h对应的至少两个关键部位位置信息;
115.具体的,服务器可以将单独运动动作片段h输入三维骨架检测网络,进而可以通过三维骨架检测网络检测每一个视频帧中的目标对象的三维人体骨架上的关键部位,并对关键部位进行跟踪,从而得到单独运动动作片段h对应的至少两个关键部位位置信息。其中,目标对象的关键部位具体可以包括头部、颈部、肩部、肘部、腰部、髋部、膝部、脚部等,将这些关键部位在视频帧中抽象为一个个人体关键点,可以更好地进行跟踪检测。
116.其中,至少两个关键部位位置信息可以包括全局关键部位位置信息、局部关键部位位置信息、融合关键部位位置信息、全局位移关键部位位置信息以及局部位移关键部位位置信息。服务器可以在单独运动动作片段h中对目标对象的关键部位进行跟踪,得到关键部位的全局坐标,作为单独运动动作片段h对应的全局关键部位位置信息,请一并参见图6,是本技术实施例提供的一种三维人体骨架的结构示意图,如图6所示,关键部位对应的人体关键点共有17个,包括关键点p1、关键点p2、关键点p3、

、关键点p16以及关键点p17,服务器可以在单独运动动作片段h的每一个视频帧中分别获取关键点p1

关键点p17对应的三维全局坐标,例如可以获取关键点p1的三维全局坐标为(x1,y1,z1),三维全局坐标需要基于建立的坐标系来生成,具体建立怎样的坐标系,需要根据实际需要考虑,本技术实施例不做限制。
117.进一步,根据全局关键部位位置信息可以得到关键部位的局部坐标,即各关键部位相对于其父节点的局部坐标,作为单独运动动作片段h对应的局部关键部位位置信息,请再参见图6,例如关键点p17作为子节点时,其父节点为关键点p15,则将关键点p17对应的三维全局坐标与关键点p15对应的三维全局坐标相减即可得到对应的局部坐标。得到全局关键部位位置信息和局部关键部位位置信息后,进而可以将全局关键部位位置信息中目标关键部位对应的全局坐标与局部关键部位位置信息中除目标关键部位外的关键部位对应的局部坐标进行融合,得到单独运动动作片段h对应的融合关键部位位置信息。由于人体的整体位置和方向可仅由髋部关节控制,而其它关节则控制人体的局部姿势,因此,在本技术实施例中,可以将髋部三关节作为目标关键部位,将其全局坐标与其它关节的局部坐标融合,请再参见图6,髋部三关节即对应关键点p1、关键点p2、关键点p3,其它关节则对应剩下的关
键点,取关键点p1、关键点p2、关键点p3各自对应的全局坐标,取关键点p4

关键点p17各自对应的局部坐标,两个部分组合在一起即可得到融合关键部位位置信息。相比于只采用全局关键部位位置信息和局部关键部位位置信息这两个单独的信息流,采用融合关键部位位置信息可以更好地利用全局信息和局部信息的内在联系,且在对图卷积分类网络进行训练的时候,若使用融合关键部位位置信息作为输入,则只需训练一次,若使用全局关键部位位置信息和局部关键部位位置信息作为输入,则需要对两个信息流训练两次,因此前者的训练效率更高。
118.此外,还可以将全局关键部位位置信息在单独运动动作片段h中的每相邻两个视频帧之间的坐标位移(即全局关键部位位置信息在时序上相对前一帧的坐标位移),作为单独运动动作片段h对应的全局位移关键部位位置信息,例如,针对关键点p1,可以用当前视频帧中的关键点p1的全局坐标减去上一个视频帧中的关键点p1的全局坐标,得到当前的坐标位移,需要说明的是,对于单独运动动作片段h中的第一个视频帧,不存在上一个视频帧的情况,因此可以将第一个视频帧中的全部关键点对应的坐标位移都默认为零。同理,可以将局部关键部位位置信息在单独运动动作片段h中的每相邻两个视频帧之间的坐标位移(即局部关键部位位置信息在时序上相对前一帧的坐标位移),作为单独运动动作片段h对应的局部位移关键部位位置信息。
119.可以理解,人体关键点除了图6所示的17个,还可以根据实际需要进行增减,本技术不做限制。
120.步骤s1032,预测至少两个关键部位位置信息中每个关键部位位置信息分别对应的动作类型预测概率,对预测得到的至少两个动作类型预测概率进行平均处理,得到平均动作类型预测概率,根据平均动作类型预测概率识别单独运动动作片段h对应的动作类型;
121.具体的,将步骤s1032中得到的全局关键部位位置信息、局部关键部位位置信息、融合关键部位位置信息、全局位移关键部位位置信息以及局部位移关键部位位置信息共5组信息流输入图卷积分类网络,图卷积分类网络可以输出每组信息流分别对应的动作类型预测概率,对得到的5个动作类型预测概率做求平均运算,从而可以得到平均动作类型预测概率,其中,平均动作类型预测概率可以是一个向量,该向量中的每一个数据分别对应一种动作类型的预测概率,则取平均动作类型预测概率中最大的数据所对应的动作类型作为单独运动动作片段h对应的动作类型。
122.需要说明的是,在本技术实施例中,取5组信息流作为输入是优选方案,因为该方案所得到的动作类型相对来说最准确的,但也可以将全局关键部位位置信息、局部关键部位位置信息、全局位移关键部位位置信息以及局部位移关键部位位置信息这4组信息流作为输入,或者只将融合关键部位位置信息、全局位移关键部位位置信息以及局部位移关键部位位置信息这3组信息流作为输入,后两者的动作分类准确率会低一些,但是由于网络需要计算的数据量减少了,因此计算速度会比第一种方案更快一些,具体选择何种方案,可以根据实际需要进行调整。
123.步骤s1033,当获得至少两个单独运动动作片段中每个单独运动动作片段分别对应的动作类型时,根据每个单独运动动作片段分别对应的动作类型生成连续运动动作片段对应的第一事件标签。
124.具体的,对连续运动动作片段中的其它单独运动动作片段的处理过程,与上述步
骤s1031

步骤s1032中对单独运动动作片段h的处理过程一致,这里不再进行赘述。当获得至少两个单独运动动作片段中每个单独运动动作片段分别对应的动作类型时,可以将每个单独运动动作片段分别对应的动作类型依次排列组合,得到连续运动动作片段对应的第一事件标签。后续可以根据起止时间戳的时间顺序,将所有连续运动动作片段对应的第一事件标签依次排列在一起,组成目标对象关联的运动场记信息,最终可以将运动场记信息保存在场记单中返回给终端用户。
125.需要说明的是,在使用图卷积分类网络之前,也需要对其进行训练,具体的,首先进行数据标注,例如,若对花样滑冰比赛视频片段进行分类,则可以按照动作类型对跳跃动作样本片段(包括单独跳跃动作样本片段和非连续跳跃动作样本片段)标注出跳跃动作的动作名称(例如前外跳、后内点冰跳、后外点冰跳等)以及动作评估质量(包括基础分以及执行分),进而可以利用三维骨架检测网络提取出跳跃动作样本片段内所有视频帧的三维全局坐标,根据三维全局坐标生成上述步骤s1031所述的5组信息流(即关键部位位置信息),将得到的5组信息流作为输入,训练初始图卷积分类网络,得到训练好的图卷积分类网络后,可以对跳跃动作片段进行单独分类,以获得相对于动作理解网络更高的跳跃动作分类准确率。
126.进一步地,请一并参见图7,是本技术实施例提供的一种视频数据处理方法的流程示意图。如图7所示,该方法包括如下步骤s201

步骤s205,且步骤s201

步骤s205为图3所对应实施例中步骤s103的一个具体实施例,该方法包括如下步骤:
127.步骤s201,分别对每个单独跳跃动作片段进行抽帧,得到至少两个第二视频帧序列;
128.具体的,在花滑比赛的场景下,连续运动动作片段为连续跳跃动作片段,每个单独运动动作片段均为单独跳跃动作片段,可一并参见上述图4a

图4c,在获得单独跳跃动作片段3031i和单独跳跃动作片段3032i后,如图4c所示,对单独跳跃动作片段3031i进行抽帧后可以得到第二视频帧序列30j,则对单独跳跃动作片段3032i也进行抽帧后,可以得到各单独跳跃动作片段分别对应的第二视频帧序列。
129.步骤s202,将至少两个第二视频帧序列输入动作理解网络,通过动作理解网络输出连续跳跃动作片段对应的动作评估质量以及腾空旋转圈数;
130.具体的,假设至少两个第二视频帧序列包括第二视频帧序列s,则可以将第二视频帧序列s拆分为m个子序列,通过动作理解网络中的m个非局部组件分别对m个子序列进行特征提取,可以得到m个中间动作特征。进一步,在本技术实施例中,将传统的平均处理换成了一维卷积处理,即分别对m个中间动作特征进行两次一维卷积,可以得到m个一维卷积动作特征,此时一维卷积动作特征对应的维度与中间动作特征对应的维度是不相同的。进一步,通过动作理解网络中的全连接层对m个一维卷积动作特征进行合并,可以得到目标动作特征,再通过动作理解网络中的分类层可以输出目标动作特征对应的单独动作评估质量以及单独腾空旋转圈数。当获得至少两个第二视频帧序列中每个第二视频帧序列分别对应的单独动作评估质量以及单独腾空旋转圈数时,将每个第二视频帧序列分别对应的单独动作评估质量进行相加,可以生成连续跳跃动作片段对应的动作评估质量,同时将每个第二视频帧序列分别对应的单独腾空旋转圈数也进行相加,可以生成连续跳跃动作片段对应的腾空旋转圈数x1,或者,可以按时间顺序将每个第二视频帧序列对应的单独腾空旋转圈数进行
排列组合,此时连续跳跃动作片段对应的腾空旋转圈数可以理解为包含有每个单独腾空旋转圈数的数组x2,后续可以将腾空旋转圈数x1以及数组x2同时记录在运动场记信息中。
131.请再参见图4c,如图4c所示,将对单独跳跃动作片段3031i进行抽帧后得到的第二视频帧序列30j输入动作理解网络30k,可以得到单独跳跃动作片段3031i对应的动作评估质量30m(此时为单独动作评估质量)以及腾空旋转圈数30n(此时为单独腾空旋转圈数),对单独跳跃动作片段3032i的处理过程一致,最终也可得到单独跳跃动作片段3032i对应的动作评估质量30p、腾空旋转圈数30q,这里不再进行赘述,则将动作评估质量30m与动作评估质量30p相加可以得到连续跳跃动作片段303i对应的总动作评估质量,将腾空旋转圈数30n与腾空旋转圈数30q相加,或者按时间上的先后顺序组合在一起,可得到连续跳跃动作片段303i对应的总腾空旋转圈数。
132.需要说明的是,动作理解网络还可以对旋转动作片段进行分类,获得旋转动作片段对应的动作类型以及动作评估质量,具体过程可参见下述图9a所对应实施例中的步骤s306。
133.步骤s203,分别在每个单独跳跃动作片段中对目标对象的关键部位进行跟踪,得到每个单独跳跃动作片段分别对应的关键部位位置信息,根据关键部位位置信息识别每个单独跳跃动作片段分别对应的动作类型;
134.具体的,如图4c所示,将单独跳跃动作片段3031i输入动作分类网络30l可以得到对应的动作类型30o,将单独跳跃动作片段3032i输入动作分类网络30l可以得到对应的动作类型30r,最后将动作类型30o和动作类型30r按时序排列即可得到连续跳跃动作片段303i对应的所有动作类型。具体的实现过程可以参见上述图3所对应实施例中的步骤s103,这里不再进行赘述。
135.步骤s204,根据动作评估质量、腾空旋转圈数以及动作类型生成连续跳跃动作片段对应的第一事件标签。
136.具体的,将获得的动作评估质量、腾空旋转圈数以及动作类型排列在一起,即可得到连续跳跃动作片段对应的第一事件标签,例如,由步骤s202得到的总动作评估质量和总腾空旋转圈数以及由步骤s203得到的所有动作类型可以组成连续跳跃动作片段303i对应的第一事件标签,生成其它连续跳跃动作片段对应的第一事件标签的过程与上述过程一致。
137.可以理解的是,本技术实施例中所示的数字均为虚构数字,实际应用时,应以实际数字为准。
138.此外,在应用动作理解网络之前,需要先对对初始动作理解网络进行训练,才能得到可用的动作理解网络。动作理解网络也可以称为多任务动作理解网络,可以同时进行动作分类以及动作质量评估,请一并参见图8,是本技术实施例提供的一种动作理解网络的结构示意图。如图8所示,本技术实施例抛弃使用c3d网络(3d convolutional networks)作为主干网络的传统思路,而是采用m个非局部组件组成主干网络,其中,m为正整数,该动作理解网络采用了参数的硬共享机制,即上述m个非局部组件可以共享参数。首先,需要对跳跃动作样本片段进行标注,可以标注出跳跃动作样本片段中的动作类型以及动作评估质量(包括基础分和执行分),在标注后的跳跃动作样本片段中均匀抽取k个视频帧(如果不足k帧则用零帧补齐),进而在k个视频帧中随机抽取连续的p个视频帧作为输入序列,组成训练
测试集,其中,由于每个非局部组件输入的视频帧数必须是固定值,因此p等于初始动作理解网络对应的模型输入数据长度,且p的数值与k的数值很接近,模型输入数据长度的大小可以根据实际视频片段的长度来进行调整。进一步,可以通过初始动作理解网络输出跳跃动作样本片段对应的预测动作评估质量以及预测腾空旋转圈数,进而可以根据预测动作评估质量与真实动作评估质量之间的差距生成质量损失函数,根据预测腾空旋转圈数与真实腾空旋转圈数之间的差距生成动作损失函数,根据得到的质量损失函数和动作损失函数可以生成目标损失函数(例如可以对质量损失函数和动作损失函数求和),通过目标损失函数对初始动作理解网络中的模型参数进行修正,可以得到一个训练好的动作理解网络。
139.如图8所示,用包含连续p个视频帧的输入序列训练一个基于非局部组件的初始动作理解网络,初始动作理解网络的整体结构包括m个共享参数的非局部组件(也可称为nonlocal模块),每个非局部组件可以各自处理连续p/m帧的片段,如图8所示,非局部组件1处理片段1,非局部组件2处理片段2,

,非局部组件m处理片段m,m个非局部组件的输出经过一维卷积合并,后续通过不同的全连接层分别输出动作类型、腾空旋转圈数、动作评估质量(包括基础分和执行分)。
140.需要理解的是,虽然图8中示例的动作理解网络只标注出非局部组件、一维卷积和全连接层,但实际应用时,上述动作理解网络的网络结构还可以包括输入层、特征提取层、标准化(batchnorm,bn)层、激活层以及输出层等。此外,还可以根据实际需要训练出能对单独跳跃动作片段外的其它事件类型的片段进行分类的动作理解网络,例如还可以对旋转动作片段进行动作类型识别和动作质量评估,这里不再进行赘述。
141.本技术实施例可以通过多个深度神经网络所组成的模型来获取待处理视频中针对目标对象的运动事件片段,并识别每个运动事件片段对应的事件类型,当检测到运动事件片段包括连续运动动作片段时,可以通过识别连续运动动作片段中的运动状态分割点来对该连续运动动作片段进行拆分,从而可以得到至少两个单独运动动作片段,进一步,可以分别在每个单独运动动作片段中对目标对象的关键部位进行跟踪,进而可以得到每个单独运动动作片段分别对应的关键部位位置信息,根据关键部位位置信息可以识别连续运动动作片段对应的动作类型,从而可以实现针对连续运动动作片段的自动精准分类,并可以同时生成对应的动作评估质量,因此,可以提高对动作类型的识别准确率以及识别效率,另外,还可以根据连续运动动作片段对应的事件标签自动生成目标对象关联的运动场记信息,避免了耗费大量人力进行运动场记信息的登记,从而可以提升运动场记信息的生成效率。
142.请参见图9a

图9b,是本技术实施例提供的一种视频数据处理方法的流程示意图。如图9a所示,该方法可以包括以下步骤:
143.步骤s301,对包含目标对象的待处理视频进行抽帧,得到第一视频帧序列;
144.具体的,如图9b所示,待处理视频为一段花样滑冰比赛的视频片段,因此在该待处理视频中目标对象为参赛运动员。按固定时间间隔对待处理视频进行抽帧后,可以得到第一视频帧序列40a。
145.步骤s302,将第一视频帧序列输入特征提取网络,获取第一视频帧序列对应的图片特征;
146.具体的,特征提取网络可以为rgb卷积网络,如图9b所示,将第一视频帧序40a输入
rgb卷积网络40b,通过rgb卷积网络40b可以提取出第一视频帧序40a对应的图片特征。
147.步骤s303,将图片特征输入时序动作分割网络,得到运动事件对应的时间序列;
148.具体的,如图9b所示,将上述步骤s302中得到的图片特征输入时序动作分割网络40c(对应图4a中的动作分割网络),可以得到每个运动事件对应的起止时间戳,这些起止时间戳可以组成运动事件对应的时间序列,根据时间序列,可以将第一视频帧序40a分割为若干个运动事件片段,不属于运动事件片段的视频帧则可以认为是背景图片,具体过程可以参见上述图3所对应实施例中的步骤s101。
149.步骤s304,将运动事件片段输入特征提取网络,得到运动事件片段对应的事件类型;
150.具体的,如图9b所示,将上述步骤s303得到的运动事件片段对应的视频帧输入rgb卷积网络40d,可以得到运动事件片段对应的事件类型,事件类型具体可以包括入场事件类型、退场事件类型、得分显示事件类型、非连续跳跃事件类型、连续跳跃事件类型以及旋转事件类型,相应地,可以从第一视频帧序40a中提取出入场事件片段、退场事件片段、得分显示事件片段、非连续跳跃动作片段、连续跳跃动作片段以及旋转动作片段。识别事件类型的具体过程可以参见上述图3所对应实施例中的步骤s101。
151.此外,针对入场事件片段,可以将入场事件片段对应的起止时间戳作为该入场事件片段对应的第四事件标签,第四事件标签用于在参赛运动员关联的运动场记信息中记录入场事件片段对应的开始时间戳和结束时间戳;
152.针对退场事件片段,可以将退场事件片段对应的起止时间戳作为该退场事件片段对应的第五事件标签,第五事件标签用于在参赛运动员关联的运动场记信息中记录退场事件片段对应的开始时间戳和结束时间戳;
153.针对得分显示事件片段,则可以将得分显示事件片段对应的起止时间戳作为该得分显示事件片段对应的第六事件标签,第六事件标签用于在参赛运动员关联的运动场记信息中记录得分显示事件片段对应的开始时间戳和结束时间戳。其中,得分显示事件片段是指在相关区域显示参赛运动员本场得分的片段,例如可以在赛场中的大屏幕上显示该参赛运动员的总得分,详细一点的话还可以显示每个裁判的打分以及该参赛运动员的排名情况。
154.步骤s305,将连续跳跃动作片段拆分为若干个单独跳跃动作片段;
155.具体的,对上述步骤s304得到的连续跳跃动作片段进行拆分,可以得到若干个单独跳跃动作片段,具体过程可以参见上述图3所对应实施例中的步骤s102。
156.步骤s306,对非连续跳跃动作片段、单独跳跃动作片段以及旋转动作片段进行抽帧,将得到的视频帧送入多任务动作理解网络,获得详细的动作类型、腾空旋转圈数以及得分;
157.具体的,如图9b所示,对步骤s305中得到的单独跳跃动作片段进行抽帧,可以得到第二视频帧序列,将第二视频帧序列送入多任务动作理解网络40e(对应图4c中的动作理解网络30k),可以得到每个单独跳跃动作片段对应的腾空旋转圈数(即单独腾空旋转圈数)以及得分(即单独动作评估质量),后续进行汇总后可以得到连续跳跃动作片段对应的第一事件标签,具体过程可以参见上述图7所对应实施例中的步骤s201

步骤s202。
158.可选的,对步骤s304中得到的旋转动作片段进行抽帧,可以得到第三视频帧序列,
将第三视频帧序列输入多任务动作理解网络40e,可以通过多任务动作理解网络中的非局部组件同时识别该旋转动作片段对应的动作类型以及进行得分预测,进而将动作类型以及预测的得分作为该旋转动作片段对应的第二事件标签,具体过程与对单独跳跃动作片段的识别过程一致,这里不再进行赘述。第二事件标签可用于在参赛运动员关联的运动场记信息中记录该旋转动作片段对应的动作类型以及动作评估质量(即预测的得分)。
159.可选的,对步骤s304中得到的非连续跳跃动作片段进行抽帧,可以得到第四视频帧序列,将第四视频帧序列输入多任务动作理解网络40e,可以得到非连续跳跃动作片段对应的得分(即动作评估质量)以及腾空旋转圈数,具体过程与对单独跳跃动作片段的识别过程一致,这里不再进行赘述。
160.步骤s307,将非连续跳跃动作片段以及单独跳跃动作片段送入三维骨架检测网络,对每个视频帧检测三维人体骨架;
161.具体的,为了能更准确地区分具有细微差别的花滑动作,尤其是跳跃动作,如图9b所示,可以将非连续跳跃动作片段以及单独跳跃动作片段送入三维骨架检测网络40f,三维骨架检测网络又称为时序卷积骨架检测网络,可以对每个视频帧进行检测,获得三维人体骨架信息(即关键部位位置信息),具体过程可以参见上述图5所对应实施例中的步骤s1031。
162.步骤s308,将三维人体骨架信息输入图卷积分类网络,进一步判断跳跃动作的详细动作类型;
163.具体的,如图9b所示,将步骤s307得到的三维人体骨架信息输入图卷积分类网络40g(此处的图卷积分类网络40g和三维骨架检测网络40f对应于图4c中的动作分类网络30l),可以得到非连续跳跃动作片段以及单独跳跃动作片段对应的详细动作类型,具体过程可以参见上述图5所对应实施例中的步骤s1032。
164.此时,可以将每个单独跳跃动作片段对应的腾空旋转圈数、得分以及详细动作类型进行汇总,得到连续跳跃动作片段对应的第一事件标签,将非连续跳跃动作片段对应的腾空旋转圈数、得分以及详细动作类型作为非连续跳跃动作片段对应的第三事件标签。
165.需要说明的是,虽然图9b中示例的多任务动作理解网络40e与三维骨架检测网络40f和图卷积分类网络40g是串行的结构,但实际应用时,多任务动作理解网络40e可以与三维骨架检测网络40f和图卷积分类网络40g并行执行。
166.步骤s309,输出截取的重要事件片段,并根据对应的事件标签生成场记单。
167.具体的,根据上述步骤s303得到的时间序列,可以从处理视频中截取出重要事件片段,将所有重要事件片段进行拼接可以得到视频集锦,其中,重要事件片段的含义与上述运动事件片段的含义相同,但重要事件片段是完整的片段,运动事件片段是抽帧后得到的片段,因此可以将运动事件片段理解为是重要事件片段的子集。根据每个运动事件片段对应的起止时间戳,可以将上述得到的第一事件标签、第二事件标签、第三事件标签、第四事件标签、第五事件标签以及第六事件标签按照时间顺序依次排列,组成参赛运动员关联的运动场记信息,根据运动场记信息可以生成文字场记单。
168.运动场记信息的具体分类如下表:
[0169][0170]
在上表中,“跳跃”指非连续跳跃动作片段,动作名称指详细动作类型,例如针对跳跃动作(包括非连续跳跃动作片段和单独跳跃动作片段),其详细动作类型可以包括axel(前外跳),flip(后内点冰跳),toeloop(后外点冰跳),loop(后外结环跳),lutz(勾手跳),salchow(后内结环跳),euler(后外半周跳)等。针对旋转动作,其其详细动作类型可以包括sit(蹲踞式旋转),camel(燕式旋转),layback(躬身旋转),upright(直立旋转),combo(联合旋转)等。
[0171]
文字场记单的形式可参考上表,也可以根据需要使用其它模板来生成文字场记单。可选的,对于连续跳跃动作片段,可以如上述步骤s306所说,对其包含的每个单独跳跃动作片段对应的标签进行汇总融合后再记录到运动场记信息中,也可以直接将每个单独跳跃动作片段对应的标签记录到运动场记信息中,本技术实施例对此不做限制。
[0172]
需要说明的是,由本技术实施例提供的方法可以得到一套多模态智能场记工具,除了应用于花样滑冰比赛的视频片段,还可以应用于其它类似视频片段或相关视频片段,本技术实施例不做限制。
[0173]
本技术实施例通过提供基于多模态(即多种基于深度神经网络的视频处理技术)的智能场记方案,可以从待处理视频中自动提取出针对目标对象的运动事件片段,且通过对运动事件片段中的连续运动动作片段进行拆分、三维人体骨架检测等处理,可以实现针对跳跃动作的自动精准分类,并可以同时对所有运动事件片段进行动作分类和打分预测,最终通过多模态的计算,可以自动输出一个带分类和打分的完整场记单以及对应视频片段组成的视频集锦。因此,采用本技术提供的方法可以提高对动作类型的识别准确率以及识别效率,另外,还可以根据运动事件片段对应的事件标签自动生成目标对象关联的运动场记信息,避免了耗费大量人力进行运动场记信息的登记,从而可以提升运动场记信息的生成效率。
[0174]
请参见图10,是本技术实施例提供的一种视频数据处理装置的结构示意图。上述视频数据处理装置可以是运行于计算机设备的一个计算机程序(包括程序代码),例如该视频数据处理装置为一个应用软件;该装置可以用于执行本技术实施例提供的方法中的相应步骤。如图10所示,该视频数据处理装置1可以包括:获取模块101、拆分模块102以及第一识别模块103;
[0175]
获取模块101,用于获取待处理视频中针对目标对象的运动事件片段;
[0176]
拆分模块102,用于若运动事件片段包括连续运动动作片段,则识别连续运动动作片段中的运动状态分割点,根据运动状态分割点对连续运动动作片段进行拆分,得到至少两个单独运动动作片段;
[0177]
第一识别模块103,用于分别在每个单独运动动作片段中对目标对象的关键部位进行跟踪,得到每个单独运动动作片段分别对应的关键部位位置信息,根据关键部位位置信息识别连续运动动作片段对应的第一事件标签;第一事件标签用于在目标对象关联的运动场记信息中记录每个单独运动动作片段分别对应的动作类型;
[0178]
上述第一识别模块103,具体用于分别在每个单独跳跃动作片段中对目标对象的关键部位进行跟踪,得到每个单独跳跃动作片段分别对应的关键部位位置信息,根据关键部位位置信息识别每个单独跳跃动作片段分别对应的动作类型;且具体用于根据动作评估质量、腾空旋转圈数以及动作类型生成连续跳跃动作片段对应的第一事件标签。
[0179]
其中,获取模块101的具体功能实现方式可以参见上述图3所对应实施例中的步骤s101,拆分模块102的具体功能实现方式可以参见上述图3所对应实施例中的步骤s102,第一识别模块103的具体功能实现方式可以参见上述图3所对应实施例中的步骤s103,这里不再进行赘述。
[0180]
请一并参见图10,该视频数据处理装置1还可以包括:第一抽帧模块104、第一动作理解模块105;
[0181]
第一抽帧模块104,用于分别对每个单独跳跃动作片段进行抽帧,得到至少两个第二视频帧序列;
[0182]
第一动作理解模块105,用于将至少两个第二视频帧序列输入动作理解网络,通过动作理解网络输出连续跳跃动作片段对应的动作评估质量以及腾空旋转圈数。
[0183]
其中,第一抽帧模块104的具体功能实现方式可以参见上述图3所对应实施例中的步骤s103,或者可以参见上述图7所对应实施例中的步骤s201,第一动作理解模块105的具体功能实现方式可以参见上述图7所对应实施例中的步骤s202,这里不再进行赘述。
[0184]
请一并参见图10,该视频数据处理装置1还可以包括:模型训练模块106、模型修正模块107;
[0185]
模型训练模块106,用于对连续跳跃动作样本片段进行标注,在标注后的连续跳跃动作样本片段中均匀抽取k个视频帧,在k个视频帧中抽取连续的p个视频帧作为输入序列,输入初始动作理解网络,通过初始动作理解网络输出连续跳跃动作样本片段对应的预测动作评估质量以及预测腾空旋转圈数;p等于初始动作理解网络对应的模型输入数据长度;
[0186]
模型修正模块107,用于根据预测动作评估质量生成质量损失函数,根据预测腾空旋转圈数生成动作损失函数,根据质量损失函数和动作损失函数生成目标损失函数,通过目标损失函数对初始动作理解网络中的模型参数进行修正,得到动作理解网络。
[0187]
其中,模型训练模块106以及模型修正模块107的具体功能实现方式可以参见上述图8所对应实施例中的步骤,这里不再进行赘述。
[0188]
请一并参见图10,该视频数据处理装置1还可以包括:第二抽帧模块108、第二动作理解模块109;
[0189]
第二抽帧模块108,用于若运动事件片段包括旋转动作片段,则对旋转动作片段进行抽帧,得到第三视频帧序列;
[0190]
第二动作理解模块109,用于将第三视频帧序列输入动作理解网络,通过动作理解网络中的非局部组件识别旋转动作片段对应的第二事件标签;第二事件标签用于在目标对象关联的运动场记信息中记录旋转动作片段对应的动作类型以及动作评估质量。
[0191]
其中,第二抽帧模块108、第二动作理解模块109的具体功能实现方式可以参见上述图9a所对应实施例中的步骤s306,且第一抽帧模块104与第二抽帧模块108可以合并为一个模块,这里不再进行赘述。
[0192]
请一并参见图10,该视频数据处理装置1还可以包括:第三动作理解模块110、第二识别模块111;
[0193]
第三动作理解模块110,用于若运动事件片段包括非连续跳跃动作片段,则对非连续跳跃动作片段进行抽帧,得到第四视频帧序列,将第四视频帧序列输入动作理解网络,得到非连续跳跃动作片段对应的动作评估质量以及腾空旋转圈数;
[0194]
第二识别模块111,用于在非连续跳跃动作片段中对目标对象的关键部位进行跟踪,得到非连续跳跃动作片段对应的关键部位位置信息,根据关键部位位置信息识别非连续跳跃动作片段对应的动作类型;且用于将非连续跳跃动作片段对应的动作评估质量、腾空旋转圈数以及动作类型确定为非连续跳跃动作片段对应的第三事件标签;第三事件标签用于在目标对象关联的运动场记信息中记录非连续跳跃动作片段对应的动作评估质量、腾空旋转圈数以及动作类型。
[0195]
其中,第三动作理解模块110、第二识别模块111的具体功能实现方式可以参见上述图9a所对应实施例中的步骤s306

步骤s308,且第一动作理解模块105、第二动作理解模块109以及第三动作理解模块110可以合并为一个模块,第二识别模块111与第一识别模块103可以合并为一个模块,这里不再进行赘述。
[0196]
请一并参见图10,该视频数据处理装置1还可以包括:第一标签确定模块112、第二标签确定模块113、第三标签确定模块114;
[0197]
第一标签确定模块112,用于若运动事件片段包括入场事件片段,则将入场事件片段对应的起止时间戳作为入场事件片段对应的第四事件标签;第四事件标签用于在目标对象关联的运动场记信息中记录入场事件片段对应的开始时间戳和结束时间戳;
[0198]
第二标签确定模块113,用于若运动事件片段包括退场事件片段,则将退场事件片段对应的起止时间戳作为退场事件片段对应的第五事件标签;第五事件标签用于在目标对象关联的运动场记信息中记录退场事件片段对应的开始时间戳和结束时间戳;
[0199]
第三标签确定模块114,用于若运动事件片段包括得分显示事件片段,则将得分显示事件片段对应的起止时间戳作为得分显示事件片段对应的第六事件标签;第六事件标签用于在目标对象关联的运动场记信息中记录得分显示事件片段对应的开始时间戳和结束时间戳。
[0200]
其中,第一标签确定模块112、第二标签确定模块113、第三标签确定模块114的具体功能实现方式可以参见上述图9a所对应实施例中的步骤s304,这里不再进行赘述。
[0201]
请一并参见图10,该视频数据处理装置1还可以包括:场记信息生成模块115、重要片段截取模块116;
[0202]
场记信息生成模块115,用于根据起止时间戳的时间顺序,将连续运动动作片段对应的第一事件标签依次排列在目标对象关联的运动场记信息中;
[0203]
重要片段截取模块116,用于根据运动事件对应的起止时间戳,从待处理视频中截取出重要事件片段,将重要事件片段拼接成视频集锦;运动事件片段属于重要事件片段。
[0204]
其中,场记信息生成模块115、重要片段截取模块116的具体功能实现方式可以参见上述图9a所对应实施例中的步骤s309,这里不再进行赘述。
[0205]
请一并参见图10,获取模块101可以包括:抽帧单元1011、第一特征提取单元1012、时序动作分割单元1013;
[0206]
抽帧单元1011,用于对包含目标对象的待处理视频进行抽帧,得到第一视频帧序列;
[0207]
第一特征提取单元1012,用于将第一视频帧序列输入特征提取网络,获取第一视频帧序列对应的图片特征;
[0208]
时序动作分割单元1013,用于将图片特征输入动作分割网络,获取第一视频帧序列对应的时序特征;时序特征包括第一视频帧序列中的运动事件对应的起止时间戳;根据时序特征中的运动事件对应的起止时间戳,从第一视频帧序列中提取针对运动事件的运动事件片段。
[0209]
其中,抽帧单元1011、第一特征提取单元1012以及时序动作分割单元1013的具体功能实现方式可以参见上述图3所对应实施例中的步骤s101,这里不再进行赘述。
[0210]
请一并参见图10,拆分模块102可以包括:状态划分单元1021、拆分单元1022;
[0211]
状态划分单元1021,用于确定连续跳跃动作片段中的每个视频帧分别对应的运动状态;根据运动状态,将连续跳跃动作片段划分为至少两个腾空视频帧序列和至少三个落地视频帧序列;运动状态是指目标对象在运动过程中的状态;
[0212]
拆分单元1022,用于将目标落地视频帧序列的中间时刻确定为运动状态分割点,根据动作状态分割点对连续跳跃动作片段进行拆分,得到至少两个单独跳跃动作片段;目标落地视频帧序列包括至少三个落地视频帧序列中除第一个落地视频帧序列和最后一个落地视频帧序列外的视频帧序列。
[0213]
其中,状态划分单元1021以及拆分单元1022的具体功能实现方式可以参见上述图3所对应实施例中的步骤s102,这里不再进行赘述。
[0214]
请一并参见图10,第一动作理解模块105可以包括:第二特征提取单元1051、单独输出单元1052、合并输出单元1053;
[0215]
第二特征提取单元1051,用于将第二视频帧序列s拆分为m个子序列,通过m个非局部组件分别对m个子序列进行特征提取,得到m个中间动作特征;分别对m个中间动作特征进行一维卷积,得到m个一维卷积动作特征;
[0216]
单独输出单元1052,用于通过动作理解网络中的全连接层对m个一维卷积动作特征进行合并,得到目标动作特征,通过动作理解网络中的分类层输出目标动作特征对应的单独动作评估质量以及单独腾空旋转圈数;
[0217]
合并输出单元1053,用于当获得至少两个第二视频帧序列中每个第二视频帧序列分别对应的单独动作评估质量以及单独腾空旋转圈数时,根据每个第二视频帧序列分别对应的单独动作评估质量以及单独腾空旋转圈数,生成连续跳跃动作片段对应的动作评估质量以及腾空旋转圈数。
[0218]
其中,第二特征提取单元1051、单独输出单元1052以及合并输出单元1053的具体
功能实现方式可以参见上述图7所对应实施例中的步骤s202,这里不再进行赘述。
[0219]
请一并参见图10,第一识别模块103可以包括:位置信息获取单元1031、动作识别单元1032、标签生成单元1033;
[0220]
位置信息获取单元1031,用于在单独运动动作片段h中对目标对象的关键部位进行跟踪,得到单独运动动作片段h对应的至少两个关键部位位置信息;
[0221]
动作识别单元1032,用于预测至少两个关键部位位置信息中每个关键部位位置信息分别对应的动作类型预测概率,对预测得到的至少两个动作类型预测概率进行平均处理,得到平均动作类型预测概率,根据平均动作类型预测概率识别单独运动动作片段h对应的动作类型;
[0222]
标签生成单元1033,用于当获得至少两个单独运动动作片段中每个单独运动动作片段分别对应的动作类型时,根据每个单独运动动作片段分别对应的动作类型生成连续运动动作片段对应的第一事件标签。
[0223]
其中,位置信息获取单元1031、动作识别单元1032以及标签生成单元1033的具体功能实现方式可以参见上述图5所对应实施例中的步骤s1031

步骤s1032,这里不再进行赘述。
[0224]
请一并参见图10,状态划分单元1021可以包括:腾空序列确定子单元10211、落地序列确定子单元10212;
[0225]
腾空序列确定子单元10211,用于从连续跳跃动作片段中获取连续的视频帧ti至视频帧ti n;n为正整数,且i n小于或等于连续跳跃动作片段中的视频帧的总数量;若连续的频帧ti至视频帧ti n

1对应的运动状态均为腾空状态,且视频帧ti n和视频帧ti

1分别对应的运动状态均为落地状态,且连续的视频帧ti至视频帧ti n

1对应的视频帧数量大于腾空数量阈值,则将连续的视频帧ti至视频帧ti n

1确定为腾空视频帧序列;连续跳跃动作片段中所存在的腾空视频帧序列的数量为至少两个;
[0226]
落地序列确定子单元10212,用于将连续跳跃动作片段中除了至少两个腾空视频帧序列外的视频帧序列,确定为至少三个落地视频帧序列。
[0227]
其中,腾空序列确定子单元10211、落地序列确定子单元10212的具体功能实现方式可以参见上述图3所对应实施例中的步骤s102,这里不再进行赘述。
[0228]
请一并参见图10,位置信息获取单元1031可以包括:第一位置信息获取子单元10311、第二位置信息获取子单元10312、第三位置信息获取子单元10313、第四位置信息获取子单元10314、第五位置信息获取子单元10315;
[0229]
第一位置信息获取子单元10311,用于在单独运动动作片段h中对目标对象的关键部位进行跟踪,得到关键部位的全局坐标,作为单独运动动作片段h对应的全局关键部位位置信息;
[0230]
第二位置信息获取子单元10312,用于根据全局关键部位位置信息得到关键部位的局部坐标,作为单独运动动作片段h对应的局部关键部位位置信息;
[0231]
第三位置信息获取子单元10313,用于将全局关键部位位置信息中目标关键部位对应的全局坐标与局部关键部位位置信息中除目标关键部位外的关键部位对应的局部坐标进行融合,得到单独运动动作片段h对应的融合关键部位位置信息;
[0232]
第四位置信息获取子单元10314,用于将全局关键部位位置信息在单独运动动作
片段h中的每相邻两个视频帧之间的坐标位移,作为单独运动动作片段h对应的全局位移关键部位位置信息;
[0233]
第五位置信息获取子单元10315,用于将局部关键部位位置信息在单独运动动作片段h中的每相邻两个视频帧之间的坐标位移,作为单独运动动作片段h对应的局部位移关键部位位置信息。
[0234]
其中,第一位置信息获取子单元10311、第二位置信息获取子单元10312、第三位置信息获取子单元10313、第四位置信息获取子单元10314以及第五位置信息获取子单元10315的具体功能实现方式可以参见上述图5所对应实施例中的步骤s1031,这里不再进行赘述。
[0235]
本技术实施例可以获取待处理视频中针对目标对象的运动事件片段,当检测到运动事件片段包括连续运动动作片段时,可以通过识别连续运动动作片段中的运动状态分割点来对该连续运动动作片段进行拆分,从而可以得到至少两个单独运动动作片段,进一步,可以分别在每个单独运动动作片段中对目标对象的关键部位进行跟踪,进而可以得到每个单独运动动作片段分别对应的关键部位位置信息,根据关键部位位置信息可以识别连续运动动作片段对应的第一事件标签,最后可以使用得到的第一事件标签在目标对象关联的运动场记信息中记录每个单独运动动作片段分别对应的动作类型。上述可知,本技术实施例可以从待处理视频中自动提取出针对目标对象的运动事件片段,且通过对运动事件片段中的连续运动动作片段进行拆分、提取关键部位位置信息等处理,可以实现针对连续运动动作片段的自动精准分类,并可以同时生成对应的动作评估质量,因此,可以提高对动作类型的识别准确率以及识别效率,另外,还可以根据连续运动动作片段对应的事件标签自动生成目标对象关联的运动场记信息,避免了耗费大量人力进行运动场记信息的登记,从而可以提升运动场记信息的生成效率。
[0236]
进一步地,请参见图11,是本技术实施例提供的一种计算机设备的结构示意图。如图11所示,该计算机设备1000可以包括:处理器1001,网络接口1004和存储器1005,此外,上述计算机设备1000还可以包括:用户接口1003,和至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(display)、键盘(keyboard),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如wi

fi接口)。存储器1004可以是高速ram存储器,也可以是非不稳定的存储器(non

volatile memory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图11所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及设备控制应用程序。
[0237]
在如图11所示的计算机设备1000中,网络接口1004可提供网络通讯功能;而用户接口1003主要用于为用户提供输入的接口;而处理器1001可以用于调用存储器1005中存储的设备控制应用程序,以实现:
[0238]
获取待处理视频中针对目标对象的运动事件片段;
[0239]
若运动事件片段包括连续运动动作片段,则识别连续运动动作片段中的运动状态分割点,根据运动状态分割点对连续运动动作片段进行拆分,得到至少两个单独运动动作片段;
[0240]
分别在每个单独运动动作片段中对目标对象的关键部位进行跟踪,得到每个单独运动动作片段分别对应的关键部位位置信息,根据关键部位位置信息识别连续运动动作片段对应的第一事件标签;第一事件标签用于在目标对象关联的运动场记信息中记录每个单独运动动作片段分别对应的动作类型。
[0241]
应当理解,本技术实施例中所描述的计算机设备1000可执行前文图3、图5、图7、图9a任一个所对应实施例中对该视频数据处理方法的描述,在此不再赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。
[0242]
此外,这里需要指出的是:本技术实施例还提供了一种计算机可读存储介质,且上述计算机可读存储介质中存储有前文提及的视频数据处理装置1所执行的计算机程序,且上述计算机程序包括程序指令,当上述处理器执行上述程序指令时,能够执行前文图3、图5、图7、图9a任一个所对应实施例中对上述视频数据处理方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本技术所涉及的计算机可读存储介质实施例中未披露的技术细节,请参照本技术方法实施例的描述。
[0243]
上述计算机可读存储介质可以是前述任一实施例提供的视频数据处理装置或者上述计算机设备的内部存储单元,例如计算机设备的硬盘或内存。该计算机可读存储介质也可以是该计算机设备的外部存储设备,例如该计算机设备上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。进一步地,该计算机可读存储介质还可以既包括该计算机设备的内部存储单元也包括外部存储设备。该计算机可读存储介质用于存储该计算机程序以及该计算机设备所需的其他程序和数据。该计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。
[0244]
此外,这里需要指出的是:本技术实施例还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行前文图3、图5、图7、图9a任一个所对应实施例提供的方法。
[0245]
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。
[0246]
以上所揭露的仅为本技术较佳实施例而已,当然不能以此来限定本技术之权利范围,因此依本技术权利要求所作的等同变化,仍属本技术所涵盖的范围。
再多了解一些

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

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

相关文献

  • 日榜
  • 周榜
  • 月榜