一种基于非局部低秩优化的三维网格修复方法

文档序号:26502368发布日期:2021-09-04 03:12阅读:161来源:国知局
一种基于非局部低秩优化的三维网格修复方法

1.本发明涉及一种基于非局部低秩优化的三维网格修复方法,属于虚拟现实 图像图形处理技术领域。


背景技术:

2.随着现实生活中人们对于数据表达能力的要求不断提高,三维数据已经成 为继声音、图像、视频等数据形式之外的又一个重要的数据表达形式,广泛应 用于数字娱乐、文物保护、智慧城市、智能制造、虚拟/增强现实等领域。数字 娱乐领域对娱乐内容进行数字化,在游戏与动画中使用真实的三维场景与人物 来加深用户对于虚拟世界的理解程度;文物保护领域扫描文物的三维模型,对 模型进行虚拟的数字化重建,为真实的物理修复提供基础;虚拟现实构建三维 虚拟环境,增强用户沉浸感,增强现实则利用三维数据将现实相结合,实现虚 拟世界与现实世界的结合并进行互动。因此,三维数据的重要性在当今是毋庸 置疑的。而三维网格模型作为数字媒体中一种新的数据形式和信息载体,在表 示外形方面具有全面、可靠、灵活、直观等特点,是三维数据中普遍使用的一 种模型形式,因此本发明针对三维网格模型进行修复。
3.三维网格模型精度越高,越能反映出实体模型的细节特征。而在采集数据 的过程中,由于采集设备精度的限制,或者物体之间存在遮挡,人工采集时存 在抖动等因素,导致采集到的原始数据不完整,使得得到的三维网格不能直接 使用,如对室内场景进行扫描时,缺失的场景无法直接应用在场景重建及虚拟 现实中。在某些领域如三维打印,计算机辅助设计领域中应用受限,那么利用 三维网格修复得到精度较高的,保特征的三维网格模型就至关重要。
4.在保特征的三维网格修复中,现有算法如基于邻域的局部修复方法利用孔 洞邻域的信息进行三维修复,基于特征线的修复方法即利用特征线的构建和局 部信息进行三维修复等,对于简单特征的保持有较好的效果。但是对于复杂特 征,如模型上的纹理特征,现有的三维网格修复算法效果较差。
5.对于含有重复纹理特征的三维网格修复问题,有以下两大难点。
6.首先,与图像不同,三维网格是非规则的数据形式,包括网格顶点以及顶 点的连接关系。当模型表面含有孔洞时,修复孔洞不仅需要修复三维点坐标 (x,y,z),还需要对点之间的连接关系做优化与调整,三维网格模型具有的空间复 杂性使得保持重复纹理特征的修复算法难度大大提升。
7.其次,如何量化特征的重复性也是保持重复纹理特征的一大难点。在图像 中,像素点是构建图像的基本单位,衡量图像的重复性只需要对像素的重复性 做比较,即将图像的重复性问题转换为点之间的重复性问题,通过点的位置, 颜色等等信息就可以容易的判断一张图像上是否具有重复纹理特征。而三维网 格的空间复杂性与网格不规则性使得三维网格上重复纹理的描述变得更加困难。 如何根据局部几何特征,得到三维网格重复纹理的表达也是网格修复的一个关 键难点问题。因为模型的重复纹理特征是由多个三维点和
点之间的连接关系组 成的,因此本发明提出利用多个三维点和点之间的连接关系构建表面块,利用 表面块的面法向衡量三维模型表面上纹理特征的重复性。


技术实现要素:

8.本发明的目的是克服现有三维网格模型修复方法中存在的不能有效恢复孔 洞区域显著纹理特征以及优化算法复杂性的问题,提出了一种基于非局部低秩 优化的三维网格模型修复方法。
9.本发明的核心思想为:首先识别孔洞的边界,利用动态规划赋予模型完整 的连接关系及点的初值;接着以孔洞边界为依托,将模型分为大小相同的块, 将每块的点法向存入矩阵中;然后利用点法向衡量块之间的相似性,对于每个 包含孔洞点的块寻找与其最相似的k

