一种用于参数曲面拟合的三角网格重参数化方法与流程

文档序号:18065088发布日期:2019-07-03 03:20阅读:412来源:国知局
一种用于参数曲面拟合的三角网格重参数化方法与流程

本发明涉及三角网格参数化方法领域,尤其涉及一种用于参数曲面拟合的三角网格重参数化方法。



背景技术:

参数曲面建模与造型技术是计算机辅助设计(cad)领域的核心技术之一,工业中常用的参数曲面包括贝塞尔曲面、b样条曲面、nurbs曲面、t样条曲面等。参数曲面的拟合算法用于从点云、网格等模型中获取表示相同几何形状的参数曲面模型,由于其计算速度快,适用性广而被广泛应用于逆向工程等领域。对于参数曲面拟合问题,拟合精度通常是衡量拟合结果优劣的一项重要标准。

参数曲面拟合通常以三角网格作为输入,通过调和映射、重心坐标映射等方法将三角网格参数化到参数空间中的矩形区域,并以此建立三角网格与参数曲面参数域之间的映射关系,进而以三角网格顶点作为拟合数据点,通过最小二乘等方法求得拟合的参数曲面。然而,当三角网格形状较为复杂时,通过初始参数化建立的映射通常不能很好的表示三角网格与曲面之间的对应关系。为了获得更高精度的拟合结果,参数曲面拟合的重参数化方法根据初始参数化拟合得到的曲面作为参考,通过调整各个网格顶点的参数坐标得到新的参数化结果,进而以新的参数化进行拟合,获得更高精度的拟合曲面。然而,这种重参数化方法可能导致映射到参数空间中的网格发生重叠,或是在某些区域产生较大的参数化变形,导致拟合的结果恶化。另一方面,引入全局的修正系数以调节各个顶点参数坐标的修正量可以避免重参数化中潜在的网格重叠问题,但这种方式会降低重参数化改善拟合精度的效率。

对于参数曲面拟合,目前并没有一种高效且可靠的重参数化方法,能够在保证重参数化对拟合精度的提升效果的同时避免参数空间网格重叠等不良影响。



技术实现要素:

为了解决背景技术中的问题,本发明提出了一种用于参数曲面拟合的三角网格重参数化方法,通过独立调节三角网格每个顶点的修正系数大小,在避免造成参数空间网格重叠以及引入过大的角度扭曲的同时,确保重参数化的效果,经过重参数化修正的参数化三角网格可以用于参数曲面拟合,进而获得精度更高的拟合结果。

本发明的技术方案如下

本发明包括如下步骤:

步骤1:通过三维扫描仪对现有产品进行扫描得到产品的三角网格模型,并利用调和映射参数化方法对三角网格模型进行参数化,获得初始参数化三角网格,以初始参数化三角网格作为初始模型,建立模型输入坐标系,初始参数化三角网格通过t样条曲面自适应最小二乘拟合算法拟合获得参数曲面。

步骤2:初始参数化三角网格的每个顶点di映射到参数曲面的参数空间后对应一个映射点qi,并映射到参数曲面上对应一个曲面点s(qi),然后根据参数曲面计算参数空间的修正向量ri。

初始参数化三角网格的每个顶点di=(xi,yi,zi),xi,yi,zi分别表示顶点di在模型输入坐标系下的三维坐标。

映射点qi=(ui,vi),ui,vi分别表示映射点在参数空间下的二维坐标。

所述的参数空间为初始参数化三角网格参数化过程中建立的一个二维平面。

步骤3:每个初始参数化三角网格中的顶点di均对应有一个修正系数αi,初始化每个初始参数化三角网格中的顶点di的修正系数αi,根据每个初始参数化三角网格中的顶点di的修正向量ri与修正系数αi获取顶点di重参数化后的新映射点qi*

步骤4:循环检验每个初始参数化三角网格中的三角形重参数化后的结果,对于重参数化后的结果不满足限制条件的三角形,调整不满足限制条件的三角形顶点di的修正系数αi,直至所有三角形满足限制条件。

