掌桥专利:专业的专利平台
掌桥专利
首页

一种基于布料模拟算法的倾斜摄影点云滤波方法

文献发布时间:2023-06-19 19:28:50


一种基于布料模拟算法的倾斜摄影点云滤波方法

技术领域

本发明涉及土木工程施工、测绘工程技术领域,尤其涉及一种基于布料模拟算法的倾斜摄影点云滤波方法。

背景技术

近年来,随着硬件设备和算法的快速发展,无人机倾斜摄影测量技术取得了长足的进步,已被广泛应用在三维城市重建、历史建筑数字化等领域。通过在无人机平台上搭载多镜头传感器,从一个垂直方向和四个倾斜方向多视角同时采集地面影像,可以快速生成地面三维模型,获取三维空间数据。相比于三维激光扫描等其他类型的实景数据采集方式,倾斜摄影技术数据采集效率更高、成本更低、适用范围更广,因此成为了目前工程建设、国土测绘等诸多行业的主流数据获取技术。

倾斜摄影点云是其数据成果的主要形式之一,一般用来生成数字地面模型(DTM)、工程土方算量、标高控制等。然而相较于机载激光雷达(LiDAR)点云,倾斜摄影点云具有不能穿透植被、密度大等特点,并且点云不仅包含地面点,还包含植被、建筑等非地面点。这些非地面点在精确地面点云应用中,对应用精度产生较大影响,因此往往需要进行滤波处理。

现有的点云滤波算法,如基于数学形态学的滤波算法、基于坡度的滤波算法、基于曲面拟合的滤波算法和基于不规则三角网的点云滤波算法等,大多针对LiDAR点云设计,对倾斜摄影点云适用性较差,并且普遍具有复杂地形自适应性差、参数设置复杂等缺陷。

布料模拟滤波算法将地表点云翻转,使用“弹簧-质点”布料模型自上而下覆盖在倒置点云上,依据布料模型和地表点云之间的高程差实现点云滤波。算法参数设置简单,仅需要选择合适的布料刚性系数、布料格网分辨率、迭代次数和高度阈值参数,在倾斜摄影点云数据上具有较好的应用可行性。但该算法的关键参数均为全局变量,不能根据地形区域自适应调整,针对大面积复杂地形或地物覆盖的场景,其全局变量参数难以兼顾复杂情况,导致滤波效果较差。

发明内容

本发明提供一种基于布料模拟算法的倾斜摄影点云滤波方法,以解决上述技术问题。

为解决上述技术问题,本发明提供一种基于布料模拟算法的倾斜摄影点云滤波方法,包括如下步骤:

步骤1:建立布料模拟滤波最优参数库,所述布料模拟滤波最优参数库中包含通过人工实验获得的针对不同地势下不同地物的最优滤波参数;所述地势至少包括平地、缓坡和陡坡;所述地物至少包括无地物、树木、灌木植被、建筑和机械设备;所述滤波参数至少包括布料刚性系数、布料格网分辨率、布料粒子高程修正迭代次数和高程阈值;

步骤2:采用目标检测技术识别地物目标;

步骤3:设定所述地物目标的感兴趣区域;

步骤4:基于所述地物目标的感兴趣区域划分布料模拟滤波的三维格网;

步骤5:分析所述三维格网中点云的地势特征并划定类型,基于所述三维格网的属性标记从所述布料模拟滤波最优参数库中自适应选取最优滤波参数;

步骤6:基于所述最优滤波参数完成滤波及地面提取。

较佳地,步骤1中,至少基于目标地物是否被滤除以及错误分类点多少判定滤波参数是否为最优滤波参数。

较佳地,步骤2包括:

步骤2.1:使用图像标注软件标注倾斜摄影采集的场地影像,获取场地典型地物目标检测数据集;

步骤2.2:构建用于目标检测的深度学习神经网络模型,并基于步骤2.1中的数据集训练所述深度学习神经网络模型,获得准确率、召回率和检测精度满足要求的场地典型地物目标检测神经网络模型;

