一种基于骨架引导的三维模型内蕴对称性检测方法与流程

文档序号:19741566发布日期:2020-01-18 05:18阅读:364来源:国知局
一种基于骨架引导的三维模型内蕴对称性检测方法与流程

本发明属于计算机图形学和计算机视觉等领域,具体涉及一种基于骨架引导的三维模型内蕴对称性检测方法。



背景技术:

对称检测是找到那些将三维模型的一个部分映射到另一个部分而不改变形状的变换。关于三维模型进行对称检测的方法有很多,要全面了解这些方法,请参考mitra等人的研究[1]。在这里,只做简短的说明,特别是主要针对内蕴对称性检测进行说明。

变换投票法是一种常用的对称检测方法。除了直接在变换空间中进行搜索的方法外,大多数方法都是先在模型表面密集采样,然后对采样点之间的对应关系进行考察,通过投票来检测可能的主导变换,这些主导变换能够反映出模型对称性。由于变换空间的复杂性,采样点之间的对应关系的计算通常是非常耗时的。此外,由于投票策略的原因,这些方法仅限于检测大尺度的对称体,对于小尺度或复杂的对称体,这些方法难以检测[2]。

特征图匹配方法[3,4]本质上是一种利用特征匹配来剔除非匹配几何体的方案,它们通过迭代最近邻点法(icp)[10]进行对齐以得到最终的检测结果。正如[2]中所讨论的,这些方法是针对刚性对齐处理的,主要用于外蕴对称检测。此外,这类方法依赖于从模型表面提取的点/线特征,而提取的点/线特征很难恰当表示体积特征,因此,这些方法不便检测体积性特征明显的对称体。通常对齐是以穷举方式的暴力求解进行的,计算代价很大。利用特征图进行对称性检测,可优化检测计算,但特征只能近似地表示模型,可能会遗漏一些对称体,所得到的对称体质量较差。

谱聚类方法尝试使用统计方法聚类来寻找对称性。他们用一个矩阵来寻找集群的对称点[6],如几何斑块或特性[2]。由于内蕴对称性是一种非刚性的变换,不能用矩阵表示,所以一些方法通过函数映射方法来查找对应关系。这些方法可以很好地避免噪声的干扰,提高对称性检测效果,但它们实际上是基于采样点、斑块、特征以及投票策略。因此,它们在检测效率、检测效果、检测精度等方面与其他类别的方法有着相似的缺点。例如,[6]中的方法倾向于检测大尺度和固定大小的对称体,不便识别尺度较小的对称性。而[2]中的方法难以检测大尺度对称体,因为它为了计算效率而不考虑距离太远的特征之间的关联性。虽然该方法[7]将时间复杂度降低到o(knlog(n))(其中k为使用的特征函数的数目,n为模型的顶点个数),但计算代价仍然很高。这些方法可以看作是变换投票(不需要显式的变换处理)和特征图匹配方法的集成。因此,正如在介绍变换投票方法和特征图匹配方法所指出的那样,它们也不能保证能够生成高质量的对称体。

在对称性检测的许多实践应用中,计算的复杂度是影响应用成效的重要因素,甚至是决定性因素。因此,提出一种快速高质量的对称性检测方法,具有非常重要的实际应用价值。

[1]mitran.j.,paulym.,wandm.,ceyland.:symmetryin3dgeometry:extractionandapplications.computergraphicsforum32,6(2013),1–23.

[2]lic.,wandm.,wux.,seidelh.-p.:approximate3dpartialsymmetrydetectionusingco-occurrenceanalysis.inproc.ofinternationalconferenceon3dvision(3dv’15)(2015),pp.425–433.

[3]m.couprieandg.bertrand.asymmetricparallel3dthinningschemeandalgorithmsbasedonisthmuses.patternrecognitionletters,76:22–31,2016

[4]bernera.,bokelohm.,wandm.,schillinga.,seidelh.-p.:agraph-basedapproachtosymmetrydetection.inproc.ofthefiftheurographics/ieeevgtcconferenceonpoint-basedgraphics(spbg’08)(2008),pp.1–8.

[5]bokelohm.,bernera.,wandm.,seidelh.-p.,schillinga.:symmetrydetectionusingfeaturelines.computergraphicsforum28,2(2009),697–706.

