CN116933359B - 一种建筑复杂屋顶建模方法及系统 - Google Patents
一种建筑复杂屋顶建模方法及系统 Download PDFInfo
- Publication number
- CN116933359B CN116933359B CN202310756958.2A CN202310756958A CN116933359B CN 116933359 B CN116933359 B CN 116933359B CN 202310756958 A CN202310756958 A CN 202310756958A CN 116933359 B CN116933359 B CN 116933359B
- Authority
- CN
- China
- Prior art keywords
- roof
- point cloud
- plane
- target
- edge
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 25
- 230000011218 segmentation Effects 0.000 claims abstract description 37
- 238000005457 optimization Methods 0.000 claims abstract description 33
- 230000008859 change Effects 0.000 claims description 25
- 238000001914 filtration Methods 0.000 claims description 11
- 238000004364 calculation method Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 claims description 3
- 238000009877 rendering Methods 0.000 claims description 3
- 230000006870 function Effects 0.000 description 16
- 238000000605 extraction Methods 0.000 description 11
- 230000009471 action Effects 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 101150082690 Pou3f1 gene Proteins 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000012886 linear function Methods 0.000 description 1
- 230000014759 maintenance of location Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/10—Geometric CAD
- G06F30/13—Architectural design, e.g. computer-aided architectural design [CAAD] related to design of buildings, bridges, landscapes, production plants or roads
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F30/00—Computer-aided design [CAD]
- G06F30/20—Design optimisation, verification or simulation
-
- 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
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2111/00—Details relating to CAD techniques
- G06F2111/04—Constraint-based CAD
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02T—CLIMATE CHANGE MITIGATION TECHNOLOGIES RELATED TO TRANSPORTATION
- Y02T10/00—Road transport of goods or passengers
- Y02T10/10—Internal combustion engine [ICE] based vehicles
- Y02T10/40—Engine management systems
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Geometry (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Architecture (AREA)
- Computational Mathematics (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Civil Engineering (AREA)
- Structural Engineering (AREA)
- Computer Graphics (AREA)
- Software Systems (AREA)
- Image Generation (AREA)
Abstract
本申请实施例提供的一种建筑复杂屋顶建模方法及系统,该方法包括基于所确定的屋檐高度,从获取到的房屋点云中切割出屋顶点云;基于预设的面分割条件,对屋顶点云进行面分割,得到多个目标屋顶平面;基于分割得到的各目标屋顶平面,保留平面在屋顶包围盒内的区域面,得到一个初始的三维模型;定义三维模型的线性规划问题,并根据线性规划问题的拓扑结构,定义多类二进制变量,多类二进制变量包括面选择变量、边选择变量以及尖锐边选择变量;根据线性规划问题的属性,定义组合系数,并基于所述组合系数、所述多类二进制变量构建线性目标函数;在预设的约束条件下,对所述线性目标函数进行优化求解,并在优化结束后,输出屋顶三维模型。
Description
技术领域
本申请涉及点云数据处理技术领域,具体而言,涉及一种建筑复杂屋顶建模方法及系统。
背景技术
随着数字孪生技术的推进,相应研究人员提出了提取细节丰富的城市建筑物实体模型的方法,这一方法也逐渐成为了数字基底构建的基础。为了更好的表示城市实体,生成的实景三维模型需要包含实体的三维立体组成结构以及部件级的语义关系。然而,由于城市建筑物的组成复杂,特别是高层建筑物屋顶会包含不同的楼层结构,低层建筑物屋顶会包含坡向不同的屋顶结构。因此,针对这种复杂的城市建筑场景,针对现有技术存在的时间效率低下、模型拓扑关系不明确以及语义信息缺乏等问题,如何在语义信息缺乏的情况下,精细化的提取出建筑屋顶特征,并通过明确模型内的拓扑关系,并以此实现对屋顶三维模型的有效建模,成为本申请的研究重点。
发明内容
本申请实施例的目的在基于提供一种建筑复杂屋顶建模方法及系统,可以精细化的提取出建筑屋顶特征,并通过明确模型内的拓扑关系,并以此实现对屋顶三维模型的有效建模。
本申请实施例还提供了一种建筑复杂屋顶建模方法,包括以下步骤:
S1、基于所确定的屋檐高度,从获取到的房屋点云中切割出屋顶点云;
S2、基于预设的面分割条件,对所述屋顶点云进行面分割,得到多个目标屋顶平面;
S3、基于分割得到的各所述目标屋顶平面,保留平面在屋顶包围盒内的区域面,得到一个初始的三维模型;
S4、定义所述三维模型的线性规划问题,并根据线性规划问题的拓扑结构,定义多类二进制变量,所述多类二进制变量包括面选择变量、边选择变量以及尖锐边选择变量;
S5、根据线性规划问题的属性,定义组合系数,并基于所述组合系数、所述多类二进制变量构建线性目标函数;
S6、在预设的约束条件下,对所述线性目标函数进行优化求解,并在优化结束后,输出屋顶三维模型。
第二方面,本申请实施例还提供了一种建筑复杂屋顶建模系统,所述系统包括点云切割模块、面分割模块、模型建立模块以及模型优化模块,其中:
所述点云切割模块,用于基于所确定的屋檐高度,从获取到的房屋点云中切割出屋顶点云;
所述面分割模块,用于基于预设的面分割条件,对所述屋顶点云进行面分割,得到多个目标屋顶平面;
所述模型建立模块,用于基于分割得到的各所述目标屋顶平面,保留平面在屋顶包围盒内的区域面,得到一个初始的三维模型;
所述模型优化模块,用于定义所述三维模型的线性规划问题,并根据线性规划问题的拓扑结构,定义多类二进制变量,所述多类二进制变量包括面选择变量、边选择变量以及尖锐边选择变量;根据线性规划问题的属性,定义组合系数,并基于所述组合系数、所述多类二进制变量构建线性目标函数;在预设的约束条件下,对所述线性目标函数进行优化求解,并在优化结束后,输出屋顶三维模型。
第三方面,本申请实施例还提供了一种可读存储介质,所述可读存储介质中包括建筑复杂屋顶建模方法程序,所述建筑复杂屋顶建模方法程序被处理器执行时,实现如上述任一项所述的一种建筑复杂屋顶建模方法的步骤。
由上可知,本申请实施例提供的一种建筑复杂屋顶建模方法、系统及可读存储介质,一方面,在语义信息缺乏的情况下,能够基于屋檐高度的识别,针对性的进行屋顶点云的提取,相比于现有技术,能够有效提高屋顶点云的提取效率。一方面,还能够基于屋顶平面的识别,通过保留平面在屋顶包围盒内的区域面,建立相应的三维模型,进一步保留了模型的几何特征。最后,本申请还能够将建筑物屋顶的三维模型重建转换为线性规划问题,通过线性优化求解,进一步明确模型内的拓扑关系,由此实现了高效、精准的屋顶面片优化提取,具有较高的三维模型重建精度。
本申请的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请实施例了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1为本申请实施例提供的一种建筑复杂屋顶建模方法的流程图;
图2为切割得到的屋顶点云示意图;
图3为基于凸包生成的三维模型示意图;
图4为最终输出的屋顶三维模型示意图;
图5为本申请实施例提供的一种建筑复杂屋顶建模系统的结构示意图。
具体实施方式
下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
请参照图1,图1是本申请一些实施例中的一种建筑复杂屋顶建模方法的流程图,包括以下步骤:
步骤S1,基于所确定的屋檐高度,从获取到的房屋点云中切割出屋顶点云。
步骤S2,基于预设的面分割条件,对所述屋顶点云进行面分割,得到多个目标屋顶平面。
具体的,当前实施例中所使用的面分割算法属于业内比较成熟的算法,在pcl(Point Cloud Library,点云库)中有集成,当前不做过多说明。具体在实施的时候,可以预先基于搜索半径、构面最小点、平面厚度阈值等条件确定面分割条件,且分割之后,将得到多个单独的平面。其中,位于同一平面内的点云拥有相似特征。
步骤S3,基于分割得到的各所述目标屋顶平面,保留平面在屋顶包围盒内的区域面,得到一个初始的三维模型。
具体的,针对每个目标屋顶平面将生成相应的屋顶包围盒,后续,将分别计算各所述目标屋顶平面与相应屋顶包围盒之间的交点,得到相应的交点集合,其中,在计算得到相应目标屋顶平面对应的交点集合的凸包时,基于该凸包将进一步确定各目标屋顶平面在相应包围盒内的区域面,并以此生成相应的三维模型。
步骤S4,定义所述三维模型的线性规划问题,并根据线性规划问题的拓扑结构,定义多类二进制变量,所述多类二进制变量包括面选择变量、边选择变量以及尖锐边选择变量。
其中,线性规划是一种优化问题,其目标是在约束条件(一组线性等式或不等式)的前提下寻找线性函数值最大或最小的解。由此,线性规划问题通常涉及到最小化或最大化一个线性目标函数以及一组线性限制条件。
具体的,为了构建线性规划对象并定义线性目标函数对象,需要按照线性规划问题的拓扑结构来创建上述的三类二进制变量。
需要进一步说明的是,所述面选择变量代表是否选择遍历到的面进行渲染或使用,所述边选择变量代表是否选择遍历到的相交边连接两个相邻面,所述尖锐边选择变量代表是否选择遍历到的尖锐边进行连接。
步骤S5,根据线性规划问题的属性,定义组合系数,并基于所述组合系数、所述多类二进制变量构建线性目标函数。
需要说明的是,线性规划问题的属性可以理解为问题本身的特征。当前实施例中,将基于该特征进一步定义组合系数。最终,将所述组合系数、以及所述多类二进制变量进行组合,即可得到一个线性目标函数。当前不对函数的具体形式进行限定。
具体的,所述组合系数包括每个被选择的面对目标函数值的贡献、每条被选择的相交边对目标函数值的贡献、每个被连接的尖锐边对目标函数值的贡献、对任意相邻的连接进行惩罚、以及对任意两个面之间没有合法连接进行惩罚中的至少一种。
步骤S6,在预设的约束条件下,对所述线性目标函数进行优化求解,并在优化结束后,输出屋顶三维模型。
具体的,在预设的约束条件下,将基于指定的线性规划求解器进行优化求解,并在优化结束后,输出最终的屋顶建模模型(具体可参考图4),其中,所述线性规划求解器中集成有gurobi,scip,LpSolve等第三方最优化算法。当前实施例中,将基于上述的第三方最优化算法进行优化求解,最终求解得到模型中的边和面的值为0或1,其中,0代表舍弃,1代表保留。
由上可知,本申请公开的一种建筑复杂屋顶建模方法,一方面,在语义信息缺乏的情况下,能够基于屋檐高度的识别,针对性的进行屋顶点云的提取,相比于现有技术,能够有效提高屋顶点云的提取效率。一方面,还能够基于屋顶平面的识别,通过保留平面在屋顶包围盒内的区域面,建立相应的三维模型,进一步保留了模型的几何特征。最后,本申请还能够将建筑物屋顶的三维模型重建转换为线性规划问题,通过线性优化求解,进一步明确模型内的拓扑关系,由此实现了高效、精准的屋顶面片优化提取,具有较高的三维模型重建精度。
在其中一个实施例中,步骤S1中,所述基于屋檐高度,从获取到的房屋点云中切割出屋顶点云,包括:
步骤S11,获取房屋点云,并基于所述房屋点云进行墙面点云的识别、过滤,识别得到屋顶点云。
步骤S12,将所述屋顶点云按照预设的分辨率进行划分,生成相应的格网。
具体的,结合实际应用场景,当前实施例中,可以按照5cm精度对所述屋顶点云进行划分,生成多个对应5*5*5分辨率的网格。
步骤S13,计算格网中每个高度处对应的法向变化率,并将对应法向变化率最大的作为屋檐高度。
步骤S14,基于所述屋檐高度,从所述房屋点云中切割出屋顶点云。
具体的,当前实施例中,将基于所述屋檐高度设定裁剪面积,并以此完成对屋顶点云的切割,切割得到的屋顶点云可参考图2进行理解。
在其中一个实施例中,步骤S11中,所述基于所述房屋点云进行墙面点云的识别、过滤,识别得到屋顶点云,包括:
步骤S111,基于所述房屋点云进行平面识别,以确定多个房屋平面。
具体的,可以基于特征点实现环境理解,完成对房屋平面的检测,例如通过三角测量算法,可以让三个点构成一个平面,经过多次计算之后以确定所需检测到的房屋平面,由于该算法属于现有技术,当前不作过多说明。
步骤S112,计算各房屋平面与z轴之间的夹角,并将夹角小于预设夹角阈值的平面作为房屋墙面。
具体的,平面与z轴之间的夹角计算属于现有技术,当前不作具体限定。
步骤S113,从所述房屋点云中过滤掉对应房屋墙面的墙面点云,识别得到屋顶点云。
具体的,从所述房屋点云中过滤掉对应房屋墙面的墙面点云,剩余的即为屋顶点云。
在其中一个实施例中,由于测量过程受到人为或环境等因素的影响,会引入离群点,即离主体点云较远的小片点云和离散点。其中,离群点的存在,会影响后续的建模质量。由此,在完成墙面点云的过滤之后,当前实施例中,将进一步进行离散点的过滤。
具体在实施的时候,可以通过滤波操作进行离散点的去除。示例性的,可以使用PCL库中的滤波器类,例如pcl::StatisticalOutlierRemoval或pcl::RadiusOutlierRemoval进行过滤,当前不对离散点的过滤方式进行限定。
在其中一个实施例中,步骤S13中,所述计算格网中每个高度处对应的法向变化率,并将对应法向变化率最大的作为屋檐高度,包括:
步骤S131,针对格网中的每个网格,分别计算该网格与上相邻网格的第一法向量夹角,以及与下相邻网格的第二法向量夹角。
步骤S132,基于所求的第一法向量夹角以及第二法向量夹角进行均值计算,得到每个网格分别对应的法向变化率。
步骤S133,针对格网中的每个高度,确定对应高度的所有目标网格,并基于各所述目标网格的法向变化率进行平方和的计算,得到每个高度处对应的法向变化率。
步骤S134,将格网中每个高度处分别对应的法向变化率进行比较,将对应法向变化率取最大的作为屋檐高度。
具体的,在基于步骤S132求得所有网格的法向变化率之后,可以进一步基于步骤S133计算得到格网中每个高度处分别对应的法向变化率,即将对应高度的所有网格的法向变化率求平方和。其中,该值对应的是每个高度处,平面在z方向上的变化速率。由于屋檐处的变化率应该最高,由此在将每个高度处对应的法向变化率进行一一比较之后,将对应法向变化率取最大的作为屋檐高度即可。
在其中一个实施例中,步骤S21中,所述基于预设的面分割条件,对所述屋顶点云进行面分割,得到多个目标屋顶平面,包括:
步骤S21,基于预设的面分割条件,初步对所述屋顶点云进行面分割,得到初始屋顶平面。
步骤S22,遍历各所述初始屋顶平面。
步骤S23,遍历过程中,计算遍历到的第一目标平面中的各点与相邻第二目标平面之间的距离。
步骤S24,确定所述第一目标平面中所求距离小于预设距离阈值的目标点数量,在确定所述目标点数量满足预设平面合并条件时,将所述第一目标平面与所述第二目标平面进行合并,得到目标屋顶平面。
步骤S25,在确定所述目标点数量不满足预设平面合并条件时,将所述第一目标平面作为目标屋顶平面。
具体的,在确定遍历到第一目标平面时,将判断所述第一目标平面周围是否存在相邻的第二目标平面,若存在,则计算第一目标平面中的各点与所述第二目标平面之间的距离,得到多项距离值,其中,每项距离值均会与预设距离阈值进行比较,并在确定相应点的距离值小于预设距离阈值时,将该相应点作为目标点。比较结束之后,统计目标点的数量即可得到目标点数量。
另外,当前实施例中,还需要判断所述目标点数量是否满足预设平面合并条件,包括:判断所述目标点数量是否小于所述第一目标平面内涵盖的点总数的1/5;若是,则认为所述目标点数量满足预设平面合并条件,并将所述第一目标平面与所述第二目标平面进行合并,得到目标屋顶平面;反之,则不进行合并,并将所述第一目标平面作为目标屋顶平面输出。
在其中一个实施例中,步骤S3中,所述基于分割得到的各所述目标屋顶平面,保留平面在屋顶包围盒内的区域面,得到一个初始的三维模型,包括:
步骤S31,针对每个目标屋顶平面,生成相应的屋顶包围盒。
步骤S32,识别各所述目标屋顶平面与相应包围盒中的各边的交点,得到相应的交点集合。
示例性的,针对目标屋顶平面A1,以及与平面A1对应的屋顶包围盒A2,将遍历屋顶包围盒A2中的所有边,其中,针对遍历的每条边,将统计该边与平面A1之间是否存在交点,其中,所确定的每一交点将统一记录在预设的交点集合中,以便于后续数据计算。可选的,若确定该边没有与平面A1相交,但该边的两端点中的任一点A3在平面A1上,这种情况下,也会将点A3记录在预设的交点集合中。
步骤S33,计算各所述交点集合的凸包,以确定各所述目标屋顶平面在相应包围盒内的区域面,并以此生成一个初始的三维模型。
具体的,所得的凸包可以理解为最小凸多面体几何体,当前实施例中,会将所有凸多面体几何体形成的组合视为当前步骤在示意的三维模型。
在其中一个实施例中,步骤S6中,所述约束条件包括与一条边相关联的面的数量为2或0的第一约束条件、如果一条边被判断为尖锐边,则优先选择这条边的第二约束条件、如果一条边被判断为处于边界,则优先选择这条边的第三约束条件、如果一个面被判断为边界面,则优先移除这个面的第四约束条件中的至少一种。
请参考图5,本申请公开的一种建筑复杂屋顶建模系统,所述系统包括点云切割模块、面分割模块、模型建立模块以及模型优化模块,其中:
所述点云切割模块,用于基于所确定的屋檐高度,从获取到的房屋点云中切割出屋顶点云。
所述面分割模块,用于基于预设的面分割条件,对所述屋顶点云进行面分割,得到多个目标屋顶平面。
所述模型建立模块,用于基于分割得到的各所述目标屋顶平面,保留平面在屋顶包围盒内的区域面,得到一个初始的三维模型。
所述模型优化模块,用于定义所述三维模型的线性规划问题,并根据线性规划问题的拓扑结构,定义多类二进制变量,所述多类二进制变量包括面选择变量、边选择变量以及尖锐边选择变量;根据线性规划问题的属性,定义组合系数,并基于所述组合系数、所述多类二进制变量构建线性目标函数;在预设的约束条件下,对所述线性目标函数进行优化求解,并在优化结束后,输出屋顶三维模型。
在其中一个实施例中,该系统中的各模块还用于执行上述实施例的任一可选的实现方式中的方法。
由上可知,本申请公开的一种建筑复杂屋顶建模系统,一方面,在语义信息缺乏的情况下,能够基于屋檐高度的识别,针对性的进行屋顶点云的提取,相比于现有技术,能够有效提高屋顶点云的提取效率。一方面,还能够基于屋顶平面的识别,通过保留平面在屋顶包围盒内的区域面,建立相应的三维模型,进一步保留了模型的几何特征。最后,本申请还能够将建筑物屋顶的三维模型重建转换为线性规划问题,通过线性优化求解,进一步明确模型内的拓扑关系,由此实现了高效、精准的屋顶面片优化提取,具有较高的三维模型重建精度。
本申请实施例提供一种可读存储介质,所述计算机程序被处理器执行时,执行上述实施例的任一可选的实现方式中的方法。其中,存储介质可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random AccessMemory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable ProgrammableRead-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable ProgrammableRead Only Memory,简称EPROM),可编程只读存储器(Programmable Red-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。
上述可读存储介质,一方面,在语义信息缺乏的情况下,能够基于屋檐高度的识别,针对性的进行屋顶点云的提取,相比于现有技术,能够有效提高屋顶点云的提取效率。一方面,还能够基于屋顶平面的识别,通过保留平面在屋顶包围盒内的区域面,建立相应的三维模型,进一步保留了模型的几何特征。最后,本申请还能够将建筑物屋顶的三维模型重建转换为线性规划问题,通过线性优化求解,进一步明确模型内的拓扑关系,由此实现了高效、精准的屋顶面片优化提取,具有较高的三维模型重建精度。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (6)
1.一种建筑复杂屋顶建模方法,其特征在于,包括以下步骤:
S1、基于所确定的屋檐高度,从获取到的房屋点云中切割出屋顶点云;
S2、基于预设的面分割条件,对所述屋顶点云进行面分割,得到多个目标屋顶平面;
S3、基于分割得到的各所述目标屋顶平面,保留平面在屋顶包围盒内的区域面,得到一个初始的三维模型;
S4、定义所述三维模型的线性规划问题,并根据线性规划问题的拓扑结构,定义多类二进制变量,所述多类二进制变量包括面选择变量、边选择变量以及尖锐边选择变量;
S5、根据线性规划问题的属性,定义组合系数,并基于所述组合系数、所述多类二进制变量构建线性目标函数;
S6、在预设的约束条件下,对所述线性目标函数进行优化求解,并在优化结束后,输出屋顶三维模型;
步骤S1中,所述基于所确定的屋檐高度,从获取到的房屋点云中切割出屋顶点云,包括:
S11、获取房屋点云,并基于所述房屋点云进行墙面点云的识别、过滤,识别得到屋顶点云;
S12、将所述屋顶点云按照预设的分辨率进行划分,生成相应的格网;
S13、计算格网中每个高度处对应的法向变化率,并将对应法向变化率最大的作为屋檐高度;
S14、基于所述屋檐高度,从所述房屋点云中切割出屋顶点云;
步骤S4中,所述面选择变量代表是否选择遍历到的面进行渲染或使用,所述边选择变量代表是否选择遍历到的相交边连接两个相邻面,所述尖锐边选择变量代表是否选择遍历到的尖锐边进行连接;
步骤S5中,所述组合系数包括每个被选择的面对目标函数值的贡献、每条被选择的相交边对目标函数值的贡献、每个被连接的尖锐边对目标函数值的贡献、对任意相邻的连接进行惩罚、以及对任意两个面之间没有合法连接进行惩罚中的至少一种;
步骤S6中,所述约束条件包括与一条边相关联的面的数量为2或0的第一约束条件、如果一条边被判断为尖锐边,则优先选择这条边的第二约束条件、如果一条边被判断为处于边界,则优先选择这条边的第三约束条件、如果一个面被判断为边界面,则优先移除这个面的第四约束条件中的至少一种。
2.根据权利要求1所述的方法,其特征在于,步骤S11中,所述基于所述房屋点云进行墙面点云的识别、过滤,识别得到屋顶点云,包括:
S111、基于所述房屋点云进行平面识别,以确定多个房屋平面;
S112、计算各房屋平面与z轴之间的夹角,并将夹角小于预设夹角阈值的平面作为房屋墙面;
S113、从所述房屋点云中过滤掉对应房屋墙面的墙面点云,识别得到屋顶点云。
3.根据权利要求1所述的方法,其特征在于,步骤S13中,所述计算格网中每个高度处对应的法向变化率,并将对应法向变化率最大的作为屋檐高度,包括:
S131、针对格网中的每个网格,分别计算该网格与上相邻网格的第一法向量夹角,以及与下相邻网格的第二法向量夹角;
S132、基于所求的第一法向量夹角以及第二法向量夹角进行均值计算,得到每个网格分别对应的法向变化率;
S133、针对格网中的每个高度,确定对应高度的所有目标网格,并基于各所述目标网格的法向变化率进行平方和的计算,得到每个高度处对应的法向变化率;
S134、将格网中每个高度处分别对应的法向变化率进行比较,将对应法向变化率取最大的作为屋檐高度。
4.根据权利要求1所述的方法,其特征在于,步骤S2中,所述基于预设的面分割条件,对所述屋顶点云进行面分割,得到多个目标屋顶平面,包括:
S21、基于预设的面分割条件,初步对所述屋顶点云进行面分割,得到初始屋顶平面;
S22、遍历各所述初始屋顶平面;
S23、遍历过程中,计算遍历到的第一目标平面中的各点与相邻第二目标平面之间的距离;
S24、确定所述第一目标平面中所求距离小于预设距离阈值的目标点数量,在确定所述目标点数量满足预设平面合并条件时,将所述第一目标平面与所述第二目标平面进行合并,得到目标屋顶平面;
S25、在确定所述目标点数量不满足预设平面合并条件时,将所述第一目标平面作为目标屋顶平面。
5.根据权利要求1所述的方法,其特征在于,步骤S3中,所述基于分割得到的各所述目标屋顶平面,保留平面在屋顶包围盒内的区域面,得到一个初始的三维模型,包括:
S31、针对每个目标屋顶平面,生成相应的屋顶包围盒;
S32、识别各所述目标屋顶平面与相应包围盒中的各边的交点,得到相应的交点集合;
S33、计算各所述交点集合的凸包,以确定各所述目标屋顶平面在相应包围盒内的区域面,并以此生成一个初始的三维模型。
6.一种建筑复杂屋顶建模系统,其特征在于,所述系统包括点云切割模块、面分割模块、模型建立模块以及模型优化模块,其中:
所述点云切割模块,用于基于所确定的屋檐高度,从获取到的房屋点云中切割出屋顶点云;
所述面分割模块,用于基于预设的面分割条件,对所述屋顶点云进行面分割,得到多个目标屋顶平面;
所述模型建立模块,用于基于分割得到的各所述目标屋顶平面,保留平面在屋顶包围盒内的区域面,得到一个初始的三维模型;
所述模型优化模块,用于定义所述三维模型的线性规划问题,并根据线性规划问题的拓扑结构,定义多类二进制变量,所述多类二进制变量包括面选择变量、边选择变量以及尖锐边选择变量;根据线性规划问题的属性,定义组合系数,并基于所述组合系数、所述多类二进制变量构建线性目标函数;在预设的约束条件下,对所述线性目标函数进行优化求解,并在优化结束后,输出屋顶三维模型;
所述点云切割模块基于所确定的屋檐高度,从获取到的房屋点云中切割出屋顶点云,具体实现为:
获取房屋点云,并基于所述房屋点云进行墙面点云的识别、过滤,识别得到屋顶点云;
将所述屋顶点云按照预设的分辨率进行划分,生成相应的格网;
计算格网中每个高度处对应的法向变化率,并将对应法向变化率最大的作为屋檐高度;
基于所述屋檐高度,从所述房屋点云中切割出屋顶点云;
所述面选择变量代表是否选择遍历到的面进行渲染或使用,所述边选择变量代表是否选择遍历到的相交边连接两个相邻面,所述尖锐边选择变量代表是否选择遍历到的尖锐边进行连接;
所述组合系数包括每个被选择的面对目标函数值的贡献、每条被选择的相交边对目标函数值的贡献、每个被连接的尖锐边对目标函数值的贡献、对任意相邻的连接进行惩罚、以及对任意两个面之间没有合法连接进行惩罚中的至少一种;
所述约束条件包括与一条边相关联的面的数量为2或0的第一约束条件、如果一条边被判断为尖锐边,则优先选择这条边的第二约束条件、如果一条边被判断为处于边界,则优先选择这条边的第三约束条件、如果一个面被判断为边界面,则优先移除这个面的第四约束条件中的至少一种。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310756958.2A CN116933359B (zh) | 2023-06-26 | 2023-06-26 | 一种建筑复杂屋顶建模方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310756958.2A CN116933359B (zh) | 2023-06-26 | 2023-06-26 | 一种建筑复杂屋顶建模方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116933359A CN116933359A (zh) | 2023-10-24 |
CN116933359B true CN116933359B (zh) | 2024-02-02 |
Family
ID=88388642
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310756958.2A Active CN116933359B (zh) | 2023-06-26 | 2023-06-26 | 一种建筑复杂屋顶建模方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116933359B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117313221B (zh) * | 2023-11-28 | 2024-02-13 | 北京理工大学 | 一种用于目标易损性的建筑目标建模方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8004517B1 (en) * | 2005-06-24 | 2011-08-23 | Geomagic, Inc. | Methods, apparatus and computer program products that model three-dimensional surface structures |
CN106846392A (zh) * | 2016-12-12 | 2017-06-13 | 国网北京市电力公司 | 三维建模的方法和装置 |
CN113313835A (zh) * | 2021-07-29 | 2021-08-27 | 深圳市数字城市工程研究中心 | 一种基于机载LiDAR点云的建筑物屋顶自动建模方法 |
CN113379901A (zh) * | 2021-06-23 | 2021-09-10 | 武汉大学 | 利用大众自拍全景数据建立房屋实景三维的方法及系统 |
CN115619963A (zh) * | 2022-11-14 | 2023-01-17 | 吉奥时空信息技术股份有限公司 | 一种基于内容感知的城市建筑物实体建模方法 |
CN115861571A (zh) * | 2023-01-18 | 2023-03-28 | 武汉大学 | 语义感知的三角网模型建筑物实体重建方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8731876B2 (en) * | 2009-08-21 | 2014-05-20 | Adobe Systems Incorporated | Creating editable feature curves for a multi-dimensional model |
TWI482043B (zh) * | 2013-01-11 | 2015-04-21 | Univ Nat Central | Housing roof search and establishment of roof structure |
US20210279570A1 (en) * | 2020-03-03 | 2021-09-09 | Hrl Laboratories, Llc | Method for proving or identifying counter-examples in neural network systems that process point cloud data |
CN118075494A (zh) * | 2020-12-07 | 2024-05-24 | 腾讯科技(深圳)有限公司 | 点云数据编码方法、解码方法、装置、设备及存储介质 |
-
2023
- 2023-06-26 CN CN202310756958.2A patent/CN116933359B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8004517B1 (en) * | 2005-06-24 | 2011-08-23 | Geomagic, Inc. | Methods, apparatus and computer program products that model three-dimensional surface structures |
CN106846392A (zh) * | 2016-12-12 | 2017-06-13 | 国网北京市电力公司 | 三维建模的方法和装置 |
CN113379901A (zh) * | 2021-06-23 | 2021-09-10 | 武汉大学 | 利用大众自拍全景数据建立房屋实景三维的方法及系统 |
CN113313835A (zh) * | 2021-07-29 | 2021-08-27 | 深圳市数字城市工程研究中心 | 一种基于机载LiDAR点云的建筑物屋顶自动建模方法 |
CN115619963A (zh) * | 2022-11-14 | 2023-01-17 | 吉奥时空信息技术股份有限公司 | 一种基于内容感知的城市建筑物实体建模方法 |
CN115861571A (zh) * | 2023-01-18 | 2023-03-28 | 武汉大学 | 语义感知的三角网模型建筑物实体重建方法 |
Non-Patent Citations (7)
Title |
---|
Point2Roof:End-to-end 3D building roof modeling from airborne LiDAR point clouds;LiLi etc.;ISPRS Journal of Photogrammetry and Remote Sensing;第193卷;全文 * |
Topological-based roof modeling from 3D points clouds;Dibruna Boltcheva etc.;HAL open science;第28卷(第1-2期);全文 * |
利用无人机倾斜摄影三维模型进行大比例尺成图技术研究;史与正等;测绘通报(第11期);全文 * |
基于三维点云模型的特征线提取算法;刘倩等;计算机应用研究(第03期);全文 * |
基于局部约束的建筑物屋顶点云平面分割方法;张宏伟等;测绘科学技术学报(第03期);全文 * |
实景三维模型的建筑物单体模型框架搭建;史与正等;测绘通报(第06期);全文 * |
规则特征曲面点云法向估计;袁小翠等;中国图象图形学报(第03期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN116933359A (zh) | 2023-10-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109829199B (zh) | 基于LiDAR点云的电力线快速分层提取方法 | |
CN106529469B (zh) | 基于自适应坡度的无人机载LiDAR点云滤波方法 | |
CN116933359B (zh) | 一种建筑复杂屋顶建模方法及系统 | |
CN108038908B (zh) | 基于人工智能的空间对象识别及建模方法和系统 | |
CN113487730B (zh) | 一种基于激光雷达点云数据的城市三维自动建模方法 | |
CN114332366A (zh) | 数字城市单体房屋点云立面3d特征提取方法 | |
Hofmann | Analysis of TIN-structure parameter spaces in airborne laser scanner data for 3-D building model generation | |
CN112132795B (zh) | 一种基于LiDAR点云的电塔受灾风险评估方法及系统 | |
CN105139379A (zh) | 基于分类分层的机载Lidar点云建筑物顶面渐进提取方法 | |
CN117078048B (zh) | 基于数字孪生的智慧城市资源管理方法及系统 | |
US10282490B2 (en) | Estimation of three-dimensional models of roofs from spatial two-dimensional graphs | |
CN112150610A (zh) | 一种基于标注尺寸的挡土墙建模方法及系统 | |
CN111950589B (zh) | 结合K-means聚类的点云区域生长优化分割方法 | |
CN111581711B (zh) | 杆塔建模方法、装置、终端设备及计算机可读存储介质 | |
CN115757369A (zh) | 一种激光点云数据的自动检查方法及系统 | |
CN117132508B (zh) | 基于gis+bim技术的数字孪生数据驱动方法及系统 | |
CN114119902A (zh) | 一种基于无人机倾斜三维模型的建筑物提取方法 | |
CN116500703B (zh) | 一种雷暴单体识别方法和装置 | |
CN112102178A (zh) | 一种点云保特征去噪方法、装置、电子设备及存储介质 | |
AU2010200146A1 (en) | Extraction processes | |
CN116385659A (zh) | 一种点云建筑物建模方法、系统、存储介质及电子设备 | |
CN115410036A (zh) | 一种高压架空输电线路关键要素激光点云自动分类方法 | |
Santos et al. | Classification of LiDAR data over building roofs using k-means and principal component analysis | |
CN114332322A (zh) | 一种三维场景下单体模型的大数据渲染方法 | |
Lu et al. | Deforestation: Extracting 3d bare-earth surface from airborne lidar data |
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 |