步骤5:将初始参数化三角网格中所有顶点di的映射点qi更新为各自重参数化后的新映射点qi*,输出新的参数化结果,利用新的参数化结果再次进行参数曲面拟合最终得到更高精度产品模型,输出新的参数化结果。

所述步骤2中计算修正向量ri的具体步骤为:

步骤2.1:根据下述公式计算初始参数化三角网格中每个顶点di的误差向量ei:

ei=di-s(qi)

其中,ei为初始参数化三角网格中每个顶点di的误差向量;di为初始参数化三角网格的顶点,s(qi)为参数曲面上的曲面点;

步骤2.2:将步骤2.1)得到的误差向量ei投影到参数曲面在曲面点s(qi)位置的切平面上,得到切向误差向量

步骤2.3:获取参数曲面在曲面点s(qi)上分别对参数空间的两个坐标参数u、v求偏导得到的切向量su(qi)和sv(qi);

步骤2.4:根据下述公式分别得到沿两个坐标u、v方向的参数修正量δui、δvi:

其中,为切向误差向量,su(qi)、sv(qi)为参数曲面在曲面点s(qi)上分别对参数空间的两个坐标参数u、v求偏导得到的切向量;

根据参数修正量δui、δvi组成得到顶点di的修正向量为ri,ri=(δui,δvi)。

所述步骤2.4中,若映射点qi沿u方向的坐标位于参数曲面原象的边缘,则参数修正量δui为0;若映射点qi沿v方向的坐标位于参数曲面原象的边缘,则参数修正量δvi为0;所述参数曲面的原象为在参数空间中建立的以坐标为0≤u,v≤1的矩形区域。

所述步骤3具体包括以下步骤:

步骤3.1:将每个初始参数化三角网格中的顶点的修正系数αi全部初始化为集合ω中的最大值;所述集合ω表示有限离散值集合,为0-1的离散值。

步骤3.2:根据下述公式得到每个初始参数化三角网格中的顶点di重参数化后的新映射点qi*

qi*=qi+αiri

其中,qi*为顶点di重参数化后的新参数坐标qi*,qi为顶点di映射到参数曲面的参数空间后对应一个映射点,ri为参数空间的修正向量,αi为修正系数。

所述步骤4具体包括以下步骤:

步骤4.1:将初始参数化三角网格中的所有三角形放入检查队列φ中,原始的检查队列φ是空队列;

步骤4.2:获取检查队列φ中其中一个三角形,若三角形的重参数化结果同时符合限制条件1和2,则将其从检查队列φ中移除;若三角形的重参数化结果不符合限制条件1或2,则调整减小三角形各个顶点di的修正系数αi,直至限制条件1和2均被满足,随后将其从检查队列φ中移除;

步骤4.3:将与步骤4.2中的三角形拥有公共顶点的其他三角形加入到检查队列φ尾部;

步骤4.4:重复步骤4.2~4.3直至检查队列φ中没有需要检查的三角形。

所述步骤4.2中调整减小三角形各个顶点di的修正系数αi的方法为:

s1:比较三角形三个顶点的修正系数的取值大小,选取三个修正系数中的最大修正系数,并将最大修正系数减小为集合ω中小于最大修正系数的最大取值;

s2:再次检验三角形是否同时符合限制条件1和2,若仍然不符合,则重复步骤s1,直至三角形同时符合限制条件1和2;由于修正系数αi的取值为大于0小于1的有限个离散值,且当三角形顶点修正系数均为0时其必定满足限制条件,因此该过程能在有限次循环内停止。

所述步骤4.2中的限制条件1和2具体如下:

限制条件1:对于三角形三个顶点的参数空间映射点q1、q2、q3以及重参数化后的映射点q1*、q2*、q3*满足[(q2-q1)×(q3-q1)]·[(q2*-q1*)×(q3*-q1*)]>0的条件;

限制条件2:三角形重参数化前后的类保角扭曲度量分别记为l与l*,三角形重参数化前的类保角扭曲度量l在重参数化后的增长不得超过最大允许增长比例k,即l*≤kl。

本发明的有益的效果是:

1)本发明利用了限制条件约束重参数化的结果,避免重参数化造成三角网格重叠、大角度变形等问题,保证了重参数化结果的质量,重参数化的结果可用于参数曲面拟合并获得更高精度的拟合结果。