1个块,将k个块的点法向存入矩阵中; 再对含有孔洞点顶点法向的矩阵,迭代的进行低秩矩阵恢复操作,直到矩阵中 没有未知点法向为止,并对矩阵中的点法向做平均化及归一化操作,将计算得 到的点法向赋予孔洞点;最后根据孔洞点的点法向更新顶点位置,即完成了三 维网格模型的修复。
10.一种基于非局部低秩优化的三维网格修复方法,包括:
11.一:输入残缺三维网格模型m0,m0顶点个数为nv,点集为 v={v
i
,i=0,1,

nv

1};识别其孔洞区域,得到nh个孔洞点,孔洞点集为 h={h
i
,i=0,1,

nh

1},得到nb个孔洞边界点,其集合为hb={hb
i
,i=0,1,

nb

1}; 利用动态规划赋予连接关系及点的初值得到具有完整连 接关系及点的初始位置的孔洞区域三维网格模型m;
12.作为优选,按照如下准则识别所述孔洞区域:判定只有一个邻接三角面片 的边为孔洞边界边,边界边首尾相连构成的闭合回路所包围的区域为所述孔洞 区域,通过记录孔洞区域的边界得到nb个孔洞边界点,其集合为 hb={hb
i
,i=0,1,

nb

1}。
13.作为优选,采用动态规划方法进行所述孔洞区域的三角化,初始化所述孔 洞区域的连接关系并且得到所述
14.作为优选,所述动态规划方法为网格孔洞填充方法(liepa,peter.fillingholes in meshes,proceedings of the 2003eurographics/acm siggraphsymposium on geometry processing,eurographics association,2003.)中 第4节提出的动态规划方法。
15.二:以所述孔洞区域三维网格模型m0的边界为依托,对模型进行分块操作, 将得到的每个块的所有点的点法向存入全局点法向矩阵ω
m
中;
16.作为优选,所述分块过程如下:
17.步骤2.1对每一个hb
i
,寻找其二环邻域hb2ring
i

18.步骤2.2以hb2ring
i
为依托,对每一个hb2ring
i
中的点寻找其二环邻域,将二 环邻域中的点放入块中,得到块的集合p={p
i
,i=0,1,2,

,w

1},w为块数,块大 小集合为s={s
i
,i=0,1,2,

,w

1},p
i
与s
i
一一对应,块p
i
的大小是s
i

19.步骤2.3定义标准块的大小为s,对每一个块p
i
判断大小,若s
i
<s,则对 hb2ring
i
中的点进行多环邻域的寻找,将多环邻域中的点放入块p
i
中,直到s
i
=s为 止;若s
i
>s,则
将hb2ring
i
中点的二环邻域向内收缩,逐个去除块p
i
中的点,直 到s
i
=s为止。
20.经上述最终得到了大小均为s的w个块p
i
,且块中p
i
可能含有孔洞点h
i

21.作为优选,所述ω
m
通过如下过程得到:对所述每个块p
i
(i=0,1,2,

,w

1)取 出其内所有点的点法向,孔洞点的点法向记为(0,0,0),非孔洞点的点法向记 为真实值,作为一列存储在矩阵中,得到行为3*s,列为w的点法向全局矩阵ω
m

22.三:对每一个块p
i
(i=0,1,2,

,w

1)寻找与其最相似的k

1个块 sp
i
(i=0,1,2,

,k

2),利用孔洞块及相似块的点法向构建点法向簇组矩阵行 为3*s,列为k;
23.作为优选,利用法向簇协方差(npc,normal patch covariance)距离计算 两个块之间的相似性,两个块p
i
,p
j
之间的法向簇协方差距离为d
npc
(p
i
,p
j
),其公 式如下:
[0024][0025]
其中,p
i
(i=0,1,2,

,w

1)为选定的当前块,p
j
(j=0,1,2,

,w

1,j≠i)为选中的 比较块;为p
i
的点法向均值,为p
j
的点法向均值;()
t
表示矩阵转置; c(p
i
),c(p
j
)分别为块p
i
,p
j
的点法向协方差,c(p
i
)的计算公式如下:
[0026][0027]
其中,s为选定的当前块p
i
的大小,n
l
为p
i
中第l个点的点法向。
[0028]
四:利用低秩矩阵恢复的思想对含有未知点法向的全局点法向矩阵ω
m
进行 迭代的求解,得到具备初值的全局点法向矩阵ω
i

