CN100399360C - 一种三维人体模型的网格简化约束方法 - Google Patents

一种三维人体模型的网格简化约束方法 Download PDF

Info

Publication number
CN100399360C
CN100399360C CNB2006101125175A CN200610112517A CN100399360C CN 100399360 C CN100399360 C CN 100399360C CN B2006101125175 A CNB2006101125175 A CN B2006101125175A CN 200610112517 A CN200610112517 A CN 200610112517A CN 100399360 C CN100399360 C CN 100399360C
Authority
CN
China
Prior art keywords
support ring
limit
amounting
summit
current
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
CNB2006101125175A
Other languages
English (en)
Other versions
CN1908985A (zh
Inventor
王兆其
徐文彬
毛天露
夏时洪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
XIAOSHAN INDUSTRY RESEARCH INSTITUTE
Original Assignee
Institute of Computing Technology of CAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Institute of Computing Technology of CAS filed Critical Institute of Computing Technology of CAS
Priority to CNB2006101125175A priority Critical patent/CN100399360C/zh
Publication of CN1908985A publication Critical patent/CN1908985A/zh
Application granted granted Critical
Publication of CN100399360C publication Critical patent/CN100399360C/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Generation (AREA)

Abstract

本发明公开了三维人体网格模型的一种简化约束及其使用方法,包括:在人体网格模型上寻找需要添加支撑环约束的地方;为每处添加支撑环的地方,选中模型上的三个顶点,确定支撑环所在的平面;在支撑环附近的网格模型表面上搜索支撑环上的其它组成顶点,确定支撑环;根据人体模型上的边与支撑环间的关系,为边分类;根据边的不同分类,对不同类型的边采用不同的方法计算边的折合权值和边的折合位置,并采用不同的简化策略进行简化。本发明的方法具有低耦合、高质量、低复杂度的简化效果,具有很强的实用性。

Description

一种三维人体模型的网格简化约束方法
技术领域
本发明涉及计算机图形学领域,特别涉及一种三维人体模型的网格简化约束。
背景技术
对计算机生成空间的三维表面模型进行简化,是视频游戏等领域广泛使用的技术之一,可以降低模型的几何复杂度、提高场景绘制的速度。对三维表面模型进行连续简化,还可以以很少的存储量构造出复杂度连续变化的一系列简化模型,方便模型根据需要在不同复杂度之间平滑过渡,简化结果还可以在网络上以渐进的方式进行传输。三维人体模型作为安全预演、影视制作、视频游戏等领域的要素之一,其简化还有利于减少人体模型处理占用的硬件资源,提高场景中虚拟人的规模,具有广泛的应用范围和很高的使用价值。
目前,驱动三维人体表面模型运动一般采用骨骼蒙皮方法,即认为表面模型上每个顶点的运动会受到附近多个人体骨骼不同程度的影响,在各骨骼做不同旋转运动情况下形成人体的各个运动姿态,使用这种方法可以模拟各种运动中人体皮肤的变形效果,逼真性和计算效率都很高,但这种方法给人体模型的简化处理带来了麻烦。现有技术在处理骨骼蒙皮人体模型的简化时存在如下局限:
(1)、在参考文献1:“A.Mohr and M.Gleicher.Deformation sensitive decimation.TR.University of Wisconsin Graphics Group,2003.http://www.cs.wisc.edu/graphics/Gallery/DSD/_”;参考文献2:“A.Shamir,C.Bajaj,andV.Pascucci.Multiresolution dynamic meshes with arbitrary deformations.In Proceedingsof the conference on Visualization 2000:423-430”;参考文献3:“A.Shamir andV.Pascucci.Temporal and spatial level of details for dynamic meshes.In Proceedings ofVirtual Reality Systems and Techniques,2001:423-430”和参考文献4:“S.Kircher andM.Garland.Progressive multiresolution meshes for deforming surfaces.InACM/Eurographics Symposium on ComputerAnimation,2005:191-200.”中所描述的方法中都存在简化结果与具体的运动姿态耦合度高,简化结果不具有通用性的缺陷。利用上述方法得到的简化结果中,一个姿态通常只能对应一个简化结果,当前帧的简化结果不能应用到下一帧。
(2)、在参考文献5:“J.Houle and P.Poulin.Simplification and real-time smoothtransitions of articulated meshes.In Graphics Interface 2001:55-60.”;参考文献6:“D.Schmalstieg and A.Fuhrmann.Coarse view-dependent levels of detail forhierarchical and deformable models.Technical Report TR-186-2-99-20,ViennaUniversity of Technology,1999.”中所描述的方法则存在耦合度低,但逼真性和实时性较低等缺陷。如何以低耦合度,完成逼真的、实时性高的骨骼蒙皮人体模型的简化,从而应用于规模人群的驱动,是计算机图形学的研究热点和难点之一。
发明内容
本发明的目的在于克服现有技术对骨骼蒙皮人体模型做简化时,所存在的简化结果与具体的运动姿态耦合度高,简化结果不具有通用性或者耦合度低,但逼真性和实时性较低的缺陷,从而提供一种低耦合、逼真性高的网格简化约束方法。
为了实现上述目的,本发明提供了一种三维人体模型的网格简化约束方法,包括以下步骤:
1)、在人体模型的标准姿态模型上选择需要添加支撑环约束的地方;
2)、为标准姿态模型中每处添加支撑环的地方,选中模型上的三个顶点,惟一确定一个支撑环所在的平面;
3)、从步骤2)中所选定的三个顶点中选择其中的一个顶点,作为支撑环的第一个组成顶点,并在该当前顶点的邻域顶点集合内搜索新的顶点,所述的新的顶点位于支撑环所在平面或到此平面的距离在设定阈值范围内;
4)、以步骤3)中所搜索到的新的顶点为起点,重复执行步骤3)中的搜索,直到满足搜索终止条件;
5)、根据人体模型上的边与步骤1中所添加的支撑环间的关系,为所述人体模型上的边分类;
6)、根据步骤5)中对边的不同分类,对不同类型的边采用不同的方法计算边的折合权值和边的折合位置,将计算结果存放在一个堆中;
7)、根据步骤6)的计算结果,从堆中选取具有最小折合权值的边,准备进行折合;如果已经没有可供折叠的边,或者简化的结果已经达到用户的要求,则简化完成,结束操作;
8)、判断步骤7)中所选择的具有最小折合权值的边是否具备折合资格,若不具备折合资格,且当前的具有最小折合权值的边的折合权值为无穷大,则所有边都不可简化,简化过程结束;若属于不具备折合资格的其他情况,则将当前边的折合权值设为无穷大,并保存到存放边的堆中,然后跳转到步骤7),若具备折合资格,则执行下一步;
9)、根据步骤6)得到的边的折合位置,对当前边进行折合;
10)、进行折合后的更新操作,包括:边的更新操作,即对折合位置附近的其它边,如果其有端点连接到当前折合边上,则这些边因折合发生改变,依据步骤6),重新计算折合权值和折合位置;支撑环的更新操作,即若折合后的边的两个端点属于同一支撑环,则从环中删除因折合而消失的环内顶点及相关信息。
上述技术方案中,在所述的步骤1)中,为所述的人体模型的标准姿态模型上添加支撑环约束时,所添加的位置包括:
2-1)、对于腕,肘,肩,颈,头,胸,腰,髋,膝,踝关节,每个关节添加一个支撑环;
2-2)、在相邻关节之间、模型表面曲率变化大的地方,主要指胸关节以上、肩关节和颈关节以下、处于人体腋部附近的部位,每个部位添加一个支撑环;
2-3)、为人体模型上的每个环形边界添加一个支撑环。
在所述的步骤2)中,所述的选中模型上的三个顶点时,所述三个顶点的选择原则如下:
3-1)三个顶点形成的平面,其周围应分布着较多的顶点;
3-2)若支撑环所在的位置属于2-1)的情况,则环平面的法向需要考虑当前关节的直接父亲关节和直接孩子关节,如果当前关节仅有一个直接孩子关节,则环平面的法向所在直线应该介于直接父亲关节中心到当前关节中心的连线和当前关节中心到其直接子关节中心的连线中间;如果当前关节有多个直接孩子关节或无孩子关节时,将直接父亲关节中心到当前关节中心的连线作为环面的法向;
3-3)若支撑环所在的位置属于2-2)的情况,则支撑环应该环绕模型表面相应位置曲率较大的地方;
3-4)若支撑环所在的位置属于2-3)的情况,则将边界上的所有顶点都容纳到环当中;
3-5)若支撑环所在的位置属于2-1)的情况,则当前关节中心到环平面的距离应该尽可能小。
上述技术方案中,在所述的步骤3)中,所述的在当前顶点的邻域顶点集合内搜索新的顶点时,应同时满足以下条件:
4-1)、新顶点不属于任何已构造支撑环;
4-2)、新顶点到当前支撑环环面的距离在用户设定的阈值范围内;
4-3)、新顶点与环内已有顶点形成的部分环构成一个准凸多边形弧,此弧中相邻边的夹角为直角或钝角;
4-4)、新顶点和环内除当前顶点外的其它顶点之间都不存在连接当新顶点是当前支撑环上找到的最后一个顶点时,除同当前顶点相连外,还必须同当前支撑环上第一个确定的顶点相连接。
在所述的步骤4)中,所述的搜索终止条件为:
5-1)当前支撑环上的顶点数目已经超过4;
5-2)当前点的前一个顶点、当前点、搜索开始时的第一个顶点之间的夹角为直角或钝角;
5-3)步骤2)中寻找到的三个顶点都已经添加到当前支撑环中。
上述技术方案中,在所述的步骤5)中,为所述人体模型上的边分类的分类标准为:
6-1)、边的两个端点都不属于任何支撑环;
6-2)、边的一个端点属于某个支撑环,而另一个端点不属于任何支撑环;
6-3)、边的两个端点分别属于不同的支撑环;
6-4)、边的两个端点属于相同的支撑环。
在所述的步骤6)中,所述的对不同类型的边采用不同的方法计算边的折合权值和边的折合位置是指:
7-1)对于6-1)中的类别,使用基本简化算法计算边的权值和折合位置;
7-2)对于6-2)中的类别,边的折合位置为边中属于某支撑环的端点,折合权值使用基本简化算法计算;
7-3)对于6-3)中的类别,不允许此边进行折合,设定其折合权值为无穷大,无需计算折合位置;
7-4)对于6-4)中的类别,以折合后的位置必须在环面上为约束,使用基本简化算法计算折合权值和折合位置。
所述的基本简化算法为基于边折合的算法,包括Qslim算法。
在所述的步骤8)中,所述的折合资格的判断标准为:
9-1)、如果边的折合权值为无穷大,则该边不具备折合资格;
9-2)、判断若此边被折合,模型的拓扑是否会发生改变,如果是,则不具备折合资格;
9-3)、判断若此边被折合,是否会导致任何支撑环被破坏,若是,则不具备折合资格,否则具备折合资格。
本发明的优点在于:
(a)、使用该约束进行简化,其简化过程不依赖于任何具体人体运动姿态而只依赖于接受简化的人体模型本身,而同一简化结果可经过骨骼蒙皮驱动方法生成不同的运动姿态,因此实现了简化结果与运动姿态的低耦合;
(b)、简化中该约束在关节附近保留了必要模型细节,保证了简化模型经骨骼蒙皮方法驱动后的运动姿态具有低复杂度和高逼真度;
(c)、本发明所描述的骨骼蒙皮人体模型简化约束,能够生成低耦合、高质量的简化结果,满足各种实时应用的需要。
附图说明
图1为支撑环的示意图;
图2为在膝关节和踝关节添加了支撑环约束的示意图;
图3为在胸关节和肩关节之间添加支撑环约束的示意图;
图4为在人体模型上衣袖口处添加支撑环约束的示意图;
图5为单父亲单子孙关节处的支撑环的环面示意图;
图6为单父亲多子孙关节处的支撑环的环面示意图;
图7为添加好支撑环约束的人体模型的示意图;
图8为一个顶点与其邻域顶点的示意图;
图9为Qslim算法的流程图;
图10为Qslim算法结合本发明时,三维人体模型的网格简化流程图;
图11为人体模型中一个膝关节及其支撑环平面的示意图;
图12为一个实施例中在膝关节附近选择三个顶点的示意图;
图13为顶点A的邻域顶点的示意图;
图14为从顶点A的邻域顶点中选中A5作为支撑环的顶点后膝关节的示意图;
图15为A5的邻域顶点的示意图;
图16为从顶点A5的邻域顶点中选中B4作为支撑环所作面的顶点后膝关节的示意图;
图17为顶点M的邻域顶点的示意图;
图18为膝关节最后形成的支撑环的示意图;
图19A为不属于任何支撑环的顶点集合的边的两个端点在折合前的示意图;
图19B为不属于任何支撑环的顶点集合的边的两个端点在折合后的示意图;
图20A为一个端点属于某个支撑环,而另一个端点不属于任何支撑环的边在折合前的示意图;
图20B为一个端点属于某个支撑环,而另一个端点不属于任何支撑环的边在折合后的示意图;
图21为边的两个端点分别属于不同的支撑环的情况时不允许折合的示意图;
图22A为两个端点属于相同的支撑环的边在折合前的示意图;
图22B为两个端点属于相同的支撑环的边在折合后的示意图。
具体实施方式
下面结合附图和具体实施方式对本发明的方法做进一步的说明。
本发明的三维人体模型的网格简化约束方法与网格简化算法相结合,可实现骨骼蒙皮人体模型的简化。本发明的网格简化约束方法可以与多种网格简化算法相结合,在本实施例中,假设所述的网格简化算法是基于边的折合来实现模型的简化。Qslim算法是一种典型的基于边的折合的网格简化算法,在以下的描述中将本发明的网格简化约束方法与Qslim算法相结合,实现对人体模型的简化。
首先对Qslim算法进行说明。Qslim算法为模型中的每条边计算权值,用以估计和表示折合每条边时带来的误差,并按权值的大小对每条边进行堆排序;简化时,按照贪婪法从当前堆中选取权值最小的边进行折合,重复此操作直到满足用户要求或所有边都已经折合完毕。但Qslim算法只能够实现对静物模型的简化。如果单独使用Qslim算法简化人体的每个姿态,简化结果只与具体姿态一一对应,不但存储量大,而且不能为其它姿态所用(耦合度高);如果使用Qslim算法简化标准姿态的人体模型,再借助骨骼带动皮肤运动的骨骼蒙皮驱动方式从标准姿态的简化结果生成其它姿态的简化结果(耦合度低),会导致走样现象。因此,对骨骼蒙皮人体模型的简化不能直接采用Qslim算法。
结合Qslim算法和本发明提出的网格简化约束方法,则可以在保持简化结果与具体运动姿态相对独立的前提下,减少走样现象的发生,提高简化结果的质量。
结合本发明的网格简化约束方法和Qslim算法实现骨骼蒙皮人体模型简化包括两个步骤:首先,在简化之前,根据需要为模型表面多处添加支撑环约束;其次,在简化过程中,通过判断当前需要进行折合的边与支撑环约束的关系,确定具体的简化策略并进行简化。下面结合Qslim简化算法对本发明进行进一步的实施描述。
在人体模型的标准姿态模型上添加“支撑环”约束,“支撑环”约束在简化模型前添加,添加“支撑环”约束包括以下步骤:
步骤1):确定支撑环约束的个数和位置,一般包括三部分,即
a)、对于腕,肘,肩,颈,头,胸,腰,髋,膝,踝等关节,每个关节添加一个支撑环,在图2中,在人体模型的膝、踝关节上添加了支撑环;
b)、在相邻关节之间、模型表面曲率变化大的地方,主要指胸关节以上、肩关节和经关节以下、处于人体腋部附近的部位,每个部位添加一个支撑环,如图3中,在人体的胸关节以上添加了一个支撑环;
c)、对于人体模型上的环形边界,如附著在模型上的上衣袖口,为每个边界添加一个支撑环,在图4中,为人体模型的上衣袖口添加一个支撑环。
步骤2):为每处添加支撑环的地方,通过交互方式,选中模型上的三个顶点,从而惟一确定一个平面即支撑环所在的平面,其中,三个顶点的选择依据如下原则:
a)三个顶点形成的平面,其周围应分布较多的顶点,否则难以确定环内其它顶点;
b)若支撑环所在的位置属于步骤1)中的a)情况,则平面的法向需要考虑当前关节的直接父亲关节和直接孩子关节。由于人体模型中每个关节仅有一个直接父亲关节,如果当前关节仅有一个直接孩子关节,如图5所示,环面的法向所在直线应该介于直接父亲关节中心(j0)到当前关节中心(j1)的连线和当前关节中心(j1)到其直接子关节中心(j2)的连线中间;如果当前关节有多个孩子关节时,如图6,可将直接父亲关节中心(j0)到当前关节中心(j1)的连线作为环面的法向;
c)若支撑环所在的位置属于步骤1)中b)情况,则支撑环应该环绕模型表面相应位置曲率较大的地方,环面的法向因此确定;
d)若支撑环所在的位置属于步骤1)中c)情况,则应当考虑将边界上的所有顶点都容纳到环当中,环面的法向因此确定;
e)若支撑环所在的位置属于步骤1)中a)情况,则当前关节中心到环平面的距离应该尽可能小。
步骤3):任意选取三个顶点中的一个作为支撑环的第一个组成顶点,记为P1,在此顶点的所有模型表面上的邻域顶点中搜索,如果遇到的一个顶点P2满足以下条件,则认为该顶点基本上在环面上,按先后顺序添加到支撑环当中,具体条件如下:
a)、P2不属于任何已构造支撑环;
b)、P2到当前支撑环环面的距离在用户设定的阈值范围内;
c)、P2与环内已有顶点形成的部分环构成一个准凸多边形弧,此弧中相邻边的夹角为非锐角;
d)、P2和环内除P1外的其它顶点之间都不存在连接。
在上述说明中,所述的领域顶点是指一个顶点在模型表面上与其相邻接的顶点。如图8所示,顶点V有8个领域顶点,分别用1、2、3、4、5、6、7、8标记。
步骤4):以新添加的顶点Pi为起点,重复使用步骤3)中的方式继续寻找其它顶点;如果在Pi的领域顶点中发现顶点P1,并且满足以下条件,则认为支撑环寻找结束,具体条件如下:
a)当前支撑环上的顶点数目已经超过4;
b)Pi-1,Pi,P1之间的夹角为直角或钝角;
c)步骤2)中寻找到的三个顶点都已经添加到当前支撑环中。
通过上述的操作,可确定人体模型中支撑环的个数和位置,以及每个支撑环所在的平面和支撑环上的顶点。求得人体模型上的支撑环后,开始对人体模型进行简化。
图1就是一个支撑环的示意图,在该图中,从顶点V0开始,可依次寻找支撑环中的其他顶点V1、V2、V3至Vn。
结合“支撑环”约束实现骨骼蒙皮人体模型的简化,所有支撑环都已经确定后,如图7所示,开始模型的简化,在模型进行简化时,主要是要实现对边的折合,具体简化步骤如下:
步骤5):对人体模型上的边与支撑环的关系进行分类,有四种类别:
a)两个端点都不属于任何支撑环的顶点集合;
b)一个端点属于某个支撑环,而另一个端点不属于任何支撑环;
c)两个端点分别属于不同的支撑环;
d)两个端点属于相同的支撑环。
在上述说明中,所述的边是指两个顶点间的连线,如图8所示,顶点V和顶点1之间的连线就是所述的边,顶点V与其他的邻域顶点2、3、4、5、6、7、8间都存在边。
步骤6):根据分类,使用不同的方法计算边的权值,具体如下:
a)对应步骤5)中a)类别,使用标准Qslim算法计算方法计算边的权值和折合位置;
b)对应步骤5)中b)类别,边的折合位置为边中属于某支撑环的端点,折合权值使用标准Qslim算法计算;
c)对应步骤5)中c)类别,不允许此边进行折合,设定其折合权值为∞,无需计算折合位置;
d)对应步骤5)中d)类别,以折合后的位置必须在环面上为约束,结合标准Qslim算法求得新的优化解析式,据此计算折合权值和折合位置;
步骤7):选取具有最小折合权值的边,准备进行折合;如果堆中已经没有可供折叠的边,或者已经达到用户的要求(如模型的最低复杂度),则简化完成,程序退出;
步骤8):依据以下条件,判断所选择的具有最小折合权值的边是否具备折合资格:
a)如果边的折合权值为∞,则该边不具备折合资格,
b)判断若此边被折合,模型的拓扑是否会发生改变,如果是,则不具备折合资格,
c)判断若此边被折合,是否会导致任何支撑环被破坏,即不再遵循步骤1)中所设定的支撑环的定义,若是,则不具备折合资格,否则具备折合资格;
如果不具备折合资格,且属于a)的情况,则可判断出当前堆中的所有边都不可简化,因此简化结束;若属于除a)之外的其它情况,则设置其折合权值为∞,将其放回保存边的堆中,并转到步骤7);
步骤9):按标准边折合步骤和预先计算好的边折合位置,对此边进行折合;
步骤10):对一些因折合而改变的边,需要按照步骤5)和步骤6)中的分类和计算方法,重新计算折合权值和折合位置;如果边与支撑环的关系分类属于步骤5)中的d),则从环中删除因折合而消失的环内顶点及相关信息;
最后转到步骤7)进行下一条边的选取和简化。
从上述实施方案可以看出,骨骼蒙皮人体模型的简化,可分为添加支撑环约束和结合支撑环约束和基本简化算法对原始模型进行简化两个主要步骤。本实施方法通过交互方式完成支撑环约束的添加。对标准姿态的人体模型进行简化的结果具有通用性,即可以经过骨骼蒙皮皮肤变形方法,以较高的逼真度生成复杂度低的其它姿态。使用本发明增加的空间复杂度为O(n),n为模型中顶点的个数;增加的时间复杂度依赖于具体的简化算法,在本实施方案中,使用支撑环约束后,时间复杂度不变,仍为O(nlog(n)),n为模型的边数。
以膝关节为例,对其添加支撑环的过程进行说明。
如图11所示,为人体模型中一个膝关节的示意图,在人体模型上布满了由顶点和边组成的三角形。在图12中,在膝关节附近选择三个顶点,分别标记为A、B、C。这三个顶点构成了一个平面,该平面的法向符合图11中肢体的基本走向。
然后,以三个顶点中的A点开始,搜索支撑环所在平面内的点。如图13所示,顶点A有6个邻域顶点,用A1~A6表示,对6个邻域顶点到支撑环平面的距离分别进行计算,假设其中的A5到环平面的距离最小,选中A5作为支撑环所在平面内的点,选中A5后膝关节如图14所示。选定A5作为支撑环面内的顶点后,再从从A5出发,作进一步搜索。如图15所示,A5的邻域顶点有A、B1~B5,A离环平面最近,但是A已经在环平面上,因此,选择顶点B4。选中B4后的膝关节如图16所示。重复上述的搜索过程,直到选中B点的邻接顶点M后,如图1 7所示,此时M的邻域顶点有A、B、M1~M4,其中,B、A离环平面最近,由于B已经选中;若选择A,则一个环形连接已经形成,此时,检查此环形连接,符合支撑环的条件,因此,此环寻找结束,最后形成的支撑环如图18所示。
下面根据步骤5)中所描述的边与支撑环间的四种关系,对折合情况进行举例说明。
图19是对边的两个端点都不属于任何支撑环的顶点集合的情况进行折合的示意图,其中的图19A是折合前的图像,图19B是折合后的图像,对于这种情况只需要使用基本简化算法进行折合即可。
图20是对边的一个端点属于某个支撑环,而另一个端点不属于任何支撑环的情况进行折合的示意图,其中的图20A是折合前的图像,图20B是折合后的图像,对这种情况的边进行折合时,点的折合位置为在环上的端点。
图21是对边的两个端点分别属于不同的支撑环的情况进行折合的示意图,待折合边的两个端点分布在不同的环上,则禁止简化。
图22是对边的两个端点属于相同的支撑环的情况进行折合的示意图,其中22A是折合前的图像,图22B是折合后的图像。对这种情况的边进行折合时,使用带平面约束的简化方法进行简化。