2)本发明通过迭代检验的方式,实现了三角网格中每个顶点重参数化修正系数的独立调节,避免由于三角网格局部的重叠倾向阻碍全局重参数化的进行,保证了重参数化的全局高效。

附图说明

图1为本发明方法的流程图;

图2为实施例中修正向量计算说明图;

图3为实施例中调整修正系数的说明图,图(a)为三角网格在参数空间中的投影,图(b)、图(c)、(d)、(e)依次为对图(a)中三角形t进行修正系数调整过程中的三个不同瞬间的重参数化结果;

图4为实施例中由实物扫描获得的三角网格模型;

图5为实施例中的三角网格模型的初始参数化结果;

图6为实施例中根据参数化三角网格模型拟合获得的参数曲面。

具体实施方式

为了更为具体地描述本发明,下面结合附图及具体实施方式对本发明的技术方案进行详细说明。

本发明用于参数曲面拟合的三角网格重参数化方法流程图如图1所示,具体实施步骤如下:

步骤101:获取参数化三角网格,生成参数曲面并设定算法参数。

通过三维扫描仪对现有产品进行扫描得到产品的三角网格模型,并利用调和映射参数化方法对三角网格模型进行参数化,获得初始参数化三角网格,以初始参数化三角网格作为初始模型,建立模型输入坐标系,然后根据初始参数化三角网格通过t样条曲面自适应最小二乘拟合算法拟合获得参数曲面。输入的三角网格被初始参数化到参数空间中0≤u,v≤1的矩形区域内。参数曲面的参数域同样为0≤u,v≤1。设定的算法参数包括:类保角扭曲度量的最大允许增长比例k,通常设置为1.1~2;修正系数αi的离散化步长t通常设置为0.01~0.1,且0≤αi≤1,若离散步长设置为0.1,则αi的取值范围为{0,0.1,0.2,0.3,……,1},该离散的取值集合记为ω。

步骤102:计算三角网格每个顶点的修正向量ri。

修正向量ri通过对误差向量的分解获得,图2为误差向量分解的示意图。首先,对于三角网格的顶点di和其在参考曲面上的对应点s(qi),有误差向量ei=di-s(qi)。将误差向量ei投影到参考曲面在点s(qi)位置的切平面上,可得切向误差向量计算参考曲面在点s(qi)上对于参数u、v的切向量su(qi)和sv(qi),根据等式可解出δui、δvi的值。则顶点di的修正向量为ri=(δui,δvi)。特别的,对于位于参数域边界的网格顶点,为使其重参数化后仍位于参数域边界上,规定:若ui=0或1,则δui=0;若vi=0或1,则δvi=0。

步骤103:初始化每个三角网格顶点的修正系数。

修正系数αi可选的取值集合为ω,在初始化阶段,所有修正系数αi均被设置为ω中的最大值,对于ω={0,0.1,0.2,0.3,……,1},则将αi初始化为1。

步骤104:循环检验每个三角形网格的重参数化结果,对于重参数化结果不满足限制条件的三角形,调整其顶点的修正系数,直至所有三角形满足限制条件。

首先将所有三角形放入检查队列φ中,取出φ中的一个三角形记为t,t的三个顶点分别记为d1、d2、d3,三个顶点在参数空间的映射点分别记为q1=(u1,v1)、q2=(u2,v2)、q3=(u3,v3),三个顶点的修正向量记为r1、r2、r3,顶点的修正系数记为α1,α2,α3。根据顶点的修正向量与修正系数,可以计算各个顶点重参数化得到的新参数坐标qi*=qi+αiri。

对于三角形t,首先检验限制条件1,即计算不等式[(q2-q1)×(q3-q1)]·[(q2*-q1*)×(q3*-q1*)]>0是否成立,若不等式不成立,则当前的重参数化会导致参数空间的网格重叠,三角形t视为不满足限制条件;若三角形t满足限制条件1,则进行限制条件2的检查,计算重参数化前后三角形t的类保角扭曲度量l与l*,若l*≤kl不成立,则当前的重参数化会导致较大的角度变形,t视为不满足限制条件,否则,三角形t满足限制条件。

