CN116662728A - 一种屋顶平面的提取方法、电子设备及存储介质 - Google Patents
一种屋顶平面的提取方法、电子设备及存储介质 Download PDFInfo
- Publication number
- CN116662728A CN116662728A CN202310939299.6A CN202310939299A CN116662728A CN 116662728 A CN116662728 A CN 116662728A CN 202310939299 A CN202310939299 A CN 202310939299A CN 116662728 A CN116662728 A CN 116662728A
- Authority
- CN
- China
- Prior art keywords
- plane
- roof
- points
- initial
- point set
- 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
- 238000000605 extraction Methods 0.000 title claims abstract description 29
- 239000013598 vector Substances 0.000 claims abstract description 77
- 238000000034 method Methods 0.000 claims abstract description 50
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 20
- 238000001914 filtration Methods 0.000 claims abstract description 9
- 238000005070 sampling Methods 0.000 claims abstract description 9
- 238000004364 calculation method Methods 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 9
- 238000013145 classification model Methods 0.000 claims description 7
- 238000012545 processing Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000001154 acute effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000003631 expected effect Effects 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000011835 investigation Methods 0.000 description 1
- 239000011159 matrix material Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/16—Matrix or vector computation, e.g. matrix-matrix or matrix-vector multiplication, matrix factorization
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/06—Energy or water supply
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T3/00—Geometric image transformations in the plane of the image
- G06T3/06—Topological mapping of higher dimensional structures onto lower dimensional surfaces
- G06T3/067—Reshaping or unfolding 3D tree structures onto 2D planes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/50—Depth or shape recovery
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Business, Economics & Management (AREA)
- Computational Mathematics (AREA)
- Mathematical Optimization (AREA)
- Economics (AREA)
- Pure & Applied Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Analysis (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Databases & Information Systems (AREA)
- General Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Algebra (AREA)
- Computing Systems (AREA)
- Public Health (AREA)
- Water Supply & Treatment (AREA)
- General Engineering & Computer Science (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- Tourism & Hospitality (AREA)
- General Business, Economics & Management (AREA)
- Radar Systems Or Details Thereof (AREA)
- Image Processing (AREA)
Abstract
本发明提供了一种屋顶平面的提取方法、电子设备及存储介质,该方法包括:获取到屋顶的深度图;基于随机采样一致性算法从所述屋顶的深度图中确定初始点集合;确定所述初始点集合的参考参数,其中,参考参数为初始点集合的所有初始点的法向量中位数以及截距中位数;基于所述参考参数对所述初始点集合进行过滤,得到目标点集合;将所述目标点集合对应的平面确定为屋顶的平面,解决了现有技术的屋顶平面的提取方法不能适用于复杂结构屋顶的技术问题。
Description
技术领域
本发明涉及屋顶建模领域,尤其是涉及一种建筑屋顶平面的提取方法、电子设备及存储介质。
背景技术
随着光伏能源技术的发展,往往在屋顶空间安装光伏组件,在安装前要针对屋顶的平面区域进行勘测,然后才能进行光伏组串的排布设计。
现有技术针对屋顶的提取主要使用的是随机采样一致性(RANSAC)方法,该方法的原理是在屋顶点云中提取多个点拟合成为参考平面,然后再从屋顶中筛选得到与参考平面距离小于预设距离的内点,然后将内点集合对应的平面确定为屋顶的平面,通过多次拟合得到多个参考平面,从而确定多组内点,最后提取到屋顶的多个平面。
需要说明的是,RANSAC算法虽然能从三维点云中提取多个平面,但是在内点的确定的过程中,仅仅考虑了点到参考平面的距离这一个要素,但是在复杂的屋顶的情况下,会存在部分孤立点(即属于其他平面的点)与参考平面之间距离由于较近被错误的被判定为内点,但是实际上该部分点不存在于参考平面上,从而导致屋顶平面提取不准确。下面针对于上述技术问题举例描述:
图1是复杂结构的屋顶的示意图,如图1所示,图1是一个复杂屋顶的截面,我们需要提取得到虚线处的平面A,通过现有的RANSAC算法对该屋顶点云进行处理,会从屋顶的点云中筛选得到距离参考平面距离小于预设距离的多个内点,图2 是通过RANSAC算法对该屋顶点云进行处理后的结果的示意图,从图2中可以发现,与平面A无关屋顶区域也被错误的归类为内点区域。
有鉴于此,提出本发明。
发明内容
本发明提供了一种屋顶平面的提取方法、电子设备及存储介质,以解决现有技术的屋顶平面的提取方法不能适用于复杂结构屋顶的技术问题。
根据本发明的第一方面,提供了一种屋顶平面的提取方法,包括:步骤S11,获取到屋顶的深度图;步骤S13,基于随机采样一致性算法从所述屋顶的深度图中确定初始点集合;步骤S15,确定所述初始点集合的参考参数,其中,参考参数为初始点集合的所有初始点的法向量中位数以及截距中位数;步骤S17,基于所述参考参数对所述初始点集合进行过滤,得到目标点集合;步骤S19,将所述目标点集合对应的平面确定为屋顶的平面。
进一步地,基于所述参考参数对所述初始点集合进行过滤,得到目标点集合,包括:在所述初始点集合中,将法向量与所述法向量中位数相差大于预设角度且截距与所述截距中位数的距离相差大于预设距离的点去除,并且将去除后的多个初始点确定为所述目标点集合。
进一步地,第一屋顶平面为所述屋顶的任意一个,其中,基于随机采样一致性算法从所述屋顶的深度图中确定初始点集合,包括:在所述深度图中将第一屋顶平面对应的点去除,去除后得到第二点集合;从所述第二点集合中确定多个点,并且基于多个点确定第一平面;从所述屋顶的深度图的所有点中确定与第一平面距离小于预设距离的点集合;在所述点集合的数量大于预设数量的情况下,将点集合确定为所述初始点集合。
进一步地,计算得到初始点集合的法向量中位数,包括:根据所述屋顶的深度图的横向-纵向分辨率、像素位置、像素值,计算得到初始点集合中每个初始点的xyz三通道数据;根据所述xyz三通道数据计算得到每个初始点指向左上角的第一向量以及指向右下角的第二向量;将所述第一向量以及第二向量进行叉乘得到每个初始点的初始法向量;基于所述初始法向量在Z轴的分量确定所述每个初始点的最终法向量;基于所述每个初始点的最终法向量得到初始点集合的法向量中位数。
进一步地,计算得到初始点集合的截距中位数,包括:获取到所述初始点集合中每个初始点对应平面的空间平面方程集合;将所述每个初始点的法向量代入各自的空间平面方程,得到每个初始点的截距;基于所述每个初始点的截距得到初始点集合的截距中位数。
进一步地,在获取到屋顶的深度图之后,所述方法还包括:计算所述屋顶的深度图的突变边缘;使用所述突变边缘将所述屋顶的深度图切分成多个块深度图;针对每块深度图分别执行步骤S13至步骤S19。
进一步地,所述目标点集合为多个,在将所述目标点集合对应的平面确定为所述屋顶的平面之前,所述方法包括,将同时属于多个目标点集合的交集点进行去重,其中,将同时属于多个目标点集合的交集点进行去重,包括:在多个目标点集合中两两组合,得到多对组合,其中,每对组合中包括两个目标点集合,两个目标点组合产生交集点;计算每对组合中两个目标点集合各自的平面参数中位数,平面参数中位数为法向量中位数以及截距中位数;分别计算交集点的平面参数与两个目标点集合各自的平面参数中位数的差值,得到两个差值;将交集点归类为较小差值对应的目标点集合。
进一步地,屋顶的平面为多个,其中,在将所述目标点集合对应的平面确定为所述屋顶的平面之后,所述方法包括:采用线性分类模型确定多个屋顶的平面的边界;基于所述边界确定最终的屋顶的平面;基于所述最终的屋顶的平面进行光伏面板的排布。
根据本发明的第二方面,提供了一种电子设备,包括存储器和处理器,所述存储器上存储有计算机指令,所述计算机指令在由所述处理器执行时导致上述任一项方法被执行。
根据本发明的第三方面,提供了一种非暂时性计算机可读存储介质,其上存储有计算机程序,所述计算机程序在由处理器执行时导致上述任一项方法被执行。
本发明提供了一种屋顶平面的提取方法、电子设备及存储介质,该方法包括:获取到屋顶的深度图;基于随机采样一致性算法从所述屋顶的深度图中确定初始点集合;确定所述初始点集合的参考参数,其中,参考参数为初始点集合的所有初始点的法向量中位数以及截距中位数;基于所述参考参数对所述初始点集合进行过滤,得到目标点集合;将所述目标点集合对应的平面确定为屋顶的平面,解决了现有技术的屋顶平面的提取方法不能适用于复杂结构屋顶的技术问题。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是复杂结构的屋顶的示意图;
图2是通过RANSAC算法对该屋顶点云进行处理后的结果的示意图;
图3是本发明实施例的屋顶平面的提取方法的流程图;
图4是本发明实施例的屋顶为屋脊情况下的示意图;
图5是本发明实施例的屋顶的深度图的示意图;
图6是本发明实施例的将深度图切分后的两个块深度图的示意图。
具体实施方式
为了使本发明的上述以及其他特征和优点更加清楚,下面结合附图进一步描述本发明。应当理解,本文给出的具体实施例是出于向本领域技术人员解释的目的,仅是示例性的,而非限制性的。
在以下描述中,阐述了许多具体细节以提供对本发明的透彻理解。然而,对于本领域普通技术人员来说,明显的是,不需要采用具体细节来实践本发明。在其他情况下,未详细描述众所周知的步骤或操作,以避免模糊本发明。
本发明提供了一种屋顶平面的提取方法,本方案中的方法的执行主体可以由服务器等其它具有数据处理功能的设备来执行,图3是本发明实施例的屋顶平面的提取方法的流程图,如图3所示,该方法包括:
步骤S11,获取到屋顶的深度图。
具体的,本方案是基于深度图进行处理,深度图的点在空间上的排列是紧凑有序的,方便进行点邻域相关计算。
步骤S13,基于随机采样一致性算法从所述屋顶的深度图中确定初始点集合。
具体的,上述随机采样一致性算法为RANSAC算法,通过RANSAC算法可以从深度图中确定多个初始点集合(即内点集合),每个初始点集合可以拟合一个平面,多个平面则为屋顶的多个平面。
下面对于基于随机采样一致性算法从所述屋顶的深度图中确定1个初始点集合的细节做如下描述:
首先,从深度图中随机抽取一个小样本集,通常包含3个点,用于拟合一个参考平面模型。然后,根据所选的样本点,计算拟合得到的参考平面模型的参数。接着,基于参考平面模型的参数,计算深度图中每一个点到参考平面模型的距离,如果距离小于预先设定的距离参数(比如0.1米),将该点确定为内点(即属于参考平面模型的点)。接着,比较当前迭代中得到的内点数量与之前迭代中得到的最大内点数量。若当前内点数量更大,则更新最大内点数量和对应的参考平面模型参数。最后,若达到预先设定的迭代次数,或当前最大内点数量已经超过所需的内点比例,则终止迭代,得到1个初始点集合。否则,则重新执行抽取小样集的步骤。
步骤S15,确定所述初始点集合的参考参数,其中,参考参数为初始点集合的所有初始点的法向量中位数以及截距中位数。
步骤S17,基于所述参考参数对所述初始点集合进行过滤,得到目标点集合。
步骤S19,将所述目标点集合对应的平面确定为屋顶的平面。
具体的,在现有技术中,基于RANSAC算法对建筑物图像进行处理后,并不考虑建筑物图像自身的复杂度,而是直接根据得到的初始点集合拟合得到屋顶的平面,现有技术的方案是一种通用的方案,在面对结构简单的建筑物时,处理结果基本上能够达到预期效果,但是如果在光伏资源的勘测领域,尤其在面对复杂屋顶的情况下,现有技术容易出现以下两种问题:第一,在屋顶包括多个起伏的情况下,结合图2,如果仅仅根据点与参考平面模型的距离来判定内点的情况下,则会出现图2中的情况,有些孤立点被误判为内点造成平面提取不准确。第二,在屋顶为屋脊的情况下,结合图4,图4是本发明实施例的屋顶为屋脊情况下的示意图,如果仅仅根据点与平面模型的距离来判定内点的情况下,由于屋脊的两侧距离较近,会出现一侧屋脊的少量点被误判为另一侧屋脊的平面上,造成平面提取不准确。
而本方案为了解决上述技术问题,在得到初始点集合之后,本方案为了更加精确的得到屋顶的平面,本方案将初始点集合继续进行过滤,更为具体的,本方案计算初始点集合中每个点的法向量以及截距,然后计算初始点集合的法向量中位数以及截距中位数,然后,基于法向量中位数以及截距中位数对所述初始点集合进行过滤,得到目标点集合,即对初始点集合进行更新,采用更新好的初始点集合来得到屋顶的平面,保证了屋顶平面提取的准确性。
这里需要的是,由于本方案是基于初始点集合的法向量中位数以及截距中位数将初始点集合进行了过滤,能够将特殊屋顶情况下不属于平面的孤立点删除,因此能够提供平面提取的准确性。
综上,本方案针对现有的RANSAC算法进行了优化,在RANSAC距离度量的基础上,使用了平面描述参数(法向量斜率、平面截距)作为平面内点的度量标准来提取平面的内点,提高了平面提取的准确性,解决了现有的平面提取方法不能适用于复杂屋顶结构的技术问题。
可选的,步骤S17基于所述参考参数对所述初始点集合进行过滤,得到目标点集合,包括:
步骤S171,在所述初始点集合中,将法向量与所述法向量中位数相差大于预设角度(比如5度)且截距与所述截距中位数的距离相差大于预设距离(比如2米)的点去除,并且将去除后的多个初始点确定为所述目标点集合。
这里还需要说明的是,一个点是不是属于一个平面不应该只考虑点到平面的垂直距离,例如两个相交平面,交线上的点到底从属于哪个平面,如果只看距离就会产生歧义,还应该看这个点的法向量和平面的法向量是否一致。
因此在上述实施例中,在法向量与所述法向量中位数相差小于等于预设角度且截距与所述截距中位数的距离相差小于等于预设距离的情况下,本方案则认定初始点与参考平面模型的法向量一致。
可选的,第一屋顶平面为所述屋顶的任意一个,其中,步骤S13基于随机采样一致性算法从所述屋顶的深度图中确定初始点集合,包括:
步骤S131,在所述深度图中将第一屋顶平面对应的点去除,去除后得到第二点集合。
步骤S132,从所述第二点集合中确定多个点,并且基于多个点确定第一平面。
步骤S133,从所述屋顶的深度图的所有点中确定与第一平面距离小于预设距离的点集合。
步骤S134,在所述点集合的数量大于预设数量的情况下,将点集合确定为所述初始点集合。
具体的,在本实施例中,是采用了RANSAC算法针对屋顶的深度图提取到第一屋顶平面之后,在深度图中将第一屋顶平面对应的点去除之后,继续提取下个平面,这里尤其要注意的是,本方案在提取下一个平面的过程中,在确定与第一平面距离从而判定内点上,与现有技术不同,现有技术中每次提取新的平面,提取范围都是剩余的点,即将去除平面后的点中去确定与第一平面距离小于预设距离的点集合,而本方案能够做到每次从屋顶的深度图来确定内点,即提取范围不局限于剩余未归类点,而是全部点,此种方案可以避免把不应该去除的点都去掉从而造成平面提取不准确。
这里需要说明的是,在传统的RANSAC算法中,由于该算法针对的是比较简单的建筑物结构,因此,在提取到第一个平面之后,会将图像中将第一个平面去除,然后在剩余的点中来继续判定内点,但是在针对屋顶光伏勘测领域,尤其是针对复杂结构的屋顶时,如果每次都是将平面删除后从剩余的点中再判定内点,由于屋顶平面在比较复杂的情况下,提取到的平面实际上可能出现不准确的点,那么如果此时按照现有技术将包括不准确的点的平面全部去除后然后从剩余的点中判定内点,会造成将不准确的点(不应该去除的点)去除,从而平面提取不准确,如果按照本实施例,每次提取平面都是从所有的点中进行提取,如果在上一步骤的平面提取中出现了误判为内点的情况,在下一步骤从所有的点继续判定内点时能够起到弥补的技术效果,从而进一步提高平面提取的准确性。
可选的,计算得到初始点集合的法向量中位数,包括:
步骤S31,根据所述屋顶的深度图的横向-纵向分辨率、像素位置、像素值,计算得到初始点集合中每个初始点的xyz三通道数据。
具体的,深度图是一个单通道矩阵,深度图是一个单通道矩阵,水平方向和竖直方向上一像素的距离分别表示空间上的一定距离,这个距离称为深度图的分辨率(如每个像素宽度为0.5m,即表示该深度图分辨率为0.5m/像素),本方案可以深度图横向-纵向分辨率、像素位置、像素值,计算可得每个点的相对空间坐标,深度图中的每个点可以用(x,y,z)三个数值来表示,其中x为该点横向像素与横向分辨率的乘积,y为该点纵向像素位置与纵向分辨率的乘积,z为该点深度数值,即该点深度图上的数值。由此,可将深度图表示为一个三通道数据,三通道分别为x通道,y通道,z通道。假设该深度图宽度为n,高度为w,则x通道数据为:
y通道数据为:
z通道数据为:
需要说明的是,x通道和y通道是基于栅格的坐标,不存在干扰,z通道则需要一定的滤波处理,在一种可选的实施例中,本方案使用中值滤波对z通道进行处理,主要功能是去除深度的异常突变。
步骤S33,根据所述xyz三通道数据计算得到每个初始点指向左上角的第一向量以及指向右下角的第二向量。
步骤S35,将所述第一向量以及第二向量进行叉乘得到每个初始点的初始法向量。具体的,可以根据x、y、z三个通道的数据,计算每个点所在局部平面的空间法向量,初始法向量n可以基于向量v1和向量v2叉乘得到。v1即第一向量,为每个点的v1为该点指向该点左上角点的向量,v2即为第二向量,为每个点指向该点左下角的向量。
根据叉乘公式,初始法向量为:
也可记作:
步骤S37,基于所述初始法向量n在Z轴的分量确定所述每个初始点的最终法向量N。
具体的,为了保证每个面的正方向一致指向建筑物外侧,即每个点的初始法向量与Z轴夹角均应为锐角,如果<0,则法向量/>,如果/>>=0,则法向量N=n。
可选的,在得到每个初始点的法向量N之后,本方案将法向量N初始化:
步骤S39,基于所述每个初始点的最终法向量得到初始点集合的法向量中位数。
具体的,在得到每个初始点的最终法向量之后,根据所有的最终初始法向量的值可求得初始点集合的法向量中位数。
可选的,计算得到初始点集合的截距中位数,包括:
步骤S41,获取到所述初始点集合中每个初始点对应平面的空间平面方程集合。
步骤S43,将所述每个初始点的法向量代入各自的空间平面方程,得到每个初始点的截距。
具体的,空间平面方程为:,A,B,C为法向量,D为需要求解的截距,则对于点/>,截距/>。
步骤S45,基于所述每个初始点的截距得到初始点集合的截距中位数。
具体的,在得到每个初始点的截距之后,根据所有的截距值可求得截距中位数。
可选的,在获取到屋顶的深度图之后,所述方法还包括:
计算所述屋顶的深度图的突变边缘;
使用所述突变边缘将所述屋顶的深度图切分成多个块深度图;
针对每块深度图分别执行步骤S13至步骤S19。
具体的,本方案可以根据高度(抽取高于平均高度的部分)将建筑区域筛选出来,保留连通域最大的部分作为建筑物的主体,然后,为了减少计算复杂程度,首先计算主体区域深度图的突变边缘,使用突变边缘将高度有明显区别的平面块切分开来,分成多个块深度图。图5是本发明实施例的屋顶的深度图的示意图,图6是本发明实施例的将深度图切分后的两个块深度图的示意图,本方案然后针对每个块深度图单独进行平面的提取,最后再进行组合从而得到屋顶的多个平面。这里需要说明的,在针对于结构复杂的屋顶,本方案根据深度图的突变边缘将深度图切分开然后进行单独处理,会较大的减少计算的复杂程度,从而提高平面提取的效率。
可选的,所述目标点集合为多个,在步骤S19将所述目标点集合对应的平面确定为所述屋顶的平面之前,所述方法包括,将同时属于多个目标点集合的交集点进行去重,其中,将同时属于多个目标点集合的交集点进行去重,包括:
步骤S181,在多个目标点集合中两两组合,得到多对组合,其中,每对组合中包括两个目标点集合,两个目标点组合产生交集点。
需要说明的是,在提取第一个平面之后,每次提取平面都是在所有的点中进行内点判断,因此,上述方式容易造成一些点同时属于多个集合,例如,初始目标点同时属于第一目标点集合以及第二目标点集合,因此本实施例需要将第一目标点集合以及第二目标点集合进行去重,即将初始目标点进行准确的归类。
步骤S182,计算每对组合中两个目标点集合各自的平面参数中位数,平面参数中位数为法向量中位数以及截距中位数。
具体的,本方案可以计算得到所述第一目标点集合的为法向量中位数以及截距中位数,以及第二目标点集合的法向量中位数以及截距中位数,具体的计算方式可以参考上述步骤S31至步骤S45。
步骤S183,分别计算交集点的平面参数与两个目标点集合各自的平面参数中位数的差值,得到两个差值。
步骤S184,将交集点归类为较小差值对应的目标点集合。
具体的,差值越小,则代表交集点与差值对应的目标点集合对应的平面越近,需要说明的是,本方案可以通过上述步骤S181至步骤S184将多个目标点组合两两组合,完成所有去重工作后,每个集合中的每个点只属于一个集合,从而完成平面点的分类。每个初始目标点有且属于一个点组合,即属于一个平面,避免了一个点同时属于多个平面的技术问题。
可选的,屋顶的平面为多个,其中,在步骤S19将所述目标点集合对应的平面确定为所述屋顶的平面之后,所述方法包括:
步骤S21,采用线性分类模型确定多个屋顶的平面的边界。
步骤S23,基于所述边界确定最终的屋顶的平面。
具体的,在得到屋顶的多个平面之后,对于复杂结构的屋顶,平面边界部分一般无法得到较好的处理,平面交界处可能存在较多模糊点无法准确归类,形成的平面不平整,平面中由于存在小凸起或凹陷,造成平面空洞,无法得到准确的结构化平面,平面内可能掺杂其他平面的点,同时,平面无法使用准确严谨的数学语言进行描述。针对这些问题,本方案提出使用线性分类模型(SVM)确定屋顶平面分界面的方法。SVM是一种二分类模型,其基本模型是定义在特征空间上的间隔最大的线性分类器。SVM的基本思想是求解能够正确划分训练数据集并且集合间隔最大的分离超平面,这一特性正符合当前任务的需要。
下面对于线性分类模型(SVM)确定屋顶平面分界面的技术细节做如下描述:
基于SVM,对于集合(多个平面),取其横纵坐标二维数据作为特征值,将其标签记作1,除了该集合之外的一个集合/>,按照同样的方式抽取特征值,将其标签记作-1,计算两个数据集的支持向量,支持向量线段的中垂线即为两数据的最佳分界面,记录属于/>区域的范围为/>,对除了/>之外的所有集合计算分界面,并将分界面中属于/>的范围计算交集,与建筑主体边界范围的交集即为集合/>区域的水平范围的边界。
步骤S25,基于所述最终的屋顶的平面进行光伏面板的排布。
具体的,在得到最终的精确的屋顶的平面之后,本方案可以基于上述屋顶的平面进行光伏面板的排布,可较大的提升了光伏面板的排布的准确性。
综上,本发明提出的屋顶平面提取方法,针对现有方法存在的问题,针对性地进行了优化,同时引入了线性分类模型对平面边界进行精确定位,使得每个屋顶平面形成精确的数学描述,为平面交线的计算提供了新的思路,这种方法在简单的坡屋顶下有极好的效果,同时回答了多个平面如何计算真实的交线位置的问题,在平屋顶、坡屋顶及多波式折板屋顶场景中都有极好的效果。为建筑物建模、屋顶(光伏面板等)自动排布打下可靠的基础。
应理解,本文中前述关于本发明的方法所描述的具体特征、操作和细节也可类似地应用于本发明的装置和系统,或者,反之亦然。另外,上文描述的本发明的方法的每个步骤可由本发明的装置或系统的相应部件或单元执行。
应理解,本发明的装置的各个模块/单元可全部或部分地通过软件、硬件、固件或其组合来实现。所述各模块/单元各自可以硬件或固件形式内嵌于计算机设备的处理器中或独立于所述处理器,也可以软件形式存储于计算机设备的存储器中以供处理器调用来执行所述各模块/单元的操作。所述各模块/单元各自可以实现为独立的部件或模块,或者两个或更多个模块/单元可实现为单个部件或模块。
在一个实施例中,提供了一种计算机设备,其包括存储器和处理器,所述存储器上存储有可由处理器执行的计算机指令,所述计算机指令在由所述处理器执行时指示所述处理器执行本发明的实施例的方法的各步骤。该计算机设备可以广义地为服务器、终端,或任何其他具有必要的计算和/或处理能力的电子设备。在一个实施例中,该计算机设备可包括通过系统总线连接的处理器、存储器、网络接口、通信接口等。该计算机设备的处理器可用于提供必要的计算、处理和/或控制能力。该计算机设备的存储器可包括非易失性存储介质和内存储器。该非易失性存储介质中或上可存储有操作系统、计算机程序等。该内存储器可为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口和通信接口可用于与外部的设备通过网络连接和通信。该计算机程序被处理器执行时执行本发明的方法的步骤。
本发明可以实现为一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序在由处理器执行时导致本发明实施例的方法的步骤被执行。在一个实施例中,所述计算机程序被分布在网络耦合的多个计算机设备或处理器上,以使得所述计算机程序由一个或多个计算机设备或处理器以分布式方式存储、访问和执行。单个方法步骤/操作,或者两个或更多个方法步骤/操作,可以由单个计算机设备或处理器或由两个或更多个计算机设备或处理器执行。一个或多个方法步骤/操作可以由一个或多个计算机设备或处理器执行,并且一个或多个其他方法步骤/操作可以由一个或多个其他计算机设备或处理器执行。一个或多个计算机设备或处理器可以执行单个方法步骤/操作,或执行两个或更多个方法步骤/操作。
本领域普通技术人员可以理解,本发明的方法步骤可以通过计算机程序来指示相关的硬件如计算机设备或处理器完成,所述的计算机程序可存储于非暂时性计算机可读存储介质中,该计算机程序被执行时导致本发明的步骤被执行。根据情况,本文中对存储器、存储、数据库或其它介质的任何引用可包括非易失性和/或易失性存储器。非易失性存储器的示例包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、闪存、磁带、软盘、磁光数据存储装置、光学数据存储装置、硬盘、固态盘等。易失性存储器的示例包括随机存取存储器(RAM)、外部高速缓冲存储器等。
以上描述的各技术特征可以任意地组合。尽管未对这些技术特征的所有可能组合进行描述,但这些技术特征的任何组合都应当被认为由本说明书涵盖,只要这样的组合不存在矛盾。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。
Claims (10)
1.一种屋顶平面的提取方法,其特征在于,包括:
步骤S11,获取到屋顶的深度图;
步骤S13,基于随机采样一致性算法从所述屋顶的深度图中确定初始点集合;
步骤S15,确定所述初始点集合的参考参数,其中,参考参数为初始点集合的所有初始点的法向量中位数以及截距中位数;
步骤S17,基于所述参考参数对所述初始点集合进行过滤,得到目标点集合;
步骤S19,将所述目标点集合对应的平面确定为屋顶的平面。
2.根据权利要求1所述的方法,其特征在于,基于所述参考参数对所述初始点集合进行过滤,得到目标点集合,包括:
在所述初始点集合中,将法向量与所述法向量中位数相差大于预设角度且截距与所述截距中位数的距离相差大于预设距离的点去除,并且将去除后的多个初始点确定为所述目标点集合。
3.根据权利要求1所述的方法,其特征在于,第一屋顶平面为所述屋顶的任意一个,其中,基于随机采样一致性算法从所述屋顶的深度图中确定初始点集合,包括:
在所述深度图中将第一屋顶平面对应的点去除,去除后得到第二点集合;
从所述第二点集合中确定多个点,并且基于多个点确定第一平面;
从所述屋顶的深度图的所有点中确定与第一平面距离小于预设距离的点集合;
在所述点集合的数量大于预设数量的情况下,将点集合确定为所述初始点集合。
4.根据权利要求1所述的方法,其特征在于,计算得到初始点集合的法向量中位数,包括:
根据所述屋顶的深度图的横向-纵向分辨率、像素位置、像素值,计算得到初始点集合中每个初始点的xyz三通道数据;
根据所述xyz三通道数据计算得到每个初始点指向左上角的第一向量以及指向右下角的第二向量;
将所述第一向量以及第二向量进行叉乘得到每个初始点的初始法向量;
基于所述初始法向量在Z轴的分量确定所述每个初始点的最终法向量;
基于所述每个初始点的最终法向量得到初始点集合的法向量中位数。
5.根据权利要求4所述的方法,其特征在于,计算得到初始点集合的截距中位数,包括:
获取到所述初始点集合中每个初始点对应平面的空间平面方程集合;
将所述每个初始点的法向量代入各自的空间平面方程,得到每个初始点的截距;
基于所述每个初始点的截距得到初始点集合的截距中位数。
6.根据权利要求1所述的方法,其特征在于,在获取到屋顶的深度图之后,所述方法还包括:
计算所述屋顶的深度图的突变边缘;
使用所述突变边缘将所述屋顶的深度图切分成多个块深度图;
针对每块深度图分别执行步骤S13至步骤S19。
7.根据权利要求3所述的方法,其特征在于,所述目标点集合为多个,在将所述目标点集合对应的平面确定为所述屋顶的平面之前,所述方法包括,将同时属于多个目标点集合的交集点进行去重,其中,将同时属于多个目标点集合的交集点进行去重,包括:
在多个目标点集合中两两组合,得到多对组合,其中,每对组合中包括两个目标点集合,两个目标点组合产生交集点;
计算每对组合中两个目标点集合各自的平面参数中位数,平面参数中位数为法向量中位数以及截距中位数;
分别计算交集点的平面参数与两个目标点集合各自的平面参数中位数的差值,得到两个差值;
将交集点归类为较小差值对应的目标点集合。
8.根据权利要求1所述的方法,其特征在于,屋顶的平面为多个,其中,在将所述目标点集合对应的平面确定为所述屋顶的平面之后,所述方法包括:
采用线性分类模型确定多个屋顶的平面的边界;
基于所述边界确定最终的屋顶的平面;
基于所述最终的屋顶的平面进行光伏面板的排布。
9.一种电子设备,包括存储器和处理器,所述存储器上存储有计算机指令,其特征在于,所述计算机指令在由所述处理器执行时导致所述权利要求1-8中任一项方法被执行。
10.一种非暂时性计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序在由处理器执行时导致所述权利要求1至8中任一项方法被执行。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310939299.6A CN116662728B (zh) | 2023-07-28 | 2023-07-28 | 一种屋顶平面的提取方法、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310939299.6A CN116662728B (zh) | 2023-07-28 | 2023-07-28 | 一种屋顶平面的提取方法、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116662728A true CN116662728A (zh) | 2023-08-29 |
CN116662728B CN116662728B (zh) | 2023-10-27 |
Family
ID=87720953
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310939299.6A Active CN116662728B (zh) | 2023-07-28 | 2023-07-28 | 一种屋顶平面的提取方法、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116662728B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030014224A1 (en) * | 2001-07-06 | 2003-01-16 | Yanlin Guo | Method and apparatus for automatically generating a site model |
CN107644452A (zh) * | 2017-09-15 | 2018-01-30 | 武汉大学 | 机载LiDAR点云屋顶面片分割方法及系统 |
CN109242855A (zh) * | 2018-07-19 | 2019-01-18 | 中国科学院自动化研究所 | 基于多分辨率三维统计信息的屋顶分割方法、系统及设备 |
CN114332366A (zh) * | 2021-12-24 | 2022-04-12 | 西运才 | 数字城市单体房屋点云立面3d特征提取方法 |
CN114782628A (zh) * | 2022-04-25 | 2022-07-22 | 西安理工大学 | 基于深度相机的室内实时三维重建方法 |
-
2023
- 2023-07-28 CN CN202310939299.6A patent/CN116662728B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030014224A1 (en) * | 2001-07-06 | 2003-01-16 | Yanlin Guo | Method and apparatus for automatically generating a site model |
CN107644452A (zh) * | 2017-09-15 | 2018-01-30 | 武汉大学 | 机载LiDAR点云屋顶面片分割方法及系统 |
CN109242855A (zh) * | 2018-07-19 | 2019-01-18 | 中国科学院自动化研究所 | 基于多分辨率三维统计信息的屋顶分割方法、系统及设备 |
CN114332366A (zh) * | 2021-12-24 | 2022-04-12 | 西运才 | 数字城市单体房屋点云立面3d特征提取方法 |
CN114782628A (zh) * | 2022-04-25 | 2022-07-22 | 西安理工大学 | 基于深度相机的室内实时三维重建方法 |
Non-Patent Citations (2)
Title |
---|
舒敏;刘科;: "由粗到精的机载点云建筑物屋面分割", 激光与红外, no. 12 * |
赵传: ""一种利用点云邻域信息的建筑物屋顶面高精度自动提取方法"", 《测绘学报》, vol. 46, no. 9, pages 1 * |
Also Published As
Publication number | Publication date |
---|---|
CN116662728B (zh) | 2023-10-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Du et al. | Automatic building extraction from LiDAR data fusion of point and grid-based features | |
Wang et al. | Automatic BIM component extraction from point clouds of existing buildings for sustainability applications | |
Zhang et al. | Filtering airborne LiDAR data by embedding smoothness-constrained segmentation in progressive TIN densification | |
Chen et al. | Building detection in an urban area using lidar data and QuickBird imagery | |
CN114359758B (zh) | 一种输电线的检测方法、装置、计算机设备和存储介质 | |
CN110544298B (zh) | 变电站建模方法、装置、计算机设备和存储介质 | |
Sohn et al. | An implicit regularization for 3D building rooftop modeling using airborne lidar data | |
CN112396133B (zh) | 基于多尺度空间的城市区域空地一体融合点云分类方法 | |
CN110544308B (zh) | 变电站建模方法、装置、计算机设备和存储介质 | |
CN113538264B (zh) | 一种点云数据的去噪方法、装置及存储介质 | |
WO2024125434A1 (zh) | 基于区域一致性的建筑物主角度修正方法 | |
CN114240940A (zh) | 一种基于遥感影像的云及云阴影检测方法和装置 | |
Aslani et al. | Rooftop segmentation and optimization of photovoltaic panel layouts in digital surface models | |
CN116363319B (zh) | 一种建筑物屋顶的建模方法、建模装置、设备及介质 | |
CN116662728B (zh) | 一种屋顶平面的提取方法、电子设备及存储介质 | |
Elkhrachy | Feature extraction of laser scan data based on geometric properties | |
Zhao et al. | A 3D modeling method for buildings based on LiDAR point cloud and DLG | |
Sun et al. | Automated segmentation of LiDAR point clouds for building rooftop extraction | |
Ni et al. | Applications of 3d-edge detection for als point cloud | |
CN115661398A (zh) | 一种用于实景三维模型的建筑物提取方法、装置及设备 | |
CN106652032B (zh) | 一种基于Linux集群平台的DEM并行等高线生成方法 | |
Li et al. | A sliding window method for detecting corners of openings from terrestrial LiDAr data | |
Shen et al. | A novel method to segment individual wire from bundle conductor using UAV-LiDAR point cloud data | |
CN115035051A (zh) | 光伏电站的组件分割方法、装置、电子设备及存储介质 | |
Yu et al. | Abnormal crowdsourced data detection using remote sensing image features |
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 |