[0029]
作为优选,所述ω
i
通过以下过程得到:
[0030]
步骤4.1对含有未知点法向的进行低秩恢复:首先记录中孔洞点法 向的位置;其次对进行奇异值分解(svd,singular value decomposition), 得到其k个特征值,取k个特征值中大于预设阈值a的特征值作为主要特征值, 并将大于a的特征值个数即矩阵秩记为r;接着利用矩阵的秩r及前r个特征值 进行矩阵重构,记得到的重构矩阵为ω
u
;最后将中对应孔洞点的点法向替 换为ω
u
中对应孔洞点法向位置的值,从而得到了具备初值的相似块点法向矩阵 [0031]
步骤4.2将w个中对应于同一孔洞位置的点法向进行平均化与归一化 操作,并使用操作后的值替换ω
m
中对应所述孔洞位置的点法向,从而得到具备 初值的全局点法向矩阵ω
i

[0032]
五:对ω
i
构建三维网格模型全局修复能量函数,通过最小化全局能量函数 得到最终修复完成的全局点法向矩阵ω
d
,所述三维网格模型全局修复能量函数 如下所示:
[0033][0034]
其中,ω
d
为预期得到的修复完成的全局点法向矩阵;μ为预设的正标量,用 于衡量能量函数中两项的平衡性;为l2范数;γ为预设的正标量,为正整 数,用于平衡特征值对函数的影响;σ(ω
d
)为ω
d
经过奇异值分解后得到的特征值 集合,集合元素为w个,σ
i

d
)为σ(ω
d
)中的第i个特征值;
[0035]
通过最小化全局能量函数使得ω
d
与ω
i
相似性最高。
[0036]
作为优选,所述ω
d
通过以下过程获得:
[0037]
步骤5.1由于三维网格全局修复能量函数中第二项为非线性 项,使用基于交替方向乘子法(alternating direction method of multi

pliers, admm)对所述三维网格模型全局修复能量函数进行优化,优化后公式如下:
[0038][0039]
其中,||
·
||
γ
为截断范数,定义如下:
[0040][0041]
其中,λ为对ω
d
进行奇异值分解后,要排除的奇异值的个数;
[0042]
a为对ω
d
进行奇异值分解后得到的左矩阵,b为对ω
d
进行奇异值分解后得到 的右矩阵,l为λ
×
λ的单位矩阵;tr(
·
)为矩阵对角线元素之和;
[0043]
步骤5.2为了解决ω
d
的优化问题,引入辅助矩阵w,应用增广拉格朗日方 法求解步骤5.1的优化公式,将全局修复能量函数转换为下式:
[0044][0045]
s.t.w=ω
d
[0046]
根据增值拉格朗日方法可以将上述约束问题转为求解如下公式的泛函鞍点 问题,l(ω
d
,w;z)为拉格朗日项,通过对拉格朗日项的求解最小化能量函数,得 到最符合期望的ω
d

[0047][0048]
s.t.z=w

ω
d
[0049]
其中,w为引入的等价于ω
d
的辅助矩阵;z等价于w与ω
d
的差,<,>为矩阵 之间的内积,β为预设的线性约束的惩罚参数,是正标量。
[0050]
作为优选,可将对所述拉格朗日项的求解转换为三个子问题,即对所述 ω
d
,w,z子问题的求解,求解过程如下:
[0051]
步骤5.2.1固定w,z,求解ω
d
子问题:
[0052][0053]
其中,为使用第k 次迭代中得到的w,z计算得到的第k+1次迭代中最符合要求的全局点法向矩阵 ω
d

[0054]
步骤5.2.2固定ω
d
,z,求解w子问题:
[0055][0056]
其中,为使用第k次迭代中得到的z和第k+1 次迭代中得到的ω
d
计算得到的第k+1次迭代中最符合要求的w;
[0057]
步骤5.2.3固定ω
d
,w,求解z子问题:
[0058][0059]
步骤5.2.4设定ω
d
,w,z的初值为:
[0060]
六:利用孔洞点初值及ω
d
中经由计算得到的孔洞点的 顶点法向更新孔洞点的顶点位置。
[0061]
作为优选,所述孔洞点h
i
(i=0,1,

,nh

1)的顶点位置通过下式计算得到:
[0062][0063]
其中,h
i

