[发明专利]一种基于约束投影的GPU并行试衣仿真方法在审
申请号: | 202110191969.1 | 申请日: | 2021-02-19 |
公开(公告)号: | CN112862957A | 公开(公告)日: | 2021-05-28 |
发明(设计)人: | 杨若瑜;刘科翰 | 申请(专利权)人: | 南京大学 |
主分类号: | G06T17/00 | 分类号: | G06T17/00;G06T17/20;G06T19/00;G06T1/20 |
代理公司: | 江苏圣典律师事务所 32237 | 代理人: | 于瀚文;胡建华 |
地址: | 210023 江苏省南*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 约束 投影 gpu 并行 试衣 仿真 方法 | ||
1.一种基于约束投影的GPU并行试衣仿真方法,其特征在于,包括如下步骤:
步骤1,在每一帧中利用输入的新的人体模型以及上一帧输入的人体模型的信息进行层次包围盒的并行构建或者更新;
步骤2,并行建立需要构造Signorini-Coulomb约束的点集;
步骤3,使用Galerkin多重网格法加速基于速度求解的Projective Dynamics方法,在局部求解的每次迭代中对步骤2得到的点集中的点进行Signorini-Coulomb约束投影,对所有衣物顶点进行通用的几何约束投影,最后经过迭代后得到当前帧衣物与人体的无碰撞冲突的位置。
2.根据权利要求1所述的方法,其特征在于,步骤1包括:利用输入的相邻两帧的人体模型同一个编号的面片在相邻两帧的时间间隔内形成的线性轨迹,计算所述线性轨迹对应的AABB轴对齐包围盒中心作为Morton码编码的依据,通过Morton码进行编码,对Morton码进行去重并按照升序排序,从而将三维的空间信息映射到一维的空间;
根据获得的Morton编码并行构造二叉前缀树BRT,所述二叉前缀树BRT作为人体模型的层次包围盒BVH的组织层次。
3.根据权利要求2所述的方法,其特征在于,步骤1中,所述二叉前缀树BRT包括内部节点和叶节点,对二叉前缀树BRT的内部节点按照深度优先的遍历顺序进行重新排序;
每一个叶节点对应于一个Morton码,叶节点是升序排列的;设定有N个叶节点,对于二叉前缀树BRT则有N-1个内部节点;每一个内部节点涵盖的范围就是对应子节点所涵盖的Morton码的取值范围。
4.根据权利要求3所述的方法,其特征在于,步骤1中,只在初始化人体模型或者碰撞检测速度下降为原有记录的最快检测速度的2倍时进行二叉前缀树BRT的构建或重新构建。
5.根据权利要求4所述的方法,其特征在于,步骤2包括:并行地将每一个衣物顶点与人体模型进行碰撞检测,并用几何映射到面的方式对有冲突的顶点进行碰撞响应,通过几何的方法消除由于新的人体模型更新所产生的碰撞冲突,然后根据衣物顶点所受外力,对顶点下一时刻的位置进行预测,根据预测的衣物顶点位置再次与新的人体位置进行碰撞检测,将所有新的产生碰撞冲突的衣物顶点纳入需要构造Signorini-Coulomb约束的点集当中。
6.根据权利要求5所述的方法,其特征在于,步骤2中,通过对预测的衣物顶点位置与人体位置之间进行碰撞检测,对于检测到的每一个产生碰撞冲突的衣物顶点都会对应于一个库伦摩擦锥,并且所述衣物顶点需要被添加入Signorini-Coulomb约束点集,e代表摩擦锥接触的法向,r代表摩擦锥的局部接触力,u代表摩擦锥中碰撞的衣物顶点与对应发生碰撞的人体三角面片之间的相对速度;局部接触力和全局接触力、相对速度和速度之间的关系用公式1a、公式1b来描述,其中Pj表示第j个碰撞冲突的旋转矩阵,用于改变第j个碰撞对的局部接触力rj与相对速度uj的基底,将它们转换成第i个顶点的全局接触力ξi和全局速度vi:
ξi=Pjrj (公式1a)
vi=Pjuj (公式1b)。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京大学,未经南京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110191969.1/1.html,转载请声明来源钻瓜专利网。