CN103514622A - 虚拟角色的步态自动适应地形的系统及方法 - Google Patents
虚拟角色的步态自动适应地形的系统及方法 Download PDFInfo
- Publication number
- CN103514622A CN103514622A CN201210232938.7A CN201210232938A CN103514622A CN 103514622 A CN103514622 A CN 103514622A CN 201210232938 A CN201210232938 A CN 201210232938A CN 103514622 A CN103514622 A CN 103514622A
- Authority
- CN
- China
- Prior art keywords
- gait
- ankle
- virtual role
- action
- node
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000005021 gait Effects 0.000 title claims abstract description 127
- 238000000034 method Methods 0.000 title claims abstract description 40
- 230000033001 locomotion Effects 0.000 claims abstract description 67
- 230000004888 barrier function Effects 0.000 claims abstract description 14
- 230000009471 action Effects 0.000 claims description 119
- 210000003423 ankle Anatomy 0.000 claims description 82
- 210000002414 leg Anatomy 0.000 claims description 56
- 210000001699 lower leg Anatomy 0.000 claims description 48
- 210000003127 knee Anatomy 0.000 claims description 43
- 210000003371 toe Anatomy 0.000 claims description 33
- 210000002683 foot Anatomy 0.000 claims description 28
- 210000000689 upper leg Anatomy 0.000 claims description 26
- 230000006978 adaptation Effects 0.000 claims description 17
- 230000008569 process Effects 0.000 claims description 13
- 238000010205 computational analysis Methods 0.000 claims description 6
- 201000008482 osteoarthritis Diseases 0.000 claims description 6
- 230000000737 periodic effect Effects 0.000 claims description 6
- 210000001226 toe joint Anatomy 0.000 claims description 6
- 230000037147 athletic performance Effects 0.000 claims description 5
- 238000004364 calculation method Methods 0.000 claims description 4
- 230000008859 change Effects 0.000 claims description 4
- 230000036541 health Effects 0.000 claims 2
- 230000000694 effects Effects 0.000 abstract description 6
- 238000010586 diagram Methods 0.000 description 26
- 238000013461 design Methods 0.000 description 8
- 238000004519 manufacturing process Methods 0.000 description 6
- 238000004458 analytical method Methods 0.000 description 4
- 238000012937 correction Methods 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 230000000875 corresponding effect Effects 0.000 description 3
- 238000004088 simulation Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012876 topography Methods 0.000 description 2
- 241001269238 Data Species 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Images
Landscapes
- Processing Or Creating Images (AREA)
- Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)
Abstract
本发明是关于一种虚拟角色的步态自动适应地形的系统及方法,其是利用所输入的角色步态动作做为参考数据,系统自动分析出步态动作时腿部运动的关键影格,及利用分析出的信息,自动产生不同地形所需要的各种腿部运动参数组合,使输入的步态动作数据能适用于各种地形,同时使产生出的步态动画的结果尽量接近所参考的运动撷取数据。通过本发明的系统及方法,使用者便可以只输入一个虚拟角色及该角色一段理想的步态运动数据(Motion Clip),而不需预先给定行走路径及虚拟环境中障碍物的信息,即可达到实时性的步态自动适应任何地形地貌的动画制作效果。
Description
技术领域
本发明是一种虚拟角色的步态自动适应地形的系统及方法,其是利用所输入的角色步态动作做为参考数据,分析出步态动作时腿部运动的关键影格及利用分析出的信息,自动产生不同地形所需要的各种腿部运动参数组合的系统及方法。
背景技术
虚拟角色的步态动画制作一直是十分具挑战性的工作与相当棘手的问题。现有技术中,关于制作虚拟角色的步态动画最常用的制作方式约可分为三种。
第一种是关键格动画(Keyframing)制作方式,关键格动画是由动画师直接将关键格和内插信息输入到计算机中,计算机再依此输入产生动画。此种虚拟角色的步态动画设计方式,动画制作成果的好坏完全仰赖动画师的专业程度,且虚拟角色的步态形式随着虚拟环境的不同应该要有相对应的变化,故而短短几秒钟的动画就可能花费上资深专业动画师数以千倍计的时间,对于一般缺乏经验的使用者而言,则非常难以使用这种制作方式作出能自然流畅且适合不同地形的虚拟角色的步态动画。
第二种方式是运动撷取(Motion Capture)制作方式,运动撷取是一种以设备直接捕捉真实人类的步态运动,再输入到计算机产生动画格,由于所撷取的动作含有真实人类步态运动时所有关节的旋转与位移数据,故比起关键格动画制作方式在观感上更为自然拟真。但由于运动撷取是采用设备及讯号处理的方式,故而花费在运动动作撷取后的噪声消除及各个关节等矫正等步骤的时间相当的惊人,需要通过不断的修正与调整才能够利用动作数据得到稳定的动画结果。此外,运动撷取设备的建置与使用成本相当昂贵,对于一般使用者来说更是无法轻易使用取得。
第三种是以人工给定虚拟角色步态参数,如脚步大小、抬腿位置及环境变量信息等方式,进行模拟,例如有相当多的领域在研究此课题,包括机器人学、生物力学、人类学等;但大多数的系统都只能着重在某些特例上,如在没有障碍物的平坦路面上的模拟,或直接给定目标行走路径及障碍物信息等。然而在真实的情况下,许多的路面都是不规则、崎岖不平的,使得上述的这些发明很难直接套用到拟真的动态环境上。此外,此类系统皆需要一定时间的运算处理,将给定的已知环境条件与角色行进参数进行运算,并不能随着虚拟环境中实时性改变,如随时加入障碍物或阶梯,达到实时性且合理的步态呈现。
故现有技术中,不论是关键格动画、运动撷取式或是模拟式的角色步态动作制作方式,虚拟角色的步态都是特定的步态设计,皆难以被弹性地调整,及反覆被应用在不同的环境中,与实时性的动态呈现。例如,在平地上走路和在有高低起伏、倾斜地面或充满障碍物的崎岖地形上行走的动作,在运动模式上是不能相提并论的,原因是人类在平地上行走的步态及姿势,与在崎岖地形上行走的时候会不一样,因此若是通过关键格动画和运动撷取方式得到虚拟角色在平地上走路的步态,但若是想让虚拟角色在崎岖地形上自然的走路,还是得重新制作或撷取动作,才能得到符合需求的虚拟角色的步态的动画,对于动画的制作相当费时费力。
上述三种方法都有其缺点,在此不多赘述,本发明的方法克服了该等缺点,例如:
(1)、使用者不需要专业的动作制作经验及技术。
(2)、使用者不需要额外购置运动撷取设备。
(3)、使用者不需因动画中的不同地形环境而去分别制作出不同的步路步态动作数据。
(4)、使用者只需准备一段包含走路的步态动作数据即可让角色产生合乎于各式地形的走路步态动作。
其他优点于以下的详细说明中亦有陈述,在此不多赘述。
发明内容
本发明的主要目的是提出一种虚拟角色的步态自动适应地形的系统及方法,其是利用所输入的角色步态动作做为参考数据,能自动分析出步态动作时腿部运动的关键影格,及利用分析出的信息,自动产生不同地形所需要的各种腿部运动参数组合,让所输入的步态动作数据能适用于各种地形,同时使产生的步态动画的结果尽量接近所参考的运动撷取数据,达到实时性的步态自动适应任何地形地貌的动画制作效果。
为了达到上述目的,本发明提供一种虚拟角色的步态自动适应地形的系统,该系统至少包括:
一虚拟角色及步态输入单元,用以提供使用者选定输入一三维虚拟角色数据及该角色的一段完整的腿部步态运动数据做为参考动作数据;
一腿部动作分析单元,用以针对该参考动作数据,计算分析腿部步态的动作循环中的腿部循环,以获得参考动作数据的动作属性及腿部动作的关键影格,并计算出该虚拟角色的脚掌长度等的腿部运动参数;及
一实时适应地形的步态动作产生单元,用以通过该腿部动作分析单元所分析产出的腿部运动参数,实时动态的计算及预测该虚拟角色未来行进的足迹,并通过该参考动作数据进行腿部动作的内插计算以产生适合于当下地形的步态动作,并通过一贝兹曲线计算调整虚拟角色在行进中脚底与障碍物的路径数据,再通过反向关节运动学公式计算调整虚拟角色腿部关节的运动动作状态。
为了达到上述目的,本发明还提供一种虚拟角色的步态自动适应地形的方法,该方法至少包括以下的步骤:
(a)、使用者选定输入一三维虚拟角色数据及该角色的一段完整的腿部步态运动数据做为参考动作数据;
使用该参考动作数据,计算分析该虚拟角色腿部步态的动作循环中的腿部循环,以获得参考动作数据的动作属性及腿部动作的关键影格,并计算出该虚拟角色的脚掌长度等的腿部运动参数;及
使用该等腿部运动参数,实时动态的计算及预测该虚拟角色未来行进的足迹,并通过该参考动作数据进行腿部动作的内插计算以产生适合于当下地形的步态动作,并通过一贝兹曲线计算调整虚拟角色在行进中脚底与障碍物的路径数据,再通过反向关节运动学公式计算调整虚拟角色腿部关节的运动动作状态。
本发明的特色及功效包括:
(1)、最少量的人工参与:一个好的动画制作需要专业训练及大量的制作时间投入,然而大多数的计算机使用者皆非专业的动画师且能投入动画制作的时间亦有限制,故可以最少量的人工参与,即能够自动模拟出符合不同虚拟环境的步态运动的系统才是最符合一般使用者需求的设计。在本发明中,使用者只需准备一个虚拟角色及一段该虚拟角色走路的步态动作数据,并告知系统该角色的骨架信息,系统即可让角色产生合乎于各式地形的走路步态动作。
(2)、允许崎岖不平的路面:在现实情况下,路面鲜有平坦且无障碍物的,故要能将模拟的层次提高,符合真实,就必须允许崎岖不平的情况。
(3)、步伐的不一致性:在人类的行走过程中,每一步的步伐大小是不尽相同的。一般而言,步伐的大小与地形的起伏、人类的心情愉悦程度、能量的分配有关,故本发明设计上也考量此点。
(4)、脚步的计划:真实生活中,人类的行走过程是有计划的,我们往往在走这一步的同时,也决定了下两到三步的脚步位置,所以不常有走错或踏错阶梯的情形发生。
(5)、实时性:要能模拟真实的行走运动,系统的算法则必须有实时计算的特色;也就是在每一步所花的计算必须不能太长,才能达到互动界面的实时性要求。
(6)、真实性:通过使用者输入的参考动作,与系统建置的人体动力学模拟机制,让所产生出的步态动画的结果尽量接近所参考的运动撷取数据,达到步态运动在视觉上接近自然且真实的模拟效果。
附图说明
图1是本发明的一实施例的系统架构图。
图2是本发明的一实施例的九个腿部骨架节点信息的示意图。
图2A及图2B是本发明的一实施例的关节节点的自由度的示意图。
图3是本发明的一实施例的完整腿部步态动作循环的示意图。
图4A是本发明的一实施例的下半身关键符号表的示意图。
图4B是本发明的一实施例的腿部骨架2D视图的示意图。
图5是本发明的一实施例中通过脚踝与脚趾求得的脚掌(Foot Base)大小信息的示意图。
图6是本发明的一实施例中分析虚拟角色进行步态的关键影格的示意图。
图7是本发明的一实施例未来足迹预测中脚步计划器执行步骤流程图的示意图。
图8A及图8B是本发明的一实施例中使用内插法修正腿部动作的示意图。
图9是本发明的一实施例中足迹预测中修正脚步轨迹的示意图。
图10是本发明的一实施例中足迹预测中修正行走路径的示意图。
图11A是本发明的一实施例中修正脚踝角度至合理角度的示意图。
图11B是本发明的一实施例中修正脚部合理位置的示意图。
图11C是本发明的一实施例中修正大腿及膝盖合理角度的示意图。
附图标记说明:01--角色及步态输入单元;02--腿部动作分析单元;03--实时适应地形的步态动作产生单元;11--三维虚拟角色及该角色;12--完整的腿部步态动作数据;21--分析取得腿部动作的关键影格;31--未来足迹预测模块;32--腿部动作影格内插模块;33--足底碰撞预防模块;34--腿部连携移动与修正模块;211--根部节点(Hip);212--左大腿根节点(Left Thigh);213--左膝盖节点(Left Knee);214--左脚踝节点(Left Ankle);215--左脚趾节点(Left Toe);216--右大腿根节点(Right Thigh);217--右膝盖节点(Right Knee);218--右脚踝节点(Right Ankle);219--右脚趾节点(Right Toe);51--脚踝;52--脚趾;61--完全站立时段(Stance time);62--脚抬起(Foot-lift);63--脚离地(Foot-off);64--脚触地(Foot-strike);65--脚着地(Foot-land);91--原始脚步轨迹;92--简化后的脚步轨迹;101--当脚步轨迹与地形有碰撞轨迹;102--脚步轨迹与地形之间无碰撞轨迹;111--原始脚部位置为;112--修正后脚部位置;113--原始脚部位置;114--修正后脚部位置。
具体实施方式
为进一步对本发明有更清楚的说明,乃通过以下图式、原理及步骤详细说明实施方法,冀能对贵审查委员的审查工作有所助益。
本发明整体的构思是提供一利用参考步态动作用以自动产生适应于各种地形的步态动作系统及其控制方法,用以实时产生适应各种地形的角色步态动作,流程包括:使用者便输入一虚拟角色及该一段该角色理想的步态运动数据做为参考,并告知系统角色骨架的信息,系统便能自动分析腿部动画的关键影格,及尝试分析运动参数的各种组合,达到实时性的步态自适应任何地形地貌的动画制作的目的。
图1是依据本发明的虚拟角色的步态自动适应地形的系统的一实施例的系统架构图,该系统包括一角色及步态输入单元01,一腿部动作分析单元02及一实时适应地形的步态动作产生单元03。
该角色及步态输入单元01是提供使用者选定一三维虚拟角色及该角色11的一段理想且完整的腿部步态动作数据12做为参考动作数据,并输入至系统中。
该腿部动作分析单元02是针对使用者所输入的参考动作,分析该虚拟角色步态动作循环(Motion Cycle)中的腿部循环(Leg Cycle),以获得参考动作的动作属性及分析取得腿部动作的关键影格21,并计算出该虚拟角色的脚掌长度。
该实时适应地形的步态动作产生单元03包括一未来足迹预测模块31、一腿部动作影格内插模块32、一足底碰撞预防模块33及一腿部连携移动与修正模块34,该实时适应地形的步态动作产生单元03是通过该腿部动作分析单元02所分析出的虚拟角色腿部运动参数,予实时动态的虚拟环境中,用以预测虚拟角色未来行动的足迹,并通过使用者所输入的参考步态动作进行动作的内插,以产生适合于当下地形的步态动作,并通过贝兹曲线的计算,避免虚拟角色在行进的过程中脚底与障碍物发生碰撞的问题,最后再通过反向关节运动学(Inverse Kinematics;IK),让虚拟角色的腿部关节都能符合人体运动学,达到仿真又自然的实时步态模拟效果。
针对上述各单元的实施步骤流程,详述如下:
通过图1中的角色及步态输入单元01,使用者可输入一带有骨架信息的三维虚拟角色至本发明的虚拟角色的步态自动适应地形系统,该输入的三维虚拟角色,至少必须包含九个腿部骨架节点信息,其分别为:一根部节点(Hip)211、一左大腿根节点(Left Thigh)212、一左膝盖节点(Left Knee)213、一左脚踝节点(Left Ankle)214、一左脚趾节点(LeftToe)215、一右大腿根节点(Right Thigh)216、一右膝盖节点(RightKnee)217、一右脚踝节点(Right Ankle)218及一右脚趾节点(RightToe)219,其示意图如图2所示。其中该左膝盖节点(Left Knee)213、左脚踝节点(Left Ankle)214、左脚趾节点(Left Toe)215、右膝盖节点(Right Knee)217、右脚踝节点(Right Ankle)218及右脚趾节点(RightToe)219等六个关节节点的自由度(DOF)为1(如图2A所示),表示此类关节只能在一个方向上转动。其余关节的自由度为3(如图2B所示),表可进行三个方向上的转动。
角色及步态输入单元并用以输入该虚拟角色完整步态动作。虚拟角色的步态动作是由两腿以上的结构所组成,若将虚拟角色的步态运动依据其时间与空间因素进行分析,可发现步态运动乃是两腿的周期性循环的动作,全一组周期性的组合便称为完整的步态动作循环。使用者须输入一具有完整腿部步态动作循环的动作数据,用以作为本系统虚拟角色动作的动作来源。完整的动作循环示意图如图3所示。
该腿部动作分析单元是用以分析腿部动作关键影格。其是在接收到使用者输入的三维角色模型、骨架信息及步态动作的数据后,自动计算出包括左大腿根节点(Left Thigh)、左膝盖节点(Left Knee)、左脚踝节点(Left Ankle)、一左脚趾节点(Left Toe)、右大腿根节点(RightThigh)、右膝盖节点(Right Knee)、右脚踝节点(Right Ankle)及右脚趾节点(Right Toe)的角度与坐标,用以分析腿部动作关键影格,其示意图如图4A的下半身关键符号表及图4B的腿部骨架2D视图。
在求得脚踝与脚趾的范围后,即可得到虚拟角色的脚掌(Foot Base)大小的信息,用以作为判别虚拟角色脚步之用。
如图5所示,本发明通过脚踝51与脚趾52求得的脚掌(Foot Base)大小信息,及分析虚拟角色在进行步态动作时的脚踝与脚趾的角度与坐标变化,用以分析得到虚拟角色进行步态的关键影格,关键影格图6所示。由图6中可知,关键影格包括以下五个阶段所对应的影格:
(1)、完全站立时段(Stance time)61:在整的步态运动过程中,腿部完全着地,此时腿部关节中的脚踝与脚趾两者完全接触地面。
(2)、脚抬起(Foot-lift)62:脚抬起阶段,此时脚踝抬起而脚趾着地,脚踝关节角度变化度及坐标高度皆会大脚趾。
(3)、脚离地(Foot-off)63:脚离地阶段,此时脚踝与脚趾皆离地,脚趾关节角度及坐标高度开始趋近于脚踝。
(4)、脚触地(Foot-strike)64:脚触地阶段,此时脚踝腾空脚趾着地,脚趾关节角度大于脚踝,但坐标高度小于脚踝。
(5)、脚着地(Foot-land)65:脚着地阶段,此时脚踝与脚趾皆着地,脚踝关节角度及坐标高度趋近于脚趾。
实时适应地形的步态动作产生单元是接收由腿部动作分析单元所产生的关键影格数据(包括抬脚、离地、触地、及着地等关键影格)及虚拟角色骨架数据(包括根部、大腿、膝盖、脚踝及脚趾的角度及位标与行走的步伐大小等)步态参数后,依据及时脚步的状态与步伐的大小,由一脚步计划器产生模拟出下一个脚步的落点。本发明接着会决定在两点间运动的过程中,人体运动的关键组态。此关键组态即为动画中的关键影格。此关键组态可能因双脚的高度差(上坡或下坡),而有不同的设定方式。根据关键组态的位置,我们便可以进一步设计关键格之间人体运动组态的内插方式,以得到关键影格之间的所有画格。在内插过程中,我们以贝兹曲线的方式设计悬于空中的腿的运动轨迹。通过调整曲线的控制点,我们尝试能为移动中的脚找到避免碰的运动轨迹。除了避碰的外,这些运动参数都必须符合人体关节的机构学限制。在设计好一步的后,系统会自动地由脚步计划器规划下一步的步伐大小(或步伐落点),再经由相同的程序产生下一步的动作。即为未来足迹预测。
本发明所提出的脚步计划器对于脚步计划的步骤如图7所示,其中,n为一次计划的步数。一般来说,人类行走的计划步数一次约为二至三步(即n=2 or 3),但若行走于平坦路面时,计划步数可增至4到5步;相反地,若行走于崎岖不平的路面时,计划步数则会减少,以确保每一步都走在适当的位置上。本发明的计划方式为循序式,也就是当第i步计划成功才会进行第i+1步的计划;而当第i步计划失败,则会退回第i 1步,检查是否仍有可行的步伐。若没有,则再退回至第i 2步;依此类推,直到从下一步到第n步都计划成功,才算完成了整个脚步计划。而在搜寻可行步伐的策略中,由于本发明未将所有可行的步伐依步伐质量的好坏做分析排列,所以是以第一个搜寻到的可行步伐做为采用的步伐。
本发明中,虚拟角色的步态运动周期具有五个关键格,虚拟角色行走在不同的地形或障碍物的环境时,因为缺少相对应的动作,故需要利用即有的关键格来补足这些缺少的动作,称的为内插。本发明是通过贝兹曲线(Bezier Curve)去产生关键格间的平滑轨迹,以平滑地连接新动作与关键格。其示意图如图8A及图8B所示。
本发明中,三维虚拟角色的步态,可随着环境的变化而自动产生合理的动作,而本发明的虚拟环境地形包括:平坦型、倾斜型、起伏型。并可于动态执行期间加入障碍物。
当足迹预测决定出下一步的位置位于平坦型的地形时,为了减少计算的复杂度,脚部轨迹的计算利用行走模型各个关键影格的脚踝位置做为端点,将两端点以最短距离公式计算出来的直线轨迹做为行走模型的脚步轨迹,其示意图如图9所示,其中,原始脚步轨迹为实线91,简化后的脚步轨迹为虚线92。
当足迹预测决定出下一步的位置并不是属于平坦型的地形,便不使用简化轨迹来描述脚步的移动轨迹,以避免脚与地形碰撞。因此需利用下列公式(4-1)中的贝兹曲线来描述脚步的移动轨迹。
在计算脚步的轨迹时,本发明是以目前脚步位置以及下一步脚步位置做为贝兹曲线的端点,另外在两端点之间的直接连线的中取得第一四分位点、中点、第三四分位点作为贝兹曲线控制点再将其标准化至0到1的区间内。此时包含端点及控制点的点数,将式(4-1)展开后得到下列式(4-2)
B(t)=p0(1-t)4+4P1t(1-t)3+6P2t2(1-t)2+4P3t3(1-t)+P4t4.t∈[0.1]式(4-2)
当脚步轨迹与地形有碰撞时(如图10中的线101所示),本发明将自动调整控制点的高度后重新计算运动轨迹直到脚步轨迹与地形之间无碰撞为止(如图10中的线102所示)。
图10中,当控制点P1、P2及P3的位置调整至新的高度的时候,贝兹曲线的弧度也跟着改变,使得脚步能够避免碰撞且利用平滑的轨迹抬高至障碍物上方的位置。
本发明的腿部连携移动与修正功能是用以修正腿部及关节移动的状态,本发明的虚拟角色步态下半身运动的模拟方式,是使用反向关节运动(Inverse Kinematics;I K)的计算方式,其公式如以下公式(4-3)所示。通过反向关节运动的计算,本发明系统即可让经由计算机模拟出的虚拟角色的步态动作符合真实人类的步态效果。
α=atan2(zb-zf,xf)
β=atan2(LlowerSin(θKnee),Lupper+LlowerCos(θKnee))
θHip=-α-β式(4-3)
θAnkle=-θKnee-θHip
在运动的过程中,若已知条件为根部位置(xb,zb)、脚踝的位置(xf,zf)、大腿(Lupper)、小腿(Llower)的长度,而我们希望计算得到根部(θHip)、膝盖(θKnee)、脚踝(θAnkle)的弯曲角度。则我们便可以通过上述反向关节运动(Inverse Kinematics;IK)公式计算每一关节的旋转角度或其位置。最终步态修正结果,如图11A至图11C所示,实时一以平地来源动作,套用于下台阶地形时,通过反向关节运动的修正,得到符合地形且拟真符合人体姿态的步态动作。
图11A是修正脚踝角度至合理角度的示意图。其是将来源参考动作(平地)的反向关节运动信息,套用并修正于目前动作(下台阶)的相关关节处,于图11A中,原始脚部位置为111,修正后脚部位置为112。
图11B是修正脚部合理位置的示意图。其是将来源参考动作(平地)的反向关节运动信息,套用并修正于目前动作(下台阶)的相关关节处,于图11B中,原始脚部位置为113,修正后脚部位置为114。
图11C是修正大腿及膝盖合理角度的示意图。其是将来源参考动作(平地)的反向关节运动信息,套用并修正于目前动作(下台阶)的相关关节处。
以上所述者,仅为本发明的范例实施态样而已,当不能以的限定本发明所实施的范围。即大凡依本发明申请专利范围所作的均等变化与修饰,皆应仍属于本发明专利涵盖的范围内。
Claims (12)
1.一种虚拟角色的步态自动适应地形的系统,其特征在于,该系统至少包括:
一虚拟角色及步态输入单元,用以提供使用者选定输入一三维虚拟角色数据及该角色的一段完整的腿部步态运动数据做为参考动作数据;
一腿部动作分析单元,用以针对该参考动作数据,计算分析腿部步态的动作循环中的腿部循环,以获得参考动作数据的动作属性及腿部动作的关键影格,并计算出该虚拟角色的脚掌长度的腿部运动参数;及
一实时适应地形的步态动作产生单元,用以通过该腿部动作分析单元所分析产出的腿部运动参数,实时动态的计算及预测该虚拟角色未来行进的足迹,并通过该参考动作数据进行腿部动作的内插计算以产生适合于当下地形的步态动作,并通过一贝兹曲线计算调整虚拟角色在行进中脚底与障碍物的路径数据,再通过反向关节运动学公式计算调整虚拟角色腿部关节的运动动作状态。
2.根据权利要求1所述的系统,其特征在于,该三维虚拟角色数据包括一至少包含九个腿部骨架节点的数据,其分别为:一根部节点、一左大腿根节点、一左膝盖节点、一左脚踝节点、一左脚趾节点、一右大腿根节点、一右膝盖节点、一右脚踝节点及一右脚趾节点,其中该左膝盖节点、左脚踝节点、左脚趾节点、右膝盖节点、右脚踝节点及右脚趾节点六个关节节点的自由度为1,表示此类关节只能在一个方向上转动,其余三个关节的自由度为3,表示此类关节可进行三个方向上的转动。
3.根据权利要求1所述的系统,其特征在于,该虚拟角色完整步态动作数据是由该虚拟角色两腿以上身体的结构所组成,该虚拟角色的步态动作依其时间与空间因素乃两腿的周期性循环动作,完整一组周期性循环动作的组合为一完整的步态动作循环,该虚拟角色完整步态动作数据为一完整腿部步态动作循环的动作数据。
4.根据权利要求1所述的系统,其特征在于,该腿部动作分析单元依据该参考动作数据,计算分析腿部步态的动作循环中的腿部循环,可获得该虚拟角色的左大腿根节点、左膝盖节点、左脚踝节点、一左脚趾节点、右大腿根节点、右膝盖节点、右脚踝节点及右脚趾节点的角度与坐标数据,并计算该虚拟角色的脚踝与脚趾的范围以得到虚拟角色的脚掌大小的数据,最后依据该角度与坐标数据及该脚掌大小数据,计算以获得该虚拟角色行进步态的关键影格。
5.根据权利要求4所述的系统,其特征在于,该关键影格为以下五个态样其中之一:
(a)、完全站立时段:在整的步态运动过程中,腿部完全着地,此时腿部关节中的脚踝与脚趾两者完全接触地面;
(b)、脚抬起:脚抬起阶段,此时脚踝抬起而脚趾着地,脚踝关节角度变化度及坐标高度皆会大脚趾;
(c)、脚离地:脚离地阶段,此时脚踝与脚趾皆离地,脚趾关节角度及坐标高度开始趋近于脚踝;
(d)、脚触地:脚触地阶段,此时脚踝腾空脚趾着地,脚趾关节角度大于脚踝,但坐标高度小于脚踝;
(e)、脚着地:脚着地阶段,此时脚踝与脚趾皆着地,脚踝关节角度及坐标高度趋近于脚趾。
6.根据权利要求1所述的系统,其特征在于,该实时适应地形的步态动作产生单元更包括以下的模块:
(a)、一未来足迹预测模块,该模块使用一脚步计划器以计算该虚拟角色行走的脚步计划,假设n为一计划的计划步数,当第i步计划成功才会进行第i+1步的计划;而当第i步计划失败,则会退回第i 1步,检查是否仍有可行的步伐,若没有,则再退回至第i 2步,直到从下一步到第n步都计划成功,才算完成了整个脚步计划,其中,n为整数,n大于等于i;
(b)、一腿部动作影格内插计算模块,该模块依据该虚拟角色的步态运动周期中的五个关键影格,使用内插法计算该虚拟角色行走在不同的地形或障碍物的环境时所缺少相对应的步态动作,以平滑地连接该新步态动作与该关键影格,其中,该内插法可为贝兹曲线内差法;
(c)、一足底碰撞预防模块,当该未来足迹预测模块预测下一步的位置位于平坦型的地形时,该虚拟角色脚部轨迹的计算是利用各个关键影格的脚踝位置做为端点,将两端点以最短距离公式计算出的直线轨迹做为该虚拟角色行走的脚步轨迹,当该未来足迹预测模块预测下一步的位置不属于平坦型地形时,为避免该虚拟角色脚部与该不平坦地形碰撞,该足底碰撞预防模块使用贝兹曲线计算该虚拟角色脚步的移动轨迹,该模块以目前脚步位置以及下一步脚步位置做为贝兹曲线的端点,另外在两端点之间的直接连线的中取得第一四分位点、中点、第三四分位点作为贝兹曲线的控制点,再将其标准化至0到1的区间内,当计算出脚步轨迹与地形有碰撞时,该模块自动调整控制点的高度后重新计算运动轨迹直到脚步轨迹与地形之间无碰撞为止;及
(d)、一腿部连携移动与修正模块,用以模拟该虚拟角色行进时下半身运动的状态,模拟方式是使用反向关节运动的计算模式,其该反向关节运动公式为:
α=atan2(zb-zf,xf)
β=atan2(LlowerSin(θKnee),Lupper+LlowerCos(θKnee))
θHip=-α-β
θAnkle=-θknee-θHip
若已知条件为:一根部位置的坐标为:xb,zb、一脚踝位置的坐标为:xf,zf、一大腿的长度为Lupper、一小腿的长度为Llower,欲计算根部θHip、膝盖θKnee、脚踝θAnkle的弯曲角度时,使用该反向关节运动公式得到每一关节的旋转角度或其位置。
7.一种虚拟角色的步态自动适应地形的方法,其特征在于,该方法至少包括以下的步骤:
(a)、使用者选定输入一三维虚拟角色数据及该角色的一段完整的腿部步态运动数据做为参考动作数据;
使用该参考动作数据,计算分析该虚拟角色腿部步态的动作循环中的腿部循环,以获得参考动作数据的动作属性及腿部动作的关键影格,并计算出该虚拟角色的脚掌长度的腿部运动参数;及
使用该多个腿部运动参数,实时动态的计算及预测该虚拟角色未来行进的足迹,并通过该参考动作数据进行腿部动作的内插计算以产生适合于当下地形的步态动作,并通过一贝兹曲线计算调整虚拟角色在行进中脚底与障碍物的路径数据,再通过反向关节运动学公式计算调整虚拟角色腿部关节的运动动作状态。
8.根据权利要求7所述的方法,其特征在于,该三维虚拟角色数据包括一至少包含九个腿部骨架节点的数据,其分别为:一根部节点、一左大腿根节点、一左膝盖节点、一左脚踝节点、一左脚趾节点、一右大腿根节点、一右膝盖节点、一右脚踝节点及一右脚趾节点,其中该左膝盖节点、左脚踝节点、左脚趾节点、右膝盖节点、右脚踝节点及右脚趾节点六个关节节点的自由度为1,表示此类关节只能在一个方向上转动,其余三个关节的自由度为3,表示此类关节可进行三个方向上的转动。
9.根据权利要求7所述的方法,其特征在于,该虚拟角色完整步态动作数据是由该虚拟角色两腿以上身体的结构所组成,该虚拟角色的步态动作依其时间与空间因素乃两腿的周期性循环动作,完整一组周期性循环动作的组合为一完整的步态动作循环,该虚拟角色完整步态动作数据为一完整腿部步态动作循环的动作数据。
10.根据权利要求7所述的方法,其特征在于,该腿部动作分析单元依据该参考动作数据,计算分析腿部步态的动作循环中的腿部循环,可获得该虚拟角色的左大腿根节点、左膝盖节点、左脚踝节点、一左脚趾节点、右大腿根节点、右膝盖节点、右脚踝节点及右脚趾节点的角度与坐标数据,并计算该虚拟角色的脚踝与脚趾的范围以得到虚拟角色的脚掌大小的数据,最后依据该角度与坐标数据及该脚掌大小数据,计算以获得该虚拟角色行进步态的关键影格。
11.根据权利要求10所述的方法,其特征在于,该关键影格为以下五个态样的其中之一:
(a)、完全站立时段:在整的步态运动过程中,腿部完全着地,此时腿部关节中的脚踝与脚趾两者完全接触地面;
(b)、脚抬起:脚抬起阶段,此时脚踝抬起而脚趾着地,脚踝关节角度变化度及坐标高度皆会大脚趾;
(c)、脚离地:脚离地阶段,此时脚踝与脚趾皆离地,脚趾关节角度及坐标高度开始趋近于脚踝;
(d)、脚触地):脚触地阶段,此时脚踝腾空脚趾着地,脚趾关节角度大于脚踝,但坐标高度小于脚踝;
(e)、脚着地:脚着地阶段,此时脚踝与脚趾皆着地,脚踝关节角度及坐标高度趋近于脚趾。
12.根据权利要求7所述的方法,其特征在于,该实时动态计算及预测该虚拟角色未来行进足迹的方法更包括以下的步骤:
(a)、计算该虚拟角色行走的脚步计划,假设n为一计划的计划步数,当第i步计划成功才会进行第i+1步的计划;而当第i步计划失败,则会退回第i 1步,检查是否仍有可行的步伐,若没有,则再退回至第i 2步,直到从下一步到第n步都计划成功,才算完成了整个脚步计划,其中,n为整数,n大于等于i;
(b)、依据该虚拟角色的步态运动周期中的五个关键影格,使用内插法计算该虚拟角色行走在不同的地形或障碍物的环境时所缺少相对应的步态动作,以平滑地连接该新步态动作与该关键影格,其中,该内插法为贝兹曲线内差法;
(c)、当预测该虚拟角色下一步的位置位于平坦型的地形时,该虚拟角色脚部轨迹的计算是利用各个关键影格的脚踝位置做为端点,将两端点以最短距离公式计算出的直线轨迹做为该虚拟角色行走的脚步轨迹,当预测该虚拟角色下一步的位置不属于平坦型地形时,为避免该虚拟角色脚部与该不平坦地形碰撞,使用贝兹曲线计算该虚拟角色脚步的移动轨迹,计算方式是以目前脚步位置以及下一步脚步位置做为贝兹曲线的端点,另外在两端点之间的直接连线的中取得第一四分位点、中点、第三四分位点作为贝兹曲线的控制点,再将其标准化至0到1的区间内,当计算出脚步轨迹与地形有碰撞时,自动调整控制点的高度后重新计算运动轨迹直到脚步轨迹与地形之间无碰撞为止;及
(d)、模拟该虚拟角色行进时下半身运动的状态,模拟方式是使用反向关节运动(Inverse Kinematics;I K)的计算模式,该反向关节运动公式为:
α=atan2(zb-zf,xf)
β=atan2(LlowerSin(θKnee),Lupper+LlowerCos(θKnee))
θHip=-α-β
θAnkle=-θKnee-θHip
若已知条件为:一根部位置的坐标为:xb,zb、一脚踝位置的坐标为:xf,zf、一大腿的长度为Lupper、一小腿的长度为Llower,欲计算根部θHip、膝盖θKnee、脚踝θAnkle的弯曲角度时,使用该反向关节运动公式得到每一关节的旋转角度或其位置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
TW101123439A TWI473036B (zh) | 2012-06-29 | 2012-06-29 | The system and method of automatic adaptation of terrain to virtual terrain |
TW101123439 | 2012-06-29 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN103514622A true CN103514622A (zh) | 2014-01-15 |
Family
ID=49897298
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210232938.7A Pending CN103514622A (zh) | 2012-06-29 | 2012-07-05 | 虚拟角色的步态自动适应地形的系统及方法 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN103514622A (zh) |
TW (1) | TWI473036B (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104318600A (zh) * | 2014-10-10 | 2015-01-28 | 无锡梵天信息技术股份有限公司 | 一种使用Bézier曲线实现角色行走轨迹动画的方法 |
CN104517310A (zh) * | 2014-10-21 | 2015-04-15 | 无锡梵天信息技术股份有限公司 | 利用反向动力学仿真的机器人动画方法 |
CN104616335A (zh) * | 2015-02-17 | 2015-05-13 | 北京科艺有容科技有限责任公司 | 一种三维角色循环动画的自动累积方法 |
CN106354249A (zh) * | 2015-07-15 | 2017-01-25 | 西门子产品生命周期管理软件公司 | 行走模拟系统和方法 |
CN109542210A (zh) * | 2017-09-21 | 2019-03-29 | 福建天晴数码有限公司 | 基于虚拟引擎的手臂运动模拟还原方法、存储介质 |
CN110290844A (zh) * | 2017-03-09 | 2019-09-27 | 喀普康有限公司 | 游戏系统、游戏系统的控制方法以及非易失性记录介质 |
CN111273780A (zh) * | 2020-02-21 | 2020-06-12 | 腾讯科技(深圳)有限公司 | 基于虚拟环境的动画播放方法、装置、设备及存储介质 |
CN111292401A (zh) * | 2020-01-15 | 2020-06-16 | 腾讯科技(深圳)有限公司 | 动画处理方法、装置、计算机存储介质及电子设备 |
CN113467445A (zh) * | 2021-06-17 | 2021-10-01 | 南京蔚蓝智能科技有限公司 | 一种基于视觉与路径规划的四足机器人摆动腿避障方法 |
CN113744373A (zh) * | 2020-05-15 | 2021-12-03 | 完美世界(北京)软件科技发展有限公司 | 一种动画生成方法、装置、设备 |
CN114546135A (zh) * | 2022-03-15 | 2022-05-27 | 杭州虚现科技股份有限公司 | 基于惯性传感器进行虚拟行走的方法及系统 |
WO2023088041A1 (zh) * | 2021-11-19 | 2023-05-25 | 腾讯科技(深圳)有限公司 | 虚拟角色的行走动画生成方法、装置、设备及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11306388A (ja) * | 1998-04-24 | 1999-11-05 | Namco Ltd | 画像生成装置及び情報記憶媒体 |
CN101477703A (zh) * | 2008-10-11 | 2009-07-08 | 大连大学 | 基于语义模型的运动捕捉数据直接驱动的人体动画方法 |
US20100156912A1 (en) * | 2008-12-22 | 2010-06-24 | Electronics And Telecommunications Research Institute | Motion synthesis method |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1766929B (zh) * | 2004-10-29 | 2010-05-12 | 中国科学院计算技术研究所 | 一种基于三维数据库的运动对象运动重构方法 |
CN101079154B (zh) * | 2007-03-02 | 2010-05-26 | 腾讯科技(深圳)有限公司 | 一种角色动画实现方法及系统 |
TWI384376B (zh) * | 2008-09-09 | 2013-02-01 | Univ Nat Chunghsing | 最少能量消耗之人體動作編輯方法 |
TWI438734B (en) * | 2009-04-06 | 2014-05-21 | An interactive body motion and tactics design learning script designing method | |
CN102156994B (zh) * | 2011-04-19 | 2013-03-20 | 上海摩比源软件技术有限公司 | 一种单视角无标记人体运动跟踪的关节定位方法 |
-
2012
- 2012-06-29 TW TW101123439A patent/TWI473036B/zh active
- 2012-07-05 CN CN201210232938.7A patent/CN103514622A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11306388A (ja) * | 1998-04-24 | 1999-11-05 | Namco Ltd | 画像生成装置及び情報記憶媒体 |
CN101477703A (zh) * | 2008-10-11 | 2009-07-08 | 大连大学 | 基于语义模型的运动捕捉数据直接驱动的人体动画方法 |
US20100156912A1 (en) * | 2008-12-22 | 2010-06-24 | Electronics And Telecommunications Research Institute | Motion synthesis method |
Cited By (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104318600A (zh) * | 2014-10-10 | 2015-01-28 | 无锡梵天信息技术股份有限公司 | 一种使用Bézier曲线实现角色行走轨迹动画的方法 |
CN104318600B (zh) * | 2014-10-10 | 2018-01-16 | 无锡梵天信息技术股份有限公司 | 一种使用Bézier曲线实现角色行走轨迹动画的方法 |
CN104517310A (zh) * | 2014-10-21 | 2015-04-15 | 无锡梵天信息技术股份有限公司 | 利用反向动力学仿真的机器人动画方法 |
CN104616335A (zh) * | 2015-02-17 | 2015-05-13 | 北京科艺有容科技有限责任公司 | 一种三维角色循环动画的自动累积方法 |
CN104616335B (zh) * | 2015-02-17 | 2017-08-25 | 北京春天影视科技有限公司 | 一种三维角色循环动画的自动累积方法 |
CN106354249A (zh) * | 2015-07-15 | 2017-01-25 | 西门子产品生命周期管理软件公司 | 行走模拟系统和方法 |
CN110290844A (zh) * | 2017-03-09 | 2019-09-27 | 喀普康有限公司 | 游戏系统、游戏系统的控制方法以及非易失性记录介质 |
CN110290844B (zh) * | 2017-03-09 | 2022-09-20 | 喀普康有限公司 | 游戏系统、游戏系统的控制方法以及非易失性记录介质 |
CN109542210A (zh) * | 2017-09-21 | 2019-03-29 | 福建天晴数码有限公司 | 基于虚拟引擎的手臂运动模拟还原方法、存储介质 |
CN109542210B (zh) * | 2017-09-21 | 2022-02-08 | 福建天晴数码有限公司 | 基于虚拟引擎的手臂运动模拟还原方法、存储介质 |
WO2021143289A1 (zh) * | 2020-01-15 | 2021-07-22 | 腾讯科技(深圳)有限公司 | 动画处理方法、装置、计算机存储介质及电子设备 |
CN111292401A (zh) * | 2020-01-15 | 2020-06-16 | 腾讯科技(深圳)有限公司 | 动画处理方法、装置、计算机存储介质及电子设备 |
KR20220025023A (ko) * | 2020-01-15 | 2022-03-03 | 텐센트 테크놀로지(센젠) 컴퍼니 리미티드 | 애니메이션 처리 방법 및 장치, 컴퓨터 저장 매체 그리고 전자 디바이스 |
CN111292401B (zh) * | 2020-01-15 | 2022-05-03 | 腾讯科技(深圳)有限公司 | 动画处理方法、装置、计算机存储介质及电子设备 |
US11790587B2 (en) | 2020-01-15 | 2023-10-17 | Tencent Technology (Shenzhen) Company Limited | Animation processing method and apparatus, computer storage medium, and electronic device |
KR102645536B1 (ko) * | 2020-01-15 | 2024-03-07 | 텐센트 테크놀로지(센젠) 컴퍼니 리미티드 | 애니메이션 처리 방법 및 장치, 컴퓨터 저장 매체 그리고 전자 디바이스 |
CN111273780A (zh) * | 2020-02-21 | 2020-06-12 | 腾讯科技(深圳)有限公司 | 基于虚拟环境的动画播放方法、装置、设备及存储介质 |
CN113744373A (zh) * | 2020-05-15 | 2021-12-03 | 完美世界(北京)软件科技发展有限公司 | 一种动画生成方法、装置、设备 |
CN113467445A (zh) * | 2021-06-17 | 2021-10-01 | 南京蔚蓝智能科技有限公司 | 一种基于视觉与路径规划的四足机器人摆动腿避障方法 |
WO2023088041A1 (zh) * | 2021-11-19 | 2023-05-25 | 腾讯科技(深圳)有限公司 | 虚拟角色的行走动画生成方法、装置、设备及存储介质 |
CN114546135A (zh) * | 2022-03-15 | 2022-05-27 | 杭州虚现科技股份有限公司 | 基于惯性传感器进行虚拟行走的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
TWI473036B (zh) | 2015-02-11 |
TW201401223A (zh) | 2014-01-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103514622A (zh) | 虚拟角色的步态自动适应地形的系统及方法 | |
Tsai et al. | Real-time physics-based 3d biped character animation using an inverted pendulum model | |
Sok et al. | Simulating biped behaviors from human motion data | |
Wu et al. | Terrain-adaptive bipedal locomotion control | |
US9978169B2 (en) | Method and apparatus for creating a computer simulation of an actor | |
CN101958007B (zh) | 一种采用草绘的三维动画姿态建模方法 | |
Xiang et al. | Optimization-based prediction of asymmetric human gait | |
CN102157009A (zh) | 基于运动捕获数据的三维人体骨架运动编辑方法 | |
CN109991979A (zh) | 一种面向复杂环境的下肢机器人步态规划方法 | |
Felis et al. | Synthesis of full-body 3-d human gait using optimal control methods | |
CN106933100A (zh) | 一种基于人体运动捕捉数据的仿人机器人步态规划方法 | |
Yoo et al. | Recent progress and development of the humanoid robot HanSaRam | |
Kalouguine et al. | A new human-like walking for the humanoid robot Romeo | |
KR100843311B1 (ko) | 보행패턴을 이용한 보행로봇 제어용 연산데이터 생성방법 | |
CN103077545B (zh) | 一种基于路径的人体运动编辑方法 | |
Rafique et al. | Cartesian Control of Sit‐to‐Stand Motion Using Head Position Feedback | |
Millard | Mechanics and control of human balance | |
CN112782973A (zh) | 基于双智能体协作博弈的双足机器人行走控制方法和系统 | |
KR102589194B1 (ko) | 서로 다른 캐릭터 사이의 애니메이션 데이터를 호환 가능하게 연결하는 모션 커버 방법, 장치 및 시스템 | |
Faraji et al. | Scalable closed-form trajectories for periodic and non-periodic human-like walking | |
Rubio et al. | Vision-based walking parameter estimation for biped locomotion imitation | |
Khakpour | Multibody dynamics model of a full human body for simulating walking | |
Zezula et al. | Simulation modeling, optimalization and stabilisation of biped robot | |
Schiehlen | On the historical development of human walking dynamics | |
Chen et al. | Planning Efficient Walking Gaits in Real-Time for Human Characters |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
AD01 | Patent right deemed abandoned | ||
AD01 | Patent right deemed abandoned |
Effective date of abandoning: 20170412 |