1.一种曲面细节特征保持的鲁棒的孔洞区域修复方法,具体步骤如下:
1)、检测和匹配模型孔洞区域的特征线;
2)、利用动态规划算法,构建模型孔洞区域的基曲面;
3)、给出一种曲面网格的分层加密技术,逐层将孔洞周围细节特征延续到孔洞内部;
4)、利用带特征线约束的双拉普拉斯系统对上面结果进行处理。
2.如权利要求1所述的一种曲面细节特征保持的鲁棒的孔洞区域修复方法,其特征在于:所述的步骤1)中的检测和匹配操作主要包括以下步骤:
(11)对于检测到的特征线si,给出候选集Ci中与特征线si匹配特征线的衡量标准MP:其中sj∈Ci,aj,k为sj的第k个采样点vj,k在由待匹配特征线si所拟合曲线上的投影。
对于特征线si,称使MP(si,sj)最大的sj∈Ci为si最优匹配。如果sj∈Ci的最优匹配也是si,则称(si,sj)是一个匹配对。对于特征线的匹配对,这里使用vi,0∈si,vj,0∈sj,vi,1∈si,vj,1∈sj拟合一个平面,称为特征平面。使用球面线性插值方法将特征线匹配对(si,sj)连接起来,这条线称为匹配对的桥线。
3.如权利要求1所述的一种曲面细节特征保持的鲁棒的孔洞区域修复方法,其特征在于:所述的步骤2)中的动态规划算法主要包括以下内容:
(21)定义目标函数以实现面积和法向变化的最优。假设M表示输入的带有孔洞的三角网格模型,P=[p0,p1,...,pn-1]为M上的某个多边形孔洞,其中顶点p0,p1,...,pn-1以逆时针排列。令φ(i,m,j)=(α,A)为定义在三角形Δpipmpj上的有序对(i,m,j∈{0,1,...,n-1}),其中α表示三角形△vivmvj与相邻三角形之间的最大二面角,A表示三角形△vivmvj的面积。那么基于动态规划方法的孔洞区域最优三角剖分就是极小化如下目标函数:
并且wi,j=0,如果i和j是相邻两个顶点的下标。其中0≤i<j<n。
4.如权利要求1所述的一种曲面细节特征保持的鲁棒的孔洞区域修复方法,其特征在于:所述的步骤3)中的曲面网格的分层加密技术主要包括以下步骤:
(31)提出一种分层收缩策略,把孔洞区域从外向内分成若干层,具体分层步骤如下:
101)收集模型孔洞区域的第一层,这些三角形由孔洞区域内带有边界顶点的三角形构成,如图2最外层的三角形,
102)收集模型孔洞区域第一层的内部边界,这个边界的顶点由第一层三角形在孔洞区域内部的顶点构成,或者是三角形顶点除去边界顶点的点构成;
103)对模型孔洞区域进行再次分层,即将第二步收集到的层内部边界作为新的边界,重复上面步骤101)、102)的过程,
该过程一直到新层内部边界仅为一个顶点、空集或一个退化折线段时为止;
(32)对于孔洞区域内的三角形给出一种剖分顺序和剖分方法,具体步骤如下:
201)提出一种基于特征线的优先三角形的概念将网格中三角形进行分类,优先三角形具有如下特点:a1,三角形与特征线相连;a2,三角形与特征平面相交,这里,给出一个判断三角形与特征平面相交的简单方法,首先定义顶点v的符号为:
S(v)=sign((v-p)·n),
其中n是特征平面的法向量,p是特征平面上的任意一点,则一个三角形的符号被定义为:
S(Δvivjvk)=(S(vi),S(vj),S(vk)),
那么一个三角形的符号中有零分量或异号的分量,则三角形与特征平面相交;
202)提出一种对曲面孔洞网格中三角形逐层剖分加密方法,从孔洞边界开始向孔洞中心逐层添加细节,在剖分每一层三角形时,首先剖分优先三角形,再剖分其余的非优先三角形;
对于曲面孔洞中某一层待剖分的三角形Δvivjvk,将使用一种变形的重心剖分方法对其进行加密,方法通过将三角形重心投影到由这个三角形的邻域顶点拟合的二次曲面上,然后使用投影点对三角形进行剖分,具体剖分过程如下:
第一步,使用三角形Δvivjvk邻域顶点拟合二次曲面,对于在同一层中不同种类的三角形,采取不同方法选取拟合二次曲面的邻域候选点;
如果三角形Δvivjvk是一个非优先三角形,则从三个顶点vi,vj,vk中选择到其重心G较近的两个顶点,并利用此两个顶点的邻域顶点作为候选点来拟合这个三角形相应的二次曲面;
如果三角形Δvivjvk是一个与特征平面相交的优先三角形,则选取这个三角形的两个具有相同符号的顶点为候选点;并且在匹配对的桥线上取一点为候选点,该点是到三角形的两个相同符号顶点的距离和最小的点,这些点的邻域顶点作为候选点拟合二次曲面;
如果三角形Δvivjvk是一个与不是匹配对的特征线相连的优先三角形,则首先选择在此特征线上的顶点和三角形到重心较近的顶点,然后用这两个顶点的邻域顶点作为候选点拟合二次曲面;
第二步,利用重心投影剖分三角形,将待剖分三角形Δvivjvk重心G沿着其法线方向n投影到上面方法得到的二次曲面上,即G的投影点G′为:
G′=G+αn,
其中α是重心G沿着法线方向位移,三角形Δvivjvk被剖分为3个三角形:ΔvivjG′,ΔvjvkG′和ΔvkviG′;
在对模型孔洞区域三角形进行一次剖分加密后,如果孔洞中三角形平均半径大于孔洞边界外三角形平均半径时就再一次的剖分加密,如果剖分后三角形出现狭长三角形,则对其进行翻转操作。
5.如权利要求1所述的一种曲面细节特征保持的鲁棒的孔洞区域修复方法,其特征在于:所述的步骤4)中的带特征线约束的双拉普拉斯系统主要包括以下内容:
(41)该双拉普拉斯系统为:
其中,Δ2是双拉普拉斯算子,集合H表示孔洞区域内的所有顶点,F表示孔洞区域特征线上的顶点集合,为匹配特征线的桥线上距离x最近的点。