其中,类保角扭曲度量的计算方法如下:

对于三角形t,根据各个顶点的欧式空间坐标和参数坐标,可以通过重心坐标映射定义由三角形参数空间映射到其自身的仿射变换变换的雅可比矩阵为:

雅可比矩阵中系数的计算方法为:

其中a=[(q2-q1)×(q3-q1)]/2。

对雅可比矩阵进行奇异值分解,得到绝对值较大的奇异值γ和绝对值较小的奇异值γ,则对于三角形t的参数化,其类保角扭曲度量为l=γ/γ。

根据限制条件检验的结果,若三角形t满足限制条件,则将三角形t从检查队列φ中去除,并从检查队列φ中取出下一个三角形进行限制条件检验。若三角形t不满足限制条件,则对三角形t的顶点的修正系数进行调整,比较α1、α2、α3的取值大小,选取最大的修正系数,并将其减小为取值集合ω中小于该修正系数当前值的最大取值。如,若ω={0,0.1,0.2,0.3,……,1},α1=0.7、α2=0.7、α3=0.3,α1和α2同为取值最大的修正系数,因此对α1和α2进行调整,经过一次调整后的修正系数为α1=0.6、α2=0.6、α3=0.3。图3为修正系数调整的示意图,其中图(a)为三角网格在参数空间中的投影并标注了各个顶点的修正系数,图(b)为图(a)中的三角形t的各个顶点及其对应的修正向量,图(c)、(d)、(e)依次为对图(a)中三角形t进行修正系数调整过程中的三个不同瞬间的重参数化结果。

在对三角形t进行修正系数调整后,再次进行限制条件1、2的检查,若三角形t仍不满足限制条件,则再次对其进行修正系数调整,直至其通过限制条件检查。当三角形t经过调整后满足了限制条件,将三角形t从检查队列φ中移除,并将所有与三角形t有公共顶点的三角形加入检查队列ф中。

重复调整过程直至检查队列φ中已无待检查的三角形,则结束步骤104步骤105:输出重参数化结果。

对于三角网格中的所有顶点,将其在参数空间的对应位置qi用qi*代替,则得到重参数化后的三角网格参数化映射。该输出结果可以被用于进行参数曲面拟合,获得比初始参数化拟合得到的参数曲面精度更高的拟合结果。

具体实施案例:海豚摆件产品实物模型的数字重建与制造。

现有一个海豚摆件产品实物模型,需要依据此实物模型制造相同的产品,但相应的数字模型文件缺失,因此需要根据实物进行高精度的数字模型重建。

首先通过三维扫描仪对实体进行三维扫描获得三角网格模型,该三角网格包含53120个三角形与27054个网格顶点,三角网格模型如图4所示。利用调和映射参数化方法将三角网格初始参数化到参数空间中0≤u,v≤1的矩形区域内,三角网格映射到参数空间的结果如图5所示。依据初始参数化三角网格进行t样条曲面自适应最小二乘拟合,得到一张t样条参数曲面,该参数曲面如图6所示。

将参数化三角网格以及拟合的到的t样条参数曲面作为重参数化方法的输入,并设定类保角扭曲度量的最大允许增长比例k为1.2,修正系数αi的离散化步长t为0.01。依照上述步骤101-105,可获得重参数化后的三角网格参数化映射。根据此结果,用输入的样条曲面再次进行最小二乘拟合,得到最终的参数曲面模型。根据此最终的参数曲面模型可以进行3d打印或铣削成型,获得新的海豚摆件产品。

对比初始拟合得到的参数曲面和最终的参数曲面,其最大拟合误差由0.988mm下降到0.819mm,拟合的均方根误差由0.121mm下降到0.082mm。由此可见,通过在逆向工程模型重建方法中运用本文所述的重参数化方法,可以显著提高根据实物模型进行计算机模型重建以及逆向工程制造结果的精度。

以上所述的具体实施方式对本发明的技术方案进行了详细说明,应理解的是以上所述仅为本发明的最优选实施例,并不用于限制本发明,凡在本发明的原则范围内所做的任何修改、补充和等同替换等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1