掌桥专利:专业的专利平台
掌桥专利
首页

一种规则特征保持的建筑物Mesh模型简化方法

文献发布时间:2023-06-19 19:37:02


一种规则特征保持的建筑物Mesh模型简化方法

技术领域

本发明涉及数据处理技术领域,尤其涉及一种规则特征保持的建筑物Mesh模型简化方法及相关设备。

背景技术

建筑物三维模型是智慧城市建设不可或缺的数字底板,为城市管理、规划、仿真、安全、应急响应等诸多应用提供关键基础信息。现有摄影测量技术可由多视影像或激光点云生成城市场景建筑物Mesh模型,并通过已有算法进行Mesh模型的三角面片简化,得到面片数量较小的建筑物Mesh模型,减小三维模型的数据存储量并提升模型传输及可视化效率。

然而,区别于一般几何体Mesh模型,建筑物Mesh模型具有明显的平面特征、直角特征和边缘尖锐特征,且受数据采集及处理技术的影响,建筑物Mesh中三角面片尺度差异变化较大,采取通用Mesh模型简化算法应用于建筑物场景时,往往存在建筑物尖锐特征退化、几何精度较低等问题,大大降低了建筑物模型的后续应用价值。

因此,现有技术还有待于改进和发展。

发明内容

本发明的主要目的在于提供一种规则特征保持的建筑物Mesh模型简化方法及相关设备,旨在解决现有技术中采取通用Mesh模型简化算法应用于建筑物场景时,存在建筑物尖锐特征退化、几何精度较低的问题。

为实现上述目的,本发明提供一种规则特征保持的建筑物Mesh模型简化方法,所述规则特征保持的建筑物Mesh模型简化方法包括如下步骤:

获取原始单体建筑物Mesh模型,计算所述原始单体建筑物Mesh模型中每个原始平面三角面片的重心点坐标和第一法向量,以及相邻两阶原始平面三角面片的法向量平均值和方差,根据所述第一法向量与所述法向量平均值之间的差值对所述原始平面三角面片进行区域增长,得到所述原始单体建筑物Mesh模型中的初始平面三角面片的集合,所述初始平面三角面片的集合为所述原始单体建筑物Mesh模型中的平面基元;

计算平面基元的面积和法向量,根据所述平面基元的法向量之间的差异对所述平面基元进行规则化调整,得到规则化平面基元,获取所述平面基元中的第一方向角以及所述平面基元中初始平面三角面片对应的第二方向角,根据所述第一方向角和所述第二方向角之间的差值对所述第一方向角对应的线段进行调整,得到所述平面基元的规则化边界线段;

获取所述平面基元中原始平面三角面片的闭合边界线集合和所述规则化平面基元的边界线集合,获取所述边界线集合中符合预设条件的子集,根据所述子集中的线段长度之和与所述原始平面三角面片的中所有线段之和的比例判断所述平面基元是否相邻,若是,则两个平面基元为相邻平面基元;

获取所述相邻平面基元在当前平面基元中的投影,将所述投影作为所述当前平面基元的边界约束,根据所述边界约束抑制所述当前平面基元邻接方向的延伸,其余未抑制方向通过平面基元相交得到若干候选平面,形成候选基元池;

根据所述原始单体建筑物Mesh模型中原始平面三角面片与所述候选基元池中的候选平面基元之间的拟合程度建立能量方程,根据二元标记法计算所述能量方程的最小能量解,并根据所述最小能量解对应的平面基元集合组成简化后的三维建筑物Mesh模型。

可选地,所述的规则特征保持的建筑物Mesh模型简化方法,其中,所述获取原始单体建筑物Mesh模型,计算所述原始单体建筑物Mesh模型中每个原始平面三角面片的重心点坐标和第一法向量,以及相邻两阶原始平面三角面片的法向量平均值和方差,根据所述第一法向量与所述法向量平均值之间的差值对所述原始平面三角面片进行区域增长,得到所述原始单体建筑物Mesh模型中的初始平面三角面片的集合,所述初始平面三角面片的集合为所述原始单体建筑物Mesh模型中的平面基元,具体包括:

获取原始单体建筑物Mesh模型,并对所述原始单体建筑物Mesh模型进行剖分,使所述原始单体建筑物Mesh模型中原始平面三角面片的面积相等;

计算所述原始单体建筑物Mesh模型中每个原始平面三角面片的重心点坐标和第一法向量、每个原始平面三角面片一阶相邻的原始平面三角面片集合的第二法向量的平均值和第一角度差异之方差、以及每个原始平面三角面片二阶相邻的原始平面三角面片集合的第三法向量的平均值和第二角度差异之方差;

根据所述重心点坐标、第一法向量、第二法向量的平均值、第一角度差异之方差、第三法向量的平均值和第二角度差异之方差构建每个原始平面三角面片的多尺度特征描述符;