Claims (9)

1.一种三维人体模型的网格简化约束方法,包括以下步骤:
1)、在人体模型的标准姿态模型上选择需要添加支撑环约束的地方;
2)、为标准姿态模型中每处添加支撑环的地方,选中模型上的三个顶点,惟一确定一个支撑环所在的平面;
3)、从步骤2)中所选定的三个顶点中选择其中的一个顶点,作为支撑环的第一个组成顶点,并在该当前顶点的邻域顶点集合内搜索新的顶点,所述的新的顶点位于支撑环所在平面或到此平面的距离在设定阈值范围内;
4)、以步骤3)中所搜索到的新的顶点为起点,重复执行步骤3)中的搜索,直到满足搜索终止条件;
5)、根据人体模型上的边与所添加的支撑环间的关系,为所述人体模型上的边分类;
6)、根据步骤5)中对边的不同分类,对不同类型的边采用不同的方法计算边的折合权值和边的折合位置,将计算结果存放在一个堆中;
7)、根据步骤6)的计算结果,从堆中选取具有最小折合权值的边,准备进行折合;如果已经没有可供折叠的边,或者简化的结果已经达到用户的要求,则简化完成,结束操作;
8)、判断步骤7)中所选择的具有最小折合权值的边是否具备折合资格,若不具备折合资格,且当前的具有最小折合权值的边的折合权值为无穷大,则所有边都不可简化,简化过程结束;若属于不具备折合资格的其他情况,则将当前边的折合权值设为无穷大,并保存到存放边的堆中,然后跳转到步骤7),若具备折合资格,则执行下一步;
9)、根据步骤6)得到的边的折合位置,对当前边进行折合;
10)、进行折合后的更新操作,包括:边的更新操作,即对折合位置附近的其它边,如果其有端点连接到当前折合边上,则这些边因折合发生改变,依据步骤6),重新计算折合权值和折合位置;支撑环的更新操作,即若折合后的边的两个端点属于同一支撑环,则从环中删除因折合而消失的环内顶点及相关信息。
2.根据权利要求1所述的三维人体模型的网格简化约束方法,其特征在于,在所述的步骤1)中,所述的在人体模型的标准姿态模型上选择需要添加支撑环约束的地方,所选择的位置包括:
2-1)、对于腕,肘,肩,颈,头,胸,腰,髋,膝,踝关节,每个关节添加一个支撑环;
2-2)、在相邻关节之间、模型表面曲率变化大的地方,主要指胸关节以上、肩关节和颈关节以下、处于人体腋部附近的部位,每个部位添加一个支撑环;
2-3)、为人体模型上的每个环形边界添加一个支撑环。
3.根据权利要求2所述的三维人体模型的网格简化约束方法,其特征在于,在所述的步骤2)中,所述的选中模型上的三个顶点时,所述三个顶点的选择原则如下:
3-1)三个顶点形成的平面,其周围应分布着较多的顶点;
3-2)若支撑环所在的位置属于2-1)的情况,则环平面的法向需要考虑当前关节的直接父亲关节和直接孩子关节,如果当前关节仅有一个直接孩子关节,则环平面的法向所在直线应该介于直接父亲关节中心到当前关节中心的连线和当前关节中心到其直接子关节中心的连线中间;如果当前关节有多个直接孩子关节或无孩子关节,将直接父亲关节中心到当前关节中心的连线作为环面的法向;
3-3)若支撑环所在的位置属于2-2)的情况,则支撑环应该环绕模型表面相应位置曲率较大的地方;
3-4)若支撑环所在的位置属于2-3)的情况,则将边界上的所有顶点都容纳到环当中;
3-5)若支撑环所在的位置属于2-1)的情况,则当前关节中心到环平面的距离应该尽可能小。
4.根据权利要求1所述的三维人体模型的网格简化约束方法,其特征在于,在所述的步骤3)中,所述的在当前顶点的邻域顶点集合内搜索新的顶点时,应同时满足以下条件:
4-1)、新顶点不属于任何已构造支撑环;
4-2)、新顶点到当前支撑环环面的距离在用户设定的阈值范围内;
4-3)、新顶点与环内已有顶点形成的部分环构成一个准凸多边形弧,此弧中相邻边的夹角为直角或钝角;
4-4)、新顶点和环内除当前顶点外的其它顶点之间都不存在连接,当新顶点是当前支撑环上找到的最后一个顶点时,除同当前顶点相连外,还必须同当前支撑环上第一个确定的顶点相连接。
5.根据权利要求4所述的三维人体模型的网格简化约束方法,其特征在于,在所述的步骤4)中,所述的搜索终止条件为:
5-1)当前支撑环上的顶点数目已经超过4;
5-2)当前点的前一个顶点、当前点、搜索开始时的第一个顶点之间的夹角为直角或钝角;
5-3)步骤2)中寻找到的三个顶点都已经添加到当前支撑环中。
6.根据权利要求1所述的三维人体模型的网格简化约束方法,其特征在于,在所述的步骤5)中,为所述人体模型上的边分类的分类标准为:
6-1)、边的两个端点都不属于任何支撑环;
6-2)、边的一个端点属于某个支撑环,而另一个端点不属于任何支撑环;
6-3)、边的两个端点分别属于不同的支撑环;
6-4)、边的两个端点属于相同的支撑环。
7.根据权利要求6所述的三维人体模型的网格简化约束方法,其特征在于,在所述的步骤6)中,所述的对不同类型的边采用不同的方法计算边的折合权值和边的折合位置是指:
7-1)对于6-1)中的类别,使用基本简化算法计算边的权值和折合位置;
7-2)对于6-2)中的类别,边的折合位置为边中属于某支撑环的端点,折合权值使用基本简化算法计算;
7-3)对于6-3)中的类别,不允许此边进行折合,设定其折合权值为无穷大,无需计算折合位置;
7-4)对于6-4)中的类别,以折合后的位置必须在环面上为约束,使用基本简化算法计算折合权值和折合位置。
8.根据权利要求7所述的三维人体模型的网格简化约束方法,其特征在于,所述的基本简化算法为基于边折合的算法,包括Qslim算法。
9.根据权利要求1所述的三维人体模型的网格简化约束方法,其特征在于,在所述的步骤8)中,所述的折合资格的判断标准为:
9-1)、如果边的折合权值为无穷大,则该边不具备折合资格;
9-2)、判断若此边被折合,模型的拓扑是否会发生改变,如果是,则不具备折合资格;
9-3)、判断若此边被折合,是否会导致任何支撑环被破坏,若是,则不具备折合资格,否则具备折合资格。
CNB2006101125175A 2006-08-22 2006-08-22 一种三维人体模型的网格简化约束方法 Expired - Fee Related CN100399360C (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2006101125175A CN100399360C (zh) 2006-08-22 2006-08-22 一种三维人体模型的网格简化约束方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2006101125175A CN100399360C (zh) 2006-08-22 2006-08-22 一种三维人体模型的网格简化约束方法

Publications (2)

Publication Number Publication Date
CN1908985A CN1908985A (zh) 2007-02-07
CN100399360C true CN100399360C (zh) 2008-07-02

Family

ID=37700090

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2006101125175A Expired - Fee Related CN100399360C (zh) 2006-08-22 2006-08-22 一种三维人体模型的网格简化约束方法

Country Status (1)

Country Link
CN (1) CN100399360C (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101782968B (zh) * 2010-02-03 2012-10-03 北京航空航天大学 基于测地模型的人体骨骼提取和朝向判定方法
CN104537635A (zh) * 2014-09-29 2015-04-22 中国科学院遥感与数字地球研究所 一种保持拓扑的土地覆被矢量数据的简化算法
CN106227924B (zh) * 2016-07-14 2017-10-10 哈尔滨理工大学 一种人体髋部模型网格划分方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5465323A (en) * 1989-09-20 1995-11-07 Association Scientifique Pour La Geologie Et De Ses Applications Method for modelling a surface and device for implementing same
US5488589A (en) * 1994-10-18 1996-01-30 The United States Of America As Represented By The Secretary Of The Navy Neural network based three dimensional ocean modeler
CN1383102A (zh) * 2001-04-25 2002-12-04 中国科学技术大学 一种三维人脸动画的制作方法
CN1430184A (zh) * 2001-12-29 2003-07-16 田捷 利用半边数据结构实现三维网格模型的简化方法
CN1734504A (zh) * 2004-08-11 2006-02-15 上海景海软件科技有限公司 一种三维物体造型方法和计算机动画和游戏角色制作方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5465323A (en) * 1989-09-20 1995-11-07 Association Scientifique Pour La Geologie Et De Ses Applications Method for modelling a surface and device for implementing same
US5488589A (en) * 1994-10-18 1996-01-30 The United States Of America As Represented By The Secretary Of The Navy Neural network based three dimensional ocean modeler
CN1383102A (zh) * 2001-04-25 2002-12-04 中国科学技术大学 一种三维人脸动画的制作方法
CN1430184A (zh) * 2001-12-29 2003-07-16 田捷 利用半边数据结构实现三维网格模型的简化方法
CN1734504A (zh) * 2004-08-11 2006-02-15 上海景海软件科技有限公司 一种三维物体造型方法和计算机动画和游戏角色制作方法

Also Published As

Publication number Publication date
CN1908985A (zh) 2007-02-07

Similar Documents

Publication Publication Date Title
JP3579148B2 (ja) 多関節体の動きを生成するように複数の動きユニットを操作する方法及びそのシステム
Kalra et al. Real-time animation of realistic virtual humans
CN103440037B (zh) 一种基于有限输入信息的虚拟人体运动实时交互控制方法
EP0804032B1 (en) Transmitter-receiver of three-dimensional skeleton structure motions and method thereof
CN103116857B (zh) 一种基于体感控制的虚拟样板房漫游系统
CN111260764B (zh) 一种制作动画的方法、装置及存储介质
CN102142055A (zh) 基于增强现实交互技术的真三维设计方法
CN105006016B (zh) 一种贝叶斯网络约束的部件级三维模型构建方法
CN106960459A (zh) 角色动画中基于扩展位置动力学的蒙皮技术及权重重定位的方法
CN102332180A (zh) 一种基于立体裁剪的三维服装造型与纸样设计方法
CN106228591B (zh) 虚拟现实超高速实时渲染方法
CN111724459B (zh) 一种面向异构人体骨骼的运动重定向的方法及系统
CN111476155A (zh) 基于时空图卷积神经网络与特征融合的人体动作分类方法
CN100399360C (zh) 一种三维人体模型的网格简化约束方法
CN102385754B (zh) 一种物体跟踪方法和设备
CN101140663A (zh) 一种服装动画计算方法
CN110189413A (zh) 一种生成衣服变形模型的方法及系统
CN112183389A (zh) 基于广角相机和深度相机的增强现实手势识别方法
Ngo et al. Accessible animation and customizable graphics via simplicial configuration modeling
CN111515959B (zh) 一种可编程木偶表演机器人控制方法、系统及机器人
Basten et al. Motion transplantation techniques: A survey
Nebel Keyframe interpolation with self-collision avoidance
Hsu et al. Planning character motions for shadow play animations
Oliveira et al. Animating scanned human models
US9111391B2 (en) Image generating device, image generating method, and non-transitory information storage medium

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: XIAOSHAN INDUSTRY INSTITUTE

Free format text: FORMER OWNER: INSTITUTE OF COMPUTING TECHNOLOGY, CHINESE ACADEMY OF SCIENCES

Effective date: 20130401

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 100080 HAIDIAN, BEIJING TO: 311215 HANGZHOU, ZHEJIANG PROVINCE

TR01 Transfer of patent right

Effective date of registration: 20130401

Address after: 311215, Hangzhou, Zhejiang province Xiaoshan District, Ning Town, civilization Road, No. 328, Jiangning building, east block, 7 floor

Patentee after: XIAOSHAN INDUSTRY RESEARCH INSTITUTE

Address before: 100080 Haidian District, Zhongguancun Academy of Sciences, South Road, No. 6, No.

Patentee before: Institute of Computing Technology, Chinese Academy of Sciences

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20080702

Termination date: 20160822

CF01 Termination of patent right due to non-payment of annual fee