为孔洞点h
i
修复后的坐标值,为孔洞点h
i
的初值,fv为孔洞点h
i
的一环邻域内的三角面片数量,代表孔洞点h
i
一环邻域内的点集合,j是中 的点,(h
i
,j)是孔洞点h
i
的一环邻域内边集合的边,即孔洞点h
i
与点j相连的边, 代表包含边(h
i
,j)的三角面片的集合,l为中与边(h
i
,j)组成三角面片的 点,为中三个点(h
i
,j,l)组成的三角面片的面法向,h
j
为点j的坐标值。
[0064]
计算的流程如下:对组成三角面片的三个顶点(h
i
,j,l),将三个顶点的点 法向做加和平均,归一化操作,得到
[0065]
有益效果
[0066]
本发明提出了一种基于非局部低秩优化的三维网格修复方法,与现有网格 修复方法相比,具有如下有益效果:
[0067]
1.与现有网格修复方法相比,本发明将三维网格模型上的重复纹理特征以 块的低秩性来衡量,解决了重复纹理的量化表示问题;其次以非局部低秩优化 方法解决了三维修复中的保纹理特征修复问题,在恢复缺失的显著纹理特征方 面,具有明显优势。
[0068]
2.本发明所提方法在数字医疗,虚拟现实和城市重建等领域具有广泛的应 用前景。
附图说明
[0069]
图1是本发明一种基于非局部低秩优化的三维网格修复方法框架图;
[0070]
图2是本发明一种基于非局部低秩优化的三维网格修复方法的孔洞示意图;
[0071]
图3是本发明一种基于非局部低秩优化的三维网格修复方法的分块示意图;
图4是本发明一种基于非局部低秩优化的三维网格修复方法的全局点法向 矩阵及相似块点法向矩阵示意图;图5是本发明一种基于非局部低秩优化的三维网格修复方法的对含有未知 点法向的进行低秩恢复过程示意图;图6是本发明一种基于非局部低秩优化的三维网格修复方法的将w个块p
i
对应的进行平均化与归一化操作示意图;图7是本发明一种基于非局部低秩优化的三维网格修复方法的更新孔洞点 的顶点位置示意图。
具体实施方式
[0072]
下面结合附图和具体实施方式对本发明所提的一种基于非局部低秩优化的 三维网格修复方法进行描述。
[0073]
实施例1
[0074]
在虚拟现实的游戏或动画构建中,需要利用三维扫描设备得到三维场景或 三维模型,最终得到高精度的场景模型以增加用户的沉浸感。而往往初步扫描 得到的三维场景和模型存在缺陷,如场景过大,模型遮挡等等因素导致的场景 残缺和模型残缺。本实施例将针对上述虚拟现实的三维场景及模型的三维网格 进行修复,找到并赋予其三维网格模型孔洞点顶点坐标。
[0075]
如图1所示,是本发明一种基于非局部低秩优化的三维网格修复方法的流 程示意图。
[0076]
由图1看出,本发明针对输入残缺的三维场景及模型进行如下操作:
[0077]
a、输入残缺三维网格模型m0,m0顶点个数为nv,点集为 v={v
i
,i=0,1,

nv

1};识别其孔洞区域,得到nh个孔洞点,孔洞点集为 h={h
i
,i=0,1,

nh

1}。利用动态规划赋予连接关系及点的初值 得到具有完整连接关系及点的初始位置的孔洞区域三维 网格模型m;
[0078]
上述操作可通过多种方式实现,如直接三角剖分或者三角剖分后进行光滑 操作,本例通过以下过程实现:
[0079]
步骤a.1,识别模型中的孔洞区域。识别孔洞区域的准则为:判定只有一个 邻接三角面片的边为孔洞边界边,边界边首尾相连构成的闭合回路所包围的区 域为孔洞区域,如图2所示。通过记录孔洞区域的边界得到nb个孔洞边界点, 其集合为hb={hb
i
,i=0,1,

nb

1}。
[0080]
步骤a.2,采用文献1中第4节提出的动态规划方法进行孔洞区域的三角化, 初始化孔洞区域的连接关系并且得到
[0081]
文献1:liepa,peter.filling holes in meshes,proceedings of the 2003 eurographics/acm siggraph symposium on geometry processing,eurographics
ꢀꢀ
association,2003.
[0082]
b、以孔洞边界为依托,对模型进行分块操作,将得到的每个块的所有点的 点法向存入全局点法向矩阵ω
m
中。
[0083]
具体的,通过以下过程实现:
[0084]
步骤b.1以步骤a.1中识别的孔洞区域为依托,以孔洞边界向外扩散,对 模型进行分块。如图3所示。
[0085]
具体的,分块过程如下:
[0086]
步骤b.1.1对每一个hb
i
,寻找其二环邻域hb2ring
i