[6]lipmany.,chenx.,daubechiesi.,funkhousert.:symmetryfactoredembeddinganddistance.acmtransactionsongraphics29,4(2010),103:1–103:12.

[7]nagarr.,ramans.:fastandaccurateintrinsicsymmetrydetection.inproceedingsoftheeuropeanconferenceoncomputervision(eccv)(2018),pp.417–434.

[8]auo.k.-c.,taic.-l.,chuh.-k.,cohen-ord.,leet.-y.:skeletonextractionbymeshcontraction.acmtransactionsongraphics27,3(aug.2008),44:1–44:10.

[9]wangy.,xuk.,lij.,zhangh.,shamira.,liul.,chengz.,xiongy.:symmetryhierarchyofman-madeobjects.incomputergraphicsforum(2011),vol.30,wileyonlinelibrary,pp.287–296.

[10]rusinkiewiczs.,levoym.:efficientvariantsoftheicpalgorithm.inproc.of3thinternationalconferenceon3-ddigitalimagingandmodelingproceedings(2001),pp.145–152.

[11]tiernyj.,vandeborrej.-p.,daoudim.:3dmeshskeletonextractionusingtopologicalandgeometricalanalyses.inproc.of14thpacificconferenceoncomputergraphicsandapplications(pg’06)(tapei,taiwan,oct.2006),pp.85–94.6



技术实现要素:

本发明技术解决问题:克服现有技术的不足,提供一种基于骨架引导的三维模型内蕴对称性检测方法,以所生成的模型线骨架为指导,基于骨架对模型进行凸剖分处理,再基于外蕴对称凸体的组合来检测模型中的内蕴对称体,具有简便、高效的优点。

本发明的技术方案,一种基于骨架引导的三维模型内蕴对称性检测方法,包括以下步骤:

(1)生成三维模型的骨架,并基于骨架对三维模型进行凸剖分,建立骨架肢节和骨架结点与凸剖分的凸体之间的对应关系;骨架由一些节点及连接节点之间的边组成,其中由两条以上的骨架边共享的节点称为骨架结点,从一个骨架结点开始到另一个骨架结点或者骨架的一个端点的一串边,则形成一个骨架肢节,在此骨架端点指只有一条边关联的节点;

(2)根据长度相似的骨架肢节子段(即骨架肢剖分后的子部分)和骨架结点,检测骨架肢节子段和骨架结点对应的凸体间的外蕴对称性。两个形体如能通过刚性变换使得它们重合,则称它们之间是外蕴对称的;如果两个形体可通过非刚性变化使得它们重合,则称它们之间是内蕴对称的;

(3)在骨架中寻找相似的结构,由此检测相似结构所属的各个对应的凸体之间的外蕴对称性,再基于凸体组合的方式,寻找三维模型的内蕴对称体;

所述步骤(1)生成模型的骨架,并基于骨架对模型进行凸剖分,建立骨架肢节和骨架结点与凸剖分的凸体之间的对应关系,具体步骤为:

(11)根据模型网格收缩的方法,生成三维模型的骨架;

(12)根据骨架肢对模型网格的对应关系信息,对三维模型进行初始化剖分,并依据骨架肢与骨架结点之间的凹信息行剖分优化,使得各个骨架结点都对应一个凸剖分体,而每个骨架肢对应一个剖分体;

(13)根据三维模型上的凹信息对初始化剖分的各个部分进行凸剖分,并将剖分时的凹处情况对应到骨架肢上,对骨架肢进行子分,形成骨架肢的子段;

(14)对于长度相当的骨架肢,将它们的子分情况进行相互迁移处理,使得长度相当的骨架肢具有类似的子分情况;

(15)根据骨架肢的子分情况,对各自关联的凸体进行进一步的子分,使得骨架肢的各个子分段都分别对应一个剖分的凸体。

所述步骤(2)中,根据相似的骨架肢节子段和骨架结点,检测两者对应的凸体之间的外蕴对称性,具体步骤为:

(21)查找长度相当的骨架肢子段,检测它们各自对应的凸体之间是否是外蕴对称的;

(22)检测骨架结点对应的凸体之间是否是外蕴对称的。