判断所述第一法向量、第二法向量和第三法向量相互之间的差值是否均小于第一预设阈值,若是,则将所述第一法向量、第二法向量和第三法向量对应的原始平面三角面片作为初始种子点,对所述原始平面三角面片进行区域增长,并将相邻且法向量差值小于所述第一预设阈值的原始平面三角面片进行合并,直至所有相邻的原始平面三角面片与增长后的原始平面三角面片集合之间的差值不小于所述第一预设阈值,得到所述目标单体建筑物Mesh模型中的初始平面三角面片的集合,所述初始平面三角面片的集合为所述目标单体建筑物Mesh模型中的平面基元。

可选地,所述的规则特征保持的建筑物Mesh模型简化方法,其中,所述计算平面基元的面积和法向量,根据所述平面基元的法向量之间的差异对所述平面基元进行规则化调整,得到规则化平面基元,获取所述平面基元中的第一方向角以及所述平面基元中初始平面三角面片对应的第二方向角,根据所述第一方向角和所述第二方向角之间的差值对所述第一方向角对应的线段进行调整,得到所述平面基元的规则化边界线段,具体包括:

计算所述平面基元的面积和法向量,按照所述面积从大到小的顺序,从面积最大的平面基元开始,判断所述面积最大的平面基元的法向量与其余平面基元中的法向量的差值是否处于第一预设范围或第二预设范围,若是,则将与所述面积最大的平面基元对比的平面基元围绕自身中心旋转至与所述面积最大的平面基元的法向量方向一致或垂直,直至所有平面基元都进行一次判断及调整,得到规则化平面基元;

从面积最大的平面基元开始,获取透过所述平面基元中的初始平面三角面片的三角顶点,并将与所述平面基元非平行的平面基元进行投影,通过所述三角顶点和投影结果,得到方向角集合;

获取所述平面基元中初始平面三角面片的边界线,采用道格拉斯普客法对所述边界线进行简化,得到简化后的线段;

计算所述线段的方向角,并判断所述线段的方向角与所述方向角集合中的方向角的差值是否低于预设第二预设阈值,若是,则将与所述方向角集合中与所述线段的方向角对比的对应的线段围绕自身旋转至与所述简化后的线段角度一致,得到规则化边界线段。

可选地,所述的规则特征保持的建筑物Mesh模型简化方法,其中,所述采用道格拉斯普客法对所述边界线进行简化,具体包括:

获取多个三角面片中边界线起止点对应的的多个坐标点,并将所述多个坐标点组成折线;

将所述折线的起止点进行连接,得到一条直线;

判断所述折线上的点到所述直线的距离,若所述距离大于第三预设阈值,则将当前比较的所述折线上的点进行保留,反之,则进行舍弃。

可选地,所述的规则特征保持的建筑物Mesh模型简化方法,其中,所述获取所述平面基元中原始平面三角面片的闭合边界线集合和所述规则化平面基元的边界线集合,获取所述边界线集合中符合预设条件的子集,根据所述子集中的线段长度之和与所述原始平面三角面片的中所有线段之和的比例判断所述平面基元是否相邻,若是,则两个平面基元为相邻平面基元,具体包括:

获取两个平面基元中原始平面三角面片的闭合边界线集合和所述规则化平面基元的边界线集合;

提取所述规则化平面基元的边界线集合中相互平行且直线方程最小距离小于第四预设阈值的线段,得到两个子集;

计算所述两个子集中线段长度之和分别与所述原始平面三角面片的闭合边界线集合中所有线段长度之和的比值,分别得到第一比例和第二比例;

若所述原始平面三角面片的闭合边界线集合中两个基元的交集不为空集或第一比例大于第五预设阈值或第二比例大于第五预设阈值,则两个基元相邻,否则不相邻。

可选地,所述的规则特征保持的建筑物Mesh模型简化方法,其中,所述获取所述相邻平面基元在当前平面基元中的投影,将所述投影作为所述当前平面基元的边界约束,根据所述边界约束抑制所述当前平面基元邻接方向的延伸,其余未抑制方向通过平面基元相交得到若干候选平面,形成候选基元池,具体包括:

获取当前平面基元以及与所述当前平面基元相邻的平面基元,并计算所述相邻的平面基元在平面中的投影;

将所述投影作为当前平面基元的边界约束,根据所述边界约束抑制所述当前平面基元邻接方向的延伸,其余没有所述边界约束的方向继续延伸;

通过平面基元之间延伸的相交部分得到若干候选平面,所述平面基元和所述若干候选平面共同组成候选基元池。

可选地,所述的规则特征保持的建筑物Mesh模型简化方法,其中,所述根据所述原始单体建筑物Mesh模型中原始平面三角面片与所述候选基元池中的候选平面基元之间的拟合程度建立能量方程,根据二元标记法计算所述能量方程的最小能量解,并根据所述最小能量解对应的平面基元集合组成简化后的三维建筑物Mesh模型,具体包括:

获取所述候选基元池中的候选平面基元,并提取所述候选平面基元中包含的原始平面三角面片,通过计算所述原始平面三角面片到所述候选平面基元的平均距离、投影覆盖比例、法向量差异来获得所述候选平面基元中的平面三角面片与所述原始平面三角面片的拟合程度;

获取所述候选平面基元的相交线的第一直线方程以及所述相交线在所述原始平面三角面片中的投影,得到所述投影经过所述原始平面三角面片的集合,根据所述集合中原始平面三角面片的重心点得到第二直线方程,通过所述第一直线方程和所述第二直线方程判断简化后的模型与目标单体建筑物Mesh模型的线特征拟合性;

通过二元整数规划方程确定同一交线连接的基元数量,得到所述候选平面基元与交线之间的拓扑约束关系;

计算所述原始平面三角面片在所述候选平面基元中的平面三角面片的对应的面积比例,得到比例值域,通过所述比例值域来获得简化后的模型与目标单体建筑物Mesh模型拟合的完整度;

通过所述候选平面基元中的平面三角面片对与所述原始平面三角面片的拟合程度、简化后的模型与目标单体建筑物Mesh模型的线特征拟合性、所述候选平面基元与交线之间的拓扑约束关系、以及简化后的模型与目标单体建筑物Mesh模型拟合的完整度计算拟合度,得到与原始单体建筑物Mesh模型拟合度的最小能量解,并将所述最小能量解对应的候选平面基元提取,组合得到简化后的三维建筑物Mesh模型。

此外,为实现上述目的,本发明还提供一种规则特征保持的建筑物Mesh模型简化系统,其中,所述规则特征保持的建筑物Mesh模型简化系统包括:

平面基元提取模块,用于获取原始单体建筑物Mesh模型,计算所述原始单体建筑物Mesh模型中每个原始平面三角面片的重心点坐标和第一法向量,以及相邻两阶原始平面三角面片的法向量平均值和方差,根据所述第一法向量与所述法向量平均值之间的差值对所述原始平面三角面片进行区域增长,得到所述原始单体建筑物Mesh模型中的初始平面三角面片的集合,所述初始平面三角面片的集合为所述原始单体建筑物Mesh模型中的平面基元;

平面基元规则调整模块,用于计算平面基元的面积和法向量,根据所述平面基元的法向量之间的差异对所述平面基元进行规则化调整,得到规则化平面基元,获取所述平面基元中的第一方向角以及所述平面基元中初始平面三角面片对应的第二方向角,根据所述第一方向角和所述第二方向角之间的差值对所述第一方向角对应的线段进行调整,得到所述平面基元的规则化边界线段;

平面基元关系判断模块,用于获取所述平面基元中原始平面三角面片的闭合边界线集合和所述规则化平面基元的边界线集合,获取所述边界线集合中符合预设条件的子集,根据所述子集中的线段长度之和与所述原始平面三角面片的中所有线段之和的比例判断所述平面基元是否相邻,若是,则两个平面基元为相邻平面基元;

候选平面生成模块,用于获取所述相邻平面基元在当前平面基元中的投影,将所述投影作为所述当前平面基元的边界约束,根据所述边界约束抑制所述当前平面基元邻接方向的延伸,其余未抑制方向通过平面基元相交得到若干候选平面,形成候选基元池;

候选平面优选模块,用于根据所述原始单体建筑物Mesh模型中原始平面三角面片与所述候选基元池中的候选平面基元之间的拟合程度建立能量方程,根据二元标记法计算所述能量方程的最小能量解,并根据所述最小能量解对应的平面基元集合组成简化后的三维建筑物Mesh模型。

此外,为实现上述目的,本发明还提供一种终端,其中,所述终端包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的规则特征保持的建筑物Mesh模型简化程序,所述规则特征保持的建筑物Mesh模型简化程序被所述处理器执行时实现如上所述的规则特征保持的建筑物Mesh模型简化方法的步骤。

此外,为实现上述目的,本发明还提供一种计算机可读存储介质,其中,所述计算机可读存储介质存储有规则特征保持的建筑物Mesh模型简化程序,所述规则特征保持的建筑物Mesh模型简化程序被处理器执行时实现如上所述的规则特征保持的建筑物Mesh模型简化方法的步骤。

