动画作为一门综合艺术, 他是集合了绘画、电影、建模、数字媒体、音乐等众多艺术门类于一身的表现形式. 为了进一步提高动画制作效率, 在20世纪90年代, 中国科学院陆汝钤院士提出全过程计算机辅助动画自动生成技术[1], 这一技术实现了从文本到动画的自动生成. 随着智能手机以及3G通信技术的普及, 中国科学院的张松懋研究员于2008年提出将动画自动生成技术应用在手机短信上, 设计并研发了面向手机短信3D动画自动生成系统. 系统将人工智能以及图形学技术相结合, 根据发送方短信的具体内容自动生成相应的3D动画并发送给接收方.
对于游戏以及动画场景中的虚拟人物, 根据动作行为的复杂程度, 一般将其分为两大类: 单人动作与交互动作,这两类动作对于角色动画都是比必不可少的[2]. 交互类动作规划相较于单人动作规划而言, 其处理更为困难, 其主要原因除了表达动作内容以及确定交互双方的身体姿态, 还需要动态规划虚拟人物之间的时空关系(包括相对距离以及绝对位置、身体接触面范围的确定、路径规划、交互物传递等).
在传统的以粘土、木偶、皮影或者剪纸等人物角色定格动画中, 角色之间的交互是将交互双方的动作分解并摆出相应的造型, 通过逐帧拍摄的方法来记录[3]. 当画面连续放映时, 画面中的角色可表现出丰富的行为动作并且简单的完成交互, 较为典型的定格动画有《阿凡提的故事》、《猪八戒吃西瓜》. 随着计算机动画、人工智能以及机器人研究的发展, 在动画以及游戏领域对于角色交互有了更高的要求. 1994年发售一款对战格斗游戏《拳皇》, 角色之间的打斗交互通过粒子释放以及粒子碰撞来模拟交互过程[4]. 而对于采用自动生成技术且需要多角色(包括玩家以及非玩家控制角色NPC)交互的网络游戏以及动画, 实时监控角色位置、自主进行交互运动以及多样的行为模式是必不可少的. 目前, 已经有许多学者针对角色协同有了许多研究. 如Bayazit OB[5]提出基于全局路标方法解决游戏中的群体行为, 即给区域中的角色提供一张地图信息以及某种通信方式, 角色需要进行复杂的目标查找算法来决定如何移动, 该方法适应性以及可扩展性较差. Mamei M[6]等针对于大型射击对战游戏《Quake 3 Arena》的多角色交互以及协调问题, 提出使用分布式计算域协调模型来解决该问题, 但对于角色间的通信以及游戏具体运动模型的数学模型并没有给出描述. 由于游戏以及动画中的角色需要尽可能的模拟智能群体, 因此其运动方式、感知能力以及交互行为的研究可以借鉴多机器人、多智能系统中的研究成果. Lindhe M[7]等提出一种基于Voronoi图法的新型分散式协调算法解决多机器人协同问题. Swartling JO[8]等提出利用循环追踪的思想, 依据距离以及角度信息设计控制规律对多机器人间的位置进行跟踪捕获, 从而可以规划多条路径来作为角色交互的前提. Xidias EK[9]等结合数学编程以及CAD技术, 提出一种无碰撞且非完整性约束的计算方法来规划多机器人团队路径以及为每个机器人确定动作. 李朕阳[10]针对解决多移动机器人自身状态估计和对于目标的状态估计, 提出基于平方根容积卡尔曼滤波的相对方位多机器人协同定位算法. 利用相对方位作为测量值,在更新过程中直接传递目标状态均值和协方差矩阵的平方根因子,精确度与稳定性有了提高.
考虑到交互动画中的角色不仅需要进行位置确定规划, 还需要对单个人物的动作细节进行研究. 因此与上述相关研究相比, 本文提出了一种基于三层动作识别和Kinesiology的交互规划方法, 采用基于语义网技术的规划策略来结合动作知识建立交互动作库, 将交互动作整体过程分为交互动作准备阶段、交互动作执行阶段、交互动作完成阶段三个阶段计算, 同时基于三维动画软件Maya中的完整的人物设计系统—FBIK(full body ik, 即骨骼之间存在约束控制, 牵动身体的每一部分都会对全身的动作有影响), 根据交互双方接触面的不同, 通过建立感兴趣点与感兴趣区域来(指该虚拟人物执行交互动作时, 双方的身体接触面范围, 包括人体手部骨骼、肩部骨骼、根骨骼等26块主要接触骨骼)进行骨骼数据识别计算, 动作数据方面采用提取格式为FBX的单人动作作为交互动作的单个原子动作(本文中的单个原子动作是指可以构成交互行为的单人动作), 通过运用Kinesiology计算方法, 对角色位置、路径以及交互物绑定进行规划计算, 从而在系统中添加虚拟人物交互运动规划自动生成的功能, 使得生成的三维动画在表现动画主题、叙述动画剧情以及增强动画表现力方面更为突出.
2 系统整体设计手机3D动画自动生成系统是由多个子系统所组成, 包括情节规划子系统、变形规划子系统、摄像机规划子系统等. 系统是使用机器学习的思想对开放的短信文本进行信息抽取, 抽取的信息作为各个系统的输入, 并且各个子系统之间都具有一定的联系. 通常子系统都是由定性规划与定量计算两部分组成. 定性规划依据信息抽取的结果对模型、灯光、摄像机以及人物进行初步规划并生成定性描述语言; 定量计算根据定性规划的结果将其转换为具体的数值, 调用Maya API生成相应的动画, 最后经过服务器渲染生成可播放的3D动画视频. 本文将所研究的交互运动规划主要分为定性规划与定量计算, 其中未涉及自然语言理解研究. 图1为系统整体流程图.
3 交互运动规划定性设计 3.1 交互动作本体库建立
本体[11]是由AI中的语义网络演化的一种概念化的、结构化的表示方法. 它能够描述语言文本中隐含的深层语义, 能够有效的处理复杂的知识. Protégé[12]软件是斯坦福大学医学院生物信息研究中心基于Java语言开发的本体编辑和知识获取软件, 或者说是本体开发工具, 也是基于知识的编辑器, 主要用于语义网中本体的构建, 是语义网中本体构建的核心开发工具. Protégé提供了本体概念类, 关系, 属性和实例的构建, 并且屏蔽了具体的本体描述语言, 用户只需在概念层次上进行领域本体模型的构建[13]. 本系统构建本体库的工具采用Protégé.
建立交互动作库, 定义交互动作类, 这是研究交互运动最为初始的一步. 交互动作库是对动作属性和关系的集中描述, 其中交互动作是由若干单个原子动作所组成的, 根据系统的实际需求以及动作本身特性, 定义每个交互动作所相关的主题与模版, 建立类与类之间、实例与实例之间的关系. 目前, 手机3D动画自动生成系统中, 共有3大交互动作类, 27个子类, 58种交互类型, 129个单个原子动作, 能够基本表现日常生活中的人物交互情形. 图2展示了交互动作库的部分分类.
根据交互动作的完成度, 我们将其分为三类: 交互动作准备阶段(PrepareAction), 交互动作执行阶段(ExcuteAction), 交互动作完成阶(CompleteAction).
交互动作准备阶段(PrepareAction)主要包括一些位移类动作与情绪类动作, 比如跑、跳、伤心、哭泣等, 如图2(a).
交互动作执行阶段(ExcuteAction)主要包括一些可构成交互行为的动作, 比如打电话、接电话、递东西、握手等, 如图2(b).
交互动作完成阶段(CompleteAction)主要包括一些事件类动作, 比如喝水、道歉等, 如图2(c).
3.2 基于知识库的定性规划交互动作定性规划部分是以交互动作库为基础, 根据信息抽取的主题和模版来推出和短信内容相符的交互动作. 定性规划遵循以下的策略:
1) 根据动画主题与模版抽取相应的动作, 如果根据动画主题与模版能推导出虚拟人物需要进行的动作可以是交互动作, 则在交互动作库中推出相符的动作.
2) 根据短信原子信息从模型库中抽取人物模型, 若根据动画主题抽取的是单人动作, 则对添加的人物模型依次添加动作; 若根据主题抽取的动作为交互动作且人物数量满足交互动作需求, 则对添加的人物规划交互动作状态并添加交互动作; 而当人物数量不满足交互动作需求时, 则再次添加人物模型后再添加交互动作.
以短信“中午一起吃饭吧”为例, 将短信输入到到系统中, 信息抽取结果以xml文件形式保存, 抽取到的主题与模板信息表示方法如下:
<topic key="吃饭" name="吃饭">
<root negCont="" value="白天:中午:中午" name="时间" neg="" negFlag="0" color="" flag=""/>
<root negCont="" value="走:去|日常动作:吃:吃饭" name="动作" neg="" negFlag="0" color="" flag=""/>
</topic>
由信息抽取结果可知抽取到的主题为“吃饭”, 抽取到的模版为时间模板“中午”与动作模板“吃饭”, 因此根据主题“吃饭”来添加动作. 定性规划文档以xml文件形式保存, 交互动作定性规则信息表示方法如下:
<rule ruleType="addActionToMa" type="interaction" ModelID="addModelID2" usedModel="M_girl.ma" preStage="applause2_140" interStage="throwSth" accompliStage="rangeofmotion" contactRange="BonesTouchWithSth" interactionObject="M_DrinkBottle" />
<rule ruleType="addActionToMa" type="interaction" ModelID="addModelID4" usedModel ="M_busman.ma" preStage="SoccerBall_140" interStage="catchSth_120" accompliStage="drinksoda" contactRange="BonesTouchWithSth" interactionObject="M_DrinkBottle" />
<rule ruleType="addActionToMa" type="action" eventType="PhoneEvent" ModelID="addModelID3" usedModel="M_boy.ma" actionName="dialingphone" ifAddConstraint="true" ActObject="M_Phone"/>
<rule ruleType="addActionToMa" type="action" eventType="EatingEvent" ModelID="addModelID3" usedModel="M_boy.ma" actionName="eatinghamb" ifAddConstraint="true" ActObject="M_Hamburger"/>
由定性规划描述规则可知, 动画添加了3人虚拟人物, 其中两个人配合执行交互动作, 第三个人做单人动作(一个人多个动作). 交互动作为人物M_ busman踢足球后接到人物M_ girl传递的水杯喝水, 交互物水杯M_DrinkBottle, 单人动作为接到电话后去吃饭, 绑定交互物为手机M_Phone与汉堡包M_Hamburger.
4 交互运动规划定量计算动画的制作过程主要包括场景选择、模型添加、摄像机添加等. 其场景大多存在地面(通过平面模型来模拟地面), 一些房屋、建筑、日常模型以及人物都需要在地面进行规划, 因此需要在场景中给虚拟人物划分运动区域, 该区域称为人物可用空间. 与单人动作规划不同, 当虚拟人物处在不同可用空间时, 进行交互动作规划时可能会出现一个虚拟人物穿越障碍物后到达另一个虚拟人物身边进行交互动作. 因此本文将这两个虚拟人物放在同一可用空间进行交互规划.
定量计算是整个交互动作规划最重要的部分, 计算结果直接影响虚拟人物之间动作交互效果的好坏. 虚拟人物在进行交互动作时不同于单人动作, 不能仅仅只考虑动作本身, 还需要考虑与其构成交互行为的动作数据的位置与朝向, 也就是要确定动作执行双方的身体姿态以及交互双方之间的时空关系. 因此, 针对定性部分的规则表达, 运动定量部分完成解析并采用对应的策略进行实现. 以双人交互为例, 将具有交互行为的双方分割开来, 分别对其所进行的动作进行计算处理, 提取交互双方感兴趣区域的数据, 运用FK与IK计算得到虚拟人物的交互骨骼状态, 在场景中进行规划计算, 将识别计算结果融合判断. 若交互双方之间存在交互物绑定, 还需要计算交互双方之间所绑定的交互物的传递方式以及规划交互物本身的路径.
4.1 虚拟人物初始位置计算以双人交互为例, 两个虚拟人物模型需要放在同一个人物可用空间上进行交互规划, 若初始位置相对较近或人物位置重叠, 会造成无法正常完成交互动作规划; 若人物执行交互动作时朝向不加限定, 则会使得交互动作含义表现的并不明确. 因此这里需要对各个人物模型的初始位置以及初始朝向进行规划计算. 虚拟人物初始位置计算以及朝向规划执行如下算法:
算法1. 位置规划算法LPA
1) 获取场景中人物可用空间信息, 根据人物模型包围盒大小来对人物可用空间区域进行等量划分(其中人物模型选取原始T-pose包围盒大小), 将划分后的区域信息加入序列listSpace(m)中, 其中
2) 判断人物数量count以及可用区域数量n, 当count>0且n>0时, 执行第3)步, 否则规划结束;
3) 将1)中保存的区域信息序列listSpace(m)里随机选取一个区域, 在选取的区域中随机选择位置点放置第一个人物模型, 对该区域以及相邻区域进行标记并从序列中删除, 根据定性规划文档, 对人物模型添加动作, 如图3(a)为首次规划区域图;
4) 当人物添加好动作后, 对人物进行角色化并且骨骼重命名, 重复执行步骤3)直至count=0或者可用区域数量n=0;
5) 统计区域内最终添加的人物数量以及位置信息、旋转信息, 将区域内的具有交互动作行为的人物互为参照物, 计算其所需旋转的角度, 其旋转角度为
6) 统计旋转后的人物模型的位置、旋转信息, 并加入到序列listPerson(k), 其中
4.2 虚拟人物路径规划
虚拟人物之间要想实现交互动作, 除了要确定交互双方的位置关系以及相对距离, 还需要给人物添加运动路径. 以一个握手动作为例, 由于虚拟人物初始位置是在可用空间内随机确定的, 双方要想完成握手动作, 必须在握手动作前添加位移动作并给人物规划运动路径. 因此, 必须先通过虚拟人物的根骨骼状态(位置坐标、旋转值坐标)来计算感兴趣点的位置, 只有当交互双方感兴趣点间的距离处于该类交互动作的范围时, 才表明此时可以完成交互动作, 其中的计算需要通过组合运用FK以及IK才能得以实现. 路径规划流程图如图4所示.
接下来介绍FK与IK计算原理. FK是一种通过“目标驱动”来实现的运动方式, 通过设定人体各个关节的旋转角来获得人体在特定时刻的位置与转角, 并且可以由父骨骼的位置和子骨骼的相对变换来得到子骨骼的位置[14]. 由此可以得出, 对于骨骼链上的每一个节点, 使用一个关节变量来表示这个节点处两个相邻坐标系空间变换M, 对于每个旋转关节i处的变换是由位移与旋转两部分构成的, 这两个量是相对于父节点坐标系的相对值, 即:
${M_{{i}}} = T({x_i},{y_i},{z_i})R({\theta _i})$ | (1) |
其中,
${M_{ij}} = {M_i}{M_{i + 1}}\cdots{M_{j - 1}}{M_j}$ | (2) |
IK与FK的求解思想恰恰相反, 基本原理是根据末端骨骼的位置求解出关节链中每个关节节点的位置与方向[15]. 根据公式(2)可知, 如果此时一个骨骼链上的关节节点变量组成的向量为
$x = f({{p}})$ | (3) |
而如果将末端效应器放在固定的位置与朝向
$p = {f^{ - 1}}(x)$ | (4) |
根据公式(3)可知, 可以根据
对于公式(4)多解的问题, 我们需要对其进行线性化, 通过建立关节的速率与末端效应器的速率来缩小范围求解. 对公式(3)两边求导可得:
${{\dot x}} = J(p)\dot p$ | (5) |
$\dot p = {J^{ - 1}}(p)\dot x$ | (6) |
为了根据交互双方感兴趣点距离来计算人物的最终位置, 对交互动作分类分析并统计得到以下三类骨骼距离范围值: 骨骼相接触、骨骼间存在交互物(较小)、骨骼间存在交互物(较大). 如表1所示, 表格中表明了这三类交互类动作感兴趣点距离均值的所处范围(值满足X、Y、Z坐标最大值、最小值之间), 均值处于这个范围间的点才可以完成交互动作.
虚拟人物路径规划执行如下算法:
算法2. 位置规划算法PPPA
1) 统计人物可用空间内的人物模型数量, 存储人物模型各自的初始位置initPos、旋转信息initRot以及动作信息, 根据定性文档得到虚拟人物动作类型type以及骨骼交互方式contactRange,将这些信息放入到序列actionname(m)中, 其中
2) 判断人物数量r以及动作交互类型, 对需要进行路径规划的执行第3)步, 否则执行第步;
3)确定人物感兴趣区域range以及感兴趣点P, 对其进行标记. 遍历actionname(m), 如果该动作为走或跑等具有位移类型动作, 执行4), 否则执行6);
4) 根据initPos、range与P, 使用动力学FK以及IK计算得到人物的终点位置endPos, 使用initPos与endPos来规划人物路径, 并将人物绑定到路径上;
5) 对规划人物根据P位置使用IK计算endPos1, 若endPos与endPos1差值的绝对值不处于表1中的均值范围, 重新进行路径规划. 删除路径并重新执行4), 同时过程中需要选取动作关键帧进行IK回溯计算;
6)判断是否需要交互物, 若需要添加交互物, 添加交互物并判断交互物绑定类型, 计算交互物路径并确定绑定时间、解绑时间, 并与目标骨骼进行绑定.
5 实验结果以及分析本文中的原始动作数据来源包括两个部分: 1) 从原始2455个BVH动作文件中选取合适数据; 2) 使用动作拼接技术对原始BVH动作进行拼接修改. 这些BVH数据需要经过人物根关节坐标以及角度标准化后, 转换成FBX数据存储到交互动作数据库中. 实验方面使用动画制作软件MAYA作为底层动画制作和生成平台, 采用1×1个单位的网格作为基本长度单位, 其中人物模型高度为32个单位, 躯干宽为4个单位, 臂长为10个单位. 当添加动作后, 人物最大运动姿态MAX为24个单位, 最小运动姿态MIN为6个单位, 旋转姿态为14个单位. 程序运行在DELL酷睿双核图形工作站上, 由MAYA生成的动画原始文件通过10台曙光标配刀片服务器渲染合成.
交互动作规划实验包括交互动作规划有效性、交互动作规划多样性、规划辨识度与对比性三个方面. 交互规划有效性是指当前交互动作是否能够反映动画的主题以及交互动作规划是否成功, 规划辨识度与对比性实验是指执行交互规划与不执行交互规划所生成动画效果的对比; 交互动作规划多样性是指针对于同一条短信内容, 是否可以有多种交互动作规划来对短信内容进行表达.
5.1 交互运动有效性试验为了验证交互动作规划有效性, 实验统计了课题组2017年7月到12月之间测试的短信, 总计270条. 其中动画生成失败的有14条, 造成原因有: 服务器启动不当、渲染出现异常. 其余256条短信全部生成动画, 其中有37条没有进行动作规划, 原因是由于根据短信以及信息抽取并没有抽取到人物模型, 不需要进行动作规划. 剩余219条短信全部进行动作规划, 其中有78条进行单人动作规划, 剩余141条短信进行了交互动作规划. 其交互规划所包括人物初始位置规划、路径规划、交互物规划等均计算规划成功.
由于实验结果是以动画形式展现, 因此将这141条短信做成调查问卷, 评价指标与评价占比如表2.
根据上表可知, 调查情况显示认为交互动作对于动画内容以及主题有着良好表达效果的所占百分比均超过了70%, 说明为虚拟人物进行交互动作规划对于补充描述动画内容与表现动画主题方面有着好的效果, 因此在手机短信动画自动生成系统中, 对虚拟人物进行交互动作规划是非常有必要的.
取其中一个经过交互规划定量计算生成的原始MAYA文件如图5. 图5(a)为经过添加人物未进行规划的原始场景图, 由于给定了一块人物运动区域, 交互双方由于初始位置每次都是不确定的, 因此根据双方位置距离以及感兴趣点分布, M_girl模型计算并生成可以完成交互动作内容的运动路径, 如图5(b); 图5(c)(d)表示人物M_girl经过定量计算后绑定路径, 走向具有等待动作行为的人物M_boy后完成握手交互动作.
5.2 交互运动多样性试验
本次实验针对短信内容为“今天是星期天, 大家一起去户外活动吧”连续测试100条, 经过系统整体流程生成的动画短信数目为100条, 其中根据短信添加虚拟人物个数的不同, 生成动画包括单人动作、交互动作+单人动作、交互动作+交互动作这三种不同组合情形. 而在交互动作中, 在可以表达短信主题的基础上, 交互动作动作准备阶段以及完成阶段的动作都是可变的. 因此这100个生成的短信动画总共包含7种动作规划, 56种不同的动作组合. 实验表明, 交互运动规划增添了动画表现的多样性. 图6所展示的是根据主题进行交互运动规划规划的数据统计结果, 其中x轴表示的是测试短信经过信息抽取所得到的个主题, y轴表示根据主题所选择的动作组合个数.
取其中生成的短信动画片断截图, 如图7所示其场景为baskerball场景, 添加3个虚拟人物, 其中执行交互动作的两个虚拟人物为M_girl与M_busman, M_girl动作准备阶段执行的为具有路径规划的拍球动作, M_busman定量计算经过路径规划后走到M_girl身边将水瓶递给她, M_girl执行喝水动作, 其中图7(a)、(b)、(c)、(d)分别为动画在第25帧、第75帧、第195帧、第265帧的截图. 图8截取的场景是为schoolroomOut, 添加的2个虚拟人物为M_boy与M_girl, M_girl动作准备阶段执行的为具有等待行为的动作, M_boy绑定交互物图书并经过定量计算规划后走到合适位置将书本递给M_girl, M_girl执行表示感谢行为的动作, M_boy执行表示谦虚的动作. 其中图8(a)、(b)、(c)、(d)分别为动画在第48帧、第128帧、第218帧、第298帧的截图.
5.3 规划辨识度与对比性试验
针对20条不同的短信文本, 分别在有交互规划运行以及无交互运动规划下[17,18]的手机3D系统中进行运行测试, 每条短信文本测试4条, 测试共计160条短信, 最终生成的动画数量为160, 在其随机选取20个动画制成网络调查问卷, 并提出“我知道人物是什么动作”, “我认为人物运动很流畅”, “我认为人物运动符合短信内容”, “我认为人物运动效果很好”和“我认为没有人物运动更好”5个针对性问题以及“交互动作规划较于单人动作规划表达动画主题更为优秀”1个对比性问题. 问题采用10分制评价, 对问题的认同度越高, 分数越高. 截至2018年1月10日, 共收到有效问卷18份. 如图8为调查问卷示意图.
表3是调查问卷平均分统计结果. 从图6可看出, 不进行运动规划的平均分值小于3, 说明当前人物运动规划对于手机3D动画自动生成系统具有一定提升价值, 但还有很高的提升空间; 对于调查问卷中的对比性问题“交互动作规划较于单人动作规划表达动画主题更为优秀”用户其评分超过了7, 其余运动规划的辨识性、合成效果、短信符合程度、运动整体感觉的4个指标的平均分值略高于6, 说明当前交互运动规划能够良好的表现动画内容, 且系统中存在交互运动规划相较于无交互运动规划优势明显, 用户体验更好, 人物交互运动规划达到了预期效果.
6 结束语本文研究的主要内容是首次在手机3D动画自动生成系统中添加虚拟人物交互运动规划自动生成功能, 将语义网技术、MAYA、骨骼动画与FK/IK应用到手机3D动画生成系统中, 实现虚拟人物交互运动的动态规划. 首先提出三层动作识别判断方法对交互动作进行阶段划分, 建立交互动作库并对交互动作属性进行刻画, 结合模型本体库与情节规划库, 根据主题以及场景信息添加交互动作, 之后运用FK以及IK动态计算虚拟人物的骨骼坐标以及运动状态, 动态规划虚拟人物运动路径以及交互物路径, 从而完成虚拟人物动作之间的交互响应, 最终实现对虚拟人与虚拟人之间、虚拟人与交互物之间的交互运动.
本文主要研究的是双人交互以及三人交互, 这是由于多人交互与群体动画在处理虚拟人物位置关系、计算虚拟人物运动路径上会更为复杂, 并且随着虚拟人物的增多, 动画渲染时间也会增加, 同时对系统硬件环境要求有所提高, 不满足当前实际情况, 对于多人交互规划还需要依据今后实际情况进行研究. 另外, 由于当前规划受限于交互动作库的丰富程度以及动作精细程度, 需要对交互动作库进行数据添加以及对动作数据精细化处理; 然而动作库若是无限进行添加则会增加搜索计算量, 因此如何在数据量增加的同时提高搜索效率或者研究对基本骨骼数据加工重定向获得更多新的动作数据, 也是接下来进一步研究的重点.
[1] |
陆汝钤, 张松懋. 从故事到动画片——全过程计算机辅助动画自动生成. 自动化学报, 2002, 28(3): 321-348. |
[2] |
Kong Y, Jia YD, Fu Y. Interactive phrases: Semantic descriptions for human interaction recognition. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2014, 36(9): 1775-1788. |
[3] |
Nystrom R. 游戏编程模式. GPP翻译组, 译. 北京: 人民邮电出版社, 2016.
|
[4] |
Buckland M. 游戏编程中的人工智能技术. 吴祖增, 沙鹰, 译. 北京: 清华大学出版社, 2006.
|
[5] |
Bayazit OB, Lien JM, Amato NM. Better group behaviors in complex environments using global roadmaps. Proceedings of the 8th International Conference on Artificial Life. Cambridge, UK. 2002. 362–370.
|
[6] |
Mamei M, Zambonelli F. Field-based motion coordination in quake 3 arena. Proceedings of the 3rd International Joint Conference on Autonomous Agents and Multiagent System. New York, NY, USA. 2004. 1532–1533.
|
[7] |
Lindhe M, Ogren P, Johansson KH. Flocking with obstacle avoidance: A new distributed coordination algorithm based on voronoi partitions. Proceedings of 2005 IEEE International Conference on Robotics and Automation. Barcelona, Spain. 2005. 1797–1802.
|
[8] |
Swartling JO, Shames I, Johansson KH, et al. Collective circumnavigation. Unmanned Systems, 2014, 2(3): 219-222. DOI:10.1142/S2301385014400019 |
[9] |
Xidias EK, Azariadis PN. Computing collision-free motions for a team of robots using formation and non-holonomic constraints. Robotics and Autonomous System, 2016, 82: 15-23. DOI:10.1016/j.robot.2016.04.008 |
[10] |
李朕阳. 基于SRCKF的多移动机器人协同定位与目标跟踪研究[硕士学位论文]. 芜湖: 安徽工程大学, 2017.
|
[11] |
Zhu HH, Li J, Wang YC. Knowledge representation and semantic inference of process based on ontology and semantic web rule language. Transactions of Nanjing University of Aeronautics and Astronautics, 2017, 34(1): 72-80. |
[12] |
白卫静, 张松懋, 刘椿年. 中国古建的语义网络知识库及其高效实现. 智能系统学报, 2010, 5(6): 510-521. |
[13] |
Sarker MK, Krisnadhi A, Carral D, et al. Rule-based OWL modeling with ROWLTab protégé plugin. Proceedings of the 14th International Conference on the Semantic Web. Portorož, Slovenia. 2017. 419–433.
|
[14] |
成红艳. 大规模古代士兵群体运动建模与仿真研究[硕士学位论文]. 西安: 西安工程大学, 2012.
|
[15] |
Zhou CX, Fu W, Lin P. Algorithm research and simulation of robot inverse kinematics solution. Proceedings of the 2nd International Conference on Advances in Mechanical Engineering and Industrial Informatics (AMEII 2016). Paris, France. 2016. 481–486.
|
[16] |
Welman C. Inverse kinematics and geometric constraints for articulated figure manipulation [Master’s thesis]. Vancouver, Canada: Simon Fraser University, 1993.
|
[17] |
邱真真. 面向手机3D动画的运动规划的设计与实现[硕士学位论文]. 北京: 北京工业大学, 2012.
|
[18] |
郝亮亮. 面向手机3D动画自动生成的复杂运动规划的设计与实现[硕士学位论文]. 北京: 北京工业大学, 2016.
|