步骤2.3:将倾斜摄影获取的场地影像输入至步骤2.2训练得到的所述场地典型地物目标检测神经网络模型中,预测得到场地影像中典型地物的位置和类别,并输出预测框属性信息。

较佳地,步骤3包括:

步骤3.1:对倾斜摄影三维点云索引并映射为像素空间的二维像素;

步骤3.2:基于欧式距离,将步骤3.1中二维像素的像素点与原始图像匹配,标记出步骤2.3中所述预测框内的像素点并索引回三维空间,得到预测框范围内的三维点云;

步骤3.3:根据步骤3.2中预测框范围内的三维点云,构建第一最小包围盒,定义该第一最小包围盒为三维点云空间中的地物目标感兴趣区域。

较佳地,步骤4包括:

步骤4.1:根据倾斜摄影三维点云的边界构建第二最小包围盒,并对所述第二最小包围盒在水平面方向,进行等距三维格网划分;

步骤4.2:遍历步骤3.3中的各地物目标对应的感兴趣区域,判断其与三维格网的重叠关系,

响应于该地物目标的感兴趣区域全部位于某单个三维格网内,则保持三维格网布局不变;

响应于该地物目标的感兴趣区域横跨多个三维格网,则合并与该地物目标的感兴趣区域交叉的各三维格网;

对包含地物目标的三维格网标记其地物属性,不包含地物目标的格网不做地物标记;

步骤4.3:对步骤4.2中重新布局的各三维格网内的点云进行统计,计算各点的K近邻点的高程均值μ和方差σ,将K近邻内高程超出(μ-kσ,μ+kσ)(k>0)范围的点作为粗差点剔除。

较佳地,步骤4.1中,还包括对三维格网中有无点云进行判断,若有则构建三维格网,反之则取消三维格网的构建。

较佳地,步骤4.1建立的三维格网中,相邻两个三维格网之间设置有重叠的缓冲区域,所述缓冲区域的长度为三维格网边长的1/10。

较佳地,步骤5包括:

