CN101894392A - 基于骨骼运动数据的运动单元弯曲和扭转角度分析方法 - Google Patents

基于骨骼运动数据的运动单元弯曲和扭转角度分析方法 Download PDF

Info

Publication number
CN101894392A
CN101894392A CN 201010210807 CN201010210807A CN101894392A CN 101894392 A CN101894392 A CN 101894392A CN 201010210807 CN201010210807 CN 201010210807 CN 201010210807 A CN201010210807 A CN 201010210807A CN 101894392 A CN101894392 A CN 101894392A
Authority
CN
China
Prior art keywords
cos
coordinate
prime
articulation point
motion data
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.)
Granted
Application number
CN 201010210807
Other languages
English (en)
Other versions
CN101894392B (zh
Inventor
李凤霞
郝云生
陈宇峰
李仲君
黄天羽
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Institute of Technology BIT
Original Assignee
Beijing Institute of Technology BIT
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Institute of Technology BIT filed Critical Beijing Institute of Technology BIT
Priority to CN201010210807XA priority Critical patent/CN101894392B/zh
Publication of CN101894392A publication Critical patent/CN101894392A/zh
Application granted granted Critical
Publication of CN101894392B publication Critical patent/CN101894392B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明公开了一种基于骨骼运动数据的运动单元弯曲和扭转角度分析方法,首先获取关节点在骨骼运动数据的初始帧以及当前帧中的坐标,通过比较运动单元中关节点在骨骼运动数据中的位置变化获得复杂模型的每一个局部变形区域在运动中的弯曲和扭转变形角度,使用本发明方法可以简化使用动作数据驱动三维模型进行自动变形的计算。此外,根据骨骼运动的有关规则,本发明方法通过将运动单元中的扭转角度限定在-π/2~π/2之间,解决了分析骨骼运动数据时,弯曲和扭转角度计算中的二义性问题。

Description

基于骨骼运动数据的运动单元弯曲和扭转角度分析方法
技术领域
本发明涉及一种运动单元弯曲和扭转角度分析方法,属于计算机图形学、虚拟现实技术领域。
背景技术
在三维模型的变形中,通常有以下几种变形技术:Morphing方法、FFD变形方法、基于骨骼的变形方法。Morphing方法通过插值方法实现变形,FFD变形方法通过控制包围三维模型表面的控制体实现变形,基于骨骼的变形技术通过设置模型表面网格顶点对应于骨骼的影响权值实现变形。有些三维模型的变形,如人体的躯干和四肢的变形,具有以下特点:变形发生在关节点附近的区域,属于局部变形;变形由一段骨骼围绕一个关节点旋转引起,因此变形后的模型与骨骼的运动情况一致;模型对应的关节点自由度多,运动复杂。这类模型的变形,需要满足以下要求:根据骨骼运动数据对三维模型的局部区域进行自动变形。Morphing方法和FFD变形方法不能跟骨骼的运动数据相结合,基于骨骼的变形方法需要对影响权值进行反复的调整,不能实现自动变形。
为了实现复杂三维模型的各种变形,可以使用通过专业动作捕捉设备获得的动作数据驱动三维模型进行自动变形。复杂三维模型的关节点数目很多,关节点构成的骨骼结构复杂,使用动作数据驱动三维模型进行自动变形需要对动作数据作复杂的分析和处理。
针对以上情况,本专利提出了一种通过比较运动单元中关节点在骨骼运动数据中的位置变化来获得弯曲和扭转角度的方法。运动单元包括三个关节点A、O、B,其中关节点A和O连接成骨骼OA,关节点B和O连接成骨骼OB,这样的结构称为运动单元。骨骼运动数据是指利用专业动作捕捉设备获得的动作数据,可参考T.K.Capin,I.S.Pandiz,H.Noser,et al.Virtual Human Representationand Communication in VLNET[J].IEEE Computer Graphics and Applications,1997.17(2):42-53。
通过将三维模型中复杂的骨骼结构分解成最基本的运动单元,并从骨骼运动数据中获取每一个运动单元的弯曲和扭转角度,利用该角度对三维模型的每一个运动单元对应的局部区域进行变形,可以简化使用动作数据驱动三维模型进行自动变形的计算,并可以通过对每一个运动单元对应的局部区域分别应用较优的变形设置参数来获得更佳的变形效果。
发明内容
本发明的目的是克服已有技术的缺陷,为了解决使用动作数据驱动三维模型进行自动变形的问题,提出一种通过比较运动单元中关节点在骨骼运动数据中的位置变化来获得弯曲和扭转角度的方法。
本发明是通过下述技术方案实现的:
运动单元包括三个关节点A、O、B,其中关节点A和O连接成骨骼OA,关节点B和O连接成骨骼OB,将这样的结构称为运动单元。
使用以下方法根据骨骼运动数据计算运动单元的弯曲角度和扭转角度:
(1)获取关节点A、O、B在骨骼运动数据的初始帧中的坐标A1、O1、B1。所述骨骼运动数据是指利用专业动作捕捉设备获得的动作数据,可参考T.K.Capin,I.S.Pandiz,H.Noser,et al.Virtual Human Representation andCommunication in VLNET[J].IEEE Computer Graphics and Applications,1997.17(2):42-53.
(2)获取关节点A、O、B在骨骼运动数据的当前帧中的坐标A2、O2、B2
(3)使用平移向量
Figure BSA00000169702600021
平移A2、B2,获得平移后的坐标A2′、B2′;
即根据下式计算A2、B2平移后的坐标A2′、B2′:
A 2 ′ = A 2 + O 2 O 1 → , B 2 ′ = B 2 + O 2 O 1 →
(4)围绕O1旋转B2′,获得B2′旋转后的坐标B2″,即根据如下方法计算B2′旋转后的坐标B2″:
①计算旋转角
Figure BSA00000169702600024
以及旋转轴方向向量ρ=ρ′/|ρ′|,其中并将ρ写为(x,y,z)的形式;
②根据步骤①的结果计算旋转矩阵R:
R = ( 1 - cos ( w ) ) x 2 + cos ( w ) ( 1 - cos ( w ) ) xy - sin ( w ) z ( 1 - cos ( w ) ) xz + sin ( w ) y ( 1 - cos ( w ) ) xy + sin ( w ) z ( 1 - cos ( w ) ) y 2 + cos ( w ) ( 1 - cos ( w ) ) yz - sin ( w ) x ( 1 - cos ( w ) ) xz - sin ( w ) y ( 1 - cos ( w ) ) yz + sin ( w ) x ( 1 - cos ( w ) ) z 2 + cos ( w ) ;
③B2′旋转后的坐标B2″=B2′·RT+O1·(I-RT),其中I为单位矩阵,上标T表示对矩阵进行转置操作;
(5)根据下式计算B2″的局部坐标B2′″:
B 2 ′ ′ ′ = B 2 ′ ′ · F 1 - T ,
其中F1为初始帧的局部坐标系到世界坐标系的变换矩阵,它是一个4×4矩阵,且
Figure BSA00000169702600033
并且向量向量γ1=γ1′/|γ1′|,
Figure BSA00000169702600035
向量α1=β1×γ1;×表示向量的叉乘;μo1表示关节点O1在世界坐标系中的坐标的向量表示;
(6)将局部坐标B2′″写为(x2,y2,z2)的形式,计算当前局部模型的弯曲角度w2和扭转角度w1的方法分别如下:
①若其中x2>0,则扭转角度
Figure BSA00000169702600036
否则扭转角度 w 1 = arcsin ( z 2 / x 2 2 + z 2 2 ) ;
②弯曲角度w2=θ21,其中
θ 2 = arccos [ ( O 1 A 1 → ) · ( O 1 B 1 → ) / ( | O 1 A 1 → | · | O 1 B 1 → | ) ] ;
θ1的确定方法为:若x2<0,则θ1=2π-θ1′;否则θ1=θ1′;其中 θ 1 ′ = arccos ( y 2 / x 2 2 + y 2 2 + z 2 2 ) .
对比已有技术,本发明技术方案的有益效果在于,通过比较运动单元中关节点在骨骼运动数据中的位置变化可以获得复杂模型的每一个局部变形区域在运动中的弯曲和扭转变形角度,使用本发明方法可以简化使用动作数据驱动三维模型进行自动变形的计算。此外,根据骨骼运动的有关规则,本发明方法通过将运动单元中的扭转角度限定在-π/2~π/2之间,解决了分析骨骼运动数据时,弯曲和扭转角度计算中的二义性问题。
附图说明
图1为本发明所述根据骨骼运动数据计算运动单元的弯曲角度和扭转角度的示意图。
具体实施方式
下面结合附图和实施例对本发明技术方案进行解释,图1是本发明所述根据骨骼运动数据计算运动单元的弯曲角度和扭转角度的示意图。
在下面的实施例中,根据骨骼运动数据分析运动单元的弯曲角度和扭转角度的步骤如下:
三个关节点O、B、C,其中关节点B和O连接成骨骼OB,关节点C和B连接成骨骼CB,这样的结构称为运动单元。
从骨骼运动数据中获取关节点O、B、C在初始帧中的坐标O1=(-0.0992,0.5433,-0.1511),B1=(-0.0540,0.0299,-0.3395),C1=(-0.0891,0.0151,-0.2561),和在当前帧中的坐标为O2=-0.150771,0.486333,-0.0254434),B2=(-0.054,0.0399,-0.3295),C2=-0.10481,-0.0149156,-0.276394)。
平移向量
Figure BSA00000169702600041
计算O2、C2平移后的坐标O2′=(-0.150771,0.476333,-0.0354434),C2′=-0.10481,-0.0249156,-0.286394)。
计算旋转轴方向向量ρ=(-0.923781,0.0575905,-0.378566),旋转角w=0.261799,使用公式C2″=C2′·RT+B1·(I-RT)计算C2′旋转后的坐标C2″=-0.108403,-0.00532579,-0.274646),其中I为单位矩阵,旋转矩阵R使用旋转轴方向向量ρ和旋转角w计算。
计算C2″在骨骼OB和骨骼BC构成的局部坐标系中的局部坐标C2′″=(0.0883602,-0.00620937,0.0236764)。
使用公式14计算扭转角度w1=-0.261803,弯曲角度w2=-0.261799。
对上述步骤的计算结果进行仿真验证,步骤如下:
计算关节点C1在初始帧中局部坐标系下的局部坐标C1′=(0.0899672,0.0176782,0)。
计算C1′点围绕初始帧中局部坐标系的z轴旋转角w2=-0.261799后的局部坐标C1″=(0.0914771,-0.00620938,0)。
计算C1″点围绕初始帧中局部坐标系的y轴旋转角w1=-0.261803后的局部坐标C1′″=(0.0883601,-0.00620938,0.0236760)。
计算C1′″点在世界坐标系中的坐标C1″″=-0.108403,-0.00532579,-0.274646)。
使用公式C1′″″=C1″″·RT+B1·(I-RT)计算C1″″旋转后的坐标C1′″″=-0.10481,-0.0249156,-0.286394),其中I为单位矩阵,旋转矩阵R使用旋转轴方向向量ρ和旋转角-w计算,适用公式O1′=O1·RT+B1·(I-RT)计算O1旋转后的坐标O1′=-0.150771,0.476333,-0.0354434)。
平移向量
Figure BSA00000169702600051
计算O1′、B1、C1′″″平移后的坐标O1″=-0.150771,0.486333,-0.0254434),B1′=(-0.054,0.0399,-0.3295),C1″″″=-0.10481,-0.0149156,-0.276394)。
计算结果与关节点O2、B2、C2的坐标相等,验证了本专利提出的算法。
以上所述的具体描述,对发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (1)