所述步骤(3)中,在骨架中寻找相似的结构,由此检测它们所属的各个对应的凸体之间的外蕴对称性,再基于凸体组合的方式,寻找三维模型的内蕴对称体;,具体步骤如下:

(31)找到长度相当的骨架肢,形成一个相似的骨架结构;

(32)以各个骨架结点为根结点,逐步地关联相连接的相似骨架肢、以及其它相似的树状骨架结构来生成相似的骨架结构;

(33)基于相似的骨架结构,检测它们之间各自对应的凸体之间是否都是外蕴对称的;如果是,则这些相似骨架结构对应的模型部分就是内蕴对称的

本发明与现有技术相比的优点在于:

(1)本发明很好地降低了内蕴对称性检测的计算复杂度,并能检测到小型对称体、嵌入到大对称体中的子对称体等已有方法难以找到的对称体,具有简便、高效的优点。

(2)本发明基于模型的凸剖分体之间的外蕴对称性,使用模型的相似骨架结构来组合对称的凸体,以进行内蕴对称检测。相比于已有方法,本发明很好地降低了计算复杂度,避免了基于统计方法难以找到小尺度对称体和嵌入型对称体的不足,能得到高质量的对称体。实验结果表明,本发明可以找到更多的对称体,运行速度也比现有方法快很多,甚至有几个数量级的提升。

附图说明

图1为本发明算法流程示意图;

图2为本发明中骨架结构优化和相似骨架结构对称性检测示意图。其中(a)为所提取的骨架和骨架-顶点对应的初始化分解结果图,(b)为手掌骨架的冗余结点图,(c)为修正后的手掌骨架的结点图,(d)为手掌和骨架对应剖分关系图;

图3为本发明中模型剖分的计算框架图。对于(a1)的初始剖分情况,(a2)基于骨架结点和关联的骨架肢对应的模型部分的凹信息进行优化剖分;(b1)、(b2)是基于凹信息对骨架肢对应的模型部分进行剖分;(b3)、(b4)是基于骨架肢之间的对应关系进行相关模型部分的剖分;

图4为本发明中骨架得到的外蕴对称组合生成内蕴对称示意图。(a)为模型骨架,(b)为外蕴对称,(c)为相邻的骨架肢和骨架结点结合示意图,(d)为逐步关联相似骨架肢生成相似骨架结构示意图;

图5为本发明的方法与其他方法的对比实验结果图。(a)为tsv方法,(b)为sbp方法,(c)为mpisd方法,(d)为本发明方法,(e)为人工标注数据,(f)为真值图;

图6为本发明的方法为多种三维模型检测的对称性结果图。

具体实施方式

下面结合附图及实施例对本发明进行详细说明。

如图1所示,本发明具体步骤如下:

(1)生成三维模型的曲线骨架并基于骨架对模型进行凸剖分:对于对称性检测任务,期望骨架不仅代表模型的拓扑结构,而且它的骨架肢节和骨架结点能够很好地表示模型分解后的凸体的几何形状,由此便于快速计算。本发明的剖分计算步骤如下:首先,基于骨架与模型对应的关系(在此之前,要去除骨架中的冗余结点,优化骨架结构,如图2中的(b)(c)所示),对模型进行初始化剖分,每个骨架肢对应一个剖分部分,如图2中的(a)所示;然后,对于骨架结点与其关联的骨架肢对应的剖分部分,根据其凹信息进行剖分,使得各个骨架结点对应一个凸剖分体,如图3所示;随后,对于骨架肢对应的部分,根据其凹信息进行凸剖分,并由此基于模型与骨架的对应关系对骨架肢进行子分,如图3中的(b1)所示;最后,对长度相当的骨架肢,将它们的子分情况进行相互的迁移处理进行进一步的骨架肢子分,再根据更新的骨架肢子分情况,对关联的凸体进行进一步的子分,如图3中的(b2)、(b3)所示。

(2)凸体的外蕴对称性检测:在检测剖分后的凸体之间的外蕴对称性时,首先找到骨架上相似的骨架肢节和骨架结点,然后检查它们对应的凸体是否对称。在此,如果两个骨架肢节的长度相似,则认为它们是相似的;然后对它们关联的凸体进行外蕴对称性检测。如果两个骨架结点对应的凸体的体积相似,则认为它们是相似的。

