一种计算机中人体服装动态仿真实现方法_4

文档序号:8905366阅读:来源:国知局
理某一服装质点时,为了防止其继续运动而对模型产生后续影响,将其设置为固定点或者 作为相对于人体某一=角面片的映射点。本文考虑到服装与人体间摩擦力的作用,并不设 置碰撞处理后的质点为固定点或映射点,而是将其沿碰撞=角面片法向量方向的速度分量 清0,保留与=角面片表面平行的速度分量,并计算服装质点沿法向量反方向的合力,根据 不同布料的摩擦系数确定对于质点P施加的是静摩擦力还是动摩擦力。
[0127] 图4中可知,当人体产生运动时,需要对服装位置进行重新划分,W确定新的对应 关系,从而通过碰撞处理的方式实现从动。
[0128] 本发明提供了一种计算机中人体服装动态仿真实现方法,具体实现该技术方案的 方法和途径很多,W上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通 技术人员来说,在不脱离本发明原理的前提下,还可W做出若干改进和润饰,该些改进和润 饰也应视为本发明的保护范围。本实施例中未明确的各组成部分均可用现有技术加W实 现。
【主权项】
1. 一种计算机中人体服装动态仿真实现方法,其特征在于,包括以下步骤: 步骤1,参数化人体建模:使用插值样条曲面对人体的各个部位分别建立曲面模型并 进行光顺拼接,得到完整的人体网格模型; 步骤2,载入服装模型,对服装模型和人体网格模型进行预处理; 步骤3,对服装模型构建质点-弹簧模型,进行仿真动画计算; 步骤4,对质点-弹簧模型进行积分后校正; 步骤5,对服装模型和人体网格模型进行碰撞检测和响应。2. 如权利要求1所述的一种计算机中人体服装动态仿真实现方法,其特征在于,步骤1 包括如下步骤: 步骤1-1,获取人体表面的特征点和特征尺寸; 步骤1-2,根据获取的特征点和特征尺寸,求出表面型值点; 步骤1-3,对每个人体部位进行分块表面重建,采用插值样条曲面建立每个人体分块部 位的曲面构成曲面模型,获得人体部位生成点的法向量; 步骤1-4,对各个人体分块部位的曲面模型进行光顺拼接; 步骤1-5,加入人体部位生成点的法向量、根据设置的环境光参数模拟光照以显示人体 模型; 步骤1-6,通过改变骨架点坐标以驱动人体动作实现人体动画,通过改变特征尺寸实现 人体体型的改变,骨架点是特征点中人体每个分块部位接合处的点。3. 如权利要求2所述的一种计算机中人体服装动态仿真实现方法,其特征在于,步骤 1-3包括如下步骤: 步骤1-3-1,将该人体部位分层,每层都是一条闭合曲线,通过使用插值样条建模,得到 每层曲线的控制点,形成该人体部位的控制点矩阵; 步骤1-3-2,求取插值样条曲线的一组基函数,公式如下:其中a是一个大于零的常数,X是曲线所在局部坐标系的横坐标,e是自然对数的底数, 插值样条曲面的计算公式为:其中Φ ()是插值样条曲线的一组基函数,u,v分别是水平面平行方向和人体竖直方向 上的坐标,i和j是控制点的序号,取值范围为i = 0, 1,…,m-1,j = 0, 1,…,n-1,m、η分 别表示两个方向上控制点的个数,Pi;j为一控制点的坐标,Amxn= (Ρ i;j)mXn是控制点矩阵; 步骤1-3-3,控制点矩阵中的一个元素即为控制点的坐标,将该坐标与一组基函数的值 代入插值样条曲面表达式中,通过调整参数方程中U,V的变化率,求得该人体部位表面任 意一个表面点的坐标; 步骤1-3-4,对该人体部位生成的表面点进行三角网格化得到人体模型的三角面片,并 计算各点法向量。4. 如权利要求3所述的一种计算机中人体服装动态仿真实现方法,其特征在于,步骤 1-4通过重复型值点法实现插值样条曲面的光顺拼接,包括: 对于一段曲线的光顺拼接,在一段曲线的首尾接合处各重复两个型值点作为辅助控制 点从而实现该段曲线的光顺拼接;对于两段首尾接合的曲线的光顺拼接,则在两条曲线接 合处各增加两个辅助控制点,辅助控制点选取与首尾接合处几何距离最近的型值点; 对于一块曲面的光顺拼接,通过以下步骤实现在u方向上的首尾光顺拼接:在曲面片u 方向首尾各重复两层V方向的型值点作为辅助控制点,将辅助控制点矩阵代入插值样条曲 面计算公式;对于有公共交点的不同曲面片的光顺拼接,则取与曲面片交接线的所有点间 平均几何距离最近的两层点作为辅助控制点。5. 如权利要求4所述的一种计算机中人体服装动态仿真实现方法,其特征在于,步骤2 包括如下步骤: 步骤2-1,载入服装模型,对服装模型建立邻接表以确立服装模型中点、边、面之间的关 系; 步骤2-2,对人体网格模型进行预处理,建立有向包围盒; 步骤2-3,建立扩张人体模型:对人体网格点向外扩张,得到扩张的虚拟人体模型,对 每个人体部位构建圆柱映射表。6. 如权利要求5所述的一种计算机中人体服装动态仿真实现方法,其特征在于,步骤3 包括如下步骤: 步骤3-1,质点-弹簧模型中的拉伸弹簧由横向和纵向相邻的点表示,弯曲弹簧由相间 的点表示,大弯曲弹簧由服装模型简化后相邻的质点表示,对弹簧设置参数,不同的弹簧设 置不同的弹性系数、阻尼系数,拉伸、弯曲和剪切弹簧设置弹簧最大伸长率,大弯曲弹簧设 置弹簧原长,并根据材质不同设置不同的碰撞响应系数、静摩擦系数和动摩擦系数; 步骤3-2,将服装和人体进行对齐:通过设置上衣领口位置和人体颈部位置的对应关 系或是裤子腰带位置和人体腰部位置的对应关系实现服装和人体的对齐,对齐后根据服装 质点的位置对其进行区域划分,以确定所属的人体分块部位; 步骤3-3,根据步骤3-1参数设置,计算服装质点所受内力和外力,并对服装质点进行 数值积分计算,使用Verlet积分法构造线性方程组,Verlet积分推导如下: 对于服装质点在下一个积分步长的位置Sn+1和服装质点在上一个积分步长的位置5"_1, 使用泰勒公式:3"表示服装质点在当前积分步长的位置,公式(a)加上公式(b),变形得到下一时间步 长的位置表达式: Sn+1= 28^+8^^+0 (At3), 计算当前时间步长的速度vn: Vn= HVQAtHCKAt2), 其中,△ t为积分步长,每个积分步长相当于仿真中的一帧,0为泰勒公式的余项,\为 服装质点当前的加速度,加速度由服装质点所受合力与该质点质量的比值得到,合力包括 内力和外力,内力包括弹力和阻尼力,弹力F spring和阻尼力Fdamp的计算分别如下:其中,ks为拉伸常量,为弹簧两端点即两个服装质点之间的距离,Ltffigin为弹簧原 长,即构造弹簧模型时服装质点间的初始距离,其中,kd为阻尼常量,;;为服装质点速度, 计算出的下一时间步长位置,并根据服装质点当前速度和加速度计算下一时间步长速 度,修改质点的位置和速度信息,重复本步骤,直至当前服装质点与人体发生碰撞则停止对 质点的积分计算,对所有的质点采用重复步骤3-3的处理方法,从而实现仿真。7.如权利要求6所述的一种计算机中人体服装动态仿真实现方法,其特征在于,步骤4 包括如下步骤: 对质点-弹簧模型进行校正:校正分为两类,第一类,对拉伸、剪切和普通弯曲弹簧根 据调整策略将非固定点进行基于位置校正,且引入调整优先级以减少调整轮数,轮数校正 如下:每一个服装质点都设置优先级,弹簧每被修改一次,该弹簧端点的优先级减1,若两 端点优先级不同,则修正优先级高的端点,若两端点优先级相同,则计算两端点相对速度, 如果相对速度大于〇,则校正下端点;若相对速度为〇,则同时校正;若相对速度小于〇,则校 正上端点,校正公式为:其中,为校正向量,?和5分别为弹簧校正前两端服装质点的位置,Lmax为弹簧最 大长度, 校正后的服装质点目标位置如下:其中,S(jPSw*别是弹簧两端质点的初始位置坐标,而s'(jPS' ω分别是弹簧两 端质点校正后的坐标,mdP Π!』分别为弹簧两端质点质量; 第二类,对大弯曲弹簧同时使用基于位置校正和基于速度校正,基于速度校正是将沿 弹簧伸长或压缩方向的服装质点速度分量置为0。8.如权利要求7所述的一种计算机中人体服装动态仿真实现方法,其特征在于,步骤5 包括如下步骤: 步骤5-1,检测服装质点与人体有向包围盒,排除一部分不可能与人体表面碰撞的质 占 . 步骤5-2,根据动态位置划分确定服装质点所处的人体部位,根据该人体部位的圆柱映 射表,确定服装质点属于该人体部位的人体分块部位; 步骤5-3,将服装模型与扩张人体模型进行碰撞检测,即只进行服装质点和扩张人体模 型三角面片的碰撞: 步骤5-4,当人体产生运动时,返回步骤5-2,对服装模型位置进行重新划分,以确定新 的对应关系,从而通过碰撞处理的方式实现从动。
【专利摘要】本发明公开了一种计算机中人体服装动态仿真实现方法,通过对物理模拟中的关键步骤进行设置,以实现不同材质的仿真效果。该方法的主要步骤包括人体建模、人体模型和服装模型预处理、应用力学知识计算服装仿真、积分后校正、碰撞检测和响应。本发明在传统质点弹簧模型基础上提出大弯曲弹簧以产生褶皱效果,并根据不同材质的性质设置相应的弹簧参数,对质点服装采用综合校正策略,提出完善的碰撞响应方案以充分考虑每种材质的特点。传统服装材质区分多通过大量参数测量和几何方法实现,本发明解决了传统方法效率较低或灵活性不足的缺点,能实时地实现不同材质的动态仿真。
【IPC分类】G06F17/50
【公开号】CN104881557
【申请号】CN201510347177
【发明人】杨若瑜, 薛原
【申请人】南京大学
【公开日】2015年9月2日
【申请日】2015年6月19日
当前第4页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1