本发明中,获取原始单体建筑物Mesh模型,计算所述原始单体建筑物Mesh模型中每个原始平面三角面片的重心点坐标和第一法向量,以及相邻两阶原始平面三角面片的法向量平均值和方差,根据所述第一法向量与所述法向量平均值之间的差值对所述原始平面三角面片进行区域增长,得到所述原始单体建筑物Mesh模型中的初始平面三角面片的集合,所述初始平面三角面片的集合为所述原始单体建筑物Mesh模型中的平面基元;计算平面基元的面积和法向量,根据所述平面基元的法向量之间的差异对所述平面基元进行规则化调整,得到规则化平面基元,获取所述平面基元中的第一方向角以及所述平面基元中初始平面三角面片对应的第二方向角,根据所述第一方向角和所述第二方向角之间的差值对所述第一方向角对应的线段进行调整,得到所述平面基元的规则化边界线段;获取所述平面基元中原始平面三角面片的闭合边界线集合和所述规则化平面基元的边界线集合,获取所述边界线集合中符合预设条件的子集,根据所述子集中的线段长度之和与所述原始平面三角面片的中所有线段之和的比例判断所述平面基元是否相邻,若是,则两个平面基元为相邻平面基元;获取所述相邻平面基元在当前平面基元中的投影,将所述投影作为所述当前平面基元的边界约束,根据所述边界约束抑制所述当前平面基元邻接方向的延伸,其余未抑制方向通过平面基元相交得到若干候选平面,形成候选基元池;根据所述原始单体建筑物Mesh模型中原始平面三角面片与所述候选基元池中的候选平面基元之间的拟合程度建立能量方程,根据二元标记法计算所述能量方程的最小能量解,并根据所述最小能量解对应的平面基元集合组成简化后的三维建筑物Mesh模型。本发明通过对建筑物Mesh面片中的平整区域进行多尺度特征提取,得到建筑物平面基元,并恢复建筑物平面基元之间的平行、垂直关系,作为简化过程中重点保持的建筑物特征,同时,通过平面基元之间的规则性、邻接性来恢复部分建筑物平面基元之间的拓扑关系,提升了简化后Mesh模型的几何精度和拓扑正确性,更好地保持了建筑物的尖锐特征。

附图说明

图1是本发明规则特征保持的建筑物Mesh模型简化方法的较佳实施例的建筑物Mesh模型简化示意图;

图2是本发明规则特征保持的建筑物Mesh模型简化方法的较佳实施例的流程图;

图3是本发明规则特征保持的建筑物Mesh模型简化方法的较佳实施例的Mesh模型中三角面片示意图;

图4是本发明规则特征保持的建筑物Mesh模型简化系统的较佳实施例的传统候选平面簇生成示意图;

图5是本发明规则特征保持的建筑物Mesh模型简化系统的较佳实施例的部分拓扑支持的候选平面簇生成示意图;

图6是本发明规则特征保持的建筑物Mesh模型简化系统的较佳实施例的结构图;

图7为本发明终端的较佳实施例的结构图。

具体实施方式

为使本发明的目的、技术方案及优点更加清楚、明确,以下参照附图并举实施例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明的实现思路:首先分析建筑物三维Mesh模型的三角面片尺度及法向量,对建筑物三维Mesh模型进行三角面片剖分,统一三维Mesh模型的尺度(使所述三维Mesh模型中剖分的三角面片的尺度大致相同)。然后,从三角面片中提取建筑物平面基元、及闭合的平面基元边界线,并分析平面基元之间的拓扑关系。在此基础上,基于平面基元之间恢复的部分拓扑关系,通过平面基元相交得到简化后Mesh模型的候选平面基元。最后,考虑简化前后Mesh模型的几何精度、建筑物规则性以及拓扑一致性来构建能量方程,从候选平面基元中选择一个子集组成简化的建筑物Mesh模型。

如图1所示,本发明的技术方案的基于原始单体建筑物Mesh模型,经过建筑物Mesh平面基元提取、平面基元拓扑关系推测、平面基元规则化、候选平面基元生成、候选平面基元优选等五个步骤,生成简化的建筑物Mesh模型。

本发明较佳实施例所述的规则特征保持的建筑物Mesh模型简化方法,如图2所示,所述规则特征保持的建筑物Mesh模型简化方法包括以下步骤:

步骤S10、获取原始单体建筑物Mesh模型,计算所述原始单体建筑物Mesh模型中每个原始平面三角面片的重心点坐标和第一法向量,以及相邻两阶原始平面三角面片的法向量平均值和方差,根据所述第一法向量与所述法向量平均值之间的差值对所述原始平面三角面片进行区域增长,得到所述原始单体建筑物Mesh模型中的初始平面三角面片的集合,所述初始平面三角面片的集合为所述原始单体建筑物Mesh模型中的平面基元,其中,本发明的步骤S10是对Mesh模型中平面基元进行稳健提取。

具体地,获取原始单体建筑物Mesh模型,并对所述原始单体建筑物Mesh模型进行剖分,使所述原始单体建筑物Mesh模型中原始平面三角面片的面积相等。

如图3所示,计算所述原始单体建筑物Mesh模型中每个原始平面三角面片(图3中a)的重心点坐标P和第一法向量n

