基于Loop细分算法的人体模型网格平滑
第22卷 第2期 武汉科技学院学报
Vol.22 No.2
2009年3月 JOURNAL OF WUHAN UNIVERSITY OF SCIENCE AND ENGINEERING Mar. 2009
基于Loop细分算法的人体模型网格平滑
王 晖,胡新荣,汪剑春
(武汉科技学院 计算机科学与技术学院,湖北 武汉 430073)
摘 要:网格平滑是实现三维模型离散造型的主要方法。为了实现数字人体几何模型的光顺效果,本文提出一种基于Loop细分算法的三维人体模型的网格平滑方法。细分曲面是用低分辨率的控制网格和定义在控制网格上的一种细分规则来表示曲面的,它能有效改善三维人体几何模型的表面不光滑以及分辨率低的缺点。实验证明,该方法对基于参数化建模方法的、多曲率网格人体模型取得了很好的效果,实现简单高效,特征保持效果也很好。
关键词:人体模型 多边形网格 Loop细分 网格平滑
中图分类号:TH919 文献标识码:A 文章编号:1009-5160(2009)-0035-04
1 引言
近年来,随着网络及虚拟现实技术的迅速发展,三维人体建模及动画模拟已经成为计算机图形学研究的热点方向之一。现在主要采用的参数化数字人体建模方法是基于传统的几何建模方法上的一种更为抽象化的建模方法,采用几何约束来表达数字人模型的形状特征,以抽象的特征参数表达真实人复杂的外部几何特征,依托于常规的几何建模方法,使设计人员能够在更高更抽象的层面进行人体设计。用形体参数控制真实人的身体测量尺寸的好处是,操作者只需要修改形体参数的值,就可以使形体、形状改变,而不必去修改形体本身。
但由多边形面片组建的人体模型虽然具有规则的网格结构,与原始扫描人体相比,大大减少了人体模型数据量,能够极大地提高系统的计算效率,同时又保持了扫描人体的表面基本特征,但是表面不够光滑,没有真实人体圆润的感觉,不能满足实际应用的要求。
目前主要有四种方法用于光顺处理:曲率均匀[1][2][3]
法、最小能量法、信号处理法和曲面细分。曲率均匀法的目标是减少网格顶点间的曲率变化,以平均后的曲率与原曲率之间的差值来确定顶点的调整量。但此方法大都要求采样密度足够高到能忽略相邻采样点表面曲率的变化,并算法复杂度较高。最小能量法的原理是:如果曲面在小扰度下的变
________________________________ 作者简介:王晖(1985-),男,硕士,研究方向:图像处理.
基金项目:湖北省数字化纺织装备重点实验室科研项目(DTL200702).
形能越小,曲面就越光顺。参数多项式曲面的光顺通常采用这种方法。这种方法的主要问题是能量最小
[4]
化的求解过程复杂、计算量大、速度慢。Taubin用信号处理的方法将离散傅立叶变换应用到三维数据点,曲面光顺问题就转化为信号的低通滤波,由此来确定顶点沿拉普拉斯算子方向上的调整。由于拉普拉斯算子是一个线性算子,因而该方法计算简单、速度快,得到大量应用,该方法也被称作拉普拉斯光顺法。信号处理方法的关键问题是如何选取合适的参数来合理区分低通信号和噪声。主要问题[5]
是会使曲率大的局部收缩过快,而曲率小的部位又得不到补偿,曲面容易产生不希望的变形。
本文所采取的细分曲面光顺方法是通过用低分辨率的控制网格和定义在控制网格上的细分规则来表示光滑曲面的。对于给定的初始控制网格,通过运用定义在其上的细分规则,形成一个由更多的边、面、顶点组成的控制网格,重复运用这个规则,在极限时,控制网格收敛于一个光滑曲面,这就是细分曲面。
2 Loop细分曲面原理
曲线曲面造型(Curve/Surface Modeling)是计算机辅助几何设计(CAGD)和计算机图形学(Computer Graphics)的一项重要研究内容,主要研究在计算机图形系统环境下对曲线曲面进行表示、设计、显示和分析。
36
武汉科技学院学报 2009年
细分曲面是用低分辨率的控制网格和定义在控制网格上的一种细分规则来表示光滑曲面的。通过定义不同的细分规则,可以生成不同细分曲面(Loop细分曲面、Catmull-Clark细分曲面、Doo一Sabin细分曲面等),可以达到不同的连续阶(G1连续、G2连续等),可作用于不同类型的控制网格(如三角形控制网格、四边形控制网格等)。目前细分算法种类繁多,Loop细分算法以其细分规则简单,连续性好(在正则点处达到G2连续,在奇异点处达到G1
连续),且是基于三角形控制网格的细分算法而得到广泛应用。
Loop细分算法从一个初始控制网格M=Mr
始,每个细分步骤把网格Mrr
变成Mr+1
开
。设控制网格M中的一个控制顶点具有邻域vr
r
vr1,v2Mr+1中的控制顶点vr+1r,…,
n,则是由M中控制
顶点vrr
r1,v2,…,vn通过仿射线性组合计算得到
的。
图1
顶点规则
图2 边规则
在细分时,相应于初始控制网格的每个控制顶点,需要计算一个新的控制顶点,这个新的控制顶点称为顶点点;相应于初始控制网格的每条边要计算一个新的控制顶点,这个新的控制顶点叫做边点。设v
r+1
表示Mr+1
中相应于Mr中控制顶点r
的顶点点,vr+1
v
i
表示Mr+1
中相应于
vrvr1Mri的边点,则顶点点vr+和边点vr+1
中的边i
可通过
下面规则计算得到:
vr+1=(1 a(n))vr+
a(n)ra(nnv)r1+…+n
vn (2-1)
v
r+1
=3vr+3vri+vri 1+vri+1i
8
,(i=1,…,n) (2-2)
这里v的下标以n为模,
a(n)=
58 (38+1
4cos(2πn))2,式(2-l)、(2-2)可以用图1、图2表示。
为了使得Loop细分算法适合本文所采用的数据结构,本文对Loop细分算法进行了整理,给定一个三角形控制网格,一次Loop细分可分为以下三个步骤:
(1)对控制网格每个控制顶点,计算顶点点,顶点点计算规则为式(2-1)。
(2)对控制网格每一条边,计算边点,边点计算规则为式(2-2)。
(3)对控制网格每一个面,通过如图3所示的连
接方式,生成四个新面。
图3 边点连接方式
需要特别说明的是:Loop细分算法一般是针对
封闭控制网格。 3 算法实现
参数化数字人体建模根据人体着装时服装与人体表面接触的特点和人体的整体结构特征,将人
体模型分为肩部、躯干、上肢和下肢4个部分[6]
,每层有各自的数据结构和造型方法。它使得人体模型的曲面建模更加灵活,可以针对人体模型不同部位的几何特征,选择最适合的曲面建模方法,而不必拘泥于某一种曲面表达方式。此外, 还可较方便地改进人体模型建模方法,利于实现人体模型的个性化。经过表面重建后的人体模型具有规则的三角网格结构,与原始扫描人体相比,大大减少了人体数据量,能够极大地提高系统的计算效率,同时又保持了扫描人体的表面基本特征。但它的缺点在于人体几何模型表面不够光滑,分辨率低,因此本文决定采用基于三角形控制网格的Loop细分方法来进行改善。
在算法设计过程中采用了以下思路: 3.1 设计合适的数据结构
第2期 王晖,等:基于Loop细分算法的人体模型网格平滑
37
表示细分曲面其实只需要两个类:顶点类(CMyShape类)以及三角面类(CIndex类)。顶点类中 …… 此处隐藏:4422字,全部文档内容请下载后查看。喜欢就下载吧 ……
相关推荐:
- [政务民生]2013年公共基础知识热点问题(七)
- [政务民生]检验检测机构资质认定评审准则及释义20
- [政务民生]关于印发重庆市房屋建筑和市政基础设施
- [政务民生]1、隧道洞身开挖支护施工技术交底书
- [政务民生]2015年山东省17地市中考语文试题分类汇
- [政务民生]2-高级会计师资格考试和评审流程图
- [政务民生]2018版中国清分机行业发展分析及前景策
- [政务民生]新课改高中政治探究
- [政务民生]2018-2024年中国新型组合房屋行业投资
- [政务民生]2015年上海市春季高考数学模拟试卷五
- [政务民生]灌砂法及环刀法测压实度(带计算过程)
- [政务民生]运筹学实验2求解非线性规划
- [政务民生]劝学、逍遥游默写(教师卷)
- [政务民生]《运筹学》 - 期末考试 - 试卷A - 答案
- [政务民生]八年级英语下册 Module 6 Hobbies测试
- [政务民生]2019年宪法知识竞赛试题库100题(含答
- [政务民生]自动化英文文献翻译
- [政务民生]公文格式实施细则
- [政务民生]高一地理上册课堂跟踪练习题6
- [政务民生]会计继续教育习题及答案
- 第三章 无约束最优化方法
- 泛读教程第三册答案
- 魏晋南北朝文学
- 幂的运算复习题
- 城市环境问题的成因与治理策略_以社会
- 钢结构行业产业链及竞争分析研究
- 新型热塑性弹性体增韧聚丙烯的研究
- 中国旅游地理B卷试题及答案
- (苏教版)五年级数学上册第三单元测试卷
- 不稳定性心绞痛诊断与治疗
- 俞氏国际后勤职能部门绩效考核办法
- GB7258-2017新标准考试题含答案
- 小学生汉字听写比赛活动方案
- 1.3《平抛运动》学案 教科版必修2
- 2011香港特别行政区公务员考试复习资料
- 考虑水力条件变化的城市给水管网可靠性
- 表面活性剂在油田开发和生产中的应用
- ITT内部培训资料-FI端吸泵的介绍
- 文明守纪,从我做起学生发言稿
- 初中读《聊斋志异》心得体会800字范文