(3)多尺度局部内蕴对称性检测:在得到剖分凸体之间的外蕴对称性之后,通过相似骨架结构的引导,基于组合的方式,寻找模型的内蕴对称体。对于相似的两个骨架结构,如果它们所属凸体均是各自对应地外蕴对称的,则它们对应的部分就是内蕴对称的。相似的骨架结构,是由小至大逐步增长来寻找的,所以,可进行多尺度的内蕴对称性检测。

在下面对本发明的各个步骤分别介绍。

1.曲线骨架生成并基于骨架对模型进行凸剖分

(1)骨架生成。考虑到实现的方便性,采用了[8]中的方法进行初始化曲线骨架生成,然后对骨架进行改进,使之很好地满足我们的需求。由于模型的细节影响,初始化的骨架可能具有冗余的骨架结点,如图2中的(b)所示,右手掌有两个连接结点。这会导致骨架对模型的拓扑结构表达不准确。为此,设计了一个简单的方法,用于快速查找冗余结点并进行归并处理以消除冗余结点。该方式主要考虑了两个重要因素,即结点之间的距离和结点对应部分的大小。其处理是依据两个结点之间的欧几里德距离(ed),以及与模型中这两个结点相对应的内接球体半径的和(sr)。如果ed<σ*sr,则认为它们是多余的,并把这两个连接结点合并为一个连接结点,如图2(c)所示。σ一般设置为1.5就能得到高质量的结果。

(2)基于凸信息的剖分优化。利用骨架肢和骨架结点与模型之间的对应关系对模型进行初始化剖分,然后用两个步骤来优化模型的初始化剖分。第一个步骤是利用相邻骨架肢和骨架结点对应的剖分部分上的凹信息来进行优化,第二个步骤是利用骨架肢对应部分上的凹信息进行优化。

