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

单点运动学习方法及装置与流程

2022-10-22 07:55:05 来源:中国专利 TAG:


1.本技术涉及人工智能领域,尤其涉及一种单点运动学习方法、装置、计算机设备和计算机可读存储介质。


背景技术:

2.机器人的技能模仿和迁徙可以通过机器学习、固定轨迹等实现。机器学习可以一般有三类:运动模型、策略学习模型和语义推理模型,基于上述模型实现运动规划。
3.然而,当前通过机器学习实现技能模仿和迁徙,需要大量的学习数据和模型求解过程,计算量大。


技术实现要素:

4.本技术实施例的目的是提供一种单点运动学习方法、装置、计算机设备以及计算机可读存储介质,可以用于解决上文所述的问题。
5.本技术实施例的一个方面提供了一种单点运动学习方法,包括:
6.获取目标单点在视频中的位置集合,所述位置集合用于构成目标单点的运动轨迹样本;
7.根据所述位置集合,获取与所述运动轨迹样本中多个轨迹段一一对应的多组轨迹属性特征样本;
8.确定所述目标轨迹属性特征样本可用于单点运动学习,所述目标轨迹属性特征样本为所述多组轨迹属性特征样本中的任意一组;及
9.响应于所述目标轨迹属性特征样本可用于单点运动学习,根据所述目标轨迹属性特征样本进行单点运动学习,以更新得到所述目标单点的最新运动轨迹;其中,所述最新运动轨迹的轨迹属性特征集合作为样本用于下一次单点运动学习。
10.可选的,所述根据所述位置集合,获取与所述运动轨迹样本中多个轨迹段一一对应的多组轨迹属性特征样本,包括:
11.根据所述位置集合,获取所述运动轨迹样本的轨迹属性特征样本集合;
12.按照时间顺序排列,将所述轨迹属性特征样本集合切分为所述多组轨迹属性特征样本。
13.可选的,轨迹属性特征包括相邻位置的斜率;
14.所述按照时间顺序排列,将所述轨迹属性特征样本集合切分为所述多组轨迹属性特征样本,包括:
15.对所述轨迹属性特征样本集合进行切片,以得到m组轨迹属性特征样本,m为大于1的自然数;
16.每组轨迹属性特征样本包括一个或多个斜率;
17.其中,当斜率的数值为零时,该数值为零的斜率被切分为一组单独的轨迹属性特征样本。
18.可选的,所述目标轨迹属性特征样本包括一个或多个轨迹属性特征;所述确定所述目标轨迹属性特征样本可用于单点运动学习,包括:
19.获取历史学习库中所述目标单点的高斯分布;
20.响应于所述目标轨迹属性特征样本中的各轨迹属性特征均落入到所述高斯分布的预设范围内,确定所述目标轨迹属性特征样本可用于所述单点运动学习;
21.响应于所述目标轨迹属性特征样本中的至少一个轨迹属性特征未落入到所述高斯分布的预设范围内,确定所述目标轨迹属性特征样本不可用于所述单点运动学习。
22.可选的,所述根据所述目标轨迹属性特征样本进行单点运动学习,以更新得到所述目标单点的最新运动轨迹,包括:
23.确定所述目标单点的历史轨迹属性特征;及
24.根据所述历史轨迹属性特征以及所述目标轨迹属性特征样本中的轨迹属性特征,更新得到所述目标单点的最新运动轨迹;所述最新运动轨迹的轨迹属性特征集合包括本次学习到的轨迹属性特征,并作为样本用于下一次单点运动学习。
25.可选的,还包括:
26.将每次更新得到的最新运动轨迹的轨迹属性特征集合用于单点运动学习,直至最后一次更新得到的最新运动轨迹的轨迹属性特征集合不可用于单点运动学习。
27.可选的,还包括:
28.将每次更新得到的最新运动轨迹的轨迹属性特征集合用于单点运动学习,直至更新次数超过预设次数。
29.可选的,还包括:
30.将每次更新得到的最新运动轨迹的轨迹属性特征集合用于单点运动学习,直至学习效果低于预设阈值。
31.本技术实施例的一个方面又提供了一种单点运动学习装置,包括:
32.第一获取模块,用于获取目标单点在视频中的位置集合,所述位置集合用于构成目标单点的运动轨迹样本;
33.第二获取模块,用于根据所述位置集合,获取与所述运动轨迹样本中多个轨迹段一一对应的多组轨迹属性特征样本;
34.确定模块,用于确定所述目标轨迹属性特征样本可用于单点运动学习,所述目标轨迹属性特征样本为所述多组轨迹属性特征样本中的任意一组;及
35.学习模块,用于响应于所述目标轨迹属性特征样本可用于单点运动学习,根据所述目标轨迹属性特征样本进行单点运动学习,以更新得到所述目标单点的最新运动轨迹;其中,所述最新运动轨迹的轨迹属性特征集合作为样本用于下一次单点运动学习。
36.本技术实施例的一个方面又提供了一种计算机设备,所述计算机设备包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时用于实现如上述单点运动学习方法的步骤。
37.本技术实施例的一个方面又提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序可被至少一个处理器所执行,以使所述至少一个处理器执行如上述单点运动学习方法的步骤。
38.本技术实施例提供的单点运动学习方法、装置、计算机设备以及计算机可读存储
介质,包括如下优点:
39.(1)相对于通过机器学习实现运动轨迹学习模仿所需要的大量学习数据和模型的求解过程,在本技术中:基于单点的位置集合不断修改单点的运动轨迹(轨迹属性特征)实现单点运动学习,有效降低学习数据和避免模型求解过程以节省计算量。
40.(2)将视频的运动轨迹切分为多个轨迹段,每个轨迹段对应一组轨迹属性特征样本,因此是按轨迹段进行单点运行学习。需分别判断各个轨迹段的轨迹属性特征样本是否可以用于单点运动学习。不同于一次性判断整个运动轨迹的轨迹描述集合是否可以用于单点运动学习,按轨迹段逐段判断可以避免“对整个运动轨迹做整体判断时,一旦某个轨迹属性特征存在异常,则整个视频的轨迹都被丢弃”的问题。
41.本技术采用轨迹段拆分策略,有用轨迹段的轨迹属性特征样本可以用于单点运动学习,含有异常轨迹属性特征的轨迹段则被丢弃,充分利用视频的有用数据作为样本。
42.(3)学习和更新后的轨迹属性特征可以再次作为单点运动学习的样本,这种循环学习策略进行单点运动学习得到更精确的结果,间接减少学习对数据量的依赖性。
43.综上所述,本技术有效降低学习数据和避免模型求解过程以节省计算量,采用轨迹段拆分策略充分利用数据,并且循环学习策略减少学习对数据量的依赖性。
附图说明
44.图1示意性示出了根据本技术实施例的单点运动学习方法的应用环境图;
45.图2示意性示出了根据本技术实施例一的单点运动学习方法的流程图;
46.图3示意性示出了步骤s202的子流程图;
47.图4示意性示出了步骤s204的子流程图;
48.图5示意性示出了一个示例性应用的流程图;
49.图6示意性示出了根据本技术实施例二的单点运动学习装置的框图;
50.图7示意性示出了根据本技术实施例三的适于实现单点运动学习方法的计算机设备的硬件架构示意图。
具体实施方式
51.为了使本技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本技术进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本技术,并不用于限定本技术。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
52.需要说明的是,在本技术实施例中涉及“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本技术要求的保护范围之内。
53.在本技术的描述中,需要理解的是,步骤前的数字标号并不标识执行步骤的前后顺序,仅用于方便描述本技术及区别每一步骤,因此不能理解为对本技术的限制。
54.以下为本技术的术语解释:
55.单点运动:运动体都可以按照运动轨迹s划分为n个部份,每个部份的所有组成成分都按照轨迹s进行运动,因此可以将这个部份看作一个点,这个点的运动称为单点运动。
56.机器学习:是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、算法复杂度理论等多门学科。专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能。对比于数据挖掘从大数据之间找相互特性而言,机器学习更加注重算法的设计,让计算机能够自动地从数据中“学习”规律,并利用规律对未知数据进行预测。
57.为了方便本领域技术人员理解本技术实施例提供的技术方案,下面对相关技术进行说明:
58.物体的技能模仿或者技能迁徙可以采用以下方式实现:
59.(1)机器学习:
60.a、策略模型:以学徒学习、最大边际规划、逆强化学习和生成对抗模仿学习为代表。
61.b、运动模型:以dmp(dynamic movement primitives,动态运动基元)、gmm(gaussian mixture model,高斯混合模型)和gmr(gaussian mixture regression,高斯回归模型)等传统的示教学习方法为代表。
62.c、推理模型:对任务进行分段,确定关键节点,并提取每段节点的逻辑语义。
63.(2)固定轨迹:给定预定的技能运动轨迹,让物体按照固定的运动轨迹运行。
64.然而,上述实现方式,具有多种缺陷,诸如:
65.(1)基于机器学习的机器技能模仿模型,需要大量数据才能使机器学会一个技能,少量数据无法求解模型,计算量大。
66.(2)固定轨迹,单次输入运动轨迹可能存在问题,存在问题后无法通过学习修正,必须重新手动编辑运动轨迹,替换错误轨迹才能修正。
67.(3)输入运动样本会被作为一个整体进行输入,一旦某个点存在异常,则整个样本被丢弃。然而实际的运动样本可能存在部分正确、部分错误的情况,统一丢弃也会损失正确的部分。
68.鉴于以上问题,本技术旨在提供一种单点运动学习方案,用于解决上述问题。具体的:
69.(1)去掉模型求解过程,需要训练(学习)数据相对正常机器学习少。且特定模型同样拥有学习能力。
70.(2)输入样本会经过拆分后生成子样本用于学习,可以充分利用样本的有用数据。
71.(3)根据算法特殊性可重复使用子样本进行训练得到更精确的结果,间接减少训练对数据量的依赖性。
72.(4)基于时间片提取轨迹特征属性,使轨迹除了形状的约束,还有变化速率的约束(即丢弃时间尺度可变轨迹,比如舞蹈需要快慢节拍)。
73.下面提供本技术的示例性应用环境。如图1所示,所述环境示意图可以包括数据源100、网络200以及服务器300。数据源100可以位于诸如单个场所之类的数据中心,或分布在不同的地理位置(例如,在多个场所)的分布式数据库,也可以是终端设备。网络200包括各
种网络设备,例如路由器,交换机,多路复用器,集线器,调制解调器,网桥,中继器,防火墙,代理设备和/或类似。网络9可以包括物理链路,例如同轴电缆链路,双绞线电缆链路,光纤链路,其组合等。网络200也可以包括无线链路,诸如蜂窝链路,卫星链路,wi-fi链路等。
74.数据源100用于提供各类学习数据,如视频样本等。
75.服务器300可以提供各种服务,例如,服务器300可以从数据源100获取到学习数据,并根据学习数据进行运动轨迹学习(如,单位运动学习),以实现轨迹模仿与迁移。
76.需要说明的是,图1中所示的数据源100、网络200以及服务器300的数目仅仅是示意性的。根据需要,可以具有任意数目的数据源、网络和服务器。需要说明的是,在服务器300中存储有学习数据的情况下,也可以不设置数据源300。
77.下面,将在上述示例性应用环境下提供若干个实施例,来说明单点运动学习方案。
78.实施例一
79.图2示意性示出了根据本技术实施例一的单点运动学习方法的流程图。
80.如图2所示,该单点运动学习方法可以包括步骤s200~s206,其中:
81.步骤s200,获取目标单点在视频中的位置集合,所述位置集合用于构成目标单点的运动轨迹样本。
82.所述视频作为样本视频,为单点运动学习可以学习依据。
83.所述视频可以为各类视频,如人物的舞蹈或动作类视频,由或者为动物等的动作视频。
84.示例性的:所述视频可以为直播间的录制视频,该录制视频录制有主播的舞蹈内容。
85.若制作直播间主播的ai机器人,可以通过单点运动学习可以学习主播的舞蹈。具体的:ai机器人的每个骨骼节点可看作是单点,整体运动是一系列单点动作联动而成。用此单点合成的ai机器人可使用舞蹈视频学习主播的舞蹈或者动作。
86.继续以上述视频为例,识别过程如下:
87.(1)可以通过图片识别算法识别视频中每个一帧的目标对象(跳舞主播)。图像识别算法用于对图像进行处理、分析和理解,以识别各种不同模式的目标和对象。
88.(2)若在一个帧识别到跳舞主播,则获取该跳舞主播的目标单点(如跳舞主播的头顶)的位置。
89.(3)按照各个帧在视频中的先后顺序,及各个帧中的目标单点的位置,生成位置集合。
90.如:确定目标单点在每帧的位置pi(xi,yi),按照时间顺序排列单点i在各个帧的位置,生成位置集合p={p0,p1,p2,

,pn}。还可以设置间隔帧数d,计算连续d帧内各个分量的平均值,作为单点p