其中,所述重心点坐标P由所述原始平面三角面片中三个顶点XYZ坐标的平均值求得;所述法向量由所述原始平面三角面片中三个顶点组成的的平面方程求得。

根据所述重心点坐标、第一法向量、第二法向量的平均值、第一角度差异之方差、第三法向量的平均值和第二角度差异之方差构建每个原始平面三角面片的多尺度特征描述符。

其中,所述多尺度特征描述符F=(P,n

判断所述第一法向量、第二法向量和第三法向量相互之间的差值是否均小于第一预设阈值,若是,则将所述第一法向量、第二法向量和第三法向量对应的原始平面三角面片作为初始种子点,对所述原始平面三角面片进行区域增长,并将相邻且法向量差值小于所述第一预设阈值的原始平面三角面片进行合并,直至所有相邻的原始平面三角面片与增长后的原始平面三角面片集合之间的差值不小于所述第一预设阈值,得到所述目标单体建筑物Mesh模型中的初始平面三角面片的集合,所述初始平面三角面片的集合为所述目标单体建筑物Mesh模型中的平面基元。

其中,选择n

计算每个初始平面三角面片簇的总面积A

其中,总面积A

步骤S20、计算平面基元的面积和法向量,根据所述平面基元的法向量之间的差异对所述平面基元进行规则化调整,得到规则化平面基元,获取所述平面基元中的第一方向角以及所述平面基元中初始平面三角面片对应的第二方向角,根据所述第一方向角和所述第二方向角之间的差值对所述第一方向角对应的线段进行调整,得到所述平面基元的规则化边界线段。

本发明的步骤S20是对建筑物基元面片及边界规则化,首先将对初始三角面片簇拟合的平面方程进行三维空间中的规则化,恢复建筑物基元之间的平行、垂直关系;然后,将各三角形簇的三维闭合边界线投影到规则化之后的平面方程中,转化为二维边界线;最后,考虑平面之间的规则性、平面与边界线之间的规则性,在二维空间对边界线进行规则化,并将规则化之后的基元边界线反投影到原始三维空间。

具体地,计算所述平面基元S

从面积最大的平面基元S

获取所述平面基元中初始平面三角面片的边界线,采用道格拉斯普客法对所述边界线进行简化,得到简化后的线段。

其中,采用道格拉斯普客法对所述边界线进行简化的具体操作步骤为:

获取多个三角面片中边界线起止点对应的的多个坐标点,并将所述多个坐标点组成折线;将所述折线的起止点进行连接,得到一条直线AB;判断所述折线上的点到所述直线的距离,若所述距离大于第三预设阈值(如0.1m),则将当前比较的所述折线上的点进行保留,记为C,此时可以生成两条直线AC和CB,反之,则进行舍弃。

计算所述线段的方向角,并判断所述线段的方向角与所述方向角集合Φ中的方向角的差值是否低于预设第二预设阈值(优选为10°),若是,则将与所述方向角集合Φ中与所述线段的方向角对比的对应的线段围绕自身旋转至与所述简化后的线段角度一致,得到规则化边界线段。

其中,计算简化后线段的方向角,若与方向角集合Φ中的某个值相差小于10°,则将该线段绕中点旋转至相同角度,得到规则化的边界线段。

步骤S30、获取所述平面基元中原始平面三角面片的闭合边界线集合和所述规则化平面基元的边界线集合,获取所述边界线集合中符合预设条件的子集,根据所述子集中的线段长度之和与所述原始平面三角面片的中所有线段之和的比例判断所述平面基元是否相邻,若是,则两个平面基元为相邻平面基元。

本发明的步骤S30是实现规则与空间特征协同的拓扑关系恢复,由步骤S20生成的建筑物平面基元及其规则化边界,这一步要判断基元之间的邻接拓扑关系;本发明通过基元原始面片簇之间的相邻性(是否有公共边)以及三角面片规则化之后边界的平行性来推测基元之间的临界性,这里的拓扑关系是指两个平面是否相互邻接;若判定为相邻,则拓扑关系明确;否则,不明确。

具体地,获取两个平面基元中原始平面三角面片的闭合边界线集合L

将所有规则化的三角面片簇按总面积A

L

L

其三维规则边界线集合分别记为:

L

L

提取所述规则化平面基元的边界线集合中相互平行且直线方程最小距离小于第四预设阈值的线段,得到两个子集。

计算所述两个子集中线段长度之和分别与所述原始平面三角面片的闭合边界线集合中所有线段长度之和的比值,分别得到第一比例和第二比例。

其中,提取L

若所述原始平面三角面片的闭合边界线集合中两个基元的交集不为空集或第一比例大于第五预设阈值或第二比例大于第五预设阈值,则两个基元相邻,否则不相邻。

其中,若:L

步骤S40、获取所述相邻平面基元在当前平面基元中的投影,将所述投影作为所述当前平面基元的边界约束,根据所述边界约束抑制所述当前平面基元邻接方向的延伸,其余未抑制方向通过平面基元相交得到若干候选平面,形成候选基元池。

本发明的步骤S40为部分拓扑支持的候选平面基元集合生成,传统方法通过平面基元的平面相交得到建筑物的若干候选平面基元,具有一定的盲目性,导致简化后模型精度不佳(如图4所示)。本发明依据前述步骤恢复的部分基元之间的拓扑关系,在拓扑明确的区域通过基元平面相交得到边界线,抑制基元在该方向上的延伸;在拓扑不明确的区域,通过面片相交得到若干候选平面。

具体地,获取当前平面基元以及与所述当前平面基元相邻的平面基元,并计算所述相邻的平面基元在平面中的投影。

将所述投影作为当前平面基元的边界约束,根据所述边界约束抑制所述当前平面基元邻接方向的延伸,其余没有所述边界约束的方向继续延伸。

通过平面基元之间延伸的相交部分得到若干候选平面,所述平面基元和所述若干候选平面共同组成候选基元池。

其中,如图5所示,为某个平面三角面片的集合规则化之后的边界线。直线a表示S30中判断为相邻的平面基元在该平面中的投影,不同于盲目平面相交生成候选基元池,本发明以相邻基元在该平面中的投影为边界约束(图5中直线a),减少平面基元的延伸方向,有效保留已恢复的基元拓扑关系,提高简化后Mesh模型的保真度。

步骤S50、根据所述原始单体建筑物Mesh模型中原始平面三角面片与所述候选基元池中的候选平面基元之间的拟合程度建立能量方程,根据二元标记法计算所述能量方程的最小能量解,并根据所述最小能量解对应的平面基元集合组成简化后的三维建筑物Mesh模型。

本发明的步骤S50为候选平面优选,为了从基元池中选择几何与拓扑最优的平面基元的子集组成简化后的建筑物Mesh模型,本发明建立能量方程,综合考虑候选多边形面片对原始Mesh模型三角面片的拟合程度(Eface),候选多边形边界线对原始Mesh模型尖锐特征的拟合性(Elines),多边形面-线之间的拓扑约束关系(Etopo),对原始Mesh模型的拟合完整度(Einte)这四方面因素,所述能量方程为:E = Eface+Elines+Etopo +Einte ;其中,E为能量解。

具体地,获取所述候选基元池中的候选平面基元,并提取所述候选平面基元中包含的原始平面三角面片,通过计算所述原始平面三角面片到所述候选平面基元的平均距离、投影覆盖比例、法向量差异来获得所述候选平面基元中的平面三角面片与所述原始平面三角面片的拟合程度。

其中,对于面片特征,本发明提取各候选平面基元一定缓冲范围内包含的原始Mesh面片,统计这些Mesh面片到候选面片的平均距离、投影覆盖比例以及法向量差异作为拟合性测度。

平均距离:假设原始Mesh面片中包含N个三角面片,从三角面片的重心向候选面片作垂线,重心到垂足的长度即为该三角面片到该候选面片的投影距离,平均距离是若干三角面片到某候选面片投影距离的平均值。

投影覆盖比例:假设原始Mesh面片中包含N个三角面片,将三角面片的三个顶点分别投影到候选平面中,得到一个投影三角形,其面积即为投影面积;计算投影三角形与候选面片在候选平面上重合部分的面积,即为投影覆盖面积;投影覆盖比例就是N个三角面片的投影覆盖面积之和,除以这N个三角面片的投影面积之和。

法向量差异:假设原始Mesh面片中包含N个三角面片,计算每个三角面片的法向量,并求平均值,得到均值法向量;计算均值法向量与候选面片的法向量之间的夹角,即为法向量差异。

获取所述候选平面基元的相交线的第一直线方程以及所述相交线在所述原始平面三角面片中的投影,得到所述投影经过所述原始平面三角面片的集合,根据所述集合中原始平面三角面片的重心点得到第二直线方程,通过所述第一直线方程和所述第二直线方程判断简化后的模型与目标单体建筑物Mesh模型的线特征拟合性。

其中,对于线特征,本发明首先获取其直线方程Lcan。计算候选基元交线与在原始Mesh模型中的投影,得到其经过的原始Mesh中三角面片的集合Tline,通过Tline中各三角面片的重心点拟合直线方程Lmesh(首选计算N个三角面片的重心点坐标,然后通过最小二乘法拟合直线方程)。最后通过Lcan与Lmesh之间的夹角差异大小定量描述简化后模型对原始Mesh模型的线特征拟合性(所述夹角越小,拟合性越好)。

通过二元整数规划方程(规定多边形的边界线必须被2个多边形共用)确定同一交线连接的基元数量,得到所述候选平面基元与交线之间的拓扑约束关系,避免选择的平面基元间存在拓扑冲突。

计算所述原始平面三角面片在所述候选平面基元中的平面三角面片的对应的面积比例,得到比例值域,通过所述比例值域来获得简化后的模型与目标单体建筑物Mesh模型拟合的完整度。

其中,对于完整度特征,本发明考虑计算原始Mesh模型在候选基元组合中具有对应的三角面片的面积比例,该比例值域为0到1,数值越大说明对原始Mesh拟合的完整度越高。

通过所述候选平面基元中的平面三角面片对与所述原始平面三角面片的拟合程度、简化后的模型与目标单体建筑物Mesh模型的线特征拟合性、所述候选平面基元与交线之间的拓扑约束关系、以及简化后的模型与目标单体建筑物Mesh模型拟合的完整度计算拟合度,得到与原始单体建筑物Mesh模型拟合度的最小能量解,并将所述最小能量解对应的候选平面基元提取,组合得到简化后的三维建筑物Mesh模型。

最后,通过二元整数规划计算所述能量方程的最小能量解,即可得到面-线特征拟合性好、规则性高、拓扑关系正确的简化后三维建筑物Mesh模型。

本发明所带来的有益效果:

1.对于Mesh模型中多尺度平面基元提取,通过三角面片及其一阶、二阶相邻区域的法向量及其差异作为特征,判断局部区域的平面性,更好地从初始建筑物Mesh模型中提出平面基元。

2.对于部分拓扑引导的简化Mesh候选基元池生成,利用建筑物基元之间恢复的部分拓扑关系,在候选简化Mesh模型中对这些关系优先考虑,提高简化后建筑物模型的拓扑正确性。

3.对于面、线特征及其规则性约束的简化Mesh模型生成,利用初始Mesh模型中的面特征、线特征,及其之间的平行、垂直关系优选几何精度高、尖锐特征保持较好的候选基元构成简化后建筑物Mesh模型。

本发明针对现有Mesh模型简化方法应用与建筑物模型时存在的规则特征丢失、尖锐特征退化、几何精度较低等问题,利用建筑物Mesh面片中的多尺度特征提取平整区域作为建筑物平面基元,并恢复建筑物基元之间的平行、垂直关系,作为简化过程中重点保持的建筑物特征。然后,通过基元之间的规则性、邻接性恢复部分建筑物基元之间的拓扑关系,在简化过程中优先保护,进而提升简化后Mesh模型的几何精度和拓扑正确性。最后,在简化模型生成的能量方程中,显示考虑原始Mesh模型与简化后Mesh模型的线特征拟合度,更好地保持建筑物的尖锐特征。

进一步地,如图6所示,基于上述规则特征保持的建筑物Mesh模型简化方法,本发明还相应提供了一种规则特征保持的建筑物Mesh模型简化系统,其中,所述规则特征保持的建筑物Mesh模型简化系统包括:

平面基元提取模块51,用于获取原始单体建筑物Mesh模型,计算所述原始单体建筑物Mesh模型中每个原始平面三角面片的重心点坐标和第一法向量,以及相邻两阶原始平面三角面片的法向量平均值和方差,根据所述第一法向量与所述法向量平均值之间的差值对所述原始平面三角面片进行区域增长,得到所述原始单体建筑物Mesh模型中的初始平面三角面片的集合,所述初始平面三角面片的集合为所述原始单体建筑物Mesh模型中的平面基元;

平面基元规则调整模块52,用于计算平面基元的面积和法向量,根据所述平面基元的法向量之间的差异对所述平面基元进行规则化调整,得到规则化平面基元,获取所述平面基元中的第一方向角以及所述平面基元中初始平面三角面片对应的第二方向角,根据所述第一方向角和所述第二方向角之间的差值对所述第一方向角对应的线段进行调整,得到所述平面基元的规则化边界线段;

平面基元关系判断模块53,用于获取所述平面基元中原始平面三角面片的闭合边界线集合和所述规则化平面基元的边界线集合,获取所述边界线集合中符合预设条件的子集,根据所述子集中的线段长度之和与所述原始平面三角面片的中所有线段之和的比例判断所述平面基元是否相邻,若是,则两个平面基元为相邻平面基元;

候选平面生成模块54,用于获取所述相邻平面基元在当前平面基元中的投影,将所述投影作为所述当前平面基元的边界约束,根据所述边界约束抑制所述当前平面基元邻接方向的延伸,其余未抑制方向通过平面基元相交得到若干候选平面,形成候选基元池;

候选平面优选模块55,用于根据所述原始单体建筑物Mesh模型中原始平面三角面片与所述候选基元池中的候选平面基元之间的拟合程度建立能量方程,根据二元标记法计算所述能量方程的最小能量解,并根据所述最小能量解对应的平面基元集合组成简化后的三维建筑物Mesh模型。

进一步地,如图7所示,基于上述规则特征保持的建筑物Mesh模型简化方法和系统,本发明还相应提供了一种终端,所述终端包括处理器10、存储器20及显示器30。图7仅示出了终端的部分组件,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。

所述存储器20在一些实施例中可以是所述终端的内部存储单元,例如终端的硬盘或内存。所述存储器20在另一些实施例中也可以是所述终端的外部存储设备,例如所述终端上配备的插接式硬盘,智能存储卡(Smart Media Card, SMC),安全数字(SecureDigital, SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器20还可以既包括所述终端的内部存储单元也包括外部存储设备。所述存储器20用于存储安装于所述终端的应用软件及各类数据,例如所述安装终端的程序代码等。所述存储器20还可以用于暂时地存储已经输出或者将要输出的数据。在一实施例中,存储器20上存储有规则特征保持的建筑物Mesh模型简化程序40,该规则特征保持的建筑物Mesh模型简化程序40可被处理器10所执行,从而实现本申请中规则特征保持的建筑物Mesh模型简化方法。

所述处理器10在一些实施例中可以是一中央处理器(Central Processing Unit,CPU),微处理器或其他数据处理芯片,用于运行所述存储器20中存储的程序代码或处理数据,例如执行所述规则特征保持的建筑物Mesh模型简化方法等。

所述显示器30在一些实施例中可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。所述显示器30用于显示在所述终端的信息以及用于显示可视化的用户界面。所述终端的部件10-30通过系统总线相互通信。

在一实施例中,当处理器10执行所述存储器20中规则特征保持的建筑物Mesh模型简化程序40时实现如上所述的规则特征保持的建筑物Mesh模型简化方法的步骤。

本发明还提供一种计算机可读存储介质,其中,所述计算机可读存储介质存储有规则特征保持的建筑物Mesh模型简化程序,所述规则特征保持的建筑物Mesh模型简化程序被处理器执行时实现如上所述的规则特征保持的建筑物Mesh模型简化方法的步骤。

综上所述,本发明中,获取原始单体建筑物Mesh模型,计算所述原始单体建筑物Mesh模型中每个原始平面三角面片的重心点坐标和第一法向量,以及相邻两阶原始平面三角面片的法向量平均值和方差,根据所述第一法向量与所述法向量平均值之间的差值对所述原始平面三角面片进行区域增长,得到所述原始单体建筑物Mesh模型中的初始平面三角面片的集合,所述初始平面三角面片的集合为所述原始单体建筑物Mesh模型中的平面基元;计算平面基元的面积和法向量,根据所述平面基元的法向量之间的差异对所述平面基元进行规则化调整,得到规则化平面基元,获取所述平面基元中的第一方向角以及所述平面基元中初始平面三角面片对应的第二方向角,根据所述第一方向角和所述第二方向角之间的差值对所述第一方向角对应的线段进行调整,得到所述平面基元的规则化边界线段;获取所述平面基元中原始平面三角面片的闭合边界线集合和所述规则化平面基元的边界线集合,获取所述边界线集合中符合预设条件的子集,根据所述子集中的线段长度之和与所述原始平面三角面片的中所有线段之和的比例判断所述平面基元是否相邻,若是,则两个平面基元为相邻平面基元;获取所述相邻平面基元在当前平面基元中的投影,将所述投影作为所述当前平面基元的边界约束,根据所述边界约束抑制所述当前平面基元邻接方向的延伸,其余未抑制方向通过平面基元相交得到若干候选平面,形成候选基元池;根据所述原始单体建筑物Mesh模型中原始平面三角面片与所述候选基元池中的候选平面基元之间的拟合程度建立能量方程,根据二元标记法计算所述能量方程的最小能量解,并根据所述最小能量解对应的平面基元集合组成简化后的三维建筑物Mesh模型。本发明通过对建筑物Mesh面片中的平整区域进行多尺度特征提取,得到建筑物平面基元,并恢复建筑物平面基元之间的平行、垂直关系,作为简化过程中重点保持的建筑物特征,同时,通过平面基元之间的规则性、邻接性来恢复部分建筑物平面基元之间的拓扑关系,提升了简化后Mesh模型的几何精度和拓扑正确性,更好地保持了建筑物的尖锐特征。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者终端中还存在另外的相同要素。

当然,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关硬件(如处理器,控制器等)来完成,所述的程序可存储于一计算机可读取的计算机可读存储介质中,所述程序在执行时可包括如上述各方法实施例的流程。其中所述的计算机可读存储介质可为存储器、磁碟、光盘等。

应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。

相关技术
  • 一种保持外观特征的复杂三维建筑物模型简化方法
  • 一种基于优化的特征保持的三维网格模型简化方法和系统
技术分类

06120115973126