1.基于骨骼运动数据的运动单元弯曲和扭转角度分析方法,所述运动单元包括三个关节点A、O、B,其中关节点A和O连接成骨骼OA,关节点B和O连接成骨骼OB,其特征在于,分析运动单元的弯曲角度和扭转角度,包括以下步骤:
(1)获取关节点A、O、B在骨骼运动数据的初始帧中的坐标A1、O1、B1
(2)获取关节点A、O、B在骨骼运动数据的当前帧中的坐标A2、O2、B2
(3)使用平移向量平移A2、B2,获得平移后的坐标A2′、B2′;
即根据下式计算A2、B2平移后的坐标A2′、B2′:
A 2 ′ = A 2 + O 2 O 1 → , B 2 ′ = B 2 + O 2 O 1 →
(4)围绕O1旋转B2′,获得B2′旋转后的坐标B2″;
即根据如下方法计算B2′旋转后的坐标B2″:
①计算旋转角
Figure FSA00000169702500014
以及旋转轴方向向量ρ=ρ′/|ρ′|,其中并将ρ写为(x,y,z)的形式;
②根据步骤①的结果计算旋转矩阵R:
R = ( 1 - cos ( w ) ) x 2 + cos ( w ) ( 1 - cos ( w ) ) xy - sin ( w ) z ( 1 - cos ( w ) ) xz + sin ( w ) y ( 1 - cos ( w ) ) xy + sin ( w ) z ( 1 - cos ( w ) ) y 2 + cos ( w ) ( 1 - cos ( w ) ) yz - sin ( w ) x ( 1 - cos ( w ) ) xz - sin ( w ) y ( 1 - cos ( w ) ) yz + sin ( w ) x ( 1 - cos ( w ) ) z 2 + cos ( w ) ;
③B2′旋转后的坐标B2″=B2′·RT+O1·(I-RT),其中I为单位矩阵,上标T表示对矩阵进行转置操作;
(5)根据下式计算B2″的局部坐标B2′″:
B 2 ′ ′ ′ = B 2 ′ ′ · F 1 - T ,
其中初始帧的局部坐标系到世界坐标系的变换矩阵
Figure FSA00000169702500018
并且向量
Figure FSA00000169702500019
向量γ1=γ1′/|γ1′|,
Figure FSA000001697025000110
向量α1=β1×γ1;×表示向量的叉乘;μo1表示关节点O1在世界坐标系中的坐标的向量表示;
(6)将局部坐标B2′″写为(x2,y2,z2)的形式,计算当前局部模型的弯曲角度w2和扭转角度w1的方法分别如下:
①若其中x2>0,则扭转角度
Figure FSA00000169702500021
否则扭转角度 w 1 = arcsin ( z 2 / x 2 2 + z 2 2 ) ;
②弯曲角度w2=θ21,其中
θ 2 = arccos [ ( O 1 A 1 → ) · ( O 1 B 1 → ) / ( | O 1 A 1 → | · | O 1 B 1 → | ) ] ;
θ1的确定方法为:若x2<0,则θ1=2π-θ1′;否则θ1=θ1′;其中 θ 1 ′ = arccos ( y 2 / x 2 2 + y 2 2 + z 2 2 ) .
CN201010210807XA 2010-06-28 2010-06-28 基于骨骼运动数据的运动单元弯曲和扭转角度分析方法 Expired - Fee Related CN101894392B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201010210807XA CN101894392B (zh) 2010-06-28 2010-06-28 基于骨骼运动数据的运动单元弯曲和扭转角度分析方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201010210807XA CN101894392B (zh) 2010-06-28 2010-06-28 基于骨骼运动数据的运动单元弯曲和扭转角度分析方法

