光学 精密工程  2018, Vol.26 Issue (11): 2863-2872   PDF    
形状约束的样本填充式三维模型修复
耿国华, 余凡, 杨稳, 刘晓宁     
西北大学 信息科学与技术学院, 陕西 西安 710127
摘要: 为解决不完整三维模型修复过程中孔洞形状不规则、现有方法曲面配准精度不高的问题,提出一种能够有效保持孔洞边界过渡自然并恢复模型表面细节特征的模型修复方法。首先,追踪所有1-邻域边和1-邻域三角形数量不相等的点来探测模型的孔洞边界。设计一种基于二维网格数量的算法确定不完整模型的匹配候选集,同时根据双稀疏表示的三角网格顶点位置误差、边平滑误差和正交约束来预测最优匹配模型;然后,结合边界顶点的曲率、边界轮廓线折角的余弦值及相邻边界点的线段长度构造能有效表达不完整模型与碎块模型之间对齐关系的特征点描述子;最后,使用二阶伞算子来平滑模型的修补边界。实验结果表明,模型修复时间节省19%~26%,模型修复误差平均下降35%。该方法打破了当前模型修复方法中修复裂缝大且难以实现模型表面细节的局限性,可快速有效地实现破损模型的修复。
关键词: 模型修复      模型轮廓      模型相似度      形状约束      非刚性变换     
Three-dimensional model restoration with shape-constrained sample filling
GENG Guo-hua , YU Fan , YANG Wen , LIU Xiao-ning     
College of Information Science and Technology, Northwest University, Xi'an 710127, China
*Corresponding author: GENG Guo-hua, E-mail:ghgeng@nwu.edu.cn
Abstract: To solve the problems of irregular hole shape and low accuracy of surface registration in an incomplete 3D model-repair process, a model-repair method was proposed to effectively maintain the natural hole boundary and restore the model surface details. First, we traced all points with unequal numbers of one-neighborhood edges and one-neighborhood triangles to detect the hole boundaries of the model. A method based on 2D mesh numbers was proposed to determine the matching candidate set for the incomplete model, and the optimal matching model was predicted based on the vertex-position error, edge-transition error, and orthogonal constraint, which were represented by double sparstiy. Then, the curvature was combined, cosine value of the boundary contour angle, and length of the line segments of the adjacent boundary points centered on the same boundary vertex to construct the feature descriptors that can effectively express the alignment relationship between the incomplete and fragmented models. Finally, the second-order umbrella operator was used to make the repair boundary of the model smooth. The experimental results demonstrate that the repair time is reduced by 19%-26% and the repair error is reduced by 35%, on average. This method avoids the limitations of large cracks and poorly realized surface details of the current model-restoration methods and can quickly and effectively repair the damaged model.
Key words: model restoration     model contour     model similarity     shape constrained     non-rigid transformation    
1 引言

利用三维扫描仪重建三维模型目前成为虚拟现实中的热门研究方向,其所建模型能够表现出高度的真实感。但由于以下三个原因,仅采用数据获取设备的方法无法得到完整的三维模型:(1)长期的风化侵蚀导致模型碎块的缺失;(2)模型碎块在拼接、对齐等后期处理中经常丢失特征数据;(3)复杂的物理结构导致难以充分扫描模型某些部位,如兵马俑的腋下和肋骨间的内腔。因此,保持模型表面细节特征的不完整模型修复成为模型复原中的研究热点。

当前的模型修复算法主要分为孔洞修复[1-7]和结构性修复[8-15]。孔洞修复主要根据孔洞周边信息预测并拟合孔洞内部特征;结构性修复主要针对特征缺失严重的非闭合模型,进行模板修复。

Xu等[1]用自适应多精度拟合方法来修复三维数据中存在的孔洞,但该方法仅适用于头部等特征显著的物体建模。杜佶等[2]使用径向基函数建立用于表达孔洞区域的隐式曲面方程,但该算法目前仅解决了单一形状的孔洞修补问题,而实际问题中有很多种形式的孔洞。吴晓军等[3]基于可见外壳与多视图三维点云的有机融合实现多视图立体三维重建,该算法有效地解决了物体表面缺乏纹理情况下的孔洞修补问题,但该方法未考虑曲率参数权重大小和是否使用曲率约束的自主选择性。刘震等[4]根据匹配特征线信息,利用区域分层收缩策略从孔洞区域边界开始向区域中心逐层添加曲面细节,但该方法仅考虑了单连通区域的孔洞模型而没有考虑复杂拓扑结构情形。Leong等[5]和Borodin等[6]通过直接三角化缺失的区域来填充孔洞,Liepa等[7]提出一种基于最小化二面角和孔洞区域联合值的动态编程范式来三角化多边形孔洞,该方法新增的三角面片不均匀,大小各异,修复效果差。