在第一个步骤中,通过模型的凹折痕找到切割线,对每个骨架肢对应的剖分部分进行子分。如图3所示,对于初始化剖分的对应于左臂的骨架肢部分(图3中的(a1)粉红色所示),通过搜索合适的切割线对其进行子分,以优化其剖分边界(图3中的(a2))。切割线的寻找过程如下:首先,需找到该部分的凹陷区域,因为该区域可能包含合适的切割线。为此,把模型划分为不同的区域,每个区域都是收缩到骨架肢上的一个点的模型部分,这些区域的边界称为圈线,如图3中的(a1)中环绕手臂的线。一般情况下,凹区域边界附近的圈线长度变化较大。因此,通过对比相邻圈线之间的长度变化来寻找凹区域。在图3的例子中,可知有一条圈线(如图3中的(a1)中的白色高亮线比所有圈线的平均长度要长得多,并且与较短的圈线相邻,这样的圈线就是凹区域的潜在位置。根据这样的圈线,在其两侧向外延伸,就形成凹区域(图3中的(a2)中的箭头指向区域)。其次,在这个凹区域内生成合适的切割线。在凹区域找到十几个鞍点(图3中的(a2)中的点),利用这些鞍点,采用最小二乘法找到一个近似的切割平面。然后,在模型表面的网格上找到最接近切割平面的点组成切割线,以进行剖分处理。

在第二个步骤中,计算骨架肢对应的剖分部分上各个圈线的凹度,然后沿着骨架肢对圈线的凹度进行排列,找到局部凹度最小的圈线,对该骨架肢对应的部分进行凸剖分,如图3中的(b1)、(b2)所示。圈线的凹度计算,使用文献[11]的方法,具体计算方式如下:

基于高斯曲率,通过下式计算圈线l的凹度c(l):

其中k1v和k2v为圈线l顶点v处的主曲率。如[11]所述,曲率计算对噪声敏感。因此,需要对曲线的凹度进行滤波处理,以降低高频噪声。为此,如[11]所建议的那样,采用截止频率fr(通常设置为0.4)进行低通滤波,其实现如下:

其中fc(l)通过计算圈线各顶点v与相关的骨架结点之间的平均欧氏距离得到:

在此,d(v)为顶点v与其相关骨架结点之间的欧氏距离,n为圈线l的顶点集合。而滤波后的圈线凹度c(l)为:

这里ft表示傅里叶变换。

(3)对应性分解。长度相似的骨架肢对应的模型凸体可能处于不同的姿态。为检测它们之间的内蕴对称性,需对它们进行进一步的对应分解。对于两个相似的骨架肢,我们首先通过它们的圈线凹度沿着骨架肢的分布的情况(图3中的(b2)),找到这种分布曲线的局部最低拐点(这样的拐点对应模型分割的凹区域的分割线位置),然后根据它们之间的分布曲线的线性对应关系,将它们的拐点进行相互迁移。随后,根据骨架肢上迁移获得的拐点,对其关联的凸体进行进一步的子分。如图3中的(b3,b4)所示,虽然右边的腿本身没有弯曲,但它可以按照左边的腿进行剖分。在这样的处理中,一个骨架肢可以划分为多个子段,每个子段对应一个剖分凸体。

2.凸体的外蕴对称性检测

对于相似骨架肢子段或相似骨架结点对应的两个凸体,采用[9]中的方法来检测它们是否外蕴对称。首先,利用主成分分析方法构造凸体的局部坐标系。接下来,利用icp算法[10]检测一个凸体是否可以与另一个凸体匹配。该算法是在一个凸体上采样一些点,然后通过凸体之间的基于它们局部坐标系之间的变换将这些点映射到另一个凸体上,通过迭代收敛性优化后,检测映射的点是否可较好地匹配到那个凸体上。由于是检测凸体之间的对称性,可使用映射点的均方根偏差(rmsd)作为相似性度量来进行快速计算。当获得一个非常低的rmsd值时,就认为该凸体可匹配到另一凸体。如果两凸体互相可相匹配,则它们就是对称的,如图3中的两手掌之间的对称。

3.多尺度局部内蕴对称性检测

随着相似的骨架结构逐渐从小到大,可检测多尺度的内蕴对称体。考虑到对称性检测主要用于模型处理,主要对有意义的剖分的形状进行对称性检测,而不是寻找所有可能的对称组合。因此,以如下步骤探寻骨架中的相似结构,如图4所示。

(1)首先,考虑两个骨架肢是否相似,而不考虑骨架肢子段的各种组合。如果两个骨架肢的长度相似,则认为它们是相似的。

(2)将相邻的骨架肢和骨架结点结合起来,以各个骨架结点为根结点,逐步地关联相连接的相似骨架肢、以及其它相似的树状骨架结构来生成相似的骨架结构。如果骨架肢或骨架结点对应的凸体体积较小,则对它们进行尽早的组合。随着骨架结构从小到大的逐渐变化,我们在检测它们之间的相似性时,只需要检查从早期形成的相似结构扩展而来的结构。如果两个结构各自具有对称的对应结点和骨架肢,则认为它们彼此相似。当所有的结构组合成整个模型的骨架结构时,就停止相似骨架结构的搜索。

下面是本发明的一些实验数据:

实验在一台pc上进行,该微机配备了一个inteli7-8700(3.2ghz)cpu、16gram和一个nvidiageforcegtx1080tigpu。实验所用模型均来自学界常用的princetonshapebenchmark和aim@shape模型库。

作为比较,还实现了三个具有代表性的方法进行对比,分别为变换空间投票方法(tsv),基于骨架的点云方法(sbp),以及多尺度局部对称性检测方法(mpisd)。从下表的结果可以看出,没有使用并行计算加速的情况下,本发明的方法就比这些对比的方法快很多倍,甚至比mpisd快几个数量级。同时,得到模型的对称体通常要比这些方法的多。图5展示了这几种方法针对该人体模型所得到的对称性检测结果。可看出,对比的这三种方法都不能检测到小尺度对称体,而且可能会忽略嵌入在大尺度对称体中的子对称体,并且得到的对称体的质量也比较差。而本发明的方法运行速度快,并能检测出更多高质量的对称体。

图6展示了本发明在多个三维模型上的对称性检测结果,这些检测到的对称体均具有高质量的表达。

本发明未详细阐述部分属于本领域公知技术。

以上所述,仅为本发明部分具体实施方式,但本发明的保护范围并不局限于此。任何熟悉本领域的人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。

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