首页 理论教育国内外研究现状:人工智能舞蹈交互系统原理与设计

国内外研究现状:人工智能舞蹈交互系统原理与设计

【摘要】:到目前为止,针对运动特征描述和提取方法的研究大致可以分为三类。Muller等人[5]针对这个问题在后续的研究中又提出了“运动模板”的概念。因此,Muller在文献中也指出布尔几何特征描述方法不能对动作的细节进行细致的描述,只适用于普通的运动描述。因此,每一个人体姿态就可以表示为由八个夹角构成的特征集合。

记录人体动作的三维数据包含了一定数量的骨骼关节点的三维运动轨迹信息,这些信息具有很强的高维性和离散性特征,直观地描述了每个动作的质感,但是这些信息过度依赖表演者的形体特点,因此在对运动进行分析和评估之前,需要采用合理的特征描述方法对运动数据进行提取,使其能够反映人体运动在空间或时域上的动态信息,同时又屏蔽形体差异性带来的影响。在以往的同类研究中,依据不同的研究需求,研究者们从人体生物学、人体力学、时域变换等角度出发来描述运动的本质,提出了不同特征的提取与表示方法,以建立人体运动模型或将其用于后续的人体运动分析、运动识别、动作检索等方面的研究。到目前为止,针对运动特征描述和提取方法的研究大致可以分为三类。

记录人体动作的三维数据反映的是一个人体姿态在时间序列中变化的过程。基于线性时空的特征表示法,主要是把人体运动中的姿态看作独立的描述对象,通过人体中的各个关节点的三维空间坐标信息或者关节的旋转变化角度等一些基本的底层信息对人体姿态进行描述。这些底层信息虽然能够直接或者间接地描述人体姿态的时空信息,但是在内容上存在很大的局限性,无法消除运动数据本身对表演者形体的依赖,因此,基于这类信息所做的相关动作分析并不是有效的。于是很多研究人员根据这些原始的底层信息进行了进一步的特征提取,通过得到的运动速率、各关节点角速度、各关节点变化幅度、人体朝向信息、骨豁夹角等高层次信息对人体模型进行系统的参数化描述,以便更好地反映运动内容。Nakazaw等人[1]使用局部最小速度对运动进行分析;Kahol等人[2]通过运动的作用力、动能和动量来描述一个舞蹈动作的活跃度;Yang等人[3]首先对运动轨迹采用3次多项式插值巧合,提取了运动的曲率、绕率以及曲率和绕率的一阶导数等4个描述参数,来对运动进行描述;Muller等人[4]使用了一组布尔值来表示在一个姿态中人体各个部位之间的相对位置关系,并称其为几何特征组合。如果两个动作中身体各部位的相对位置关系始终保持一致,系统会判定这两个动作相似。Muller定义了如下4个空间划分规则:

在上述规则中,front、left和high规则表示的是关节点Ni相对于关节点Nj的上下左右的空间关系,而far规则根据关节点的运动幅度差值进行判断,也就是说,计算关节点Ni和关节点Nj之间的距离是否大于我们所设定的某一个阈值。依据前面所设定的规则,左脚、左胯及身体中心可以构成一个平面,右脚在这个平面的前面或者后面时会构成一个布尔几何特征,左手是否在前、右腿是否接触左腿等相互位置关系都算布尔几何特征。系统中一共设计了31个这样的布尔几何特征组合,这些特征分为身体上部分特征、身体下部分特征以及两者相互作用的特征,部分布尔几何特征如图0-1所示。该方法的优点是将数据中的原始底层信息转化成一种语义层面上可以理解的身体各部分之间的相对位置关系,减少了对运动数据有差别但在语义层面上相似的运动的影响,因此这种以布尔几何判断作为运动特征的方法被认为是对运动逻辑的相似性进行度量而不是对数值相似性进行度量。该方法的缺点是:对于每个待测试的运动,都需要人为地设定合适的人体部位关系,以此作为特征组合才能获得比较好的识别效果。因此该方法并不能对所有的运动都进行合理的表示。Muller等人[5]针对这个问题在后续的研究中又提出了“运动模板”的概念。该方法可以自动有效地对数据进行分类识别,不过特征的颗粒度过大,特征数量的设定对识别结果也有很大的影响。因此,Muller在文献中也指出布尔几何特征描述方法不能对动作的细节进行细致的描述,只适用于普通的运动描述。