上述孔洞修复方法仅适用于破损面积小且孔洞周边特征保持良好的模型,对破损面较大的模型修补效果欠佳。结构性修补方法假设形状连续性可跨越缺失区域的边界,这些方法首先将一个或多个模板模型与输入数据的已知区域作匹配度计算,然后使用可匹配的模板模型填充缺失区域,即通过模板模型执行形状外推,该方法由于其操作更具宏观性和可验证性从而成为近年来国内外的研究热点。基于模板模型的结构性修复方法将修复工作转化为可填充碎块模型的选择和可填充模型与待修复模型对齐两阶段。Funkhouser等[8]率先使用基于形状的搜索方法来利用现有模型进行三维建模。Chaudhuri等[9]于2010年提出数据驱动的形状检索和形状对应技术,2011年引入贝叶斯网络方法提出了一种改进的搜索方法[10]。Sharf等[11]和Park等[12]根据模型的几何信息找到孔洞的相似区域,并将相似区域移植到孔洞中,但该类方法只能适用于单视角扫描的物体。Li等[13]在文献[11]和文献[12]的基础上进行迭代对称性检测和模板填充,该方法已被成功应用到颅骨复原中。Shen等[14]采取底层到顶层的修复模式,只需对Kinect系统获取的人造物体进行单视图扫描就能有效修复物体结构。杨荣等[15]将文献[14]的方法进一步改进,采用全局到局部的修复模式修复不完整三维模型,但该方法仅在薄壁模型上具有较好的修复效果。

鉴于兵马俑这类模型结构复杂且具有一定厚度的特点,仅根据空间轮廓线的匹配难以取得满意的结果。因此,针对俑体缺损严重、形状不规则的孔洞模型,因其待修复区域的周边信息不足,提出一种模型形状约束的样本填充技术,利用模型现有的几何特征进行配准度量。首先,识别孔洞边界,根据孔洞轮廓所限定的面积在模型库中找到与其面积大致相等的碎块模型;然后,在双稀疏表示的正交约束条件下,根据三角网格顶点位置误差和边平滑误差来预测最优碎块模型;根据配准度量函数确定待修复模型与最优碎块模型的特征点对匹配度集合;最后,采用二阶伞算子进行修复模型的边界平滑。

2 孔洞识别

模型修复的第一步是识别出三维模型上的所有孔洞。根据三角形特性可知,封闭模型上具有公共顶点的三角形数量一定等于以同一个顶点为公共顶点的边数量,即任意一个顶点的1-邻域三角形数量一定等于其1-邻域边的数量;而网格模型的孔洞边通常只属于一个三角形,所以若某一个顶点是边界顶点,则它的1-邻域三角形数量一定小于其1-邻域边的数量。因此本文孔洞识别的目标是找到所有1-邻域三角形和1-邻域边的数量不相等的顶点。

给定三角网格模型M,遍历所有顶点,检查其1-邻域三角形和1-邻域边的数量,若找到一个1-邻域三角形和1-邻域边的数量不等的点,则记为边界点vj,将vj加入到边界点集合B={vj|tjej}中,其中tjej分别表示vj点的1-邻域三角形和1-邻域边的数量。追踪所有顶点,如果所有边界顶点能构成一个闭环,则这些相邻顶点相连的边就构成一个孔洞边界。1-邻域三角形,1-邻域边和孔洞边界的识别如图 1所示。

图 1 孔洞相关基本概念 Fig.1 Basic concepts related to a hole in mesh model
3 构造特征匹配候选集 3.1 邻域约束的顶点曲率

为使孔洞修补的结果能较好逼近孔洞处的真实曲面,利用孔洞周围网格信息尤为重要。本文在考虑边界几何特征的基础上,根据邻域法则,将边界顶点的周围顶点特征作为相似性度量函数的影响因子。对三角网格表示的模型,本文改进Page[16]提出的人为统一限定顶点邻域的方法,根据距离影响度函数,即每个邻域点到顶点的距离来决定其是否参与计算边界点主曲率。距离影响度的引入避免了传统人工限定顶点邻域可能将不相关顶点计入影响范围或者将重要影响度的顶点剔除的缺陷。