[0087]
步骤b.1.2以hb2ring
i
为依托,对每一个hb2ring
i
中的点寻找其二环邻域,将 二环邻域中的点放入块中。得到块的集合为p={p
i
,i=0,1,2,

,w

1},块大小集合 为s={s
i
,i=0,1,2,

,w

1}。
[0088]
步骤b.1.3定义标准块的大小为s,对每一个块p
i
判断大小,若s
i
<s,则 对hb2ring
i
中的点进行多环邻域的寻找,将多环邻域中的点放入块p
i
中,直到s
i
=s 为止;若s
i
>s,则将hb2ring
i
中点的二环邻域向内收缩,逐个去除块p
i
中的点, 直到s
i
=s为止。最终得到了大小均为s的w个块p
i
,且块p
i
中可能含有孔洞点h。
[0089]
步骤b.2利用步骤b.1中得到的w个块,对每一个块p
i
(i=0,1,2,

,w

1)取出 其点法向,孔洞点的点法向设为(0,0,0),表示其位置未知,非孔洞点的点法 向记为真实值,作为一列存储在矩阵中,得到行为3*s,列为w的点法向全局 矩阵ω
m
。如图四所示。
[0090]
c、对每一个块p
i
(i=0,1,2,

,w

1)寻找与其最相似的k

1个块 sp
i
(i=0,1,2,

,k

1),利用孔洞块及相似块的点法向构建点法向簇组矩阵行 为3*s,列为k。如图4所示。对于ω
m
,由于其含有w列,最终得到w个
[0091]
具体的,通过以下过程实现:
[0092]
步骤c.1利用法向簇协方差(npc,normal patch covariance)距离计算两 个块p
i
(i=0,1,2,

,w

1)与p
j
(j=0,1,2,

,w

1,j≠i)之间的相似性。其中,两个块p
i
,p
j
之间的法向簇协方差距离为d
npc
(p
i
,p
j
),其公式如下:
[0093][0094]
其中,p
i
(i=0,1,2,

,w

1)为选定的当前块,p
j
(j=0,1,2,

,w

1,j≠i)为选中的 比较块;为p
i
(i=0,1,2,

,w

1)的点法向均值,为p
j
(j=0,1,2,

,w

1,j≠i)的点法 向均值;()
t
表示矩阵转置;c(p
i
),c(p
j
)分别为块p
i
,p
j
的点法向协方差;c(p
i
) 的定义如下。
[0095][0096]
其中,s为选定的当前块p
i
(i=0,1,2,

,w

1)的大小,n
l
为块中点的法向,是 块中所有点法向的均值。
[0097]
现有方法中大多使用基于字典或者范例的方式来找到相似的块,通过衡量 两个模型表面上点之间距离,如欧氏距离、豪斯多夫距离等等指标来衡量模型 之间的相似性,但是对于含有孔洞的模型,缺失点对于相似性的计算有很大的 影响,通过点的距离来计算相似性显然是不合理的,因此本发明首先将模型分 块后,利用块中每个点的法向衡量块之间的相似性,将点的相似问题转换为点 法向的相似问题,极大的提升了衡量相似性的精
度。
[0098]
步骤c.2利用步骤c.1计算每个块之间的相似性,对每个块 p
i
(i=0,1,2,

,w

1),计算与块p
j
(j=0,1,2,

,w

1,j≠i)之间的法向簇协方差距离, 对得到的w

1个法向簇协方差距离进行排序,选择法向簇协方差距离较小的前 k