图0-1 布尔几何特征图

在布尔几何特征研究的基础之上,向坚等人[6]在特征描述中加入了运动的时间信息,提出了一种基于描述各关节点在三维空间和时间上的相互关系的三维时空特征运动描述法。如图0-2所示,除了描述人体关节的相对位置关系之外,这一描述法在基于几何语义的特征描述中又添加了人体各个关节点间存在的时间关系,利用关节点的空间变换速度来描述各个部位在三维空间中的时间特性。由于各关节点的时空特征具有相对独立性,各关节点的空间变换速度也相对独立,因此所有关节点的空间速度的加权和构成了整个运动的空间速度。该方法大致描述了关节点运动的速度,适用于跑步、走路等常规自然动作。基于此方法,他们又提出了更符合人体运动特点的非线性流形学习的降维方法,将人体原始运动数据成功地投射到非线性子空间中,以保存人体运动的本质特征,并进行后续的数据分析和处理。

图0-2 三维时空特征运动描述

此外,由于在人体运动中四肢的运动特征最鲜明,因此很多研究者把四肢的运动规律看作主要的人体运动特征。杨涛等人[7]在他们的特征提取方法中把人体的四肢分成了八个部分,它们与骨骼中心线之间的夹角被视为人体运动的特征描述对象。因此,每一个人体姿态就可以表示为由八个夹角构成的特征集合。这种方法突出了运动中的四肢变化,但是夹角只能描述四肢的弯曲状态,无法对人体姿态进行整体的、精确的描述。

基于变换域的特征表示法就是对运动片段中的原始信息进行一系列的数学变换,将基于时域的运动信息转换到变换域中,从不同的角度得到新的数据集合,然后在变换域中进行运动的特征分析与描述。这种方法可以把运动数据从高维空间降到低维空间,通常能够抽象并简化问题,并在变换域中更好地体现运动数据在时域中不能体现的信号特点。而特征中无法保留的描述运动的语义层面的信息,通常用于运动的分类与识别。主要的基于变换域的方法有基于数学变换矩阵的方法、基于子空间表示法和状态空间的建模方法。在数学方法中,样条函数、多项式函数、傅立叶函数、小波等均可以用于运动特征提取。[8]韩鸿哲等人[9]用三次B样条曲线逼近不同年龄、不同身段的测试者在步态测试中的关节角度变化曲线。Zhu等人[10]首先通过傅立叶函数来描述人的行走步态,然后从中提取关键帧,并将其用于运动匹配与识别。

PCA(Principal Components Analysis)算法是常用的基于子空间变换的降维算法,可以将描述运动的高维数据映射到低维状态空间,然后在该低维空间中进行运动片段的特征分析与识别。Forbes等人[11]设计了带权重的PCA算法(Weighted Principal Components Analysis,WPCA)来体现人体关节的不同重要程度,并通过DTW弹性匹配算法实现相似度高且稳定高效的动作检索。Xiang等人[12]使用非线性PCA算法和径向基函数(Racial Basis Function,RBF)进行特征提取,然后通过使用HMM模型对之前得到的特征集合进行分类,以用于后续的动作识别。Vincs等人[13]提出了一种基于函数的PCA(Functional Principal Components Analysis)舞蹈动作特征提取方法,其对当代舞蹈动作进行分析,并探讨如何用一种新的方式来看待舞蹈的运动模式,对舞蹈创作的艺术语境进行了全新的解释。