,生成位置集合p

={p0

,p1

,p2
′…
,pn

}。其中,i表示按时间先后顺序的排序序号,x表示横轴,y表示纵轴。
91.例如,人体骨骼节点可以包括:右肩、右肘、右腕、左肩、左肘、左腕、佑髋、右膝、右踝、左髋、左膝、左踝、头顶、脖子。当然,也可以包括其他骨骼节点。
92.以其中一个骨骼节点(如头顶)为例,可以将该头顶作为一个单点,得到对应于头顶的位置集合(按照视频中各个帧的顺序,从前到后排列头顶在各个帧中的位置)。该对应于头顶的位置集合,可以形成/构建头顶在所述视频中的运动轨迹。
93.步骤s202,根据所述位置集合,获取与所述运动轨迹样本中多个轨迹段一一对应的多组轨迹属性特征样本。
94.所述位置集合构成目标单点(如头顶)的整体运动轨迹。
95.基于所述位置集合中的各位置或相邻位置间的关系(如斜率),可以得到轨迹属性特征。
96.即,可以根据所述位置集合,得到用于描述轨迹走势的轨迹属性特征。
97.在本实施例中,采用了轨迹段拆分策略,将视频中的整体运动轨迹拆分为多个轨迹段。从而,根据所述位置集合,得到与多个轨迹段一一对应的多组轨迹属性特征样本。基于所述轨迹段拆分策略,单个视频可以被拆分作为多个样本,每个轨迹段分别对应一个用于单点运动学习的样本,可以充分挖掘和利用视频的有用数据。
98.在可选的实施例中,如图3所示,步骤s202“根据所述位置集合,获取与所述运动轨迹样本中多个轨迹段一一对应的多组轨迹属性特征样本”可以通过如下步骤得到:步骤s300,根据所述位置集合,获取所述运动轨迹样本的轨迹属性特征样本集合;步骤s302,按照时间顺序排列,将所述轨迹属性特征样本集合切分为所述多组轨迹属性特征样本。举例而言:可以根据位置集合p={p0,p1,p2,

,pn},得到相应的轨迹属性特征样本集合s={s0,s1,s2,

,sn}。然后设置阈值x,将s切分为n/x段(针对每一个轨迹段生成一个样本)。通过分为所述多组轨迹属性特征样本,分别用于单点运动学习,充分利用数据。
99.在另一可选的实施例中,轨迹属性特征(样本)包括相邻位置的斜率。
100.以位置集合p={p0,p1,p2,

,pn},计算相邻位置(如p1、p2)之间的斜率,得到s={s0,s1,s2,

,sn}。s0对应p0、p1之间的斜率,s1对应p1、p2之间的斜率,


