三维网格模型序列的渐变方法
【技术领域】
[0001] 本发明设及计算机图形学=维网格模型序列处理技术领域,具体设及一种=维网 格模型序列的渐变方法。
【背景技术】
[0002] 网格模型序列(mesh)是同一个对象的一组网格模型,网格模型序列中的各个网 格模型拥有不同的运动姿态,因而网格模型序列包含运动信息和几何信息。尽管网格模型 序列在数据驱动的动画领域受到了广泛的研究和应用,但目前没有关于同时混合不同的网 格模型序列的几何和运动(即网格模型序列渐变)的工作发表,只是存在少量网格模型序 列间的其他处理技术的研究工作。
[0003] Kircher等人(KircherS,GarlandM.Free-formmotionprocessing.ACM TransactionsonGraphics, 2008, 27 (2) : 12:1 - 12:13.)基于他们提出的曲面微分表不,开 发了强大的运动处理工具。该工具提供了同一模型不同变形序列间多种处理技术,如关键 帖插值、时间信号处理和运动混合等。
[0004] 但是该工具的输入是同一模型的不同形变网格模型序列,因而不适用于本发明的 应用背景。
[0005] Yang等人(YangL,XiaoC,FangJ.Multi-scalegeometricdetailenhancement fortime-varyingsu;rfaces.GraphicalModels, 2014, 76 巧):413 - 425.)提出了一种时空 渐变技术,该技术能够将静态网格模型的几何细节逐渐迁移到给定的网格模型序列上,起 到细节增强的作用。
[0006] Chen和Feng(XueChenandJieqingFeng.Adaptiveskeleton-driven cagesformeshsequences.JournalofVisualizationandComputer Animation, 2014, 25(3) :447-455)提出了自适应骨架驱动Cage的控制结构用于编码网格 模型序列,既提供了初始化ge的构造方法,又提供了骨架接口便于兼容其他动画处理技 术,同时自适应的构造方式能够提供高精度的重构质量和灵活的自动加细策略便于进一步 提供重构精度。该工作可W为网格模型序列渐变提供良好的控制结构,但该工作只是建立 起骨架驱动化ge结构,并未设及网格模型序列渐变研究。
【发明内容】
[0007] 针对现有技术的不足,本发明一种=维网格模型序列的渐变方法,该渐变方法针 对不同网格模型序列(即=维网格模型序列)同时进行几何插值和运动混合从而得到全新 网格模型序列的网格序列渐变技术。
[000引一种S维网格模型序列的渐变方法,包括如下步骤:
[0009] (1)分别构建源网格模型序列和目标网格模型序列,分别构建各个网格模型的骨 架驱动化ge结构,所述骨架驱动化ge结构包括各个网格模型对应的骨架,W及附在骨架上 的Cage;所述骨架的关节点处具有截面线;
[0010] 似根据关节点处的截面线,分别对所有网格模型进行一致性分割,并利用分割结 果对源网格模型序列中每个网格模型进行混合交叉参数化得到相应的兼容网格模型,源网 格模型序列中所有网格模型对应的兼容网格模型作为相应的兼容网格模型序列;
[0011] 做根据源网格模型序列和目标网格模型序列的关系W及兼容网格模型序列采用 重构-插值的方式获得最终动态渐变的网格模型序列。
[0012] 所述步骤(1)中针对源网格模型序列各个网格模型构建相应的骨架驱动化ge结 构包括如下步骤:
[0013] (1-1)从所述源网格模型序列中任意选取一个网格模型为参考网格模型,建立该 参考网格模型的骨架驱动化ge结构和关节点处的截面线;
[0014] (1-2)针对源网格模型序列中除参考网格模型之外的任意一个网格模型,将参考 网格模型对应的骨架和关节点处的截面线迁移到该网格模型上,并W参考网格模型的骨架 驱动化ge结构中的化ge作为源参考化ge,将源参考化ge迁移到该网格模型上得到源形变 Cage,从而得到该网格模型的骨架驱动化ge结构和关节点处的截面线。
[0015] 由于一个序列中所有网格模型具有相同拓扑,参考网格模型上的截面线和骨架可 W自然迁移到序列中其他网格模型上。
[0016] 源网格模型序列中所有网格模型构建得到的骨架集合即为源网格模型序列对应 的骨架序列。
[0017] 本发明中针对目标网格模型序列中各个网格模型构建相应的骨架驱动化ge结构 的方法与源网格模型序列相同,且目标网格模型序列中所有网格模型对应的骨架即为目标 网格模型序列对应的骨架序列集合。
[0018] 所述步骤(2)包括如下步骤:
[0019] (2-1)根据关节点处的截面线,分别对所有网格模型进行一致性分割得到相应的 分割块;
[0020] (2-。确定源网格模型序列分割得到的分割块与目标网格模型序列分割得到的分 割块的对应关系,并根据分割块的分支数确定各个分割块的类型;
[0021] (2-如针对任意一对相互对应的分割块,W源于目标网格序列的分割块为基准块, 根据分割块的类型采用不同交叉参数化方法(通过修改源于源网格模型序列的分割块的 几何形状进行交叉参数化);
[0022] (2-4)针对源网格模型序列中的每个网格模型,将该网格模型进行交叉参数化后 的所有分割块合并形成相应的兼容网格模型。
[0023] 所述步骤(2-2)中根据分割块的分支数确定各个有分割块的类型:
[0024] 若分割块分支数大于2或为终端关节点对应的分割块,则认为该分割块为第一类 分割块;
[00巧]否则,认为该分割块为第二类分割块。
[0026] 分割块的分支数指的是与该分割块相邻的分割块的数目,终端关节点对应的分割 块即分支数为1的分割块。
[0027] 作为优选,所述步骤(2-3)中对第一类分割块采用四边形基域参数化方法进行交 叉参数化,对第二类分割块采用模板拟合方法进行交叉参数化。
[002引 由于第一类分割块和第二类分割块采用不同的交叉参数化方法,为了保证边界处 的连续性,每个第二类分割块的边界上的顶点w与其相邻的第一类分割块边界的顶点为约 束,第一类分割块边界的顶点位置由局部四边形基域参数化方法确定。最后,将求解得到的 每个第二类分割块的内部顶点重投影到相应的基准块上。
[0029] 所述步骤(3)包括如下步骤:
[0030] (3-1)运动混合;确定源网格模型序列的网格模型和目标网格模型序列的网格模 型的对应关系,并对每一对相互对应的网格模型的骨架进行混合得到相应的混合骨架;
[0031] (3-2)化ge恢复;针对任意一对相互对应的网格模型,分别计算对应的混合骨架 与其中源于源网格模型序列的骨架和其中源于目标网格模型序列的骨架之间的相对变化 量,并将该对相互对应的网格模型的Cage分别按照相应的变化量进行变换得到相应的 Cage;
[003引 (3-3)网格模型恢复:针对任意一个混合骨架,利用该混合骨架W及利用该混合 骨架进行化ge恢复得到的化ge,根据对应的兼容网格模型分别构建得到相应的网格模型;
[0033] (3-4)对所述步骤(3-3)构建得到的两个网格模型进行顶点线性插值即得到最终 的网格模型,并形成动态渐变的网格模型序列。
[0034] 骨架对应关系由源网格模型序列和目标网格模型序列中的网格模型对应关系确 定。
[
0035] 对于每一次运动混合,得到的是一个混合骨架,两个化ge和两个网格模型,该两 个化ge和两个模型分别对应源网格模型序列和目标网格模型序列。鉴于该两个网格模型 具有相同的网格连通性和相似的运动,直接采用简单高效的顶点线性插值即可生成最终的 网格模型,大大提高了渐变的效率。
[0036] 作为优选,所述步骤(3-1)中采用timewa巧ing曲线方法进行运动混合。
[0037] 与现有技术相比,本发明的有益效果如下;
[003引给出了网格序列渐变的概念和解决思路,从而能够在不同网格模型序列上同时进 行几何插值和运动混合,得到新的渐变网格模型序列;
[0039] 本发明提出的处理框架是高效、通用的,除了能够解决网格序列渐变的问题,还适 用于其它动画应用场合;
[0040] 本发明提出的结合基域参数化方法和基于模板拟合方法的混合交叉参数化方法, 能够在有限特征点对前提下建立模型顶点间的可靠的一一对应;
[0041] 在本发明提出的骨架驱动化ge的形变迁移方法中,骨架为运动混合方法提供了 输入接口,骨架驱动化ge衔接了运动和几何,基于化ge变形重构了混合后运动对应的待插 值几何,从而解决了同时处理几何信息和运动信息的难题。
【具体实施方式】
[0042] 下面将结合具体实施例对本发明进行详细描述。
[0043] 本实施例中给定源网格序列、目标网格序列中的网格模型的拓扑不一致。
[0044] 一种S维网格模型序列的渐变方法,包括如下步骤:
[0045] (1)网格序列预处理:
[0046] 分别构建源网格模型序列和目标网格模型序列,分别构建各个网格模型的骨架驱 动化ge结构,所述骨架驱动化ge结构包括各个网格模型对应的骨架,W及附在骨架上的 Cage;且骨架的关节点处具有截面线。
[0047] 源网格模型序列中所有网格模型的骨架即为其对应的骨架序列。同理,目标网格 模型序列中所有网格模型的骨架即为其对应的骨架序列。本实施例中构建源网格模型序列 和目标网格模型序列对应的骨架序列的方法相同,下面W构建源网格模型序列各个网格模 型构建相应的骨架驱动化ge结构进行说明:
[0048] (1-1)从所述源网格模型序列中任意选取一个网格模型为参考网格模型,建立该 参考网格模型的骨架驱动化ge结构和关节点处的截面线;
[0049] (1-2)针对源网格模型序列中除参考网格模型之外的任意一个网格模型,将参考 网格模型对应的骨架和关节点处的截面线迁移到该网格模型上,并W参考网格模型的骨架 驱动化ge结构中的化ge作为源参考化ge,将源参考化ge迁移到该网格模型上得到源形变 Cage,从而得到该网格模型的骨架驱动化ge结构和关节点处的截面线。
[0化日]通过构建骨架驱动化ge结构为后续处理提供高层次的控制结构,将源网格序列 和目标网格序列编码为骨架驱动化ge的控制结构。具体方法详见如下参考文献;Xue化en andJieqingFeng.Adaptiveskeleton-drivencagesformeshsequences.Journalof VisualizationandComputerAnimation, 2014, 25(3):447-455。
[0051] (2)根据骨架的关节点处具有截面线所有骨架分别进行一致化分割,并利用分割 结果对源网格模型序列中每个网格模型进行交叉参数化得到相应的兼容网格模型。具体如 下:
[0化2] (2-1)根据关节点处的截面线,分别对所有网格模型进行一致性分割得到相应的 分割块;
[0053] (2-2)确定源网格模型序列分割得到的分割块与目标网格模型序列分割得到的分 割块的对应关系,并根据分割块的分支数确定各个分割块的类型;
[0054] 本实施例中根据分割块的分支数确定各个有分割块的类型依据如下原则进行:
[0055] 若分割块分支数大于2或为终端关节点对应的分割块,则认为该分割块为第一类 分割块;
[0056] 否则,认为该分割块为第二类分割块。
[0化7] (2-3)针对任意一对相互对应的分割块,W源于目标网格序列的分割块为基准 块,根据分割块的类型进行交叉参数化对其中源于源网格模型序列的分割块进行交叉参数 化;
[005引本实施例中对第一类分割块采用四边形基域参数化方法进行交叉参数化,对第二 类分割块采用模板拟合方法进行交叉参数化。
[0059] 针对每个S1分割块(第一类分割块)进行四边形基域参数化的过程如下:
[0060] (a)在当前分割块边界截面线上构建局部标架,该局部标架是将骨架根关节点处 的局部标架W旋转扭曲最小化的原则传递到此处的,利用该局部标架将截面线分割为4个 折线段并得到四个分割点;
[0061] 化)连接分割块相邻截面线上的分割点形成四边形基域网格;
[0062] (C)映射分割块的四边形基域到S1分割块表面形成四边形分片布局;
[0063] (d)采用文献KraevoyV,ShefferA.Cross-parameterizationandcompatible remeshingof3Dmodels.ACMTransactionsonGraphics, 2004, 23 (3): 861 - 869 中的交 叉参数化方法建立源网格序列中的模型和目标网格序列中的模型的每个分片间的光滑映 射,从而在目标网格序列中网格模型的参数空间重构源网格序列中网格模型的几何。
[0064] 本实施例中对每个S2分割块进行交叉参数化的思想是;对源网格序列中的网格 模型进行基于化ge的变形,变形目标是使当前分割块的几何形状逼近相对应的基准块。模 板拟合的具体方法为;
[0065] 根据当前分割块的网格互连关系和部分顶点的位置约束,通过迭代求解最小二 乘网格重构当前分割块的顶点位置。
[0066] 最小二乘网格的求解可W形式化为如下能量函数的求解:
[0067]
[0068] 公式中,L是当前分割块的拉普拉斯(Laplacian)矩阵,V'是待求解的变量(为矩 阵,其中每一行表示一个顶点的坐标的=维表示),即当前分割块的所有顶点的顶点位置, 公式第二项(即Sk€Kl|V'k-Vkl|2)是位置约束,此处采用软约束的形式,即当前分割块中 部分顶点的位置被约束为尽可能逼近基准块中的相应顶点Vk的位置,k为顶点索引(即编 号),其中K是约束顶点的索引集合。能量函数的几何意义是,在尽可能满足约束的条件下, 保持当前分割块所有顶点间的平滑和光顺。
[0069] 由于S1分割块和S2分割块(第二类分割块)采用不同的交叉参数化方法,为了 保证边界处的连续性,每个S2分割块的边界上的顶点W与其相邻的属于S1分割块边界的 顶点为约束,S1分割块边界的顶点位置已经由局部四边形基域参数化方法确定。最后,将 求解得到的每个S2分割块的内部顶点重投影到相应的基准块上。
[0070] (2-4)针对源网格模型序列中的每个网格模型,将该网格模型进行交叉参数化后 的所有分割块合并形成相应的兼容网格模型。
[0071] 本实施例中合并具体操作如下:
[0072] 由于第二类分割块的边界上的顶点W与其相邻的第一类分割块边界的顶点为约 束,第一类分割块边界的顶点位置由局部四边形基域参数化方法确定。最后,将求解得到的 每个第二类分割块的内部顶点重投影到相应的基准块上。
[0073] 将源网格序列和目标网格序列中的模型进行一致性分割,分割得到的各部分分别 采用局
部基域参数化和局部模板拟合等两种交叉参数化方法,从而建立顶点间的一一对应 关系,然后继续进行合并,得到的兼容网格模型可W理解为与相应的源网格模型(即源网 格模型中的网格模型)拓扑相同且逼近目标网格模型(即目标网格模型序列中的网格模 型)几何形状的网格模型。
[0074] (3)根据源网格模型序列和目标网格模型序列的关系W及兼容网格模型序列采用 重构-插值的方式获得最终动态渐变的网格模型序列,具体如下:
[0075] (3-1)运动混合;确定源网格模型序列的网格模型和目标网格模型序列的网格模 型的对应关系,并对每一对相互对应的网格模型的骨架通过插值对应关节的角度和骨骼的 长度得到相应的混合骨架;
[0076] 本实施例中运动混合采用经典的timewa巧ing曲线算法进行,根据两帖间的相似 度来寻找两种运动间(即一对分别源自源网格序列和目标网格序列且相对应的两个网格 模型分别代表的运动)的最佳匹配帖对,本实施例中采用两个骨架对应关节点间的欧式距 离作为相似度的度量标准。获得最佳匹配帖对后,通过插值对应关节的角度和骨骼长度构 造混合骨架。
[0077] (3-2)化ge恢复;针对任意一对相互对应的网格模型,分别计算对应的混合骨架 与其中源于源网格模型序列的骨架和其中源于目标网格模型序列的骨架之间的相对变化 量,并将该对相互对应的网格模型的Cage分别按照相应的变化量进行变换得到相应的 Cage;
[007引本实施例中相对变化量具体指的是对应骨架的局部标架的相对旋转量。
[0079] (3-3)网格模型恢复:针对任意一个混合骨架,利用该混合骨架W及利用该混合 骨架进行化ge恢复得到的化ge,根据对应的兼容网格模型分别构建得到相应的网格模型;
[0080] 根据对应的兼容网格模型分别构建得到相应的网格模型能够保证得到的网格模 型与相应兼容网格模型的拓扑相同,进而能够实现后续的顶点线性插值。
[0081] (3-4)对步骤(3-3)构建得到的两个网格模型进行顶点线性插值即得到最终动态 形变的网格模型序列。
[0082] 对于每一次运动混合,得到的是一个混合骨架,两个化ge和两个网格模型,该两 个化ge和两个模型分别对应源网格模型序列和目标网格模型序列,鉴于该两个网格模型 具有相同的网格连通性和相似的运动,直接采用简单高效的顶点线性插值即可生成最终的 网格模型,该些最终得到的网格模型组成的序列就是动态渐变的网格模型序列。
[0083] W上所述的【具体实施方式】对本发明的技术方案和有益效果进行了详细说明,应理 解的是W上所述仅为本发明的最优选实施例,并不用于限制本发明,凡在本发明的原则范 围内所做的任何修改、补充和等同替换等,均应包含在本发明的保护范围之内。
【主权项】
1. 一种三维网格模型序列的渐变方法,其特征在于,包括如下步骤: (1) 分别构建源网格模型序列和目标网格模型序列,分别构建各个网格模型的骨架驱 动Cage结构,所述骨架驱动Cage结构包括各个网格模型对应的骨架,以及附在骨架上的 Cage ;所述骨架的关节点处具有截面线; (2) 根据关节点处的截面线,分别对所有网格模型进行一致性分割,并利用分割结果对 源网格模型序列中每个网格模型进行混合交叉参数化得到相应的兼容网格模型,源网格模 型序列中所有网格模型对应的兼容网格模型作为相应的兼容网格模型序列; (3) 根据源网格模型序列和目标网格模型序列的关系以及兼容网格模型序列采用重 构-插值的方式获得最终动态渐变的网格模型序列。2. 如权利要求1所述的三维网格模型序列的渐变方法,其特征在于,所述步骤(1)中针 对源网格模型序列各个网格模型构建相应的骨架驱动Cage结构包括如下步骤: (1-1)从所述源网格模型序列中任意选取一个网格模型为参考网格模型,建立该参考 网格模型的骨架驱动Cage结构和关节点处的截面线; (1-2)针对源网格模型序列中除参考网格模型之外的任意一个网格模型,将参考网格 模型对应的骨架和关节点处的截面线迀移到该网格模型上,并以参考网格模型的骨架驱 动Cage结构中的Cage作为源参考Cage,将源参考Cage迀移到该网格模型上得到源形变 Cage,从而得到该网格模型的骨架驱动Cage结构和关节点处的截面线。3. 如权利要求2所述的三维网格模型序列的渐变方法,其特征在于,所述步骤(2)包括 如下步骤: (2-1)根据关节点处的截面线,分别对所有网格模型进行一致性分割得到相应的分割 块; (2-2)确定源网格模型序列分割得到的分割块与目标网格模型序列分割得到的分割块 的对应关系,并根据分割块的分支数确定各个分割块的类型; (2-3)针对任意一对相互对应的分割块,以源于目标网格序列的分割块为基准块,根据 分割块的类型采用不同交叉参数化方法; (2-4)针对源网格模型序列中的每个网格模型,将该网格模型进行交叉参数化后的所 有分割块合并形成相应的兼容网格模型。4. 如权利要求3所述的三维网格模型序列的渐变方法,其特征在于,所述步骤(2-2)中 根据分割块的分支数确定各个有分割块的类型: 若分割块分支数大于2或为终端关节点对应的分割块,则认为该分割块为第一类分割 块; 否则,认为该分割块为第二类分割块。5. 如权利要求4所述的三维网格模型序列的渐变方法,其特征在于,所述步骤(2-3)中 对第一类分割块采用四边形基域参数化方法进行交叉参数化,对第二类分割块采用模板拟 合方法进行交叉参数化。6. 如权利要求1~5中任意一项权利要求所述的三维网格模型序列的渐变方法,其特 征在于,所述步骤(3)包括如下步骤: (3-1)运动混合:确定源网格模型序列的网格模型和目标网格模型序列的网格模型的 对应关系,并对每一对相互对应的网格模型的骨架进行混合得到相应的混合骨架; (3_2)Cage恢复:针对任意一对相互对应的网格模型,分别计算对应的混合骨架与其 中源于源网格模型序列的骨架和其中源于目标网格模型序列的骨架之间的相对变化量,并 将该对相互对应的网格模型的Cage分别按照相应的变化量进行变换得到相应的Cage ; (3-3)网格模型恢复:针对任意一个混合骨架,利用该混合骨架以及利用该混合骨架 进行Cage恢复得到的Cage,根据对应的兼容网格模型分别构建得到相应的网格模型; (3-4)对所述步骤(3-3)构建得到的两个网格模型进行顶点线性插值即得到最终的网 格模型,并形成动态渐变的网格模型序列。7.如权利要求6所述的三维网格模型序列的渐变方法,其特征在于,所述步骤(3-1)中 采用timewarping曲线方法进行运动混合。
【专利摘要】本发明公开了一种三维网格模型序列的渐变方法,包括如下步骤:分别构建源网格模型序列和目标网格模型序列,分别构建各个网格模型的骨架驱动Cage结构,所述骨架驱动Cage结构包括各个网格模型对应的骨架,以及附在骨架上的Cage;所述骨架的关节点处具有截面线;根据骨架关节点处的截面线所有骨架分别进行一致化分割,并利用分割结果对源网格模型序列中每个网格模型进行交叉参数化得到相应的兼容网格模型;根据源网格模型序列和目标网格模型序列的关系以及兼容网格模型序列采用重构-插值的方式获得最终动态渐变的网格模型序列。本发明的渐变方法能够在不同网格模型序列上同时进行几何插值和运动混合,得到新的渐变网格模型序列,应用范围广泛。
【IPC分类】G06T19/20
【公开号】CN104881894
【申请号】CN201510278130
【发明人】冯结青, 陈雪, 谢选孟
【申请人】浙江大学
【公开日】2015年9月2日
【申请日】2015年5月26日
转载请注明原文地址:https://www.famiwei.com/read-8137655.html