除上述PCA方法之外,研究人员还提出了许多类似的方法[14]来寻找一个满足设定准则的最优子空间,如独立成分分析算法(Independent Components Analysis,ICA)、Fisher线性分析法(Fisher Linear Analysis,FLA)等,这些方法都属于线性降维方法。Liu等人[15]通过使用独立特征子空间分析法将运动数据分解为若干子空间,并用其中之一来表示运动特征。由于独立特征子空间分析法能够表现某些高阶不变特性,因此可以用它有效地找到大多数循环运动的风格子空间并对其进行编辑。

为了着重反映人体运动的几何特征,更方便地对已有运动数据进行检索和分类等操作,很多研究者利用人体运动结构的层次化特点,通过从上而下地运动进行层次化分解以提取人体运动特征。Liu等人[16]基于人体骨骼关节点运动的层次化特征,通过构建运动树对人体动作进行描述;利用“父关节点的运动影响子关节点的运动,但子关节点的运动不对父关节点产生影响”这一原理,把人的关节点分为五层,运用动态聚类算法建立对应的运动检索树,以此实现检索功能。Lee等人[17]则从聚类分析的角度提出了层次化的运动特征描述方法:底层用隐马尔可夫模型(Hidden Markov Model,HMM)来提取运动细节,然后利用一个概率矩阵,表示状态转换的概率,从而为模型提供动作方面的选择;上层对运动数据进行归纳,表示帧的分布和不同帧之间的转换。虽然采用了聚类分析,但是因为聚类不能表达帧与帧之间的转换关系,所以构建了聚类树的结构,这样整个数据就形成了一个聚类森林。

很多运动识别的研究是基于动作片段的相似度的:在一个数据样本集合中,通过之前所设定的特征提取方法提取数据,之后查找一个与待识别动作片段最相似的预先存储的已知样本动作进行匹配,然后再根据在数据样本集中找到的这个最相似的运动片段的类别标签来判断待识别运动片段的类别标签。运动片段的特征集合设定是运动识别的重要基础,不同的识别方法描述特征集合的侧重点也有所区别,有的偏重于特征中的语义信息,有的偏重于关节点的相互关系。基于所设定的特征集合计算两个运动片段的相似度是一种非常直观的识别方法。常用于运动识别的方法主要有两种。

测算两个动作片段数据之间的相似性,可以通过时间序列比较技术来完成。因为人类运动中存在固有变异性,直接的相似性度量方法是不适用的,所以研究人员在计算欧几里得距离之前会采用动态时间弯曲算法(DTW)来解决这个问题。[18]具体地说,由于人体动作具有时间特征,对于同样的动作,不同的人完成的速度是不同的,因此运动片段所包含的运动帧数是不同的。如果在时间轴上对比两个动作,我们会发现它们必然具有局部非线性的偏移量。动态时间弯曲算法是一种经典的非线性匹配算法,也是目前时间序列相似度计算的主流方法,也被称为弹性匹配算法。该方法最早用于音频等时间序列的相似性比较,它采用具有弹性的匹配规则来计算两个运动之间的相似度,具有概念简单、算法鲁棒的优点。设查询序列为运动片段Q,,参考片段为C,,它们包含的姿态数量分别为n帧和m帧。在DTW算法中,首先要计算一个n行m列的距离相似矩阵D,其矩阵元素为运动片段Q与C包含的姿态之间的欧几里得距离,所得相似度D如以下公式所示。

}gsr}0025-3.jpg}/gsr}

在相似度矩阵D中,弯曲路径作为一组连续矩阵元素的集合,表示两个动作序列在时间上存在最大相似性。该弯曲路径是通过动态规划(Dynamic Programing,DP)算法获得的,它必须满足有界性、连续性、单调性、非退化性以及特定的边界条件。最终两个运动之间的距离便为该弯曲路径经过的每个点对之间的距离之和。

(www.chuimin.cn)

图0-3 欧几里得距离与DTW算法对比示例