101.步骤s302“所述按照时间顺序排列,将所述轨迹属性特征样本集合切分为所述多组轨迹属性特征样本”包括:对所述轨迹属性特征样本集合进行切片,以得到m组轨迹属性特征样本,m为大于1的自然数;每组轨迹属性特征样本包括一个或多个斜率;其中,当斜率的数值为零时,该数值为零的斜率被切分为一组单独的轨迹属性特征样本。每个轨迹属性特征样本内的轨迹属性特征个数≥1,各轨迹属性特征样本内不包含斜率为0的轨迹属性特征。当si为0时,则该轨迹属性特征自成一个轨迹属性特征样本。其中斜率为0的轨迹属性特征可用作极值做预设验证。
102.步骤s204,确定所述目标轨迹属性特征样本可用于单点运动学习,所述目标轨迹属性特征样本为所述多组轨迹属性特征样本中的任意一组。
103.所述目标轨迹属性特征样本包括一个或多个轨迹属性特征(如,斜率)。
104.由于不同的轨迹属性特征样本对应不同的轨迹段,因此是按轨迹段进行单点运行学习。在实施时,需分别判断各个轨迹段的轨迹属性特征样本是否可以用于单点运动学习。不同于一次性判断整个运动轨迹的轨迹描述集合是否可以用于单点运动学习,按轨迹段逐段判断可以避免“对整个运动轨迹做整体判断时,一旦某个点(轨迹属性特征)存在异常,则整个视频的轨迹都被丢弃”的问题。即在本实施例中,视频中提取出来的有用轨迹段的轨迹属性特征样本可以用于单点运动学习,含有异常轨迹属性特征的轨迹段则被丢弃,充分利用视频的有用数据作为样本。
105.在实施时,可以根据高斯分布函数或其他异常监测函数来检测轨迹属性特征是否为预期正常值。若是,说明可用于单点运动学习,否则不可用于单点运动学习。
106.在可选的实施例中,为了快速且有效检测异常,如图4所示,所述步骤204“确定所述目标轨迹属性特征样本可用于单点运动学习”可以通过如下步骤实现:步骤s400,获取历史学习库中所述目标单点的高斯分布;步骤s402,响应于所述目标轨迹属性特征样本中的各轨迹属性特征均落入到所述高斯分布的预设范围内,确定所述目标轨迹属性特征样本可用于所述单点运动学习;步骤s404,响应于所述目标轨迹属性特征样本中的至少一个轨迹属性特征未落入到所述高斯分布的预设范围内,确定所述目标轨迹属性特征样本不可用于所述单点运动学习。
107.例如:目标轨迹属性特征样本中的轨迹属性特征为:s={s0,s1,s2,

,sn},依次遍历各个si。首先获取目标单点在历史学习库中的高斯分布函数f(x)=(x,μ,δ),检测si是否在f(x)≤m区域内,若不在,则丢弃目标轨迹属性特征样本,如果该轨迹段中所有的si检测通过,则说明该轨迹段对应的目标轨迹属性特征样本可用于单点运动学习。μ表示平均值,δ表示方差,m为经验值。通过历史学习库和高斯分布,可以有效确定可以用于单点运动学习的轨迹属性特征样本。
108.步骤s206,响应于所述目标轨迹属性特征样本可用于单点运动学习,根据所述目标轨迹属性特征样本进行单点运动学习,以更新得到所述目标单点的最新运动轨迹;其中,所述最新运动轨迹的轨迹属性特征集合作为样本用于下一次单点运动学习。
109.在所述目标轨迹属性特征样本中的轨迹属性特征可用于单点运动学习的情形下,则可以根据所述目标轨迹属性特征样本中的轨迹属性特征生成新的轨迹属性特征。
110.在可选的实施例中,为了能够有效的学习和修正运动轨迹,如图4所示,所述步骤s206“所述响应于所述目标轨迹属性特征样本可用于单点运动学习,根据所述目标轨迹属性特征样本进行单点运动学习,以更新得到所述目标单点的最新运动轨迹”可以通过如下步骤实现:步骤s400,确定所述目标单点的历史轨迹属性特征;及步骤s402,根据所述历史轨迹属性特征以及所述目标轨迹属性特征样本中的轨迹属性特征更新得到所述目标单点的最新运动轨迹;所述最新运动轨迹的轨迹属性特征集合包括本次学习到的轨迹属性特征,并作为样本用于下一次单点运动学习。
111.将所述最新运动轨迹的轨迹属性特征集合作为样本用于下一次单点运动学习,重复使用样本进行单点运动学习得到更精确的结果,间接减少学习对数据量的依赖性。
112.例如:目标轨迹属性特征样本中的轨迹属性特征为:s={s0,s1,s2,

,sn}。
113.最新运动轨迹的轨迹属性特征集合为:t={t0,t1,t2,

,tn}。
114.最新运动轨迹的轨迹属性特征集合的各轨迹属性特征:ti=(θ0
*
ti θ1
*
si)/2。
115.即:根据上一次学习到的轨迹属性特征ti和当前轨迹属性特征si分别加权平均计算得到更新后的轨迹属性特征ti。每组轨迹属性特征样本可以更新一次轨迹属性特征t。
116.θ1=1-θ0。
117.θ0=α
*
1/(1 e-t
)。
118.其中:
119.α为预设值;
120.θ1为当前轨迹属性特征si的加权值;
121.θ0为上一次学习到的轨迹属性特征ti的加权值;
122.t为同一个轨迹段的重复学习的次数。
123.如上述权重的设置,重复学习的次数越多,剩下有用数据越少,因此权重θ1越小。
124.为了保证有效学习和防止过度学习或者无法终止学习,以下提供几种终止重复学习次数的方式。
125.在可选的实施例中,所述方法还可以包括:将每次更新得到的最新运动轨迹的轨迹属性特征集合用于单点运动学习,直至最后一次更新得到的最新运动轨迹的轨迹属性特征集合不可用于单点运动学习。在本可选的实施例中,重复迭代样本,并基于不断迭代的样本以重复进行单点运动学习,从而可以得到更精确的结果,间接减少训练对数据量的依赖性。另外,为保证有效学习和防止过度学习或者无法终止学习,当迭代后的样本不适合用于学习时,则终止基于当前轨迹段的样本迭代,并使用下一个轨迹段的轨迹属性特征样本作为新的学习样本,进行单点运动学习。
126.在可选的实施例中,所述方法还可以包括:将每次更新得到的最新运动轨迹的轨迹属性特征集合用于单点运动学习,直至更新次数超过预设次数。重复迭代样本,并基于不断迭代的样本以重复进行单点运动学习,从而可以得到更精确的结果,间接减少训练对数据量的依赖性。另外,为保证有效学习和防止过度学习或者无法终止学习,当重复训练的次数多于预设次数时,则终止基于当前轨迹段的样本迭代,并使用下一个轨迹段的轨迹属性特征样本作为新的学习样本,进行单点运动学习。
127.在可选的实施例中,所述方法还可以包括:将每次更新得到的最新运动轨迹的轨迹属性特征集合用于单点运动学习,直至学习效果低于预设阈值。所述学习效果可以人工评估或者脚本评估。重复迭代样本,并基于不断迭代的样本以重复进行单点运动学习,从而可以得到更精确的结果,间接减少训练对数据量的依赖性。另外,为保证有效学习和防止过度学习或者无法终止学习,当某次迭代学习后的学习效果低于预设阈值时,则终止对基于当前轨迹段的样本迭代,并使用下一个轨迹段的轨迹属性特征样本作为新的学习样本,进行单点运动学习。
128.如图5所示,为了使得本技术的技术方案和技术效果更好清晰易懂,以下提供一个示例性应用。
129.s500,输入视频,按时间间隔t从所述视频中提取目标单点的位置集合p={p0,p1,p2,

,pn}。
130.根据时间先后顺序,该位置集合可以是构成目标单点在视频中的运动轨迹。
131.s502,计算单位时间t内各相邻点pi和pi 1之间的斜率si,生成轨迹属性特征样本集合s={s0,s1,s2,

,sn}。
132.s504,设置阈值x,将轨迹属性特征样本集合s切分为n/x轨迹段(每一段对应一个学习样本)。
133.s506,判定输入的轨迹段的轨迹属性特征样本是否可以用于单点运动学习。
134.具体的,可以根据高斯异常检测函数检测输入的si是否为预期正常值。
135.例如:轨迹属性特征样本为:s={s0,s1,s2,

,sn},依次遍历各个si。首先获取目标单点在历史学习库的高斯分布函数f(x)=(x,μ,δ),检测si是否在f(x)≤m区域内,如果不在,则丢弃该轨迹段对应的轨迹属性特征样本,如果该轨迹段中所有的si检测通过,则说明该轨迹段对应的轨迹属性特征样本可用于单点运动学习。
136.s508,按照目标单点的历史斜率t和斜率s分别加权平均更新斜率t,即生成新的学
习轨迹。
137.如输入的轨迹属性特征样本为:s={s0,s1,s2,

,sn}。
138.学习和更新后的轨迹属性特征集合为:t={t0,t1,t2,

,tn}。
139.学习和更新后的各轨迹属性特征:ti=(θ0
*
ti θ1
*
si)/2。
140.根据目标单点上一次学习得到的轨迹属性特征ti和当前轨迹属性特征si分别加权平均以更新轨迹属性特征ti。每组轨迹属性特征样本可以更新一轮轨迹属性特征t。
141.s510,评价该轨迹段的学习效果,重新学习,直到无法提取有用信息为止。
142.例如:根据用户反馈得到学习评分以判断该学习是否有效。如果有效则继续学习。如果学习失败,则判断当前轨迹段是否经过x次切片。如果切片次数超过x次,则该轨迹段的学习结束。如果没有,则该轨迹段再次切片学习,直到达到学习结束。
143.以下提供一个重复学习的示例:
144.目标单点的历史轨迹属性特征t={t0,t1,t2,

,tn};
145.(1)第一次学习:
146.输入的轨迹属性特征样本为:s={s0,s1,s2,

,sn},当该样本各个元素均为预设正常时,作为学习样本进行第一次学习,学习过程为:根据t={t0,t1,t2,

,tn}和s={s0,s1,s2,

,sn}加权,得到更新后的轨迹属性特征ta。
147.即:t和s

