您好,欢迎访问三七文档
收稿日期:2005-10-21基金项目:国家自然科学基金资助项目(60473129)作者简介:王媚(1981-),女,河南睢县人,硕士研究生,主要研究方向为CAD&CG。关于人体建模技术的研究始于20世纪70年代末。在目前研究领域中,常见的算法主要有曲面建模、基于物理特性建模和基于解剖学的分层建模方法。曲面建模又称表面建模,这种建模方法的重点是由给出的离散数据点构成光滑过渡的曲面,使这些曲面通过或逼近这些离散点。NMThalmann和DThalmann(1987)最早使用多边形表面生成虚拟人MarilynMonroe,之后又提出JLD算符(Thalmannetal.1988,ThalmannandThalmann1990)用于对人体表面的变形[1]。Forsey(1991)将分层B样条技术用于三维人体建2007年工程图学学报2007第1期JOURNALOFENGINEERINGGRAPHICSNo.1服装CAD中三维人体建模技术的研究及应用王媚1,陆国栋1,张东亮2(1.浙江大学CAD&CG国家重点实验室,浙江杭州310027;2.DigitalFashionLtd,日本大阪)摘要:根据服装CAD的要求,提出了一种基于截面环求取三维人体模型的建模方法,对读入的人体扫描数据进行特征识别后,按特征点位置确定若干个截面与人体求交,再对每一截面环等距离散,生成规则的人体网格模型,通过特征尺寸的调整以保证建模结果的精确度。与此同时,运用截面环数据,提取人体模型各部位的关节点,实现了由关节点驱动的人体动态建模。上述人体模型应用于服装设计及模拟,取得了良好的效果。关键词:计算机应用;服装CAD;人体建模;截面环中图分类号:TP391文献标识码:A文章编号:1003-0158(2007)01-0001-063DHumanReconstructionandAnimationinGarmentCADWANGMei1,LUGuo-dong1,ZHANGDong-liang2(1.StateKeyLab.ofCAD&CG,ZhejiangUniversity,HangzhouZhejiang310027,China;2.DigitalFashionLtd.Osaka.Japan)Abstract:Aneasywaytoconstructpersonalizedmanikinfromscannedbodydataispresented.Thefeaturepointsofscannedbodyareadjustedtotherightposition.Basedonthesepoints,cuttingplanesareallocatedtogetsectioncontoursofscannedbody,andthetrianglemeshofmanikinwithuniformsizesandregulartopologyareregenerated.Meanwhile,jointsofthebodyskeletonareextractedtorealizesimplifiedanimationofhumanbody.Keywords:computerapplication;garmentCAD;humanreconstruction;sectionloop模[2]。Dourosetal.(1999)使用B样条曲面重构三维扫描人体模型[3]。尽管曲面建模技术已经能够完整地描述人体的几何信息和拓扑关系,但对于人体动态建模仍有一定的局限性。为使三维人体动画仿真效果更佳,AHBarr(1987)提出了基于物理特性的建模(Physically-BasedModeling)思想[4],将人体的物理特性加入到其几何模型中,通过数值计算对其进行仿真,人体的行为则在仿真过程中自动确定。为了进一步体现人体生理结构的层次性,Chadwicketal.(1989)提出了“人体分层表示法”的概念[5]。在此基础上,Thalmannetal.(1996)提出一种更加高效的基于解剖学的分层建模算法来实现人体的建模与仿真。通过这种方法建立的人体模型从生理学和物理学角度都能实现更加逼真的效果。三维服装CAD系统是建立在三维人体模型上的尺寸信息提取、服装设计、虚拟试衣、动画模拟及基于互联网的订做、销售和展示等技术的集成与综合。由于服装设计的特殊性,对人体建模提出了更具体的要求:(1)为了提高系统的运行效率,虚拟人体要在保证表面特征尺寸精确度的前提下尽量简化网格结构。(2)能够实现简单且高效的人体动态建模。然而,上述几种算法均不能很好地兼顾这两方面。因此,如何将扫描人体的三维重建与人体的动态建模有效结合起来,是服装CAD系统中人体建模技术的研究重点。作者经过对服装CAD系统的分析及研究,提出一种更加简捷高效的人体建模算法,适用于该系统下的人体动态建模及服装模拟等实现过程。1数据获取及预处理三维人体数据获取是模型重建的基础,选择怎样的数据获取方法,在很大程度上决定了建模的精确度及表面效果。目前常见的有三维激光扫描、立体摄像、莫尔条纹及基于二维相片或视频的测量方法。为了满足服装设计的精确度要求,LookStailorX系统采用三维激光扫描仪获取人体表面数据点集,以三角网格形式连接数据点,并保存为.obj格式的文件。读入的人体数据经过坐标调整,已经能够显示在系统环境中。然而要重建人体模型,还需要对数据做进一步的处理,包括特征点调整[6],尺寸测量[10]等。需要说明的是,人体的特征点信息随人体数据一起读入系统。这些特征点由人为标注,难免会存在一些误差。然而一些关键特征点,如腋窝点、胯部特征点的位置误差会造成人体模型的严重变形,为了保证人体模型的表面质量,采用水平切面与人体表面网格求交所得截面环的形状特征来识别几个关键特征点。下面以腋窝点为例说明特征点识别的基本方法。如图1所示,在当前腋窝点处以水平面与扫描人体求交,得到躯干部位截面环。图1中δ为特征点与截面环上对应边界点的x向间距。若δ大于某一指定域值,如截面环1,说明特征点位置偏高,则以小步长向下移动特征点。重复以上操作,直到δ小于指定域值,则当前截面环的两边界点即为所求特征点;反之,如果当前δ已经小于指定域值,如截面环2,则向上移动特征点,直到δ大于指定域值,此时所求特征点为前一截面环的边界点。截面环1截面环2原始特征点δ图1腋窝特征点的识别对于特征点重新识别后的扫描人体,可以正确地得到人体的尺寸信息,这也正是需要的人体尺寸,称之为原始尺寸。所谓人体建模的精确度即是重建后的人体尺寸要与原始尺寸保持一致。人体尺寸主要有周长尺寸(胸围、腰围等)·2·工程图学学报2007年图3《器象显真》中的机械图样和距离尺寸(身高、肩宽等)两类。距离尺寸可以由特征点的x向或y向间距直接得到;对于周长尺寸的提取,首先经过对应特征点寻找一个水平或倾斜的截面与人体表面垂直相交,得到一个封闭的截面环,由于胸部截面环通常是向内凹陷的,先要得到它的凸包,则截面环或凸包的周长即为所求尺寸值。2基于扫描人体的三维模型重建由于读入的扫描人体网格密集,数据量庞大,不利于人体动态建模、生成衣服等处理过程,直接影响到了服装CAD系统的运行效率及稳定性。因此,将初始的以三角网格形式连接的不规则数据点集转化为规则排列的网格结构是研究的关键[7]~[9]。2.1人体表面建模LookStailorX系统中,可以暂时不考虑头部及手、脚的表面建模,这些部位并不会影响到后面的服装设计过程。由于人体躯干及四肢部位表面变化比较简单,取若干截面对人体“切片”,然后将每一截面环等距离散得到规则数据点集的方法重建人体表面,所得结果完全可以准确地描述这些部位的表面特征。建模之前,根据特征点位置将人体表面分为以下几个主要部位,如图2所示。分别对每一部位进行表面建模得到子面片,然后将几个子面片缝合即可。下面以躯干为例,说明子面片的构建过程:(1)确定截面位置及法向量对于躯干部位,由一组水平截面与人体表面求交,设截面总数为M。截面间距离由表面形状决定,在表面平坦的区域,相邻截面间距离可以适当增大,而对于表面变化较大的区域(如胸部)则应当减小截面间距。(2)规则数据点集的获取分别将每一截面与人体表面网格求交,得到一组由若干条直线段连接构成的封闭截面环。由于扫描人体网格密集,每一截面环都接近于一条光滑的曲线。将截面环按周长等分为N份,则所有等分点构成当前面片的数据点集。数据点以二维数组VM*N保存,V[m][n]表示第m截面环上的第n顶点。(3)按下述结构依次连接相邻截面环上的所有顶点,生成新的三角网格表面。图2人体各部位划分fori=0toM-2forj=0toN-1连接(1)ijijVV;连接(1)(1)ijijVV;endforendfor(4)表面光滑处理。人体各部位经过表面重建后的网格结构如图3所示,将各部位的邻接面缝合,便得到新的全身人体模型。图3三维人体表面重建第1期王媚等:服装CAD中三维人体建模技术的研究及应用·3·2.2特征尺寸调整从图3中可以看出,重建后的人体模型网格结构规则,表面形状良好,并且保持了扫描人体的表面特征。然而,对新生成人体模型测量尺寸后会发现,胸围、腰围等一些周长尺寸较原始尺寸产生一定的误差,这是由于模型重建过程中网格结构发生较大改变造成的。为了保证人体建模的精确度,还需要以原始尺寸为基准,对人体网格做进一步调整。已知新的人体模型由若干截面环构成,而对应特征点附近的截面环形状直接决定了当前人体特征尺寸(简称为当前尺寸)的大小。因此,只要找到距离特征点最近的截面环(简称为特征环),对特征环及附近的截面环进行比例缩放,如此迭代运算,直到误差减小到某一域值为止。具体算法描述如下:设目标特征点为P,对所有网格顶点ijV计算||ijVP,得到距离P最近的顶点mnV,则该点所在的截面环mL即为对应特征环。while当前尺寸与原始尺寸间的误差大于某一域值,如1.0e-5计算特征环中心点0cenNmjjVPN,其中N为特征环上的顶点总数;以cenP为基准,对特征环上所有顶点沿径向缩放n倍,其中n为原始尺寸与当前尺寸的比值;为了保证表面的光滑度,依次缩放特征环邻近的部分截面环,插值得到缩放比例;重新计算当前人体尺寸;endwhile3基于关节点的人体动态建模在实际的服装设计过程中,经常需要改变人体模型的姿势来满足不同的设计需要,这就要求系统能够实现简单的人体动态建模:动作变化不需要十分复杂,但要保证人体的表面特征及尺寸信息不变。这里采用由关节点驱动的人体动态建模。首先定义关节点为人体特征环中心点。由于特征环ID在前面处理过程中已经得到,可以方便地求取各关节点,将所有关节点连接便生成人体的骨架结构,如图5(b)所示。实现由关节点驱动的人体动态建模,关键在于如何由关节点表示人体网格的所有顶点。图4(a)中,截面M与人体相交得到截面环Slice[m],Joint1、Joint2分别为该截面环相邻的两关节点,它们的连线与M相交于P0,n为截面法向量。对于Slice[m]上任一顶点mnV,用向量0mnVPv表示。(a)Joint2Joint1P0VmnvnSlice[m]M(b)Joint1'Joint2'Slice[m]'P0'Vmn'v'n'图4网格顶点表示方法当改变某一关节点位置,只要重新确定向量v及向量起点P0便可以得到新的网格顶点。如图4(b),变形后的截面法向量n由相邻两特征环的法向量插值得到。可以求得n相对于原法向量n的变换矩阵m,则vvm。而向量起点0P可直接由两关节点位置线性插值得到。从而得到新顶点0mnVPv。同理计算得出人体网格上的其他顶点,然后按2.2节的方法调整特征尺寸,完成人体的动态建模。图5显示了一些简单的人体动态建模实例,其中图5(a)、(c)模型由原模型在xy向改变两腿及手臂展开角度后得到;图5(e)在yz向改变两腿及手臂角度,变形后的人体保持了原模型的表面特征及尺寸信息。4结论及应用作者在已有算法的基础上,
本文标题:工程图学学报
链接地址:https://www.777doc.com/doc-181427 .html