从DTW算法中可以看出,即使查询序列模式和参考序列模式的时间尺度不完全一致,只要有时间次序约束的存在,DTW算法仍然能够较好地完成查询动作片段和参考动作片段之间的匹配,因此DTW算法目前获得了比较广泛的应用。[19]不过DTW算法只注重数据序列的局部缩放,在全局缩放及统一缩放尺度下并不能取得很好的效果,比如,两次高度、跨度差别较大的跳跃,并且该方法的计算比较耗时,刘贤梅等人[20]提出的缩放技术可以很好地解决人体运动速度变化的问题。

利用机器学习的方法,对人体运动的动态过程构建概率统计模型,再通过概率评估对运动进行识别是运动识别中的常用方法。在模型的分类训练阶段,可通过对一个动作样本集合进行训练得到不同动作类别的模型参数。在这个概率模型中,运动中的每一个静帧姿势或者每一个短序列的姿态集合都被看成一个姿态节点,可以通过概率来表示姿态变换的可能性,这样,一个完整的运动片段可以被看成不同姿态的一次遍历过程。在训练的过程中,通过计算得到的各种遍历过程对应的联合概率的最大值将作为动作分类的依据。在对动作进行识别的时候,我们应将待识别的动作片段序列输入之前训练得到的模型中,分别计算其与该模型的各类别动作的匹配程度,即产生概率,最后将其归入匹配程度最高的模型动作类别。目前,在基于统计模型的识别方法中,使用得比较广泛的模型有隐马尔科夫模型(HMM)、动态贝叶斯网络、潜在狄利克雷分派模型、概率潜在语义分析模型。

HMM是最具有代表性的统计模型训练方法,最初在语音识别领域被广泛地应用,目前在运动识别研究领域,很多研究人员[21]都会采用HMM模型进行动态过程识别。Yamato等人[22]最早将HMM引入动作识别研究中,他们通过对人体运动过程中的轮廓区域进行特征提取,利用HMM 进行训练,为每个动作类别建立一个符号模式,并通过“前向-后向”算法来优化模型参数,最后根据图像序列的前向计算结果确定行为的种类。Tang等人[23]以骨骼节点的相对距离为基本特征,使用HMM训练系统计算任意运动对的相似度。一般来说,传统的HMM 是从单一角度的特征信息集合入手对运动的动态过程进行概率建模。Brand 等人[24]提出了耦合隐马尔可夫模型,使用多维的HMM对动作中多个相互关联的特征进行建模。Zhao等人[25]则把运动过程中邻近关节之间的空间关系和时间关系作为联合特征构建多维度HMM以进行运动识别。Raptis等人[26]基于人体关节角度信息为舞蹈姿势建立了级联的模板匹配模型。而Lv等人[27]基于层次化的隐马尔可夫模型(Hierarchical Hidden Markov Model,HHMM)的特征状态层级表示方法,训练了大量独立的HMM,以识别一个动作不同层次的动力学特征,之后由一个多分类器对这些HMM识别结果进行选择和分析,最终得到分类结果。

但是,HMM有不可回避的缺陷。在学习HMM之前,我们要对状态变量的先验分布进行描述,因而需要获取大量的训练数据进行参数学习。此外,HMM受马尔可夫假设的限制,其中运动片段的当前状态只依赖于该动作前一时刻的状态,同时因为受输出独立性假设的限制,所得到的输出值之间也是相互独立的,只依赖于当前的这个状态。然而,在实际应用中,这种严格的独立性假设是理想化的,绝大多数的数据序列并不能表示为一组完全独立的运动单元

