CN110930514A - 基于局部区域特征的三维网格模型自适应简化方法 - Google Patents
基于局部区域特征的三维网格模型自适应简化方法 Download PDFInfo
- Publication number
- CN110930514A CN110930514A CN201911152843.2A CN201911152843A CN110930514A CN 110930514 A CN110930514 A CN 110930514A CN 201911152843 A CN201911152843 A CN 201911152843A CN 110930514 A CN110930514 A CN 110930514A
- Authority
- CN
- China
- Prior art keywords
- simplification
- vertex
- local area
- rate
- normal deviation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T17/00—Three dimensional [3D] modelling, e.g. data description of 3D objects
- G06T17/20—Finite element generation, e.g. wire-frame surface description, tesselation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2200/00—Indexing scheme for image data processing or generation, in general
- G06T2200/04—Indexing scheme for image data processing or generation, in general involving 3D image data
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Software Systems (AREA)
- Life Sciences & Earth Sciences (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Biomedical Technology (AREA)
- Computing Systems (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Health & Medical Sciences (AREA)
- Computer Graphics (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Mathematical Physics (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Multimedia (AREA)
- Bioinformatics & Computational Biology (AREA)
- Geometry (AREA)
- Architecture (AREA)
- Computer Hardware Design (AREA)
- Image Analysis (AREA)
Abstract
本发明公开了一种基于局部区域特征的三维网格模型自适应简化方法,包括步骤:1)从三维模型数据集构建局部区域数据集;2)训练MLP分类网络:利用局部区域数据集训练一个基于局部区域特征和简化率的分类网络;3)计算顶点法线偏差阈值:定义分类结果和顶点法线偏差阈值间的函数关系,利用分类结果计算顶点法线偏差阈值。本发明提出了一种基于三维网格模型拓扑结构的局部区域提取方法,利用MLP来对区域特征训练分类器,简化时,对各个局部区域分类并用分类结果指导局部区域顶点设置法线偏差阈值,即对局部区域设置不同的简化终止条件,避免了对模型设置统一的简化率,实现自适应简化,获得更高的简化率。
Description
技术领域
本发明涉及三维网格模型简化的技术领域,尤其是指一种基于局部区域特征的三维网格模型自适应简化方法。
背景技术
随着计算机图形学的发展以及计算机性能的提高,三维模型在虚拟现实、动画游戏、生产制造等领域都得到了广泛地使用和研究。三维数据采集和建模技术的飞速发展使三维模型的精度越来越高,数据量也随之飞速增长,给计算机的绘制、传输、编辑等系统都带来了巨人的压力。解决这些问题的一个途径就是对三维模型进行简化。目前常用的网格简化方法大多从几何层次来控制简化的过程,通过设置一个全局简化率,计算简化的几何误差和更新网格顶点位置,配合预先设定的简化准则或约束进行简化,并且可以通过手动设置简化率得到不同细节程度的模型。
最理想的简化结果是期望将模型简化到能够保持其视觉吸引力和细节特征的最简的程度,这一目标很难通过手动设置简化率实现,但如果能够结合模型局部区域的特征进行简化,对不同的区域自适应地控制简化过程,就能在最大程度地考虑局部区域特征和保持细节特征的情况下尽可能多的减少大量三角形面片。而现有的网格简化算法多考虑模型的几何、拓扑信息和颜色、纹理等属性来约束简化的过程,鲜少考虑根据模型不同区域特征自适应简化的问题。随着机器学习和深度学习的流行,可以通过监督学习的方式,根据局部区域的特征,对不同区域设置不同的简化终止条件,实现基于局部区域特征的自适应简化而不是对整个模型设置全局简化率。
发明内容
本发明的目的在于克服现有技术的缺点与不足,提出了一种基于局部区域特征的三维网格模型自适应简化方法,该方法将传统的网格简化算法结合监督学习的方法,对不同的区域自适应地控制简化过程,该方法基于QEM和顶点法线偏差的简化算法,利用MLP对局部区域分类结果来设置局部区域网格顶点法线偏差阈值,灵活控制不同类别局部区域的简化终止条件,实现局部区域自适应简化。
为实现上述目的,本发明所提供的技术方案为:基于局部区域特征的三维网格模型自适应简化方法,包括以下步骤:
1)从三维网格模型数据集获得局部区域数据集
在三维网格模型数据集的基础上,利用网格模型的拓扑结构,从每一个三维网格模型上按照设定的规则提取若干个局部区域,通过对这些局部区域计算构成该局部区域的网格顶点的曲率、网格面之间的二面角的特征,这些特征即构成一个局部区域的特征向量,然后计算简化前后构成局部区域的网格面的个数变化,获得局部区域的简化率类别标签,由特征向量和每个特征向量对应的简化率类别标签即构造出输入网络训练的局部区域数据集;
2)训练和应用MLP分类网络
利用前一步获得的局部区域数据集,采用监督学习的方式,训练一个用于预测局部区域可简化程度的MLP分类网络,该MLP分类网络的输入是局部区域数据集的特征向量和简化率类别标签,当MLP分类网络训练完成后,对于一个输入的局部区域特征向量,MLP分类网络输出一个预测的简化率类别标签,这个简化率类别标签即用于衡量该特征向量对应的局部区域的可简化程度;
3)计算顶点法线偏差阈值控制局部区域的自适应简化
自适应意味着,对于具有不同特征向量和简化率类别标签的局部区域,即具有不同可简化程度的局部区域,根据前一步MLP分类网络预测出的可简化程度,设置不同的简化控制条件,以此达到自适应简化的目标,而顶点法线偏差就是简化的控制条件,顶点法线偏差越大,表示该顶点所在区域越不平坦,属于特征丰富的区域,对于简化算法而言,顶点法线偏差阈值的设定会影响网格简化的效果,顶点法线偏差阈值越小,意味着很多顶点法线偏差大的细节区域不会被简化,最终三维网格模型被简化的地方会相对变少,而顶点法线偏差阈值越大则表明很多顶点法线偏差大的细节区域也会被简化,最终三维网格模型被简化的地方会更多,因此,通过定义MLP分类网络对局部区域的分类结果和顶点法线偏差阈值间的函数关系,利用MLP分类网络的分类结果设定局部区域的顶点法线偏差阈值,实现对于不同可简化程度的局部区域设置自适应的顶点法线偏差阈值,进而自适应地控制简化过程。
在步骤1)中,对于一个三维网格模型,利用网格模型的拓扑结构,以部分网格顶点为种子点,采用广度优先遍历的方式,获得种子点V的1-ring邻域、2-ring邻域顶点……以及这些顶点组成的面,将这些顶点和面定义为一个局部区域,当该局部区域包含的网格顶点达到规定数目或者迭代次数达到规定次数时,即停止迭代,一个局部区域提取完成,然后再选择距离组成该局部区域的点集最远的网格顶点作为下一个种子点继续提取下一个局部区域,以此类推,直至所有网格顶点都有所属的局部区域,即完成全部局部区域提取。
在步骤1)中,对提取到的局部区域,计算构成一个局部区域的每个网格顶点的高斯曲率C(v)以及每个网格面和其邻接面的二面角平均值A(f),将顶点的高斯曲率C(v)和二面角平均值A(f)作为该局部区域的原始特征f,并且调整特征尺度,将顶点高斯曲率C(v)映射到了[0,1],二面角平均值A(f)映射到[0,2π],然后分别对高斯曲率C(v)和二面角平均值A(f)做统计特征,分别得到201维特征,再计算构成该局部区域的网格顶点数量和网格面数量的比值作为第403维特征,最终,对于每一个局部区域得到一个403维的特征向量F;另外,对提取到的局部区域,再采用一个简化算法对这些局部区域做简化并计算出简化率,对简化率经过处理后,得到该局部区域对应的特征向量的简化率类别标签label,至此,一个局部区域即对应一个403维的特征向量F和其简化率类别标签label;简化算法采用二次误差度量QEM的方法计算和更新顶点位置,同时定义每个顶点法线偏差,由法线偏差决定何时终止顶点合并,由此控制简化的过程,顶点法线偏差的计算公式为:
式中,nd(v)为顶点的法线偏差,Nf(v)表示顶点v的1环邻域面,nf表示面f的法线,nv表示顶点v的法线,Sf表示面f的面积;
定义能量函数E(v),当能量函数不为0,顶点不满足简化条件,该顶点不再被合并即不再简化,统一设置法线偏差的阈值ε=0.6,即当顶点法线偏差nd(v)<0.6时允许进行合并,否则不再合并;定义的能量函数E(v)如下:
需要指出的是,顶点法线偏差越大,表示该顶点所在区域越不平坦即属于特征丰富的区域,对于简化算法而言,顶点法线偏差阈值的设定会影响网格简化的效果,顶点法线偏差阈值越小,意味着很多顶点法线偏差大的细节区域不会被简化,最终三维网格模型被简化的地方会相对变少,而顶点法线偏差阈值越大则表明很多顶点法线偏差大的细节区域也会被简化,最终三维网格模型被简化的地方会更多;这里设置顶点法线偏差阈值为0.6,能够获得模型特征保持相对完好的简化效果。
进一步,利用简化算法简化三维网格模型并计算出简化率,p和p′分别表示简化之前和简化之后的局部区域,首先计算出简化前后局部区域包含面的数量分别为face(p)和face(p′),令局部区域简化率为R,局部区域的简化率类别标签为label,则:
其中,floor()函数表示向下取整,简化率R取值范围为[0,1),因此,类别标签label为[0,1,2,3,…,9],事实上对于简化任务,简化率高的样本明显多于简化率低的样本,因为[5,6,…,9]类别的样本少,所以合并样本数量少的类别为一类,统一简化率标签为5,因此最终简化率类别标签为[0,1,2,3,4,5];其中,简化率类别标签和简化率的对应关系为:
简化率类别标签label为0时,简化率R为[0.9,1];简化率类别标签label为1时,简化率R为[0.8,0.9);简化率类别标签label为2时,简化率R为[0.7,0.8);简化率类别标签label为3时,简化率R为[0.6,0.7);简化率类别标签label为4时,简化率R为[0.5,0.6);简化率类别标签label为5时,简化率R为[0.0,0.5)。
在步骤2)中,利用步骤1)处理得到的局部区域的特征向量F及其简化率类别标签label,输入MLP分类网络,采用监督学习的方式,训练一个用于预测局部区域可简化程度的MLP分类网络,该MLP分类网络的模型包括5个隐藏层,神经元个数分别为1000、750、500、200、50,输入层神经元个数与特征向量维度相同,为403,输出层神经元个数与类别数量相同,为6,模型使用ReLu作为激活函数;损失函数使用多分类的平均交叉熵损失函数log-loss:
其中,m表示输入网络的待分类局部区域的个数,ytruei和yprobi分别表示局部区域i的真实简化率类别标签和MLP输出的预测标签;
当MLP分类网络训练完成后,对于一个输入的局部区域特征向量,分类网络输出一个预测的简化率类别标签,这个简化率类别标签即用于衡量该特征向量对应的局部区域的可简化程度。
在步骤3)中,使用训练好的MLP分类网络,对输入的局部区域特征向量,输出预测的简化率类别标签也即对应局部区域简化率所属类别,由于简化是通过控制顶点合并的过程进行,因此需要对局部区域顶点设置自适应的顶点法线偏差阈值,从而实现自适应简化;首先,将局部区域的简化率所属类别赋予给构成该局部区域的网格顶点,然后定义网格顶点类别和顶点法线偏差阈值间的函数关系,W是一个列向量,表示对各个简化率类别设置固定阈值W=0.9-0.05Cv,其中,Cv表示网格顶点简化率类别标签[0,1,2,3,4,5],由于提取的局部区域有可能会有重叠部分,所以一个顶点可能同时被多个局部区域覆盖,因此对于每个网格顶点,顶点法线偏差阈值ε设置为:
最后,利用对每个网格顶点计算出的顶点法线偏差阈值ε,约束三维网格模型的简化过程,实现对不同的区域的顶点设置不同的简化终止条件即顶点合并终止条件,达到自适应简化的目标。
本发明与现有技术相比,具有如下优点与有益效果:
1、本发明提出了一种基于三维网格模型拓扑结构的局部区域提取方法,对数据库的各个模型进行局部区域采样与提取特征,从局部区域这样一个更细粒度的层次上进行简化。
2、本发明基于几何层次的约束来控制简化的过程,结合监督学习的方法,不需要手动设置模型的简化率,就能够对不同局部区域对不同区域设置不同的简化终止条件,实现自适应简化。
3、本发明相对于传统的整体简化算法,能很好地考虑网格模型的局部特征,尽可能多的减少大量三角形面片的同时最大程度地保持细节特征。
附图说明
图1是本发明方法的逻辑流程图。
图2是局部区域可视化示意图;图中(a)为原始模型,(b)为部分局部区域可视化示意图。
图3是不同类别局部区域可视化示意图;相同颜色表示一种类别,其中,label(patch(2,3,4,5))=1,label(patch(8,10))=2,label(patch(1,9))=3,label(patch(6,7))=5。
图4是简化结果对比图;图中(a)为原始模型,(b)为采用本发明使用的基础简化算法得到的简化结果(简化率约为90%),(c)为采用本发明的自适应简化方法得到的结果(简化率约为95%)。
具体实施方式
下面结合具体实施例对本发明作进一步说明。
如图1所示,本实施例所提供的基于局部区域特征的三维网格模型自适应简化方法,包括以下步骤:
1)从三维模型数据集获得局部区域数据集
1.1)提取局部区域
对于一个三维网格模型,首先选取曲率最大的顶点V1作为第一个提取局部区域的种子点,从顶点V1出发,遍历V1的邻域顶点,将其1-ring邻域、2-ring邻域顶点……以及这些顶点组成的面定义为一个局部区域,当该局部区域包含的网格顶点达到规定数目或者迭代次数达到规定次数M次(取30次)即停止迭代,一个局部区域提取完成;然后再选择距离组成该局部区域的顶点集合最远的网格顶点作为下一个种子点继续提取下一个局部区域,以此类推,直至所有网格顶点都有所属的局部区域即完成局部区域提取。图2是从两个三维模型提取出的部分局部区域的可视化示意图。
1.2)获得特征向量F
对提取到的局部区域,计算区域内每个顶点的高斯曲率C(v)以及每个面和其邻接面的二面角平均值A(f)作为一个局部区域的原始特征f,并且调整特征尺度,将顶点高斯曲率C(v)映射到了[0,1],二面角平均值A(f)映射到[0,2π],然后分别对高斯曲率C(v)和二面角平均值A(f)做统计特征,分别得到201维特征,再计算构成该局部区域的顶点数量和面数量的比值作为第403维特征,最终对于每一个局部区域得到一个403维的特征向量F。
1.3)获得特征向量的简化率类别标签label
对提取到的局部区域,采用一个简化算法对这些局部区域做简化并计算出简化率,对简化率经过规定的处理后,得到该局部区域对应的特征向量的简化率类别标签label,简化算法采用QEM(Quadric Error Metrics,二次误差度量)的方法计算和更新顶点位置,同时定义每个顶点法线偏差,由法线偏差决定何时终止顶点合并,由此控制简化的过程,顶点法线偏差的计算公式为:
式中,nd(v)为顶点的法线偏差,Nf(v)表示顶点v的1环邻域面,nf表示面f的法线,nv表示顶点v的法线,Sf表示面f的面积;
定义能量函数E(v),当能量函数不为0,顶点不满足简化条件,该顶点不再被合并即不再简化,统一设置法线偏差的阈值ε=0.6,即当顶点法线偏差nd(v)<0.6时允许进行合并,否则不再合并;定义的能量函数E(v)如下:
需要指出的是,顶点法线偏差越大,表示该顶点所在区域越不平坦即属于特征丰富的区域,对于简化算法而言,顶点法线偏差阈值的设定会影响网格简化的效果,顶点法线偏差阈值越小,意味着很多顶点法线偏差大的细节区域不会被简化,最终三维网格模型被简化的地方会相对少,而顶点法线偏差阈值越大则表明很多顶点法线偏差大的细节区域也会被简化,最终三维网格模型被简化的地方会更多;这里设置顶点法线偏差阈值为0.6,能够获得模型特征保持相对完好的简化效果。
利用上述的简化算法简化三维网格模型,并计算出简化率,p和p′分别表示简化之前和简化之后的局部区域,首先计算出简化前后局部区域包含面的数量分别为face(p)和face(p′),令局部区域简化率为R,局部区域的简化率类别标签为label,则:
其中,floor()函数表示向下取整,简化率R取值范围为[0,1),因此,类别标签label为[0,1,2,3,…,9],事实上对于简化任务,简化率高的样本明显多于简化率低的样本,因为[5,6,…,9]类别的样本少,所以合并样本数量少的类别为一类,统一简化率标签为5,因此最终简化率类别标签为[0,1,2,3,4,5];其中,简化率类别标签和简化率的对应关系为:
简化率类别标签label为0时,简化率R为[0.9,1];简化率类别标签label为1时,简化率R为[0.8,0.9);简化率类别标签label为2时,简化率R为[0.7,0.8);简化率类别标签label为3时,简化率R为[0.6,0.7);简化率类别标签label为4时,简化率R为[0.5,0.6);简化率类别标签label为5时,简化率R为[0.0,0.5)。
图3是一个模型上几个局部区域(patch)所属类别的可视化示意图,相同颜色表示同一类别,其中label(patch(2,3,4,5))=1,label(patch(8,10))=2,label(patch(1,9))=3,label(patch(6,7))=5。
2)训练和应用MLP(Multi-Layer Perception,多层感知机)分类网络
在获得局部区域的特征向量F及其简化率类别标签label之后,将他们输入MLP(多层感知机)分类网络,采用监督学习的方式,训练一个用于预测局部区域可简化程度的MLP分类网络,该MLP分类网络的模型包括5个隐藏层,神经元个数分别为1000、750、500、200、50,输入层神经元个数与特征向量维度相同,为403,输出层神经元个数与类别数量相同,为6,模型使用ReLu作为激活函数;损失函数使用多分类的平均交叉熵损失函数log-loss:
其中,m表示输入网络的待分类局部区域的个数,ytruei和yprobi分别表示局部区域i的真实简化率类别标签和MLP输出的预测标签。
当MLP分类网络训练完成后,对于一个输入的局部区域特征向量,分类网络输出一个预测的简化率类别标签,这个简化率类别标签即用于衡量该特征向量对应的局部区域的可简化程度。
3)计算顶点法线偏差阈值控制局部区域的自适应简化
使用训练好的MLP分类网络,对输入的局部区域特征向量,输出预测的简化率类别标签也即对应局部区域简化率所属类别,由于简化是通过控制顶点合并的过程进行,因此需要对局部区域顶点设置自适应的顶点法线偏差阈值,从而实现自适应简化;首先将局部区域的简化率所属类别赋予给构成该局部区域的网格顶点,然后定义网格顶点类别和顶点法线偏差阈值间的函数关系,W是一个列向量,表示对各个简化率类别设置固定阈值W=0.9-0.05Cv,其中,Cv表示网格顶点简化率类别标签[0,1,2,3,4,5],由于提取的局部区域有可能会有重叠部分,所以一个顶点可能同时被多个局部区域覆盖,因此对于每个网格顶点,顶点法线偏差阈值ε设置为:
最后利用对每个网格顶点计算出的顶点法线偏差阈值ε,使用新计算出的顶点偏差阈值代替步骤1.3)中的ε(0.6),实现对不同的区域设置不同的简化终止条件,达到自适应简化的目标。图4是一个简化结果对比图:(a)原始模型;(b)采用本发明使用的基础简化算法得到的简化结果(简化率约为90%);(c)采用本发明的自适应简化方法得到的结果(简化率约为95%)。结果表明,本发明的方法在保持模型形状的基础上做到更加好的简化效果。同时用网格模型的顶点数量衡量模型的复杂程度,对比本发明使用的基础简化算法和本发明的自适应简化方法,此外,统计了顶点数量在[1000,200000]范围内的50个模型的平均简化率,结果表明对于不同复杂程度的模型,本发明方法都可以提高3%-4%的简化率,这表明本发明对任意复杂程度的模型都可以获得更高的简化率。如果待简化模型十分复杂,则本发明能够更大程度地简化模型,这对模型的展示、渲染和传输效率都是一种提高。
以上所述实施例只为本发明之较佳实施例,并非以此限制本发明的实施范围,故凡依本发明之形状、原理所作的变化,均应涵盖在本发明的保护范围内。
Claims (6)
1.基于局部区域特征的三维网格模型自适应简化方法,其特征在于,包括以下步骤:
1)从三维网格模型数据集获得局部区域数据集
在三维网格模型数据集的基础上,利用网格模型的拓扑结构,从每一个三维网格模型上按照设定的规则提取若干个局部区域,通过对这些局部区域计算构成该局部区域的网格顶点的曲率、网格面之间的二面角的特征,这些特征即构成一个局部区域的特征向量,然后计算简化前后构成局部区域的网格面的个数变化,获得局部区域的简化率类别标签,由特征向量和每个特征向量对应的简化率类别标签即构造出输入网络训练的局部区域数据集;
2)训练和应用MLP分类网络
利用前一步获得的局部区域数据集,采用监督学习的方式,训练一个用于预测局部区域可简化程度的MLP分类网络,该MLP分类网络的输入是局部区域数据集的特征向量和简化率类别标签,当MLP分类网络训练完成后,对于一个输入的局部区域特征向量,MLP分类网络输出一个预测的简化率类别标签,这个简化率类别标签即用于衡量该特征向量对应的局部区域的可简化程度;
3)计算顶点法线偏差阈值控制局部区域的自适应简化
自适应意味着,对于具有不同特征向量和简化率类别标签的局部区域,即具有不同可简化程度的局部区域,根据前一步MLP分类网络预测出的可简化程度,设置不同的简化控制条件,以此达到自适应简化的目标,而顶点法线偏差就是简化的控制条件,顶点法线偏差越大,表示该顶点所在区域越不平坦,属于特征丰富的区域,对于简化算法而言,顶点法线偏差阈值的设定会影响网格简化的效果,顶点法线偏差阈值越小,意味着很多顶点法线偏差大的细节区域不会被简化,最终三维网格模型被简化的地方会相对变少,而顶点法线偏差阈值越大则表明很多顶点法线偏差大的细节区域也会被简化,最终三维网格模型被简化的地方会更多,因此,通过定义MLP分类网络对局部区域的分类结果和顶点法线偏差阈值间的函数关系,利用MLP分类网络的分类结果设定局部区域的顶点法线偏差阈值,实现对于不同可简化程度的局部区域设置自适应的顶点法线偏差阈值,进而自适应地控制简化过程。
2.根据权利要求1所述的基于局部区域特征的三维网格模型自适应简化方法,其特征在于:在步骤1)中,对于一个三维网格模型,利用网格模型的拓扑结构,以部分网格顶点为种子点,采用广度优先遍历的方式,获得种子点V的1-ring邻域、2-ring邻域顶点……以及这些顶点组成的面,将这些顶点和面定义为一个局部区域,当该局部区域包含的网格顶点达到规定数目或者迭代次数达到规定次数时,即停止迭代,一个局部区域提取完成,然后再选择距离组成该局部区域的点集最远的网格顶点作为下一个种子点继续提取下一个局部区域,以此类推,直至所有网格顶点都有所属的局部区域,即完成全部局部区域提取。
3.根据权利要求1或2所述的基于局部区域特征的三维网格模型自适应简化方法,其特征在于:在步骤1)中,对提取到的局部区域,计算构成一个局部区域的每个网格顶点的高斯曲率C(v)以及每个网格面和其邻接面的二面角平均值A(f),将顶点的高斯曲率C(v)和二面角平均值A(f)作为该局部区域的原始特征f,并且调整特征尺度,将顶点高斯曲率C(v)映射到了[0,1],二面角平均值A(f)映射到[0,2π],然后分别对高斯曲率C(v)和二面角平均值A(f)做统计特征,分别得到201维特征,再计算构成该局部区域的网格顶点数量和网格面数量的比值作为第403维特征,最终,对于每一个局部区域得到一个403维的特征向量F;另外,对提取到的局部区域,再采用一个简化算法对这些局部区域做简化并计算出简化率,对简化率经过处理后,得到该局部区域对应的特征向量的简化率类别标签label,至此,一个局部区域即对应一个403维的特征向量F和其简化率类别标签label;简化算法采用二次误差度量QEM的方法计算和更新顶点位置,同时定义每个顶点法线偏差,由法线偏差决定何时终止顶点合并,由此控制简化的过程,顶点法线偏差的计算公式为:
式中,nd(v)为顶点的法线偏差,Nf(v)表示顶点v的1环邻域面,nf表示面f的法线,nv表示顶点v的法线,Sf表示面f的面积;
定义能量函数E(v),当能量函数不为0,顶点不满足简化条件,该顶点不再被合并即不再简化,统一设置法线偏差的阈值ε=0.6,即当顶点法线偏差nd(v)<0.6时允许进行合并,否则不再合并;定义的能量函数E(v)如下:
需要指出的是,顶点法线偏差越大,表示该顶点所在区域越不平坦即属于特征丰富的区域,对于简化算法而言,顶点法线偏差阈值的设定会影响网格简化的效果,顶点法线偏差阈值越小,意味着很多顶点法线偏差大的细节区域不会被简化,最终三维网格模型被简化的地方会相对变少,而顶点法线偏差阈值越大则表明很多顶点法线偏差大的细节区域也会被简化,最终三维网格模型被简化的地方会更多;这里设置顶点法线偏差阈值为0.6,能够获得模型特征保持相对完好的简化效果。
4.根据权利要求3所述的基于局部区域特征的三维网格模型自适应简化方法,其特征在于:利用简化算法简化三维网格模型并计算出简化率,p和p′分别表示简化之前和简化之后的局部区域,首先计算出简化前后局部区域包含面的数量分别为face(p)和face(p′),令局部区域简化率为R,局部区域的简化率类别标签为label,则:
其中,floor()函数表示向下取整,简化率R取值范围为[0,1),因此,类别标签label为[0,1,2,3,…,9],事实上对于简化任务,简化率高的样本明显多于简化率低的样本,因为[5,6,…,9]类别的样本少,所以合并样本数量少的类别为一类,统一简化率标签为5,因此最终简化率类别标签为[0,1,2,3,4,5];其中,简化率类别标签和简化率的对应关系为:
简化率类别标签label为0时,简化率R为[0.9,1];简化率类别标签label为1时,简化率R为[0.8,0.9);简化率类别标签label为2时,简化率R为[0.7,0.8);简化率类别标签label为3时,简化率R为[0.6,0.7);简化率类别标签label为4时,简化率R为[0.5,0.6);简化率类别标签label为5时,简化率R为[0.0,0.5)。
5.根据权利要求1所述的基于局部区域特征的三维网格模型自适应简化方法,其特征在于:在步骤2)中,利用步骤1)处理得到的局部区域的特征向量F及其简化率类别标签label,输入MLP分类网络,采用监督学习的方式,训练一个用于预测局部区域可简化程度的MLP分类网络,该MLP分类网络的模型包括5个隐藏层,神经元个数分别为1000、750、500、200、50,输入层神经元个数与特征向量维度相同,为403,输出层神经元个数与类别数量相同,为6,模型使用ReLu作为激活函数;损失函数使用多分类的平均交叉熵损失函数log-loss:
其中,m表示输入网络的待分类局部区域的个数,ytruei和yprobi分别表示局部区域i的真实简化率类别标签和MLP输出的预测标签;
当MLP分类网络训练完成后,对于一个输入的局部区域特征向量,分类网络输出一个预测的简化率类别标签,这个简化率类别标签即用于衡量该特征向量对应的局部区域的可简化程度。
6.根据权利要求1所述的基于局部区域特征的三维网格模型自适应简化方法,其特征在于:在步骤3)中,使用训练好的MLP分类网络,对输入的局部区域特征向量,输出预测的简化率类别标签也即对应局部区域简化率所属类别,由于简化是通过控制顶点合并的过程进行,因此需要对局部区域顶点设置自适应的顶点法线偏差阈值,从而实现自适应简化;首先,将局部区域的简化率所属类别赋予给构成该局部区域的网格顶点,然后定义网格顶点类别和顶点法线偏差阈值间的函数关系,W是一个列向量,表示对各个简化率类别设置固定阈值W=0.9-0.05Cv,其中,Cv表示网格顶点简化率类别标签[0,1,2,3,4,5],由于提取的局部区域有可能会有重叠部分,所以一个顶点可能同时被多个局部区域覆盖,因此对于每个网格顶点,顶点法线偏差阈值ε设置为:
最后,利用对每个网格顶点计算出的顶点法线偏差阈值ε,约束三维网格模型的简化过程,实现对不同的区域的顶点设置不同的简化终止条件即顶点合并终止条件,达到自适应简化的目标。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911152843.2A CN110930514B (zh) | 2019-11-22 | 2019-11-22 | 基于局部区域特征的三维网格模型自适应简化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911152843.2A CN110930514B (zh) | 2019-11-22 | 2019-11-22 | 基于局部区域特征的三维网格模型自适应简化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110930514A true CN110930514A (zh) | 2020-03-27 |
CN110930514B CN110930514B (zh) | 2021-08-10 |
Family
ID=69851574
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911152843.2A Active CN110930514B (zh) | 2019-11-22 | 2019-11-22 | 基于局部区域特征的三维网格模型自适应简化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110930514B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111524236A (zh) * | 2020-04-24 | 2020-08-11 | 北京中测智绘科技有限公司 | 一种基于平面分析的自适应三角网简化方法 |
CN113538689A (zh) * | 2021-06-16 | 2021-10-22 | 杭州电子科技大学 | 一种基于神经网络的特征融合的三维模型网格简化方法 |
CN115482466A (zh) * | 2022-09-28 | 2022-12-16 | 广西壮族自治区自然资源遥感院 | 一种基于深度学习的三维模型植被区域轻量化处理方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101231761A (zh) * | 2008-01-29 | 2008-07-30 | 南京大学 | 一种保持外观特征的网格模型简化方法 |
CN102324107A (zh) * | 2011-06-15 | 2012-01-18 | 中山大学 | 一种面向普适终端的三维网格模型连续多分辨率编码方法 |
CN102819860A (zh) * | 2012-08-16 | 2012-12-12 | 北京航空航天大学 | 基于辐射度算法的次表面散射物体的实时全局光照方法 |
CN105303614A (zh) * | 2015-10-12 | 2016-02-03 | 中国人民解放军空军航空大学 | 改进的qem三维模型简化方法 |
US20160379406A1 (en) * | 2015-06-26 | 2016-12-29 | Electronic Arts Inc. | Simplifying small mesh components with redundant backs |
-
2019
- 2019-11-22 CN CN201911152843.2A patent/CN110930514B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101231761A (zh) * | 2008-01-29 | 2008-07-30 | 南京大学 | 一种保持外观特征的网格模型简化方法 |
CN102324107A (zh) * | 2011-06-15 | 2012-01-18 | 中山大学 | 一种面向普适终端的三维网格模型连续多分辨率编码方法 |
CN102819860A (zh) * | 2012-08-16 | 2012-12-12 | 北京航空航天大学 | 基于辐射度算法的次表面散射物体的实时全局光照方法 |
US20160379406A1 (en) * | 2015-06-26 | 2016-12-29 | Electronic Arts Inc. | Simplifying small mesh components with redundant backs |
CN105303614A (zh) * | 2015-10-12 | 2016-02-03 | 中国人民解放军空军航空大学 | 改进的qem三维模型简化方法 |
Non-Patent Citations (4)
Title |
---|
FENGGEN YU等: "Semi-Supervised Co-Analysis of 3D Shape Styles from Projected Lines", 《ACM TRANSACTIONS ON GRAPHICS》 * |
LI NAN等: "A New Adaptive Mesh Simplification Method Using Vertex Clustering with Topology-and-Detail Preserving", 《IEEE XPLORE》 * |
程雪原: "面向大数据集的地形网格模型简化研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
苗福生: "数字几何处理中的网格模型化简", 《宁夏工程技术》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111524236A (zh) * | 2020-04-24 | 2020-08-11 | 北京中测智绘科技有限公司 | 一种基于平面分析的自适应三角网简化方法 |
CN111524236B (zh) * | 2020-04-24 | 2023-09-15 | 北京中测智绘科技有限公司 | 一种基于平面分析的自适应三角网简化方法 |
CN113538689A (zh) * | 2021-06-16 | 2021-10-22 | 杭州电子科技大学 | 一种基于神经网络的特征融合的三维模型网格简化方法 |
CN115482466A (zh) * | 2022-09-28 | 2022-12-16 | 广西壮族自治区自然资源遥感院 | 一种基于深度学习的三维模型植被区域轻量化处理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110930514B (zh) | 2021-08-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110930514B (zh) | 基于局部区域特征的三维网格模型自适应简化方法 | |
CN108921926B (zh) | 一种基于单张图像的端到端三维人脸重建方法 | |
CN112257597B (zh) | 一种点云数据的语义分割方法 | |
CN110148146A (zh) | 一种利用合成数据的植物叶片分割方法及系统 | |
CN104331933B (zh) | 一种分层方向自适应快速选取方法 | |
CN107392224A (zh) | 一种基于三通道卷积神经网络的作物病害识别算法 | |
CN114529707B (zh) | 三维模型分割方法、装置、计算设备及可读存储介质 | |
CN111460193B (zh) | 一种基于多模态信息融合的三维模型分类方法 | |
CN111028335B (zh) | 一种基于深度学习的点云数据的分块面片重建方法 | |
CN105160700B (zh) | 一种用于三维模型重建的截面曲线重构方法 | |
CN112464004A (zh) | 一种多视角深度生成图像聚类方法 | |
Papagiannopoulos et al. | How to teach neural networks to mesh: Application on 2-D simplicial contours | |
CN112906813A (zh) | 一种基于密度聚类和胶囊神经网络的浮选工况识别方法 | |
Hu et al. | Geometric feature enhanced line segment extraction from large-scale point clouds with hierarchical topological optimization | |
Yu et al. | 3D reconstruction for multi-view objects | |
Tasmektepligil et al. | SplineLearner: Generative learning system of design constraints for models represented using B-spline surfaces | |
CN106096615A (zh) | 一种基于随机游走的图像显著区域提取方法 | |
CN117115563A (zh) | 基于区域语义感知的遥感土地覆盖分类方法及系统 | |
CN103971397A (zh) | 基于虚拟点光源和稀疏矩阵还原的全局光照绘制方法 | |
Bhardwaj et al. | SingleSketch2Mesh: generating 3D mesh model from sketch | |
CN113808006B (zh) | 一种基于二维图像重建三维网格模型的方法及装置 | |
CN104517299A (zh) | 视频流体物理驱动模型恢复及重新仿真的方法 | |
CN114694019A (zh) | 基于异常检测的遥感影像建筑物迁移提取方法 | |
Zhang et al. | Compress3d: a compressed latent space for 3d generation from a single image | |
CN117152311B (zh) | 基于双分支网络的三维表情动画编辑方法及系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |