1.一种屋顶屋面的分割提取方法,包括:基于飞行器采集的屋顶图像生成稠密点云数据,预处理所述稠密点云数据;对处理后的点云数据依次执行地面点分类和建筑点分类,根据空间关系提取建筑点,从而生成以单一建筑为单位的建筑点云文件;以及遍历所述建筑点云文件,对每个建筑点云文件分别执行两次平面提取,其中,使用区域生长分割算法进行第一次建筑点云平面提取,第一次平面提取的分割阈值大于第二次平面提取,从而得到各个建筑的屋顶屋面点云文件;所述第二次平面提取包括:计算所述建筑点云文件中每个点的法向量,以预设搜索半径搜索每个点的邻近点集;对每个点的法向量执行多次K-means聚类,其中K为范围在[1,9]之内的正整数,分别计算不同K值对应的误差平方和SSE;计算相邻K值对应的SSE比值SSEi:SSEi+1,其中1≤i<9,将所述SSE比值首次小于预设数值时对应的i值作为采用K-means聚类进行建筑点云聚类时对应的K值;以及使用K-means聚类对所述建筑点云文件中各个点的法向量进行聚类,对聚类结果中的每一个聚类点集进行密度聚类,基于标准化点云平均间距,选取邻域半径距离与最小聚类点集规模,依次保存密度聚类结果及其对应平面的截距式方程参数,每个聚类对应一个独立点云文件,从而得到各个建筑的屋顶屋面点云文件;所述执行地面点分类包括:基于分类代码提取地面点云数据,基于所述地面点云数据生成数字高程模型DEM;根据经过所述预处理的点云数据生成数字表面模型DSM;以及根据以下公式计算归一化数字表面模型nDSM:nDSM=DSM-DEM;所述执行建筑点分类包括:基于分类代码提取建筑点云数据;将所述建筑点云数据投影至水平面以生成建筑栅格文件;基于所述建筑栅格文件生成建筑轮廓矢量文件,计算每个建筑矢量面的面积,填补消除矢量面内的孔洞;以单个建筑矢量要素为单位提取建筑点云,逐个生成所述建筑点云文件;每个所述建筑点云文件包含了该建筑矢量要素内所有的建筑点;以及使用最小移动二乘法平滑处理所述建筑点云文件中的数据。
2.如权利要求1所述的分割提取方法,其特征在于,还包括:将得到的所述各个建筑的屋顶屋面点云文件转换为矢量文件,所述矢量文件包括矢量数据属性表。
3.如权利要求2所述的分割提取方法,其特征在于,所述将得到的所述各个建筑的屋顶屋面点云文件转换为矢量文件,包括:将所述屋顶屋面点云文件中的点云数据投影至水平面以将点云数据转换为栅格数据,从而生成屋面栅格文件;以及基于所述屋面栅格文件生成屋面矢量文件,将屋面空间信息填入所述矢量数据属性表,所述屋面空间信息包括坡度坡向、相对高程、实际面积、经纬度。
4.如权利要求2所述的分割提取方法,其特征在于,所述第一次平面提取包括:使用区域生长分割算法,搜索所述建筑点云文件中每个点的邻域中预设半径内的点集,计算平面在每个点对应的法向量和曲率值;根据所述曲率值对点进行排序,选取种子点,建立种子点集合,以所述曲率值最小的点作为初始种子点,找到所述种子点的多个邻近点;计算每个邻近点的法线与当前种子点的法线之间的角度,若小于预设角度阈值,将该邻近点添加至该当前种子点所在区域并判定二者属于同一平面;判断每个邻近点的曲率值是否小于预设曲率阈值,若小于,从所述种子点集合中删除该当前种子点,将该邻近点添加至种子点集合以作为新的种子点;以及若所述种子点集合清空,从所述初始种子点重新开始,重复迭代,直至遍历全部种子点。
5.如权利要求1所述的分割提取方法,其特征在于,所述基于飞行器采集的屋顶图像生成稠密点云数据,预处理所述点云数据,包括:基于所述飞行器采集的屋顶图像进行三维重建以生成稠密点云数据;使用统计滤波器对所述稠密点云数据进行降噪;以及采用体素下采样对降噪后的点云数据执行下采样。
6.一种屋顶屋面的分割提取装置,包括:存储器;以及与所述存储器耦接的处理器,所述处理器配置用于执行如权利要求1~5中任一项所述的屋顶屋面的分割提取方法。
7.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1~5中任一项所述的屋顶屋面的分割提取方法。