除了HMM训练方法之外,还有很多其他的基于机器的学习方法被应用到了运动识别的研究领域,如很多研究人员在研究中会使用基于自组织映射(Self-Organizing Map,SOM)[28]的方法进行运动识别。SOM作为一种无监督、无导师示范、具有自组织的神经网络,通过对输入的动作时间序列进行反复学习,将各种运动姿态作为网络节点,构建了连接点权重矢量的空间分布密度与输入运动序列节点的概率密度趋于一致的统计模型,这些模型可用于运动的检索或识别。[29]Wu等人[30]基于SOM方法,采用与原始数据相近的信息来刻画运动的特征,将动作中的姿态集合作为输入层,使用SOM算法进行聚类;算法收敛时就用每个姿态所属的聚类中的序号来表示它。这样的特征集合常作为特征检索的关键信息。在已知特征空间的样本分布的情况下,SOM算法可以取得很好的自组织效果。不过SOM算法过于依赖参数的选择,对网络的收敛性影响比较大。如果样本空间的维数很高,样本集概率分布情况比较复杂,那么直接使用 SOM 模型往往不能取得理想的实验效果。为此研究人员提出了很多优化的SOM算法,本书系统识别部分的研究也是基于SOM算法的,但对网络的无边界性、收敛性和实时性方面进行了改进。

针对各种类型的人体运动分析研究一直是很多领域的研究热点,研究重点主要是针对人体的基本自然活动(跑、走、跳等)构建适当的生物力学模型,为人体运动规律的发现和运动行为的分类等方面提供参考依据和可输入的标准化参数。然而舞蹈动作和其他的动作不同,是一系列有组织的、有一定节奏和速度变化的动作组合,它不但强调整体的协调性,还必须展现出动作的美感,因此对舞蹈动作的研究更加复杂和专业。从20世纪70年代起,研究人员开始使用一些测量工具和研究方法分析舞者是如何表演的,如使用肌电仪、图像拍摄、动作捕捉等设备和方法记录和分析这些舞蹈动作是如何做出的。在早期的舞蹈动作分析中,图像视频分析[31]和2D计算机运动分析[32]是主要的研究手段,Noverre[33]依据视频对芭蕾舞动作进行特点分析和分类,他的成果至今仍是芭蕾舞教学的重要方法。随着动作捕捉技术的日益成熟,基于3D数据的运动分析被大多数关于舞蹈的定量研究使用。[34]

基于人体解剖学、运动生物学、力学特性的定量分析方法是舞蹈动作分析研究中的重要方法。玛格丽特以解剖学的分析方法为基础创造了舞谱,并将其发表于《动作谱记法》。[35]北京舞蹈学院高云教授[36]也从解剖学的角度讲解舞蹈动作中的运动技巧和注意事项。Barnes等人[37]通过分析人体的盆腔角、腰椎角、髋关节的偏移这三者之间的相互关系来评价腰部在舞蹈中的灵活性。Nichols[38]分别研究了上躯干、下躯干和身体的中心线之间的偏差值对身体下蹲、膝盖弯曲等舞蹈动作所产生的影响。Wilmerding等人[39]研究了年轻的舞蹈学习者在学习弗拉明哥舞曲时骨盆倾斜角度的变化程度和骨盆倾斜幅度的变化规律。Albers等人[40]则探讨了各种舞蹈动作中足底压力的变化规律。Krasnow等人[41]和Holt等人[42]通过分析膝关节的运动,总结踝关节处的关节作用力和肘关节的力矩规律。Lin等人[43]根据肌电图的数据来评估芭蕾舞的运动控制策略。Masso 等人[44]发现优秀的舞者能更有技巧地控制脚踝,这也是控制身体平衡的主要方法。Imura等人[45]使用定量技术研究芭蕾舞者做出用脚尖进行三次旋转的舞蹈动作时,肩、臂、髋和腿的全身角动量和支撑腿的力矩扭矩。Mayers等人[46]也做了舞蹈运动和伤害关系的研究,其中Shan[47]分析了因芭蕾舞者过度使用膝关节的力量对膝部软组织造成的损伤,以及重复运动中损伤对芭蕾舞者的肌肉的影响程度。Couillandres等人[48]则通过对舞蹈运动的生物力学描述,告知舞者做出标准动作的典型方式。此外,研究人员还会采用人体骨骼节点的角速度、位移偏移量、角加速度、关节力矩等动力学常用参数对舞蹈动作进行量化分析,不过后续的研究证明这些单一的特征分析只适用于人体常规运动,并不适用于复杂的舞蹈动作。Schuldt 等人[49]从运动图像序列中提取的局部关节的特征对于全局的变化(运动的频率和速度)是鲁棒的,这些特征被转换成K-mean聚类索引直方图,并且被用于运动识别研究中常用到的SVM模型。