1个块,取出块的点法向作为一列存入矩阵中,得到块p
i
(i=0,1,2,

,w

1)与其 相似的k

1个块构建的点法向矩阵对于含有w列的ω
m
来说,此步骤将会得 到w个
[0099]
d、利用低秩矩阵恢复的思想对含有未知点法向的全局点法向矩阵ω
m
进行 迭代的求解,得到具备初值的全局点法向矩阵ω
i

[0100]
具体的,本步骤通过以下过程实现:
[0101]
步骤d.1对含有未知点法向的进行低秩恢复:
[0102]
首先记录中孔洞点法向的位置;
[0103]
其次对进行奇异值分解(svd,singular value decomposition),得到其k 个特征值,取k个特征值中大于0.1的特征值作为主要特征值,并将大于0.1 的特征值个数即矩阵秩记为r;
[0104]
在具体场景三维网格的计算中,可根据实际情况选择阈值,不限于0.1,其 主要目的就是将比较小的特征值忽略不计,使用相对较大的那些特征值。
[0105]
接着利用矩阵的秩r及前r个特征值进行矩阵重构,记得到的重构矩阵为 ω
u
;最后将中对应孔洞点的点法向替换为ω
u
中对应孔洞点法向位置的值。
[0106]
最终得到了具备初值的相似块点法向矩阵由于有w个最终可得 到w个其具体流程如图5所示。
[0107]
步骤d.2将w个块p
i
对应的进行平均化与归一化操作。
[0108]
由于同一个孔洞点h
i
的点法向可能会被包含在多个不同的块中,而最终每一 个h
i
只需要对应一个点法向,因此需要对中h
i
的点法向做平均化及归一化操 作;即:遍历找到h
i
,将其点法向做加和后平均化,接着进行归一化操作, 利用点坐标除以点的模长,更新每个h
i
的值,最后将每个中第一列点法向取 出,构建低秩矩阵恢复后的全局点法向矩阵ω
i

[0109]
具体做法是:
[0110]
首先遍历具备初值的相似块点法向矩阵对于寻找其是否包含h
i
, 若包含,则取出h
i
对应的点法向,做加和操作;接着对于接下来的均寻找是否包含h
i
,若包含,则取出h
i
对应的点法向,做加和操作;遍历完w个 块p
i
对应的后,得到h
i
最终对应的加和平均点法向;接着对该点法向做归一 化操作,利用点坐标除以点的模长,更新每个h
i
点法向的值,得到h
i
的最终点法 向;将最终点法向放入每一个包含h
i
的对应位置中,取中第一列点法向, 构建低秩矩阵恢复后的全局点法向矩阵ω
i
。以修复
包含h0的矩阵为例,其流程 如图6所示。
[0111]
e:对ω
i
构建三维网格模型全局修复能量函数,并对能量函数求解,得到 最终修复完成的全局点法向矩阵ω
d

[0112]
三维网格模型全局修复能量函数如下所示。
[0113][0114]
其中,ω
d
为预期得到的修复完成的全局点法向矩阵;μ为预设的正标量,用 于衡量能量函数中两项的平衡性;为l2范数;γ为预设的正标量,为正整 数,用于平衡特征值对函数的影响;σ(ω
d
)为ω
d
经过奇异值分解后得到的特征值 集合,集合元素为w个,σ
i

d
)为σ(ω
d
)中的第i个特征值。通过最小化全局能量 函数使得ω
d
与ω
i
相似性最高。
[0115]
具体的,本步骤通过以下过程实现:
[0116]
步骤e.1由于三维网格全局修复能量函数中第二项为非线性 项,本发明采用了基于交替方向乘子法(alternating direction method of
ꢀꢀ
multi

pliers,admm)方式对该式进行优化,优化后公式如下:
[0117][0118]
其中,||
·
||
γ
为截断范数,定义如下。
[0119][0120]
其中,λ为对ω
d
进行奇异值分解后,要排除的奇异值的个数。
[0121]
a为对ω
d
进行奇异值分解后得到的左矩阵,b为对ω
d
进行奇异值分解后得到 的右矩阵。l为λ
×
λ的单位矩阵。tr(
·
)为矩阵对角线元素之和。
[0122]
步骤e.2为了解决ω
d
的优化问题,引入辅助矩阵w,应用增广拉格朗日方 法求解步骤三的三维网格模型全局修复的能量函数,将全局修复能量函数转换 为下式。
[0123][0124]
s.t.w=ω
d
[0125]
根据增值拉格朗日方法可以将上述约束问题转为求解如下公式的泛函鞍点 问题。l(ω
d
,w;z)为拉格朗日项,本发明通过对拉格朗日项的求解来得到最符合 期望的ω
d

