[发明专利]三维虚拟服装快速姿态同步方法无效

专利信息
申请号: 200910194537.5 申请日: 2009-08-25
公开(公告)号: CN101630417A 公开(公告)日: 2010-01-20
发明(设计)人: 钟跃崎 申请(专利权)人: 东华大学
主分类号: G06T15/70 分类号: G06T15/70
代理公司: 上海申汇专利代理有限公司 代理人: 翁若莹
地址: 201620上*** 国省代码: 上海;31
权利要求书: 查看更多 说明书: 查看更多
摘要: 发明提供了一种三维虚拟服装快速姿态同步方法,其特征在于,具体步骤为:第一步:建立三维人体模型以及虚拟服装模型,第二步:计算虚拟服装模型的受力情况;第三步:姿态同步。本发明的优点是当人体的姿态改变时,服装的姿态实时地随之改变,从而实现各种着装姿态下的人-衣姿态同步。
搜索关键词: 三维 虚拟 服装 快速 姿态 同步 方法
【主权项】:
1、一种三维虚拟服装快速姿态同步方法,其特征在于,具体步骤为:第一步:分别建立由三角形集合构成的三维人体模型以及虚拟服装模型,虚拟服装模型设于三维人体模型外侧,三维人体模型的三角形的密度为10000个/人,虚拟服装模型的三角形的密度为3000-4000个/件;第二步:第一步建立的虚拟服装模型中每个三角形的顶点为一个质点,三角形的三个边代表一根非线性弹簧,其中第i个顶点Pi的受力方程为:f=fi+di=-kC(x)xiC(x)-kdC(x)xiC(x)---(1)]]>其中,f为第i个顶点Pi所受内力的合力;fi和di分别为作用在第i个顶点Pi上的弹性力和粘性力;i=0,1,2,…n;n为三角形的顶点总数;k为弹簧的虎克常数;kd为弹簧的粘性系数;C(x)为与变形能相关的条件函数,C(x)=|x|-L;x为弹簧的瞬时长度;L为弹簧的原长;第三步:姿态同步:步骤3.1、以Sb表示三维人体模型的表面,以Sg表示虚拟服装模型的表面,计算在默认姿势下Sg与三维人体模型间的最短距离矢量集{D},即对于{P|P∈Sg},找出三维人体模型上的一点Q,满足:{Q|QSb,Q=argminQi(|PQi|)},i=0,1,2,...,m;---(2)]]>其中m为三维人体模型的三角形顶点总数,即Q点为Sb上到P点距离最近的点;步骤3.2、获得三维人体模型的动画,将动画按照每秒25帧的速度播放,对于每个三维人体模型的新姿态,计算Sb上的顶点的初步同步位置Pnew如下:Pnew=Q′+R·|PQ|    (3)其中Q′是Q点在新姿态下的位置,R是旋转矩阵,代表Q点的法向从nold到nnew的旋转,计算如下:令旋转角θ=arccos(nold·nnew),r=nold×nnew,则R=x2(1-c)+cyx(1-c)+zsxz(1-c)-ys0xy(1-c)-zsy2(1-c)+cyz(1-c)+xs0xz(1-c)+ysyz(1-c)-xsz2(1-c)+c00001---(4)]]>其中c=cosθ,s=sinθ;x,y,z分别为旋转向量r的x,y,z分量坐标值,此时新姿态下的虚拟服装模型的表面记为Sg-new,将新姿态下的三维人体模型的表面记为Sb-new;步骤3.3、对于{Pnew|Pnew∈Sg-new},寻找三维人体模型上的一点Qnew,满足:{Qnew|QnewSb-new,Qnew=argminQi-new(|PnewQi-new|)},i=0,1,2,...,m,---(5)]]>其中,m为Sb-new上的三角形顶点总数,即Qnew为Sb-new上距离Pnew最近的点;当Pnew位于Sb内部,即发生穿透时,将Pnew沿着靠近n的方向旋转90度,即:令d=PnewQnew×n|PnewQnew×n|,]]>则P′new=R′·Pnew,R′为旋转矩阵:R=x2yx+zxz-y0xy-zy2yz+x0xz+yyz-xz200001---(6)]]>其中x,y,z分别为旋转向量d的x,y,z分量坐标值;步骤3.4、将虚拟服装模型进行悬垂以及平滑处理:计算在已知时间t0下位置x(t0)和速度时,求解时刻t0+Δt时的位置x(t0+Δt)和速度Δt为时间步长,即求解下述微分方程:ddtx·x=ddtxv=vM-1f(x,v)---(7)]]>其中,M为服装模型质量矩阵,f为服装模型的合力矩阵,x0=x(t0),v0=v(t0),位移增量Δx=x(t0+Δt)和速度增量Δv=v(t0+Δt)-v(t0),对上述微分方程采用一阶向后欧拉积分:ΔxΔv=Δtv0+ΔvM-1f(x0+Δx,v0+Δv)---(8)]]>对于式(8)所给出的非线性方程,将f以泰勒级数方式展开得到其一阶近似:f(x0+Δx,v0+Δv)=f0+fxΔx+fvΔv---(9)]]>将(9)式代入(8)式整理可得:(I-ΔtM-1fv-Δt2M-1fx)Δv=ΔtM-1(f0+Δtfxv0)---(10)]]>Δx=Δt(v0+Δv)    (11)其中,I为单位阵,采用共轭梯度法首先求解式(10)中的f0以及从而得到Δv,然后更新x和v,即可得到服装在时刻t0+Δt时的位置和速度,这个位置即为该边上两个顶点经悬垂处理后的位置,在求解过程中,初始速度v0为0,初始位置x0即为步骤3.3完成后的位置;若在一个时间步长Δt过后,|x0(t+Δt)-x1(t+Δt)|>ε|x0(t)-x1(t)|,εa=1%,εa为允许应变的阈值,采用速度过滤的方法进行纠正如下:在时刻t时,用欧拉积分预先计算Δt后三角形顶点的位置:x0(t+Δt)=x0(t)+v0(t)·Δt    (12)x1(t+Δt)=x1(t)+v1(t)·Δt    (13)其中x0和x1分别是三角形一条边上两个顶点的位置,在时刻t+Δt时,如果应变ϵ=|x0(t+Δt)-x1(t+Δt)||x0(t)-x1(t)|>1%,]]>则这两个三角形顶点的速度在t时刻应被调节如下:v0new(t)=[x0new(t+Δt)-x0(t)]/Δt---(14)]]>v1new(t)=[x1new(t+Δt)-x1(t)]/Δt---(15)]]>其中x0new(t+Δt)和x1new(t+Δt)是满足ε=1%时的新位置,这个位置即为该边上两个顶点经平滑处理后的位置,x0new(t+Δt)=x0(t)+x0(t)-x1(t)|x0(t)-x1(t)|(1±ϵs),]]>x1new(t+Δt)=x1(t)+x1(t)-x0(t)|x1(t)-x0(t)|(1±ϵs),]]>其中的±在过度伸长时取+,过度压缩时取-。
下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于东华大学,未经东华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/patent/200910194537.5/,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top