埃米尔认为:“节奏是音乐的骨架,而身体是节奏体验的第一载体。”节奏是舞蹈和音乐共有的特征,因此,很多研究人员把节奏作为舞蹈的主要特征来研究,通过对舞蹈自身或者配套音乐的分析来判断舞蹈的节奏特征,并把分析结果用于舞蹈和音乐匹配编辑的研究中。樊儒昆等人[50]提出以节奏为主要特征描述对象,并构建了一个舞蹈动作和音乐节奏的匹配模型,把计算人体变化幅度的曲线的极值点作为动作节奏的候选点,通过DTW算法设定舞蹈动作特征点和音乐特征点之间的匹配关系。日本的Shiratori等人[51]认为对舞蹈节奏进行分析必须要考虑伴奏音乐的韵律,因此他们对伴奏音乐的起始点、和弦变化、鼓点模式等特征进行采样,采用自相关函数得到音乐的速度并将其转换成音乐的节奏,依据这个特征对舞蹈动作进行细化分割,然后利用动作的节奏以及密度特征与音乐的相关性来实现自动编舞。Chiang等人[52]则是通过音乐的曲调、响度以及和弦走向等特点来分析音乐与舞蹈动作之间的映射关系,并以此为基础构建舞蹈自动编曲系统。孙守迁等人[53]则通过量化音乐情感来构建舞蹈的运动风格与音乐特征之间的匹配模型。Salvador等人[54]描述了音乐与动作特征之间的多维映射关系,并用人体动作自动产生系统来表现对应的音乐特征。Ocre等人[55]的系统实现了由音乐驱动的人体动作自动创作。然而,在目前的自动编舞系统中,影响舞蹈生成的因素比较复杂,节奏特征的提取工作仍然需要大量的人工辅助,并不能达到全自动编舞的目标。

为了对舞蹈运动进行更有针对性的评估,研究人员还尝试对运动观察研究领域中基于观察的舞蹈评价体系进行量化,希望能够针对舞蹈内容和舞蹈质量开发一套客观且系统的分析方法。在这些定量方法中,鲁道夫·拉班(Rudolf Laban)提出的拉班运动分析理论(LMA)[56]是广泛使用的描述、解释和记录人类运动并使其可视化的方法和语言之一,它已被广泛用于描述、记录舞蹈和20世纪的编舞手段。[57]Chi等人[58]提出了一种应用LMA中的力效和形状两个属性对运动和情绪表达进行参数化,从而产生具有目标情感的自然合成姿态的EMOTE系统。Masuda等人[59]通过修改人体运动的拉班特征参数(持续时间、收缩指数、动量和动作流畅性),为人形机器人的基本运动添加了4种目标情感(愤怒、恐惧、悲伤和开心)。Zhao 等人[60]提出了一种神经网络计算模型,其可以从现场表演中自动提取运动的质感,实现对舞蹈姿态所表现的情感内容的自动认知。Sharma[61]通过统计学分析方法确定运动过程中的拉班力效分析参数与人类对轨迹所表达的情感的认知之间的关系,据此自动生成机器人的空中运动轨迹。Kapadia 等人[62]提出了基于LMA的各种特征,将运动的结构、几何关系和动态性等编码作为特征,随后将这些特征进行组合,以进行运动检索。Truong等人[63]基于LMA关键帧构建了一组动作描述器,并使用机器学习框架来识别乐团指挥的动作和与之对应的情感内容。Wakayama等人[64]使用LMA来合成人类不同风格的运动。不过以上这些研究中的特征模型并不是完整的,它们侧重于描述某些或某类具体的动作,不属于可计算的通用模型。而Aristidou等人[65]设计了基于拉班运动分析的运动评估算法,通过分析舞蹈中LMA各个组件对舞蹈风格的影响程度,判断舞蹈的总体气质,但是并没有对舞蹈动作的细节进行更多的评估,其反馈信息也不适用于舞蹈的自主学习。

