一种基于切分的点云建筑物重建方法技术

技术编号:16176465 阅读:57 留言:0更新日期:2017-09-09 03:46
本发明专利技术公开了一种基于切分的点云建筑物的重建方法,具体按照以下步骤实施:步骤1、利用区域增长以及基于距离的聚类算法对点云场景进行分割,并提取点云场景中构成建筑物的平面;步骤2、对步骤1提取的平面进行纵向切分,计算每个切片的长度,并依次比较每个切片与后续切片的高度差探测关键点,并依次连接关键点,完成平面的重建。步骤3、根据平面间的拓扑关系对建筑物初始重建模型进行优化;步骤4、利用墙面与窗户的拓扑关系,完成建筑物细节的重建。解决了现有技术中存在的由于三维物体点云数据量大以及点云数据不完整,导致建筑重建细节不足的问题。

【技术实现步骤摘要】
一种基于切分的点云建筑物重建方法
本专利技术属于建筑物重建方法
,涉及一种基于切分的点云建筑物重建方法。
技术介绍
三维数字城市已经广泛地应用于虚拟旅游,城市规划、城市三维地图和数字娱乐等多个领域。城市场景的三维构建可以给予用户更加逼真的视觉体验,有助于其更加准确地理解城市地理信息。建筑物是城市场景中的重要组成物体,快速获得完整、精确的三维建筑物模型具有重要的意义。建筑物的重建也是计算机视觉与计算机图形学的一个重要研究领域。目前,已经有的建筑物的重建方法大致分为:基于形状拟合的建筑物重建方法、基于先验知识的建筑物重建方法。1、基于形状拟合的建筑物重建方法基于形状拟合的建筑物重建方法主要思想是通过提取构成建筑物的基本形状,并分析形状间的拓扑关系,通过形状拟合完成场景中建筑物的重建。《Architecturalmodelingfromsparselyscannedrangedata》(InternationalJournalofComputerVision)认为建筑物都是由平面组成的,首先利用区域增长的方法,对点云数据按照平面特征作聚类分析,然后计算相邻面之间的交线。由于有些结构在扫描中可能存在严重的缺漏,这个过程需要依赖用户少量的交互操作来修正。《O-snap:Optimization-basedsnappingformodelingarchitecture》(ACMTransactionsonGraphics)利用随机抽样一致性算法自动地提取平面,并记录平面间的局部邻接关系,形成初始的模型。用户通过简单的交互(如简单的二维勾勒)对初始模型进行修正,以得到准确和明确定义的建筑物模型。2、基于先验知识的建筑物重建方法基于先验知识的重建方法已经在建筑物重建方面取得了一些成果。建筑物的重要组成部分(墙、窗户、阳台或者门)各有特征,根据人类的先验知识分析建筑物中不同面片的几何特征(例如:位置、大小和方向等),完成建筑物中窗户、门洞等对象的识别与提取。《Knowledgebasedreconstructionofbuildingmodelsfromterrestriallaserscanningdata》(ISPRSJournalofPhotogrammetryandRemoteSensing)首先利用区域增长的方法对建筑物进行分割,然后通过分析不同面片的大小、位置、方向和拓扑关系等特征,基于先验知识提取建筑物的墙面、门和突起等立面细节,并基于点云三角网格化,提出基于洞(hole-based)的窗户提取方法。最后利用最小二乘拟合,凸壳拟合或凹多边形拟合完成多边形的重建。《Model-basedreconstructionandclassificationoffacadepartsin3Dpointclouds》(TheInternationalArchivesofthePhotogrammetry,RemoteSensing)也提出了一种基于知识的建筑物重建方法。该方法首先建立窗户、门和楼梯的真实数据模型库,同时记录了不同立面特征的形状参数及其概率密度函数。通过改进的随机抽样方法预测实际数据,并采用决策树计算实际数据与模型库数据之间的相似度,从而完成窗户和楼梯的提取与重建。在真实的三维点云场景中,由于扫描过程中遮挡、噪声的干扰或者由于单侧扫描,建筑物的完整点云数据很难获得,导致已有的方法不适用于点云场景中建筑物的重建。
技术实现思路
本专利技术的目的是提供一种基于切分的点云建筑物的重建方法,有效地避免因数据缺失,导致重建结果不理想的缺陷。本专利技术所采用的技术方案是,一种基于切分的点云建筑物的重建方法,具体按照以下步骤实施:步骤1、利用区域增长的方法,将点云建筑物中具有相似法向量的点聚为一类,然后利用基于距离的点云聚类方法,将具有相似法向量的平面分开,完成点云建筑物平面簇的分割;步骤2、对经过步骤1分割后得到的平面点云簇,计算每个平面点云簇的平面方程,在确定切分个数N后将每个平面沿纵向进行切分,计算每个切片的长度,通过比较每个切片与后续切片的高度差探测关键点。然后,依次连接关键点,完成平面的重建;步骤3、根据平面间的拓扑关系对步骤2重建的初始建筑物模型进行优化;步骤4、在步骤3的基础上,根据窗户边框与墙面的拓扑关系,通过构造墙面的最小包围盒,提取窗户的点云信息,并利用基于距离的聚类方法,对窗户点云进行分割,将每个窗户单独的提取出来。然后利用区域增长的方法根据窗框的宽度和高度对窗户进行分类,并利用模式匹配将不完整的窗户进行归类。最后,利用四边形对窗户进行表示,完成建筑物细节的重建。本专利技术的特点还在于,步骤1具体按照以下步骤实施:步骤1.1,利用主元分析法计算点云的法向量,具体为:点云建筑物中的任意一点p,找到点p的k个邻近点点p的三阶协方差矩阵M为:其中,为点p的k个邻近点的平均位置,通过奇异值分解对点p的三阶协方差矩阵M进行特征值分解,得到协方差矩阵M的特征值λ3>λ2>λ1>0,点p的法向量为最小特征值λ1所对应的特征向量步骤1.2,计算提取点云建筑物中F1<0.05的点,构成平面点集PN;步骤1.3,利用区域增长的方法将平面点集PN中法向量相似的点进行聚类,具体为:根据步骤1.1中点p的法向量选择平面点集PN中任意一点作为种子点,依据步骤1.1计算该种子点的法向量,若该种子点的法向量与点p法向量相似且未被标记,则将该种子点与点p归为一类,并将种子点进行标记,遍历平面点集PN中的所有点,直到所有点被标记,将具有相似法向量的点归为一类,提取具有相似法向量的平面簇;步骤1.4,根据距离对平行的平面簇进行分割,具体为:遍历具有相似法向量的点云数据,对于任意一点,利用k-d树找出点pi的k个近临点,筛选与它距离小于一定阈值γ的点集NN,γ=0.1;如果点pi是被遍历的第一个点,标记点集NN中所有的点label=1;如果点pi不是被遍历的第一个点,则遍历点集NN中的每一点是否已经被标记,如果点集NN中所有的点均未被标记,则label++,将点集NN中所有的点标记为label,如果点集NN中存在已经被标记的点,找出被标记的点中最小的标记值mLabel,将点集NN中所有的点标记为mLabel,重复步骤1.4,直到点云数据中所有点均被标记,完成点云建筑物平面簇的分割。步骤2具体按照以下步骤实施:步骤2.1,计算平面拟合方程,具体为:根据对应的点云簇计算对应平面的平面方程,计算平面方程Ι:A1x+B1y+C1z+D1=0的系数,利用最小特征值对应的特征向量来求解平面方程的系数A1、B1、C1和D1;步骤2.2,将平面沿平行于z轴的方向进行切分,具体为:遍历每个平面中的每个点,计算每个平面的最大和最小的x,y值:Xmaxi,Ymaxi,Zmaxi,Xmini,Ymini,Zmini,如果(Xmaxi-Xmini)>(Ymaxi-Ymini),确定切分的个数N后,则将平面沿x轴方向进行切分,记录第i个切片最左端及最右端的x值,同时记录第i个切片两端最大和最小的z值,将第i个切片两端的x值,以及两端最大和最小的z值代入该平面的平面方程,即可获得该切片的四个端点坐标;如果(Xmaxi-Xmini)<(Ymaxi-Ymin本文档来自技高网
...
一种基于切分的点云建筑物重建方法

【技术保护点】
一种基于切分的点云建筑物的重建方法,其特征在于,具体按照以下步骤实施:步骤1、利用区域增长的方法,将点云建筑物中具有相似法向量的点聚为一类,然后利用基于距离的点云聚类方法,将具有相似法向量的平面分开,完成点云建筑物平面簇的分割;步骤2、对经步骤1分割后的每个平面簇,根据该点云簇计算该平面的平面方程,在确定切分个数N后将每个平面沿纵向进行切分,计算每个切片的长度,通过比较每个切片与后续切片的高度差探测关键点;然后,依次连接关键点,完成平面的重建;步骤3、根据平面间的拓扑关系对步骤2重建的初始建筑物模型进行优化;步骤4、在步骤3的基础上,根据窗户边框与墙面的拓扑关系,通过构造墙面的最小包围盒,提取窗户的点云信息,并利用基于距离的聚类方法,对窗户进行分割,将每个窗户单独的提取出来;然后利用区域增长的方法根据窗框的宽度和高度对窗户进行分类,并利用模式匹配将不完整的窗户进行归类;最后,利用四边形对窗户进行表示,完成建筑物细节的重建。

【技术特征摘要】
1.一种基于切分的点云建筑物的重建方法,其特征在于,具体按照以下步骤实施:步骤1、利用区域增长的方法,将点云建筑物中具有相似法向量的点聚为一类,然后利用基于距离的点云聚类方法,将具有相似法向量的平面分开,完成点云建筑物平面簇的分割;步骤2、对经步骤1分割后的每个平面簇,根据该点云簇计算该平面的平面方程,在确定切分个数N后将每个平面沿纵向进行切分,计算每个切片的长度,通过比较每个切片与后续切片的高度差探测关键点;然后,依次连接关键点,完成平面的重建;步骤3、根据平面间的拓扑关系对步骤2重建的初始建筑物模型进行优化;步骤4、在步骤3的基础上,根据窗户边框与墙面的拓扑关系,通过构造墙面的最小包围盒,提取窗户的点云信息,并利用基于距离的聚类方法,对窗户进行分割,将每个窗户单独的提取出来;然后利用区域增长的方法根据窗框的宽度和高度对窗户进行分类,并利用模式匹配将不完整的窗户进行归类;最后,利用四边形对窗户进行表示,完成建筑物细节的重建。2.根据权利要求1所述的一种基于切分的点云建筑物的重建方法,其特征在于,所述步骤1具体按照以下步骤实施:步骤1.1,利用主元分析法计算点云的法向量,具体为:点云建筑物中的任意一点p,找到点p的k个邻近点点p的三阶协方差矩阵M为:其中,为点p的k个邻近点的平均位置,通过奇异值分解对点p的三阶协方差矩阵M进行特征值分解,得到协方差矩阵M的特征值λ3>λ2>λ1>0,点p的法向量为最小特征值λ1所对应的特征向量步骤1.2,计算提取点云建筑物中F1<0.05的点,构成平面点集PN;步骤1.3,利用区域增长的方法将平面点集PN中法向量相似的点进行聚类,具体为:根据步骤1.1中点p的法向量选择平面点集PN中任意一点作为种子点,依据步骤1.1计算该种子点的法向量,若该种子点的法向量与点p法向量相似且未被标记,则将该种子点与点p归为一类,并将种子点进行标记,遍历平面点集PN中的所有点,直到所有点被标记,将具有相似法向量的点归为一类,提取具有相似法向量的平面簇;步骤1.4,根据距离对平行的平面簇进行分割,具体为:遍历具有相似法向量的点云数据,对于任意一点,利用k-d树找出点pi的k个近临点,筛选与它距离小于一定阈值γ的点集NN,γ=0.1;如果点pi是被遍历的第一个点,标记点集NN中所有的点label=1;如果点pi不是被遍历的第一个点,则遍历点集NN中的每一点是否已经被标记,如果点集NN中所有的点均未被标记,则label++,将点集NN中所有的点标记为label,如果点集NN中存在已经被标记的点,找出被标记的点中最小的标记值mLabel,将点集NN中所有的点标记为mLabel,重复步骤1.4,直到点云数据中所有点均被标记,完成点云建筑物平面簇的分割。3.根据权利要求1所述的一种基于切分的点云建筑物的重建方法,其特征在于,所述步骤2具体按照以下步骤实施:步骤2.1,计算平面拟合方程,具体为:根据对应的点云簇计算对应平面的平面方程,计算平面方程Ι:A1x+B1y+C1z+D1=0的系数,利用最小特征值对应的特征向量来求解平面方程的系数A1、B1、C1和D1;步骤2.2,将平面沿平行于z轴的方向进行切分,具体为:遍历每个平面中的每个点,计算每个平面的最大和最小的x,y值:Xmaxi,Ymaxi,Zmaxi,Xmini,Ymini,Zmini,如果(Xmaxi-Xmini)>(Ymaxi-Ymini),确定切分的个数N后,则将平面沿x轴方向进行切分,记录第i个切片最左端及最右端的x值,同时记录第i个切片两端最大和最小的z值,将第i个切片两端的x值,以及两端最大和最小的z值代入该平面的平面方程,即可获得该切片的四个端点坐标;如果(Xmaxi-Xmini)<(Ymaxi-Ymini),确定切分的个数N后,则将平面沿y轴方向进行切分,记录第i个切片最左端及最右端的y值,同时记录第i个切片两端最大和最小的z值,将第i个切片两端的y值,以及两端最大和最小的z值代入该平面的平面方程,即可获得该切片的四个端点坐标;步骤2.3,在步骤2.2对平面切分的基础上,记录每个切片的高度差,如果前一个切片Si与后一个切片Si+1高度差大于(Zmaxi-Zmini)*α,α=0.1,表明切片Si右端的两个端点与切片Si+1左端的两个端点为关键点,依次比较每个切片与后续切片的高度差,两者相差大于(Zmaxi-Zmini)*α,α=0.1,前一个切片右端的两个端点与后续切片的左端两...

【专利技术属性】
技术研发人员:郝雯王映辉
申请(专利权)人:西安理工大学
类型:发明
国别省市:陕西,61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1