距离影响度函数:对于一个顶点样本集合V={vj|j∈[1,m]},任意顶点vj与顶点v之间的欧氏距离为dj,则定义任意顶点vj对边界顶点v的距离影响度函数f为:

(1)

给定阈值τv,若fj不小于τv,说明该顶点对边界顶点的影响不能忽略,则将vj加入到边界顶点v的邻域集合。对于边界顶点邻域集合内的每个顶点,都可以通过公式(2)计算其主曲率:

(2)

其中:θj表示折转角,Δθj表示折转角的变化,S表示弧长,Δs表示vjv的测地距离。将三角面片在vj处的法向Nvj投影到由vjvNv确定的平面∏j上得到投影向量nj,折转角的变化表示如公式(4):

(3)
(4)

边界轮廓线上特征点的曲率定义为:

(5)
3.2 拉普拉斯特征线生成

现有不完整模型与碎块模型的匹配实际上是边界特征线的对齐与方位调整过程,本文主要解决的是边界特征线上点对的配准。通过生成拉普拉斯特征线能够避免原始网格数量众多且包含噪声的缺陷,并为模型匹配提供拼合线索。拉普拉斯特征线是一种视相关的表面光照拉普拉斯的零交叉点集[17]。给定三维网格模型M,拉普拉斯特征线是一系列满足ΔI(v)=0,||∇I(v)||≥τl点的集合。根据文献[18]的定义,I(v)=n(vl(v)是v点的漫反射光亮度,ΔI(v)=(Δn(v))·l(v)是v点漫反射光亮度I的Laplace-Beltrami算子;n(v)是v点的法矢量,Δn(v)是模型表面法矢量的拉普拉斯,独立于视点,可以预先计算;l(v)是从v点出发到视点e构成的视点矢量;∇I(v)是光亮度I的梯度;τl是用户指定阈值。形象来讲,拉普拉斯特征线是视角范围中模型表面曲率变化达到局部最大值时特征点的轨迹。该技术得到的特征线更符合人类视觉特性,并能够为下阶段的点对匹配提供数量最少且最具局部代表性的点集,通过视相关的局部曲率最大值点的轨迹提取到的模型拉普拉斯特征线如图 2(b)2(d)所示。

图 2 原始模型及其拉普拉斯特征线 Fig.2 Original models and Laplacian lines of models
3.3 初始碎块模型候选集的选取

碎块模型库中可供匹配的模型众多,所有碎块模型直接参与模型匹配度计算会导致算法效率极低。因此,本文提出一种将三维物体投影到二维网格平面并计算其投影面积差异度的方法,初步找到与待修补模型孔洞轮廓近似的碎块模型,将这些模型作为候选集元素。

鉴于兵马俑模型近似于人体模型,模型身上几乎不存在过凸部位(部位的最大横截面面积大于与其他部位的接触面积),本文在对三维模型提取完拉普拉斯特征线之后,对模型进行正交投影。由于模型在不同视角下的投影面积可能不同,为了尽可能准确地找到待修补模型的匹配候选集,本文最终选取模型的最大投影面积作为候选集元素的选取准则。当待修补模型的孔洞边界投影区域所占网格数最多且碎块模型的轮廓边界所占网格数也最多时,算法结束;用户设定匹配度阈值τc>0,若碎块模型外轮廓与待修复模型孔洞边界的投影面积差值绝对值在阈值范围内,则将该碎块模型加入到候选集中。该算法能快速估算出模型的二维投影面积,粗略找到近似于孔洞形状的碎块模型。碎块模型外轮廓与待修复模型孔洞边界的投影面积计算如图 3所示。

图 3 模型投影及极值点标记 Fig.3 Projection of models and notations of extreme points

根据3.2节生成的轮廓线,提取特征线上的所有极值点,标记如图 3,在投影面积相近产生的候选集中,寻找孔洞边界上所有极值点的匹配点对,本文对铠甲模型、人体模型分别进行50次实验,综合考虑到算法的时间复杂度和特征点匹配度,最终选取当满足匹配条件的极值点对数量超过孔洞边界极值点个数的一半时,则将该碎块模型加入到碎块模型候选集中。通过极值点对匹配的方法初步确定可填入孔洞的碎块模型,缩小了后续选取最优匹配碎块的搜索范围,因此,可降低最优匹配碎块模型预测的时间复杂度。

3.4 最优匹配碎块预测

为提高后续阶段中最终选定的碎块模型与待修复模型的对齐效率,在确定了匹配候选集元素后,根据拉普拉斯稀疏表示的三角网格顶点位置误差和边平滑误差来预测最优匹配模型。本文假设候选模型边界的目标位置能够全部落在孔洞边界上,选取模型候选集合中与待修复模型投影面积差异度最小的模型(为描述方便,下文称为初始模型),以此模型为原型进行预测。目前大多数变形方法根据位置约束[19-20]和平滑度约束[21]定义能量函数,位置约束度量了候选模型形状与目标形状的接近程度,平滑度约束度量了候选模型上原始位置点变形后的适应程度。为了在保持局部形状的同时获取精致的表面细节,本文使用局部仿射变换的正交约束。传统的二次数据项假设位置误差为高斯分布,但实际上,变形是三维物体表面上的分段平滑信号,传统的高斯分布表示的位置误差会导致模型上几何细节和模型连接处均出现较大的误差,这就表明了位置误差具有稀疏性;而拉普拉斯分布拟合直方图的效果明显优于高斯分布,因此,本文采用1-范式来度量稀疏误差。

本文迭代计算候选模型形状与孔洞形状之间的变形,具体算法步骤如下:

Step 1:整个迭代过程的初值为初始模型与待修复模型的局部相似度;

Step 2:使用上一次迭代过程的匹配结果来计算本次碎块模型与孔洞形状的对应关系;

Step 3:基于一种双稀疏表示的能量最小化方法,使用从Step 2获得的对应关系来预测非刚性变换;

Step 4:在模型候选集中选取一个近似于Step 3预测得到的形状,标记为本次最优模型,回到Step 2;

Step 5:遍历Step3选定的所有碎块模型,分别计算这些模型与孔洞形状匹配值;

Step 6:结束。

针对碎块模型上的任意点vj,希望找到它在目标形状上的对应点uj,本文定义f表示本次最优模型上的点V={v1,…,vN}到目标形状上点U={u1,…,uN}的映射,f(j)=0意味着在目标形状上无法找到本次最优模型上顶点vj的对应点,定义一个3×4的矩阵Xj表示顶点vjuj的转换矩阵。由初始模型开始的配准度量到找到最优匹配块的过程就是找到碎块模型上各点到目标形状上各点的转换矩阵Xj,碎块模型上N个顶点的转换矩阵记为X=[X1,…,XN]T

本文将非刚性变换表示为以下能量函数的最小化:

(5)

其中:Eposition(Xf),Esmooth(X),Eorth(X)分别表示位置项、平滑项和正交约束。αβ分别表示平滑项和正交约束所占权重。

本文将候选模型上的点与它在目标形状上对应点的接近程度定义为变形精度,为候选模型上每个点vj赋予一个权重ωj,当vj在目标形状上能找到对应点时,ωj为1,否则为0。因此,位置项定义如下:

(6)

其中uf(j)的笛卡尔坐标。

在平滑项中,候选模型上相邻的顶点vjvj+1经过变换后,在变形模板上也应当具有非常接近的变换位置,因此,我们定义平滑项为:

(7)

一些需要较大幅度变动的网格,位置变换的问题可能不受约束,进而导致较大的扭曲,该情况下,本文引入正交约束来保持局部性状:

(8)

约束条件为RjTRj=I,det(Rj)>0。其中Rj是一个3×3的旋转矩阵,Sj是一个3×4的常量矩阵,它提取Xj的旋转分量。限定det(Rj)>0以保证Rj不是一个镜像矩阵。

4 模型对齐 4.1 特征点描述子的定义

边界特征点的描述子定义为以下3个特征点属性组合,分别为不同模型的边界轮廓线和断裂面提供对齐依据:

(1) k表示拉普拉斯特征线上点的曲率,该曲率由该顶点的邻域顶点对其影响度确定。

(2) dldr分别定义为特征点vjvj-1vj+1之间的线段长度。待匹配的两个线段长度越接近,越能避免接缝不平滑问题。

(3) cos θ定义为vj-1vjvj+1所确定的边界外侧角的余弦值。当不完整模型与模板对齐时,配准顶点的边界外侧角之和接近360°,二者的余弦值近似。

该3个特征点属性具备旋转、平移和尺度不变特性,能够有效地度量对应点之间的差异程度。因此对拉普拉斯线上的任意特征点vj,其特征点描述子表示为vj(kjdjldjr,cos θj),如图 4,特征点v0可表示为v0(0.667,6.4,2.9,-0.422 618)。

图 4 边界顶点特征点描述子 Fig.4 Feature points descriptor of boundary vertex
4.2 匹配度量

为将最优碎块模型填充到孔洞中,需要确定拉普拉斯线上特征点的差异程度,并构造配准的点对集合。

假设孔洞模型的边界轮廓线特征点集合为V={v1v2,…,vm},碎块模型的轮廓线特征点集合为P={p1p2,…,pn},其中mn>2。分别选取VP中同时满足曲率、余弦值且邻接线段倒数的加权值最大的特征点作为起始点对,从该两点顺时针方向依次重新标记轮廓线特征点为V={v1v2,…,vm}和P={p1p2,…,pn},本文定义特征点vj(kjdjldjr,cos θj)和pi(kidildir,cos θi)之间的匹配度函数为:

(9)

本文以邻接线段长的倒数,曲率以及余弦值的加权值最大的特征点作为起始点,向顺时针方向遍历匹配。当VP(vjpi)的值越小,表明该特征点对的差异程度越小。用户设定匹配度阈值τm>0,若某点对满足VP(vjpi)≤τm,则选取该点对加入匹配点对集合C={(v1p1),(v2p2),…,(vkpk)},k≤min(mn);否则,摈弃该点对,计算碎块模型的下一个特征点与孔洞边界特征点的差异度,尽可能多地找到所有满足阈值条件的对应点。

4.3 接缝平滑

将最优碎块模型填充到孔洞区域后,二者的接缝可能不够自然平滑,为解决该问题,我们引入伞算子理论[22],通过最小化平滑函数使得接缝产生相应的形变。假设接缝中每个顶点vj表示为xj=(xj0xj1xj2),则vj的伞算子定义如下:

(10)

其中:N(vj)是与顶点vj的测地距离在3σ以内的所有相邻顶点集合,ωijvjvi所确定的边的余切权重,ωij=cot ∠(vjvlvi)+cot ∠(vjvrvi),vlvr是分别位于边eji左右两边的两个顶点,这两个顶点分别在两个三角形中。

U(vj)表达的是vj与由其相邻点所界定的表面的偏差,在接缝处将伞算子设定为零可以使得内部区域表面光滑,但其边界连续性仍旧得不到保障,因此,本文尝试使顶点vj处的表面偏差等于其相邻点所界定表面的平均偏差,以使得模型之间的过渡更加自然,即二阶伞算子U2(vj)=0,二阶伞算子的计算方式如下:

(11)
5 实验结果与分析

算法以C++实现,硬件运行环境为Intel(R)Core(TM)i7-3770@3.40GHz的处理器、4 GB内存的PC机。实验数据主要源于西安秦皇陵兵马俑K9901坑中的部分破损俑体。

图 5所示为G10-53号俑分别采用杨荣等[15]、Zhao等[23]和本文方法得到的修补结果(彩图见期刊电子版)。缺损部分被标记为红色,从图中可看出,待修补模型缺损面积较大,俑体上半身表面纹饰清晰。杨荣等方法仅考虑边界特征点,导致在文物这类具有一定厚度的模型上的旋转和平移矩阵计算不准确,如图 5(a),杨荣算法在兵马俑模型修补中出现模型方位不对齐而导致的严重裂缝现象;Zhao等方法未考虑孔洞与碎块的全局一致性匹配,选中的碎块模型与原始待修补模型的右胸腔出现交叉渗透现象,而在俑体腹部位置出现严重裂缝。由于G10-53号俑的胸腔处孔洞边界周长大于50 cm,边界上特征点较多,为降低算法时间复杂度,将孔洞与碎块模型的投影面积匹配度阈值τc设置为0.5,可快速为模板填充阶段提供较好的模型源,并在最优碎块与孔洞对齐过程中设定特征点对的配准度阈值τm为0.3,可精确找到满足阈值条件的特征点对,最终得到符合期望的修复效果。从图 5(c)中可看出采用本文方法进行的修补过程得到了满意的修补效果,不仅保持了碎块模型与原始不完整模型之间表面纹饰的连续性,而且碎块模型与孔洞周边连接良好,无明显裂缝。

图 5 G10-53号俑修复结果 Fig.5 Result of repairing G10-53

图 6所示为采用杨荣等、Zhao等和本文方法对G10-41号俑得到的修补结果,红色部分为因俑体臂膀遮挡导致的数据扫描缺失。杨荣等虽然考虑了模型形状的匹配,但未能考虑到表面细节特征的相容性,如图 6(b)所示,被选中的碎块与周围纹理特征相差甚远;Zhao等实现的修补结果出现明显的渗透现象,效果失真;由于G10-41号俑的胸腔处孔洞边界周长大于45 cm,边界上特征点较多,为降低算法时间复杂度,将孔洞与碎块模型的投影面积匹配度阈值τc设置为0.5,可快速为模板填充阶段提供较好的模型源,并在最优碎块与孔洞对齐过程中设定特征点对的配准度阈值τm为0.3,可精确找到满足阈值条件的特征点对,最终得到符合期望的修复效果。本文方法对G10-41的修补结果如图 6(c)所示,不仅将模型无缝连接到孔洞中,而且与孔洞周边特征保持一致。

图 6 G10-41号俑修复结果 Fig.6 Result of repairing G10-41

G10-22号俑体正面出现两处封闭孔洞,杨荣等,Zhao等和本文方法的修补结果如图 7所示。图 7(a),7(b),7(d)和7(e)的碎块模型与原始俑体均出现严重渗透,由于G10-22号俑的左胸腔处孔洞边界周长大于50 cm,边界上特征点较多,为降低算法时间复杂度,本文方法将孔洞与碎块模型的投影面积匹配度阈值τc设置为0.5,可快速为模板填充阶段提供较好的模型源,并在最优碎块与孔洞对齐过程中设定特征点对的配准度阈值τm为0.3,可精确找到满足阈值条件的特征点对,最终得到符合期望的修复效果,如图 7(c)。在G10-22的左胯部位,由于其孔洞周边裂缝较多,本文方法就将投影面积匹配度阈值τc设置为0.2,可为孔洞提供良好的模型源,并在最优碎块与孔洞对齐过程中设定特征点对的配准度阈值τm为0.1,本文方法在这类裂缝较多模型中仍然表现出较强鲁棒性,如图 7(f),但算法时间复杂度略高于边界特征单一的孔洞。这也正是本文研究方法的下一个改进点,在保证算法鲁棒性的前提下提高算法效率。

图 7 G10-22号俑修复结果 Fig.7 Result of repairing G10-22

图 8图 9所示为采用杨荣等,Zhao等和本文方法对小孔洞的实验结果,图 8(a)9(a)的碎块模型与原始模型契合度较差;图 8(b)图 9(b)中,碎块模型与原始模型进行融合时出现模糊现象。由于兵马俑铠甲和脚踏板孔洞较小,边界上特征点较少,为提高模型对齐精确率,本文方法将孔洞与碎块模型的投影面积匹配度阈值τc设置为0.2,可为模板填充阶段提供良好的模型源。本文方法采用严格的特征描述子vj(kjdjldjr,cos θj)作为配准度量因子,在最优碎块与孔洞对齐过程中设定特征点对的配准度阈值τm为0.1,可精确找到满足阈值条件的特征点对,最终得到符合期望的修复效果。,在小孔洞修补中,接缝处依旧过渡自然,表现出令人满意的修补效果,如图 8(c)9(c)

图 8 兵马俑铠甲小孔洞的修复效果 Fig.8 Repair result of armor model of terra-cotta warriors with small holes

图 9 兵马俑脚踏板模型的修复效果 Fig.9 Repair effect of pedal model of terra-cotta warrior

表 1列出了利用杨荣等[15]方法,Zhao等[23]和本文方法对不同模型进行修补的修补时间统计和误差统计。本文算法利用拉普拉斯特征线提取方法选取局部最大曲率点,对原始网格模型提取了最具局部代表性的特征点,当孔洞形状较为简单时,为快速高效确定模型匹配候选集,可适当提高投影面积差异度阈值,并通过模型预测方法为最后的模型对齐阶段提供最优匹配模型,随之减少了模型对齐时间。当本文算法被用于裂缝较多等形状复杂的孔洞模型时,即拉普拉斯特征线长度较大,本文算法仍具有较强鲁棒性,但算法效率略低于简单空洞的情况。

表 1 不同模型修复的时间统计和误差统计 Tab. 1 Time statistics and error statistics for different model fixes

表 1可知,本文算法相对于文献[15]和文献[23]的配准时间节约了19% ~ 26%,将模型修补误差平均降低了34%。本文将模型的修复误差定义为碎块模型与孔洞完成对齐后,边界轮廓线及断裂面上特征点的数值统计,具体表示为:(1)碎块模型边界和孔洞边界上未被对齐的极值点与拉普拉斯特征线上所有极值点个数之比;(2)所有配准点对的欧氏距离之和的平均值。本文定义模型的修复误差为(1)和(2)结果的加权值。实验结果表明,本文算法相对于文献[15]和文献[23]的修复误差更小。

6 结论

本文提出一种利用现有模板修复不完整模型的三维虚拟复原方法,解决了传统三维虚拟复原中缺损区域面积大、形状不规则导致修复效果差的问题,提出一种利用模型固有属性寻找可填充模型并进行模型对齐的方法。利用模型投影面积差异度确定可填充模型的初始匹配候选集,通过双稀疏表示的能量函数预测最优匹配模型,根据模型特征点及相邻点间的固有属性定义表示模型对齐关系的特征描述子。与现有方法相比,本文方法节省模型修复时间约19%~26%,将模型修复误差平均降低了34%。

由于本算法需要查找相似模型,所以对不完整模型上孔洞周边特征的采集和表示是保证模型修复效果的关键,目前关于模型特征的提取和表示的研究[24-26]已十分成熟;而待修复模型本身孔洞周边裂缝过多,导致特征提取不完善,如何修缮修补后出现的细小裂缝仍然是我们工作的下一个重点研究方向。

参考文献
[1]
XU C, QUAN L, WANG Y, et al.. Adaptive multi-resolution fitting and its application to realistic head modeling[C].Geometric Modeling and Processing, 2004. Proceedings. IEEE, 2004: 345-348. https://www.researchgate.net/publication/4070860_Adaptive_multi-resolution_fitting_and_its_application_to_realistic_head_modeling
[2]
杜佶, 张丽艳, 王宏涛, 等. 基于径向基函数的三角网格曲面孔洞修补算法[J]. 计算机辅助设计与图形学学报, 2005, 17(9): 1976-1982.
DU J, ZHANG L Y, WANG H T, et al. Hole repairing in triangular meshes based on radial basis function[J]. Journal of Computer Aided Design & Computer Graphics, 2005, 17(9): 1977-1982. (in Chinese)
[3]
吴晓军, 文飞, 温佩芝. 多视图立体三维重建中的孔洞修复算法[J]. 计算机辅助设计与图形学学报, 2012, 24(12): 1606-1613.
WU X J, WEN F, WEN P ZH. Hole-filling algorihtm in multi-view stereo reconstruction[J]. Journal of Computer Aided Design & Computer Graphics, 2012, 24(12): 1606-1613. DOI:10.3969/j.issn.1003-9775.2012.12.011 (in Chinese)
[4]
刘震, 王艳宾, 白丽丽, 等. 曲面细节特征保持的三维模型孔洞修复方法[J]. 计算机辅助设计与图形学学报, 2016, 28(12): 2052-2059.
LIU ZH, WANG Y B, BAI L L, et al. Detail-preserving hole-filling for complex 3D models[J]. Journal of Computer Aided Design & computer Graphics, 2016, 28(12): 2052-2059. DOI:10.3969/j.issn.1003-9775.2016.12.002 (in Chinese)
[5]
LEONG M, CHUA C K, NG Y M. A study of stereolithography file errors and repair. Part 1. Generic solution[J]. The International Journal of Advanced Manufacturing Technology, 1996, 12(6): 407-414. DOI:10.1007/BF01186929
[6]
BORODIN P, NOVOTNI M, KLEIN R. Progressive Gap Closing for Mesh Repairing[M]. London: Springer, 2002: 201-213.
[7]
LIEPA P. Filling holes in meshes[C].Eurographics/acm SIGGRAPH Symposium on Geometry Processing. Eurographics Association, 2003: 200-205.
[8]
FUNKHOUSER T, KAZHDAN M, SHILANE P, et al. Modeling by example[J]. ACM Transactions on Graphics, 2004, 23(3): 652-663. DOI:10.1145/1015706
[9]
CHAUDURI S, KOLTUN V. Data-driven suggestions for creativity support in 3D modeling[J]. ACM Transactions on Graphics, 2010, 29(6): Article No.183.
[10]
CHAUDURI S, KALOGERAKIS E, GUIBAS L, et al. Probabilistic reasoning for assembly-based 3D modeling[J]. ACM Transactions on Graphics, 2011, 30(4): 35.
[11]
SHARF A, AlEXA M, COHENOR D. Context-based surface completion[J]. Acm Transactions on Graphics, 2004, 23(3): 878-887. DOI:10.1145/1015706
[12]
PARK S, GUO X, SHIN H, et al.. Shape and appearance repair for incomplete point surfaces[C].Tenth IEEE International Conference on Computer Vision. IEEE Xplore, 2005(2): 1260-1267. https://www.researchgate.net/publication/4193969_Shape_and_appearance_repair_for_incomplete_point_surfaces
[13]
LI X, YIN Z, WEI L, et al. Cultural heritage:symmetry and template guided completion of damaged skulls[J]. Computers & Graphics, 2011, 35(4): 885-893.
[14]
SHEN C H, FU H, CHEN K, et al. Structure recovery by part assembly[J]. Acm Transactions on Graphics, 2012, 31(6): 1-11.
[15]
杨荣, 冯有前, 袁修久. 利用现有模型修复不完整三维模型[J]. 计算机辅助设计与图形学学报, 2015, 27(1): 98-105.
YANG R, FENG Y Q, YUAN X J. Restoration of fragmentary 3D models using existing models[J]. Journal of Computer Aided Design & Computer Graphics, 2015, 27(1): 98-105. (in Chinese)
[16]
PAGE D L, KOSCHAN A, SUN Y, et al. Robust crease detection and curvature estimation of piecewise smooth surfaces from triangle mesh approximations using normal voting[J]. Computer Vision & Pattern Recognition. cvpr. Proceedings of the IEEE Computer Soci., 2001, 1: 162-167.
[17]
ZHANG L, HE Y, XIA J, et al. Real-time shape illustration using laplacian lines[J]. IEEE Transactions on Visualization & Computer Graphics, 2011, 17(7): 993-1006.
[18]
ZHANG L, HE Y, XIE X, et al.. Laplacian lines for real-time shape illustration[C].Symposium on Interactive 3D Graphics and Games. ACM, 2009: 129-136. https://www.researchgate.net/publication/220791904_Laplacian_lines_for_real-time_shape_illustration
[19]
HU J, WANG Z, RUAN R. Kinect depth holes filling by similarity and position constrained sparse representation[C].International Conference on Image and Signal Processing, Springer International Publishing, 2016: 378-387. https://link.springer.com/chapter/10.1007%2F978-3-319-33618-3_38
[20]
JIN X, XU J. A barrier composite energy function approach for robot manipulators under alignment condition with position constraints[J]. International Journal of Robust & Nonlinear Control, 2015, 24(17): 2840-2851.
[21]
曹晓倩.面向病态场景图像对的立体匹配算法研究[D].西安: 中国科学院研究生院(西安光学精密机械研究所), 2014.
CAO X Q. Research on Stereo Matching Algorithms for Image Pairs of Ill-Posed Scene [D]. Xi'an: Xi'an Institute of Optics & Precision Mechanics, Chinese Academy of Sciences, 2014.(in Chinese) http://cdmd.cnki.com.cn/Article/CDMD-80142-1015008712.htm
[22]
KOBBLET L, CAMPAGNA S, VORSATZ J, et al.. Interactive multi-resolution modeling on arbitrary meshes[C]. In: SIGGRAPH'98: Proceedings of the 25th Annual Conference on Computer Graphics and Interactive Techniques. New York: ACM, 1998: 105-114. https://www.researchgate.net/publication/2867302_Interactive_Multi-Resolution_Modeling_on_Arbitrary_Meshes
[23]
ZHAO Q, ZHANG Q, YUAN Y. An imp-roved non-cooperative signal detection and extraction method based on template matching[C].IEEE International Conference on Electronics Information and Emergency Communication. IEEE, 2017: 365-368.
[24]
刘迎, 王朝阳, 高楠, 等. 特征提取的点云自适应精简[J]. 光学 精密工程, 2017, 25(1): 245-254.
LIU Y, WANG CH Y, GAO N, et al. Point cloud adaptive simplification of feature extraction[J]. Opt. Precision Eng., 2017, 25(1): 245-254. (in Chinese)
[25]
蔡强, 郝佳云, 曹健, 等. 结合局部特征及全局特征的显著性检测[J]. 光学 精密工程, 2017, 25(3): 772-778.
CAI Q, HAO J Y, CAO J, et al. Salient detection via local global feature[J]. Opt. Precision Eng., 2017, 25(3): 772-778. (in Chinese)
[26]
孙国栋, 张杨, 李萍, 等. 用于快速形状匹配的精确型高度函数特征描述[J]. 光学 精密工程, 2017, 25(1): 224-235.
SUN G D, ZHANG Y, LI P, et al. Feature description of exact height function used in fast shape retrieval[J]. Opt. Precision Eng., 2017, 25(1): 224-235. (in Chinese)