在传统教学中,老师普遍使用演示性能法[66]来教授学生技能。演示必须由老师做出,然后学生在老师的密切监督下进行模仿。老师会将学生的动作与理想模板或原型的动作进行对比,并根据学生的表现向他们提供反馈。这种反馈的效用在一定程度上取决于老师的能力。老师会针对不同的舞蹈类型使用相应的教学理论和方法。实践证明这些理论和方法确实是比较有效的教学方法,因此我们可以对规则性比较明显的教学方法进行定量分析,构建智能化教学系统,对舞蹈进行评估和训练。

随着计算机相关技术的发展,研究人员开发了一些无监督的、无真实老师的、学生可以自学的舞蹈交互系统。这样的系统具有准确分析舞蹈动作、判断动作中的错误的能力,还具有正确识别舞蹈动作的能力和多形式的可视化反馈方法。使用此系统的学生将收到关于动作准确性的反馈,了解自己的准确性差、需要注意的动作。此系统能为学生提供准确的指导和相应的鼓励,从而增强学生的学习信心。

早期开发的舞蹈系统,如Hachimura等人[67]研发的系统把研究重点放在了可视化阶段以及如何模仿舞蹈老师的动作上。但早期的系统只有简单的演示功能,不能提供任何反馈信息,所以无法帮助学生改善他们的舞蹈动作。在最近的一些研究中,为了改善系统的评估效果,研究者采用了一种替代这种学习模式的结构化学习方法[68],尝试了多种交互和评估反馈形式[69]。Naemura等人[70]构建的学习系统将从视频中提取的运动特征与舞蹈动作的节奏进行关联。这种关联表现出与舞蹈技能水平的主观评价的强相关性。Yang等人[71]构建的系统可以根据学习者的表现自动生成符合学习者水平的课程内容。在Raptis等人[72]提出的框架中,在识别出最佳匹配动作之后,系统会以老师的动作为标准对学生的动作进行分析,并给出分数。Jacky等人[73]提出的框架首先会通过神经网络SOM算法识别出该舞蹈姿态,然后利用DTW比较算法对每个部位进行评估,以分数的形式表现其动作细节的质量。Aristidou等人[74]基于运动捕捉数据设计了一个用于民间舞蹈的3D学习环境。他们帮助舞者分析舞蹈动作的整体特点,但并不区分运动风格和情境等细节。在太极的教学系统[75]中,学习者可以回放并看到自己的动作片段中与标准运动最不同的片段,然后系统会要求学习者再次学习该段动作,但不提供任何指导建议。

随着研发者对用于舞蹈训练和舞蹈游戏的计算机视觉系统产生兴趣,更多针对不同类型的舞蹈的训练系统开始出现,包括拉丁舞[76]、嘻哈舞[77]、来自加纳的Agogo舞[78]、Shasa 舞[79]、Ballroom 舞[80]和街舞[81]。大多数虚拟舞蹈系统都采用基于标记的光学3D运动捕捉系统或者Kinect系统,小部分[82]会采用2D图像序列。

此外,在传统的舞蹈学习过程中,由于一段完整的舞蹈内容复杂且会持续很长时间,因此老师不会让学生一次性地跟随模仿,而是会对一段完整的舞蹈进行细分,得到多个简单的、基本的动作后逐个教授。正如前面所描述的,人会很自然地将事物分割成有组织的子部分等。[83]舞蹈交互系统应尝试依据学生的水平进行舞蹈片段分割,从而满足定制化舞蹈学习的需求。

图0-4 得分系统