[0126][0127]
s.t.z=w

ω
d
[0128]
其中,;w为引入的等价于ω
d
的辅助矩阵;z等价于w与ω
d
的差。<,>为矩阵 之间的内积,β为预设的线性约束的惩罚参数,是正标量。
[0129]
可将上式转换为三个子问题即对ω
d
,w,z子问题的求解:
[0130]
步骤e.3固定w,z,求解ω
d
子问题。
[0131][0132]
其中,为使用第k次 迭代中得到的w,z计算得到的第k+1次迭代中最符合要求的全局点法向矩阵ω
d

[0133]
步骤e.4固定ω
d
,z,求解w子问题。
[0134][0135]
其中,为使用第k次迭代中得到的z和第k+1 次迭代中得到的ω
d
计算得到的第k+1次迭代中最符合要求的w。
[0136]
步骤e.5固定ω
d
,w,求解z子问题。
[0137][0138]
步骤e.6设定ω
d
,w,z的初值为:迭代次数达 到预定义阈值k时,迭代停止。
[0139]
上述过程结束时,ω
d
修复完成,三维模型上所有孔洞点的点法向为已知。
[0140]
f:更新孔洞点的顶点位置。利用孔洞点初值h0及ω
d
中经由计算得到的孔 洞点的顶点法向更新孔洞点的顶点位置。
[0141]
对于每一个孔洞点,寻找其一环邻域。此时,孔洞点与一环邻域中每一个 点存在一条相连的边。对每一条相连的边,寻找包含该边的面集合,取出面法 向,利用面法向、孔洞点初值、相连边的点坐标,通过如下公式依次更新所有 孔洞点坐标。
[0142][0143]
其中,h
i

为孔洞点h
i
修复后的坐标值,为孔洞点h
i
的初值,fv为孔洞点h
i
的一环邻域内的三角面片数量,孔洞点一环邻域的点集为其中代表孔洞点h
i
一环邻域内的点集合,j是中的点,(h
i
,j)是孔洞点h
i
的一 环邻域内边集合的边,代表包含边(h
i
,j)的面集合,l为中与边(h
i
,j)组 成三角面片的点,为中三个点(h
i
,j,l)组成的三角面片的面法向,。h
j
为j 对应的坐标值。
[0144]
计算的流程如下:对组成三角面片的三个顶点(h
i
,j,l),将三个顶点的点 法向做加和平均,归一化操作,得到
[0145]
本发明通过构建三维网格模型上表面块,优化了基于低秩的修复方法,对 含有重复纹理特征的三维网格模型进行修复。基于低秩修复的方法在图像上已 经具有成熟及广泛的应用。针对保持重复纹理特征的三维网格修复算法的难点, 本发明首先以动态规划赋
予模型完整的连接关系,接着构建模型表面块,量化 三维模型的重复纹理特征,然后优化基于低秩的修复方法,寻找模型上最相似 的块来修复孔洞。具体流程如下:首先识别孔洞的边界,以孔洞边界为依托, 将模型分为大小相同的块,把每块的点法向存入矩阵中;之后利用点法向衡量 块之间的相似性,对于每个包含孔洞点的块寻找与其最相似的k

1个块,将k个 块的点法向存入矩阵中;接着对矩阵迭代的进行低秩矩阵恢复操作,直到矩阵 中没有未知点法向为止,并对矩阵中的点法向做平均化操作;最后根据孔洞点 的点法向更新顶点位置,即完成了三维网格模型的修复。
[0146]
以上所述为本发明的较佳实施例而已,本发明不应该局限于该实施例和附 图所公开的内容。凡是不脱离本发明所公开的精神下完成的等效或修改,都落 入本发明保护的范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1