Publications (2)

Publication Number Publication Date
CN101894392A true CN101894392A (zh) 2010-11-24
CN101894392B CN101894392B (zh) 2012-07-04

Family

ID=43103574

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010210807XA Expired - Fee Related CN101894392B (zh) 2010-06-28 2010-06-28 基于骨骼运动数据的运动单元弯曲和扭转角度分析方法

Country Status (1)

Country Link
CN (1) CN101894392B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103824316A (zh) * 2014-03-26 2014-05-28 广州博冠信息科技有限公司 一种为对象生成动作画面的方法和设备
CN104658026A (zh) * 2015-02-15 2015-05-27 北京科艺有容科技有限责任公司 一种基于极坐标系的融合变形方法
CN107194344A (zh) * 2017-05-16 2017-09-22 西安电子科技大学 自适应骨骼中心的人体行为识别方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09231395A (ja) * 1996-02-22 1997-09-05 Matsushita Electric Ind Co Ltd 歩行動作データ修正方法
CN101246601A (zh) * 2008-03-07 2008-08-20 清华大学 基于关键帧和时空约束的三维虚拟人体运动生成方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09231395A (ja) * 1996-02-22 1997-09-05 Matsushita Electric Ind Co Ltd 歩行動作データ修正方法
CN101246601A (zh) * 2008-03-07 2008-08-20 清华大学 基于关键帧和时空约束的三维虚拟人体运动生成方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
《系统仿真学报》 20091031 陈红倩 等 一种视频运动仿真方法 全文 1 第21卷, 第19期 2 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103824316A (zh) * 2014-03-26 2014-05-28 广州博冠信息科技有限公司 一种为对象生成动作画面的方法和设备
CN103824316B (zh) * 2014-03-26 2017-05-10 广州博冠信息科技有限公司 一种为对象生成动作画面的方法和设备
CN104658026A (zh) * 2015-02-15 2015-05-27 北京科艺有容科技有限责任公司 一种基于极坐标系的融合变形方法
CN104658026B (zh) * 2015-02-15 2018-01-19 北京春天影视科技有限公司 一种基于极坐标系的三维动画融合变形方法
CN107194344A (zh) * 2017-05-16 2017-09-22 西安电子科技大学 自适应骨骼中心的人体行为识别方法
CN107194344B (zh) * 2017-05-16 2020-06-05 西安电子科技大学 自适应骨骼中心的人体行为识别方法