ta。
148.(2)第二次学习:
149.输入的轨迹属性特征样本为ta,当该样本各个元素均为预设正常时,作为学习样本进行第二次学习,学习过程为:根据t和ta加权,得到更新后的轨迹属性特征tb。
150.即:t和ta

tb。
151.(2)第三次学习:
152.输入的轨迹属性特征样本为tb,当该样本各个元素均为预设正常时,作为学习样本进行第三次学习,学习过程为:根据t和tb加权,得到更新后的轨迹属性特征tc。
153.即:t和tb

tc。
154.依次类推,直到该以轨迹属性样本s为起始的多次重复学习结束。若多次重复学习得到的轨迹属性特征为tx,则用tx替换t,以用作后续训练的历史轨迹属性特征。
155.本实施例具有以下优势:
156.(1)相对于通过机器学习实现运动轨迹学习模仿所需要的大量学习数据和模型的求解过程,在本实施例中:基于单点的位置集合不断修改单点的运动轨迹(轨迹属性特征)实现单点运动学习,有效降低学习数据和避免模型求解过程以节省计算量。
157.(2)将轨迹属性特征集合s切分为n/x轨迹段(每一段对应一个学习样本),不同的轨迹属性特征样本一一对应不同的轨迹段,因此是按轨迹段进行单点运行学习。在实施时,需分别判断各个轨迹段的轨迹属性特征样本是否可以用于单点运动学习。不同于一次性判断整个运动轨迹的轨迹描述集合是否可以用于单点运动学习,按轨迹段逐段判断可以避免“对整个运动轨迹做整体判断时,一旦某个点(轨迹属性特征)存在异常,则整个视频的轨迹都被丢弃”的问题。而本实施例中采用轨迹段拆分策略,有用轨迹段的轨迹属性特征样本可以用于单点运动学习,含有异常轨迹属性特征的轨迹段则被丢弃,充分利用视频的有用数据作为样本。
158.(3)学习和更新后的轨迹属性特征t可以再次作为单点运动学习的样本,这种循环学习策略进行单点运动学习得到更精确的结果,间接减少学习对数据量的依赖性。
159.本实施例的单点运动学习可以不停的学习修改轨迹,而不须重新手动编辑运动轨迹。
160.(4)基于单位时间t提取的轨迹描述特征(目标单点在帧中的位置),可使轨迹除了形状的约束,还有变化速率的约束(即丢弃时间尺度可变轨迹,如舞蹈需要快慢节拍)。
161.(5)通过高斯分布函数,可以有效地检测出当前输入的轨迹属性特征是否为预设正常值。具体的:通过f(x)≤m判断,m为衰减值。对应同一个轨迹段的轨迹属性特征更新和作为样本输入的次数越多,m的值越低。即:利用同一个轨迹段重复学习的次数越多,剩下有用数据越少,因此需要制定一个丢弃该轨迹段的策略,如利用m值的衰减丢弃该轨迹段,以继续用下一个轨迹段进行单点运动学习。
162.实施例二
163.图6示意性示出了根据本技术实施例二的单点运动学习装置的框图。该单点运动学习装置可以被分割成一个或多个程序模块,一个或者多个程序模块被存储于存储介质中,并由一个或多个处理器所执行,以完成本技术实施例。本技术实施例所称的程序模块是指能够完成特定功能的一系列计算机程序指令段,以下描述将具体介绍本实施例中各程序模块的功能。如图6所示,该单点运动学习装置600可以包括第一获取模块610、第一获取模块620、确定模块630和学习模块640,其中:
164.第一获取模块610,用于获取目标单点在视频中的位置集合,所述位置集合用于构成目标单点的运动轨迹样本;
165.第二获取模块620,用于根据所述位置集合,获取与所述运动轨迹样本中多个轨迹段一一对应的多组轨迹属性特征样本;
166.确定模块630,用于确定所述目标轨迹属性特征样本可用于单点运动学习,所述目标轨迹属性特征样本为所述多组轨迹属性特征样本中的任意一组;及
167.学习模块640,用于响应于所述目标轨迹属性特征样本可用于单点运动学习,根据所述目标轨迹属性特征样本进行单点运动学习,以更新得到所述目标单点的最新运动轨迹;其中,所述最新运动轨迹的轨迹属性特征集合作为样本用于下一次单点运动学习。
168.在可选的实施例中,第二获取模块620,还用于:
169.根据所述位置集合,获取所述运动轨迹样本的轨迹属性特征样本集合;
170.按照时间顺序排列,将所述轨迹属性特征样本集合切分为所述多组轨迹属性特征样本。
171.在可选的实施例中,轨迹属性特征包括相邻位置的斜率;
172.第二获取模块620,还用于:
173.对所述轨迹属性特征样本集合进行切片,以得到m组轨迹属性特征样本,m为大于1的自然数;
174.每组轨迹属性特征样本包括一个或多个斜率;
175.其中,当斜率的数值为零时,该数值为零的斜率被切分为一组单独的轨迹属性特征样本。
176.在可选的实施例中,所述目标轨迹属性特征样本包括一个或多个轨迹属性特征;
确定模块630,还用于:
177.获取历史学习库中所述目标单点的高斯分布;
178.响应于所述目标轨迹属性特征样本中的各轨迹属性特征均落入到所述高斯分布的预设范围内,确定所述目标轨迹属性特征样本可用于所述单点运动学习;
179.响应于所述目标轨迹属性特征样本中的至少一个轨迹属性特征未落入到所述高斯分布的预设范围内,确定所述目标轨迹属性特征样本不可用于所述单点运动学习。
180.在可选的实施例中,学习模块640,用于:
181.确定所述目标单点的历史轨迹属性特征;及
182.根据所述历史轨迹属性特征以及所述目标轨迹属性特征样本中的轨迹属性特征,更新得到所述目标单点的最新运动轨迹;所述最新运动轨迹的轨迹属性特征集合包括本次学习到的轨迹属性特征,并作为样本用于下一次单点运动学习。
183.在可选的实施例中,所述装置还包括重复模块,用于:
184.将每次更新得到的最新运动轨迹的轨迹属性特征集合用于单点运动学习,直至最后一次更新得到的最新运动轨迹的轨迹属性特征集合不可用于单点运动学习。
185.在可选的实施例中,所述装置还包括重复模块,用于:
186.将每次更新得到的最新运动轨迹的轨迹属性特征集合用于单点运动学习,直至更新次数超过预设次数。
187.在可选的实施例中,所述装置还包括重复模块,用于:
188.将每次更新得到的最新运动轨迹的轨迹属性特征集合用于单点运动学习,直至学习效果低于预设阈值。
189.实施例三
190.图7示意性示出了根据本技术实施例三的适于实现单点运动学习方法的计算机设备10000的硬件架构示意图。计算机设备10000可以是服务器300或服务器300的一部分,也可以是终端设备。计算机设备10000是一种能够按照事先设定或者存储的指令,自动进行数值计算和/或信息处理的设备。例如,可以是智能手机、平板电脑、pc、虚拟现实设备等。如图7所示,计算机设备10000至少包括但不限于:可通过系统总线相互通信链接存储器10010、处理器10020、网络接口10030。其中:
191.存储器10010至少包括一种类型的计算机可读存储介质,可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器10010可以是计算机设备10000的内部存储模块,例如该计算机设备10000的硬盘或内存。在另一些实施例中,存储器10010也可以是计算机设备10000的外部存储设备,例如该计算机设备10000上配备的插接式硬盘,智能存储卡(smart media card,简称为smc),安全数字(secure digital,简称为sd)卡,闪存卡(flash card)等。当然,存储器10010还可以既包括计算机设备10000的内部存储模块也包括其外部存储设备。本实施例中,存储器10010通常用于存储安装于计算机设备10000的操作系统和各类应用软件,例如单点运动学习方法的程序代码等。此外,存储器10010还可以用于暂时地存储已经输出或者将要输出的各类数据。
192.处理器10020在一些实施例中可以是中央处理器(central processing unit,简
称为cpu)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器10020通常用于控制计算机设备10000的总体操作,例如执行与计算机设备10000进行数据交互或者通信相关的控制和处理等。本实施例中,处理器10020用于运行存储器10010中存储的程序代码或者处理数据。
193.网络接口10030可包括无线网络接口或有线网络接口,该网络接口10030通常用于在计算机设备10000与其他计算机设备之间建立通信链接。例如,网络接口10030用于通过网络将计算机设备10000与外部用户终端相连,在计算机设备10000与外部用户终端之间的建立数据传输通道和通信链接等。网络可以是企业内部网(intranet)、互联网(internet)、全球移动通讯系统(global system of mobile communication,简称为gsm)、宽带码分多址(wideband code division multiple access,简称为wcdma)、4g网络、5g网络、蓝牙(bluetooth)、wi-fi等无线或有线网络。
194.需要指出的是,图7仅示出了具有部件10010-10030的计算机设备,但是应该理解的是,并不要求实施所有示出的部件,可以替代的实施更多或者更少的部件。
195.在本实施例中,存储于存储器10010中的单点运动学习方法还可以被分割为一个或者多个程序模块,并由一个或多个处理器(本实施例为处理器10020)所执行,以完成本技术实施例。
196.实施例四
197.本技术还提供一种计算机可读存储介质,计算机可读存储介质其上存储有计算机程序,计算机程序被处理器执行时实现实施例一中的单点运动学习方法的步骤。
198.本实施例中,计算机可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,sd或dx存储器等)、随机访问存储器(ram)、静态随机访问存储器(sram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、可编程只读存储器(prom)、磁性存储器、磁盘、光盘等。在一些实施例中,计算机可读存储介质可以是计算机设备的内部存储单元,例如该计算机设备的硬盘或内存。在另一些实施例中,计算机可读存储介质也可以是计算机设备的外部存储设备,例如该计算机设备上配备的插接式硬盘,智能存储卡(smart media card,简称为smc),安全数字(secure digital,简称为sd)卡,闪存卡(flash card)等。当然,计算机可读存储介质还可以既包括计算机设备的内部存储单元也包括其外部存储设备。本实施例中,计算机可读存储介质通常用于存储安装于计算机设备的操作系统和各类应用软件,例如实施例中单点运动学习方法的程序代码等。此外,计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的各类数据。
199.显然,本领域的技术人员应该明白,上述的本技术实施例的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本技术实施例不限制于任何特定的硬件和软件结合。
200.需要说明的是,以上仅为本技术的优选实施例,并非因此限制本技术的专利保护范围,凡是利用本技术说明书及附图内容所作的等效结构或等效流程变换,或直接或间接
运用在其他相关的技术领域,均同理包括在本技术的专利保护范围内。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

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

相关文献