发明名称 一种基于机载LiDAR数据的建筑物屋顶重建方法
摘要 本发明公开了一种基于机载LiDAR数据的建筑物屋顶重建方法,包括步骤:一、LiDAR点云数据获取;二、LiDAR点云数据处理,过程如下:201、建筑物屋顶面片分割,从建筑物屋顶分割出多个屋顶面片;202、建筑物屋面点云数据获取;203、建筑物屋面及各屋顶面片的外轮廓点提取,同时还需提取建筑物屋面的外边界线;204、屋顶面片矢量边界获取,过程如下:建立搜索信息集合、邻域搜索、外轮廓点类别确定和矢量边界确定;205、建筑物屋顶矢量模型获取:多个屋顶面片的矢量边界确定后,便获得建筑物屋顶的矢量模型。本发明方法步骤简单、设计合理且实现方便、使用效果好,能简便、快速且高质量完成建筑物屋顶的重建过程。
申请公布号 CN104036544A 申请公布日期 2014.09.10
申请号 CN201410293086.1 申请日期 2014.06.25
申请人 西安煤航信息产业有限公司 发明人 彭桂辉;段梦琦;杨培义;宋袁龙
分类号 G06T17/00(2006.01)I 主分类号 G06T17/00(2006.01)I
代理机构 西安创知专利事务所 61213 代理人 谭文琰
主权项 一种基于机载LiDAR数据的建筑物屋顶重建方法,其特征在于该方法包括以下步骤:步骤一、LiDAR点云数据获取:采用机载LiDAR测量系统获取待测区域的点云数据,并将所获取的点云数据传送至数据处理设备;所述点云数据中包括待测区域内多个建筑物屋顶的点云数据,每个建筑物屋顶的点云数据均包括该建筑物屋顶的多个测点及各测点的三维坐标;步骤二、LiDAR点云数据处理:采用所述数据处理设备分别对多个建筑物的点云数据进行处理,并获取各建筑物屋顶的矢量模型;多个建筑物的点云数据处理过程均相同;对待测区域内的任一个建筑物的点云数据进行处理时,过程如下:步骤201、建筑物屋顶面片分割:采用区域生长方法对当前所处理建筑物屋顶的点云数据进行处理,从当前所处理建筑物屋顶分割出多个屋顶面片,并获得多个屋顶面片的点云数据;之后,根据各屋顶面片的点云数据,且采用最小二乘法对各屋面面片分别进行平面拟合,获得各屋顶面片所在平面的平面方程;同时,对多个屋顶面片进行编号,并对多个屋顶面片的相邻关系分别进行记录,每个屋顶面片的相邻关系均包括与该屋顶面片相邻的屋顶面片的数量以及各相邻屋顶面片的布设位置;多个所述屋顶面片均为平面,每个屋顶面片的点云数据均包括位于该屋顶面片上的多个测点及各测点的三维坐标;多个所述屋顶面片的数量为N'个,N'为正整数且N'≥2;步骤202、建筑物屋面点云数据获取:根据步骤201中所记录的多个屋顶面片的相邻关系,将多个屋顶面片的点云数据组合形成当前所处理建筑物屋面的点云数据;步骤203、建筑物屋面及各屋顶面片的外轮廓点提取:调用外轮廓点提取模块,从步骤202中所获取的当前所处理建筑物屋面的点云数据中提取出当前所处理建筑物屋面的多个外轮廓点,并获得当前所处理建筑物屋面的外轮廓点集合A';同时,分别从步骤201中各屋顶面片的点云数据中提取出各屋顶面片的多个外轮廓点,并获得各屋顶面片的外轮廓点集合;步骤204、屋顶面片矢量边界获取:结合步骤201中多个屋顶面片的点云数据和相邻关系以及步骤203中各屋顶面片的外轮廓点集合,获取多个屋顶面片的矢量边界;多个屋顶面片的矢量边界获取方法均相同,对任一个屋顶面片S<sub>i</sub>的矢量边界进行获取时,过程如下:步骤2041、建立搜索信息集合:将多个所述屋顶面片中除屋顶面片S'<sub>i'</sub>之外的N'‑1个屋顶面片的点云数据,组合成搜索信息集合J<sub>i'</sub>;搜索信息集合J<sub>i'</sub>中包括N'‑1个子集合,N'‑1个子集合分别为N'‑1个屋顶面片的点云数据;其中,i'为屋顶面片的编号,i'为正整数且i'=1、2、…、N';步骤2042、邻域搜索:对屋顶面片S'<sub>i'</sub>的外轮廓点集合中的各外轮廓点分别进行邻域搜索,获得屋顶面片S'<sub>i'</sub>的邻域搜索信息,所述邻域搜索信息中包括屋顶面片S'<sub>i'</sub>的所有外轮廓点的邻域搜索点及各邻域搜索点的三维坐标;对屋顶面片S'<sub>i'</sub>的外轮廓点集合中任一个外轮廓点C<sub>i'j'</sub>进行邻域搜索时,从步骤201中所建立的搜索信息集合S'<sub>i</sub>中找出与外轮廓点C<sub>i'j'</sub>距离最近的测点,所找出的测点为外轮廓点C<sub>i'j'</sub>的邻域搜索点,记作C'<sub>i'j'</sub>;其中,j'为正整数且j'=1、2、…、M',M'为屋顶面片S'<sub>i'</sub>的外轮廓点集合中外轮廓点的总数量;步骤2043、外轮廓点类别确定:先根据屋顶面片S'<sub>i'</sub>的外轮廓点集合中各外轮廓点的三维坐标,沿逆时针方向或顺时针方向,由先至后对屋顶面片S'<sub>i'</sub>的外轮廓点集合中的所有外轮廓点由先至后进行排序,再按照排序结果,由先至后对所述外轮廓点集合中各外轮廓点的邻域搜索点进行处理,并得出各外轮廓点的类别,过程如下:步骤Ⅰ、邻域搜索点所属屋顶面片编号确定:根据步骤2041中N'‑1个所述子集合,判断邻域搜索点C'<sub>i'j'</sub>所属的子集合;并根据所属的子集合,确定邻域搜索点C'<sub>i'j'</sub>所属的屋顶面片,记录邻域搜索点C'<sub>i'j'</sub>所属屋顶面片的编号k',k'为正整数,k'=1、2、…、N'且k'≠i';步骤Ⅱ、外轮廓点类别确定:根据当前所处理建筑物屋面的外轮廓点集合A',判断外轮廓点C<sub>i'j'</sub>是否属于外轮廓点集合A':当外轮廓点C<sub>i'j'</sub>属于外轮廓点集合A'时,外轮廓点C<sub>i'j'</sub>的类别为外边界线且其类别编号为U;否则,根据外轮廓点C<sub>i'j'</sub>和邻域搜索点C'<sub>i'j'</sub>的三维坐标,得出外轮廓点C<sub>i'j'</sub>和邻域搜索点C'<sub>i'j'</sub>的高程差Δh<sub>ij</sub>:当Δh<sub>ij</sub>≤Δh<sub>0</sub>时,外轮廓点C<sub>i'j'</sub>的类别为屋脊线且其类别编号记作T<sub>k'</sub>;当Δh<sub>ij</sub>>Δh<sub>0</sub>时,外轮廓点C<sub>i'j'</sub>的类别为阶跃线且其类别编号记作W<sub>k'</sub>;其中,Δh<sub>0</sub>=0.2m~0.4m;步骤Ⅲ、按照步骤Ⅰ至步骤Ⅱ中所述的方法,对下一个外轮廓点的类别进行确定;步骤Ⅳ、多次重复步骤Ⅲ,直至完成屋顶面片S'<sub>i'</sub>的外轮廓点集合中所有外轮廓点的类别确定过程;步骤2044、矢量边界确定:根据步骤2043中所确定屋顶面片S<sub>i</sub>的外轮廓点集合中各外轮廓点的类别,并结合屋顶面片S'<sub>i'</sub>的外轮廓点集合中各外轮廓点的三维坐标和步骤201中所记录的屋顶面片S'<sub>i'</sub>的相邻关系,对屋顶面片S'<sub>i'</sub>的矢量边界进行确定;步骤2045、多次重复步骤2041至步骤2044,直至完成多个屋顶面片的矢量边界确定过程;步骤205、建筑物屋顶矢量模型获取:待步骤204中多个屋顶面片的矢量边界确定后,便获得当前所处理建筑物屋顶的矢量模型。
地址 710054 陕西省西安市长胜街78号