Also Published As

Publication number Publication date
CN101894392B (zh) 2012-07-04

Similar Documents

Publication Publication Date Title
CN101286188B (zh) 一种虚拟仿真系统中力觉反馈的计算方法
Zhao A survey on virtual reality
CN101542487B (zh) 图形处理器上的物理仿真
CN105205248A (zh) 一种基于ode物理引擎的车辆地形通过性仿真分析组件的设计方法
CN108140020A (zh) 情感增强型化身动画化
Cheng et al. Dynamics analysis of a parallel hip joint simulator with four degree of freedoms (3R1T)
Hajimirzaalian et al. Dynamics analysis and simulation of parallel robot Stewart platform
CN107665269A (zh) 基于地理信息的快速人群疏散仿真方法和装置
CN104809276B (zh) 一种多手指机器人动力学解析模型及其建模方法
CN106055901A (zh) 一种自由漂浮空间机器人捕获翻滚目标的时机确定方法
CN103729520B (zh) 一种基于人因势场的设备维修性布局设计方法
CN110046406A (zh) 解剖教学系统中一种带有力反馈结构的软组织仿真方法
CN101894392B (zh) 基于骨骼运动数据的运动单元弯曲和扭转角度分析方法
CN105045496A (zh) 一种基于关节点变换的手势交互方法
CN102999661A (zh) 基于粒子群优化的并行碰撞检测系统及方法
CN106371442A (zh) 一种基于张量积模型变换的移动机器人控制方法
CN102930599A (zh) 一种基于双四元数的手运动的三维模拟方法
CN103729879A (zh) 基于力觉计算的虚拟手稳定抓取方法
CN103793552A (zh) 一种软组织形变的局部质点弹簧模型的实时动态生成方法
CN104318601B (zh) 一种流体环境下人体运动仿真方法
Xu et al. Development of a 3D tongue motion visualization platform based on ultrasound image sequences
Qinping A survey on virtual reality
Zhang et al. Real-time simulation of deformable soft tissue based on mass-spring and medial representation
CN116248920A (zh) 虚拟角色直播处理方法、装置及系统
CN104616337B (zh) 一种基于纵向切分的风吹无叶树的摇曳模拟方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20120704

Termination date: 20130628