步骤5.1:绘制步骤4设置的各三维格网中点云模型的等高线图,并随机选取若干点组成高程点集P={P

步骤5.2:基于步骤5.1中的等高线图和高程点集P中的各点,计算坡度;

步骤5.3:统计每个三维格网内步骤5.2中所有坡度的坡度角θ

步骤5.4:根据步骤2.3预测得到的地物标签及步骤5.3划分的地势类型,自动从步骤1的布料模拟滤波最优参数库中选取每个三维格网对应的滤波参数。

较佳地,步骤5.3中,划分地势的方法为:对坡度方差σ

较佳地,步骤6包括:

步骤6.1:沿水平面XOY翻转各三维格网内的点云使其倒置;

步骤6.2:按步骤5.4获取的滤波参数初始化模拟布料,并将其置于三维格网内最高点的上方;

步骤6.3:将点云和布料粒子投影至同一水平面,为每个布料粒子匹配最近邻点并记录其高程H,视为粒子可移动状态的高程阈值;

步骤6.4:对全体可移动布料粒子施加重力作用,计算粒子位移及当前高程,若粒子高程低于或等于高程阈值H,则将粒子固定至高程H处并更改状态为不可移动;

步骤6.5:计算布料粒子之间的内力作用,修正可移动粒子的高程;

步骤6.6:重复步骤6.4和步骤6.5,直至粒子的最大高程变化足够小或到达预设迭代次数,停止布料模拟过程;

步骤6.7:计算该三维格网点云中各点与近邻布料粒子的高程差,若高程差小于或等于预设的高程阈值H,则标记为地面点并保留,否则视为非地面点滤除;

步骤6.8:融合所有三维格网的地面点云,剔除所述缓冲区域的重复点云,并对滤波部位进行线性插值加密和修补孔洞,地面提取完成。

与现有技术相比,本发明提供的基于布料模拟算法的倾斜摄影点云滤波方法具有如下优点:

本发明通过智能优化参数选择实现了复杂场景下倾斜摄影点云的自动化滤波地面提取,在保留常规算法参数简单、容易上手等优点的基础上,节省了手动划分滤波区域等步骤,节约了成本,提高了效率;同时也大幅提升了滤波算法对各类地形的自适应性,更好地保留了复杂地形的特征信息,提高了地面提取精度,有利于后续地面点云的工程应用。

附图说明

图1为本发明一具体实施方式中基于布料模拟算法的倾斜摄影点云滤波方法的流程图;

图2为本发明一具体实施方式中图像预测区域与三维点云映射关系示意图;

图3为本发明一具体实施方式中图像预测区域与三维点云映射的流程图;

图4为本发明一具体实施方式中考虑地物目标感兴趣区域的三维格网划分示意图;

图5为本发明一具体实施方式中地势分析和坡度计算的示意图;

图6为本发明一具体实施方式中倾斜摄影点云模型的示意图;

图7为本发明一具体实施方式中地物目标的感兴趣区域的示意图;

图8为本发明一具体实施方式中滤波后的结果示意图。

具体实施方式

为了更详尽的表述上述发明的技术方案,以下列举出具体的实施例来证明技术效果;需要强调的是,这些实施例用于说明本发明而不限于限制本发明的范围。

本实施例在某建筑施工现场展开实施。

实施前,技术人员提前布设了5个像控点并操纵某款无人机飞行平台(大疆御2行业进阶版)按既定航线执行倾斜摄影任务;外业数据采集完成后,使用实景建模软件Context Capture对序列影像空三解算及三维重建,生成施工现场倾斜摄影点云模型,如附图6所示。

请参考图1,采用本发明提供的基于布料模拟算法的倾斜摄影点云滤波方法对施工现场倾斜摄影点云模型进行处理,包括如下步骤:

步骤1:建立布料模拟滤波最优参数库,所述布料模拟滤波最优参数库中包含通过人工实验获得的针对不同地势下不同地物的最优滤波参数;所述地势至少可以包括平地、缓坡和陡坡;所述地物至少可以包括无地物、树木、灌木植被、建筑和机械设备;所述滤波参数至少可以包括布料刚性系数、布料格网分辨率、布料粒子高程修正迭代次数和高程阈值。

在一些实施例中,可以至少基于目标地物是否被滤除以及错误分类点多少等方式判定滤波参数是否为最优滤波参数。

在一些实施例中,人工实验时滤波参数的调整范围可以如表1所示,创建的施工现场布料模拟滤波最优参数库如表2所示。

表1滤波参数调整范围

表2施工现场的布料模拟滤波最优参数库

步骤2:采用目标检测技术识别地物目标,具体包括:

步骤2.1:使用图像标注软件(例如LabelImg)标注倾斜摄影采集的场地影像,获取场地典型地物目标检测数据集,并按8:1:1的比例随机划分为训练集、验证集和测试集。

步骤2.2:基于单阶段目标检测算法框架YOLO v5构建用于目标检测的深度学习神经网络模型,并基于步骤2.1中的数据集训练、检验、测试所述深度学习神经网络模型,获得准确率、召回率和检测精度满足要求的场地典型地物目标检测神经网络模型,后续可简称为目标检测模型。

某一实施例中,初始训练参数设置为:模型大小为s,批大小为64,图像分辨率为640,学习率为0.01,训练轮数为300;目标检测模型经多次迭代训练后,检测效果如表3所示;

表3目标检测模型检测效果

步骤2.3:将倾斜摄影获取的场地影像输入至步骤2.2训练得到的所述场地典型地物目标检测神经网络模型中,预测得到场地影像中出现的典型地物的位置和类别,地物的类别即为地物标签,并输出预测框属性信息。

以某一实施例中某张场地影像数据为例,输出结果如下:

0 0.457031 0.239258 0.90625 0.326172 0.785468

2 0.480469 0.709961 0.960938 0.576172 0.86284

其中,第一列表示地物标签,0表示机械设备,1表示临时建筑,2表示建筑材料;第二、三列表示预测框中心点的横、纵坐标;第四、五列表示预测框的宽、高信息;第六列表示预测框的置信度。由此可知,该场地影像中检测出了机械设备和建筑材料,并且分别位于图片的左上侧和下侧。

步骤3:设定所述地物目标的感兴趣区域(ROI),请参考图2和图3,具体包括:

步骤3.1:对倾斜摄影三维点云索引并映射为像素空间的二维像素,映射矩阵表达式为:

式中,I是相机内参矩阵,用于描述相机坐标到像素坐标的变换关系;E是相机外参矩阵,用于描述真实世界坐标到相机坐标的变换关系;f

对一些实施例中飞行平台搭载的可见光相机测定,得其内参矩阵(单位为px)为:

其中某航摄影像对应的相机外参矩阵为:

三维点云映射时,用上述映射矩阵乘上点云中各点的真实世界坐标,即可计算得其在像素空间的二维坐标,进而生成二维图像,具体计算公式为:

式中,(X

步骤3.2:基于欧式距离,将步骤3.1中二维像素的像素点与原始图像匹配,标记出步骤2.3中所述预测框内的像素点并索引回三维空间,得到预测框范围内的三维点云。

步骤3.3:根据步骤3.2中预测框范围内的三维点云,构建第一最小包围盒,定义该第一最小包围盒为三维点云空间中的地物目标感兴趣区域,如图7所示。

步骤4:基于所述地物目标的感兴趣区域划分布料模拟滤波的三维格网,请参考图4,具体包括:

步骤4.1:根据倾斜摄影三维点云的边界(点云在X,Y,Z方向的最大、最小值)构建第二最小包围盒,并对所述第二最小包围盒在水平面方向,进行等距三维格网划分。在一些实施例中,可以在该最小包围盒顶部通过多个边长相等的正方形均匀划分三维格网,三维格网的边长可以取50m。

在一些实施例中,该步骤还包括对三维格网中有无点云进行判断,若有则构建三维格网,反之则取消三维格网的构建,避免出现构建的三维格网中无点云的无效状态。

在一些实施例中,考虑到两个三维格网间地势变化剧烈或存在大面积覆盖物的可能情况,建立三维格网时,相邻两个三维格网之间可以设置有重叠的缓冲区域,所述缓冲区域的长度可以为三维格网边长的1/10,例如5m。

步骤4.2:遍历步骤3.3中的各地物目标对应的感兴趣区域,判断其与三维格网的重叠关系,响应于该地物目标的感兴趣区域全部位于某单个三维格网内,则保持三维格网布局不变;响应于该地物目标的感兴趣区域横跨多个三维格网,则合并与该地物目标的感兴趣区域交叉的各三维格网,使合并后的三维格网能够包含完整的地物ROI;对包含地物目标的三维格网标记其地物属性,不包含地物目标的格网不做地物标记。

步骤4.3:对步骤4.2中重新布局的各三维格网内的点云进行统计,计算各点的K近邻点的高程均值μ和方差σ,将K近邻内高程超出(μ-kσ,μ+kσ)(k>0)范围的点作为粗差点剔除。

以某一实施例的点云中某一高粗差点P的剔除为例:

统计三维格网内某点Q的100个近邻(即K取值100)的高程,计算得高程均值μ和方差σ分别为9.875m和0.062m,并取k=3,则该点近邻的高程阈值为

[μ-kσ,μ+kσ]=9.875-3×0.062,9.875+3×0.062]=[9.689,10.061]

而粗差点P恰好是点Q的100个近邻之一,并且其高程为10.685m,则判定点P为离群点并予以删除。

步骤5:分析所述三维格网中点云的地势特征并划定类型,基于所述三维格网的属性标记从所述布料模拟滤波最优参数库中自适应选取最优滤波参数,请参考图5,具体包括:

步骤5.1:绘制步骤4设置的各三维格网中点云模型的等高线图,并随机选取若干点组成高程点集P={P

步骤5.2:基于步骤5.1中的等高线图和高程点集P中的各点,计算坡度如下:

式中,S

步骤5.3:统计每个三维格网内步骤5.2中所有坡度的坡度角θ

在一些实施例中,划分地势的方法可以为:对坡度方差σ

表4地势类型划分依据

步骤5.4:根据步骤2.3预测得到的地物标签及步骤5.3划分的地势类型,自动从步骤1的布料模拟滤波最优参数库中选取每个三维格网对应的滤波参数。

步骤6:基于所述最优滤波参数完成滤波及地面提取,具体包括:

步骤6.1:沿水平面XOY翻转各三维格网内的点云使其倒置。

步骤6.2:按步骤5.4获取的滤波参数初始化模拟布料,并将其置于三维格网内最高点的上方。

以某实施例中含机械设备的陡坡区域A和某地势类型为复杂地形的区域B为例,布料模拟滤波过程的预设参数分别如表5所示。

表5某实施例中某区域预设参数选取示例

步骤6.3:将点云和布料粒子投影至同一水平面,为每个布料粒子匹配最近邻点并记录其高程H,视为粒子可移动状态的高程阈值。

步骤6.4:对全体可移动布料粒子施加重力作用,计算粒子位移及当前高程,若粒子高程低于或等于高程阈值H,则将粒子固定至高程H处并更改状态为不可移动。

其中,重力作用下各粒子位移求解方程为:

式中,X(t)是粒子在时间t时刻的位置;Δt是时间步长,设置为0.65;m是粒子质量,通常设置为1;G为粒子受到的重力。

步骤6.5:计算布料粒子之间的内力作用,修正可移动粒子的高程。

其中,粒子受内力作用的位移计算公式为:

d=0.5b(p

式中,d表示粒子的位移矢量;b是一个布尔值,当粒子处于可移动状态时为1,否则为0;p

步骤6.6:重复步骤6.4和步骤6.5,直至粒子的最大高程变化足够小或到达预设迭代次数,停止布料模拟过程。

步骤6.7:计算该三维格网点云中各点与近邻布料粒子的高程差,若高程差小于或等于预设的高程阈值H,则标记为地面点并保留,否则视为非地面点滤除。

步骤6.8:融合所有三维格网的地面点云,剔除所述缓冲区域的重复点云,并对滤波部位进行线性插值加密和修补孔洞,最终倾斜摄影点云布料模拟滤波和地面提取完成,如图8所示。

综上所述,本发明提供的基于布料模拟算法的倾斜摄影点云滤波方法,包括如下步骤:步骤1:建立布料模拟滤波最优参数库,所述布料模拟滤波最优参数库中包含通过人工实验获得的针对不同地势下不同地物的最优滤波参数;所述地势至少包括平地、缓坡和陡坡;所述地物至少包括无地物、树木、灌木植被、建筑和机械设备;所述滤波参数至少包括布料刚性系数、布料格网分辨率、布料粒子高程修正迭代次数和高程阈值;步骤2:采用目标检测技术识别地物目标;步骤3:设定所述地物目标的感兴趣区域;步骤4:基于所述地物目标的感兴趣区域划分布料模拟滤波的三维格网;步骤5:分析所述三维格网中点云的地势特征并划定类型,基于所述三维格网的属性标记从所述布料模拟滤波最优参数库中自适应选取最优滤波参数;步骤6:基于所述最优滤波参数完成滤波及地面提取。本发明提出了一种结合地物识别与地势分析的倾斜摄影点云布料模拟滤波改进算法,能够通过借助图像识别目标检测和地势分析来改进常规布料模拟滤波算法,实现复杂地形或复杂地物覆盖场景下的倾斜摄影点云滤波格网自动划分和滤波参数自适应调节,从而提升地面点云提取精度与效率。

显然,本领域的技术人员可以对发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包括这些改动和变型在内。

相关技术
  • 一种基于双向布料模拟的机载激光测深点云滤波方法
  • 基于多特征整合深度学习模型的倾斜摄影点云分类方法
技术分类

06120115924291