一种三维点云提取方法及提取系统与流程

未命名 09-08 阅读:84 评论:0


1.本技术属于隧道工程测量及铁路装备检测领域,具体涉及一种基于多特征的三维点云提取方法及提取系统。


背景技术:

2.在隧道施工过程中,需要经常对不同时期的隧道进行断面质量检测。采用全站仪或激光断面仪的传统检测方法存在效率低、手段复杂、检测不全面等问题。随着三维扫描技术的发展,利用扫描仪获得隧道内海量三维点云数据,借助高效的点云处理算法,可以快速、准确、轻松地完成隧道断面质量检测任务。
3.如图1所示,三维激光扫描仪获取的初始点云数据包括隧道点云和非隧道点云,其中,非隧道点云种包括地面、车辆和人员等。因此采取高效的点云滤波算法剔除非隧道点云是提取干净、高质量隧道点云的关键。常用的点云滤波方法包括:(1)基于人工选择的滤波方法,该方法通过人机交互剔除非目标点云,不适合噪声点分布散乱的情况;(2)基于距离阈值的滤波方法,该方法通过设定具体阈值划分目标点云和非目标点云;因此该方法通用性差,且容易出现误判;(3)基于统计的滤波方法,该方法通过统计每个点与k近邻范围内各点之间的距离剔除离群点,但该方法无法剔除距离目标点云较近的噪声点;(4)基于随机采样一致性(random sample consensus,ransac)算法的滤波方法通过对不同平面进行拟合实现点云分割,该方法对参数依赖性较强,且针对特定物体平面。


技术实现要素:

4.为至少在一定程度上克服相关技术中存在的问题,本技术提供了一种三维点云提取方法及提取系统。
5.根据本技术实施例的第一方面,本技术提供了一种三维点云提取方法,其包括以下步骤:
6.获取初始点云数据;
7.根据里程范围在初始点云数据中切分出待计算的部分初始点云数据并对该部分初始点云数据进行下采样处理;
8.基于csf算法对下采样后的部分初始点云数据进行地面滤波;
9.对滤波后的点云数据构建三维空间特征和二维平面特征,并将三维空间特征和二维平面特征划分为训练集和测试集,利用训练集创建支持向量机,采用支持向量机提取隧道点云。
10.上述三维点云提取方法中,所述获取初始点云数据的方式为:
11.使用全站式扫描仪对隧道进行扫描,直接获取绝对坐标点云数据;
12.或者,使用地面式三维激光扫描仪与标靶结合的方式对隧道进行扫描,首先间接获取相对坐标点云数据,然后通过坐标配准转换为绝对坐标点云数据。
13.上述三维点云提取方法中,所述基于csf算法对下采样后的部分初始点云数据进
行地面滤波的过程为:
14.对下采样后的部分初始点云数据进行过滤,滤除离群点,倒置点云;
15.初始布栅格化,根据实际点云密度确定栅格大小,初始位置位于点云纵坐标的最大值上;
16.将点云与栅格粒子投影至同一水平面,计算当前粒子能抵达的最低位置;
17.计算每个粒子在仅考虑重力时外力影响下移动的距离;
18.计算每个粒子在内力影响下移动的距离;
19.不断计算每个粒子在仅考虑重力时外力影响下移动的距离以及在内力影响下移动的距离,直到所有粒子的最大高度变化小于预设阈值或者迭代次数到达指定次数,计算停止;
20.计算栅格化粒子与原始点云的距离;
21.判断栅格化粒子与原始点云的距离是否小于预设的距离阈值,如果是,则判定当前点云为地面点云;否则,判定当前点云为非地面点云;
22.判断是否遍历完所有点云,如果是,则结束;否则,返回重新计算栅格化粒子与原始点云的距离。
23.进一步地,所述粒子在仅考虑重力时外力影响下移动的距离为:
[0024][0025]
式中,x(t+δt)表示粒子在外力影响下移动的距离,x(t)表示粒子在t时刻的位置,x(t-δt)表示粒子在t-δt时刻的位置,δt表示时间间隔,g表示重力常数,m表示粒子质量,通常为1。
[0026]
进一步地,所述粒子在内力影响下移动的距离为:
[0027][0028]
式中,表示粒子的位移向量,当粒子为可移动粒子时,b=1;否则,b=0;表示当前粒子,表示的相邻粒子,表示垂直方向的归一化向量,
[0029][0030]
进一步地,所述采用支持向量机提取隧道点云的过程为:
[0031]
构建隧道点云特征向量;
[0032]
根据构建的隧道点云特征向量,将滤波后的点云数据的三维空间特征和二维平面特征划分为训练集和测试集;
[0033]
利用训练集创建支持向量机,获取最优参数下的支持向量机模型;
[0034]
利用训练好的支持向量机模型,将测试集作为输入,对隧道点云进行二分类判别;如果输出结果为1,则判定当前输入为隧道点云,保留当前输入的测试集中的点云数据;如果输出结果为-1,则表示当前输入为非隧道点云,丢弃当前输入的测试集中的点云数据。
[0035]
更进一步地,所述构建隧道点云特征向量的过程为:
[0036]
在点云数据上构造三维kd-树,以将离散的三维点云转换为有关联的拓扑结构;
[0037]
在kd-树中寻找每个点的邻近点云簇,点云簇的个数根据实际的点云密度进行确定;
[0038]
计算邻近点云簇内所有点云的协方差特征值,构建三维空间特征和二维平面特征。
[0039]
更进一步地,所述三维空间特征包括发散性指数s
λ
、平面性指数p
λ
、线性指数l
λ
、各向同性o
λ
、各向异性a
λ
、特征熵e
λ
、特征和∑λ、曲率变化c
λ
、垂直度v、点云簇z轴极差rz、点云簇z轴方差和点云簇密度d;
[0040]
发散性指数s
λ
为:
[0041]
平面性指数p
λ
为:
[0042]
线性指数l
λ
为:
[0043]
各向同性o
λ
为:
[0044]
各向异性a
λ
为:
[0045]
特征熵e
λ
为:
[0046]
特征和∑λ为:∑λ=λ1+λ2+λ3;
[0047]
曲率变化c
λ
为:
[0048]
垂直度v为:v=1-nz;
[0049]
点云簇z轴极差rz为:rz=max(z)-min(z);
[0050]
点云簇z轴方差为:
[0051]
点云簇密度d为:
[0052]
上述各式中,λ1,λ2,λ3表示协方差特征值,nz表示每个点法向量的z轴分量,k表示使用kd-树近邻搜索点云簇的k值,r表示搜索半径;
[0053]
二维平面特征包括隧道垂直横截面内每个点与轨顶之间的距离dis
(i

,j)

[0054][0055]
式中,表示实际轨顶位置的坐标,(x
(i

,j)
,z
(i

,j)
)表示第i

个横截面下第j个点。
[0056]
更进一步地,所述利用训练集创建支持向量机,获取最优参数下的支持向量机模型的过程为:
[0057]
定义分离超平面h(x),当h(x)=0时,表明样本点位于分离超平面上;当h(x)>0时,表明样本类别为y=1;当h(x)<0时,表明样本类别为y=-1;
[0058]
h(x)的表达式为:
[0059]
h(x)=w
t
x+b;
[0060]
式中,w表示参数向量,b表示平移向量;
[0061]
构建最优分离超平面的表达式为:
[0062][0063]
式中,i5=1,2,

,m;
[0064]
对最优分离超平面的表达式进行转换并引入拉格朗日乘子,化解后最终优化目标函数为:
[0065][0066]
式中,α表示向量,i5和j均表示序号;
[0067]
定义核函数和惩罚系数c>0,最终优化目标函数为:
[0068][0069]
式中,j=1,2,

,m;
[0070]
利用smo算法求解出向量α,并获得对应的参数向量w:
[0071][0072]
根据kkt条件找出所有的s个支持向量,计算每个支持向量的平均值b:
[0073][0074]
确定最优超平面,分类决策函数为:
[0075]
f(x)=sign(w
t
x+b)。
[0076]
根据本技术实施例的第二方面,本技术基于上述权利要求1~9任一项所述的三维点云提取方法还提供了一种三维点云提取系统,其包括扫描模块、下采样模块、滤波模块和提取模块;
[0077]
所述扫描模块,用于获取初始点云数据;
[0078]
所述下采样模块,用于根据里程范围在初始点云数据中切分出待计算的部分初始点云数据并对该部分初始点云数据进行下采样处理;
[0079]
所述滤波模块,基于csf算法对下采样后的部分初始点云数据进行地面滤波,以对隧道内的地面进行识别和剔除;
[0080]
所述提取模块,用于根据滤波后的点云数据得到训练集和测试集,并利用训练集创建支持向量机,采用支持向量机提取隧道点云。
[0081]
根据本技术的上述具体实施方式可知,至少具有以下有益效果:本技术提供的三维点云提取方法通过采用csf算法对隧道内获取的初始点云进行地面滤波,随后将保留的离散三维点云转换为有关联的拓扑结构,构建多种三维空间特征与二维平面特征,以用于扩展点云数据,最后通过训练最优支持向量机模型快速、准确地提取出隧道点云,具有准确性高、鲁棒性好以及处理速度快等优势,本技术还可应用至铁路装备检测领域,可以准确剔除铁路罐车罐体点云中梯子、液位计、标靶等附件点云,保留罐壁数据,提升后续容积计算准确性,为铁路罐车智能检定检测奠定基础。
[0082]
应了解的是,上述一般描述及以下具体实施方式仅为示例性及阐释性的,其并不能限制本技术所欲主张的范围。
附图说明
[0083]
下面的所附附图是本技术的说明书的一部分,其示出了本技术的实施例,所附附图与说明书的描述一起用来说明本技术的原理。
[0084]
图1为现有技术中隧道初始点云数据的示意图。
[0085]
图2为本技术具体实施方式提供的一种三维点云提取方法的流程图。
[0086]
图3为本技术具体实施方式提供的一种三维点云提取方法中获取的初始点云数据示意图。
[0087]
图4为本技术具体实施方式提供的一种三维点云提取方法中基于csf算法对下采样后的部分初始点云数据进行地面滤波的流程图。
[0088]
图5为本技术具体实施方式提供的一种三维点云提取方法中采用支持向量机提取隧道点云的流程图。
[0089]
图6为本技术具体实施方式提供的一种三维点云提取方法中线性可分支持向量机图解。
[0090]
图7为本技术具体实施方式提供的一种三维点云提取方法中基于csf算法对点云数据中的地面进行滤波的结果示意图;其中,图(a)表示初始点云,图(b)表示按里程切分后的点云,图(c)表示下采样后的点云,图(d)表示采用csf算法剔除地面后的点云。
[0091]
图8为本技术具体实施方式提供的一种三维点云提取方法中不同测试集隧道点云提取结果示意图。
[0092]
图9为本技术具体实施方式提供的一种三维点云提取方法在铁路装备检测中的应用示意图。
具体实施方式
[0093]
为使本技术实施例的目的、技术方案和优点更加清楚明白,下面将以附图及详细叙述清楚说明本技术所揭示内容的精神,任何所属技术领域技术人员在了解本技术内容的实施例后,当可由本技术内容所教示的技术,加以改变及修饰,其并不脱离本技术内容的精
神与范围。
[0094]
本技术的示意性实施例及其说明用于解释本技术,但并不作为对本技术的限定。另外,在附图及实施方式中所使用相同或类似标号的元件/构件是用来代表相同或类似部分。
[0095]
关于本文中所使用的“第一”、“第二”、

等,并非特别指称次序或顺位的意思,也非用以限定本技术,其仅为了区别以相同技术用语描述的元件或操作。
[0096]
关于本文中所使用的“包含”、“包括”、“具有”、“含有”等等,均为开放性的用语,即意指包含但不限于。
[0097]
关于本文中所使用的“及/或”,包括所述事物的任一或全部组合。
[0098]
关于本文中的“多个”包括“两个”及“两个以上”;关于本文中的“多组”包括“两组”及“两组以上”。
[0099]
某些用以描述本技术的用词将于下或在此说明书的别处讨论,以提供本领域技术人员在有关本技术的描述上额外的引导。
[0100]
由于隧道现场施工环境较为复杂,除扫描到的隧道点云数据外,还包括以下点云数据:(1)地面;(2)正在施工的台车、除渣车和喷浆车等;(3)现场的施工人员;(4)连通洞内的通风管、排水管;(5)隧道爆破后残存的水汽、尘土等;因此需要采用快速、准确的滤波方式将以上噪声点云剔除,保留隧道点云。
[0101]
三维扫描仪在隧道内获取的初始点云包含着大量数据,其中只有隧道点云才是后续隧道质量检测使用的正确数据,因此有必要对隧道三维点云数据进行提取。
[0102]
如图2所示,本技术提供的三维点云提取方法包括以下步骤:
[0103]
s1、获取初始点云数据;
[0104]
为保证获取的点云数据为真实世界的大地坐标,可以采用以下两种方式获取点云数据:
[0105]
一种方式是使用全站式扫描仪对隧道进行扫描,直接获取绝对坐标点云数据。采用这种方式,人员操作较为简单,但是扫描时间较长。
[0106]
另一种方式是使用地面式三维激光扫描仪与标靶结合的方式对隧道进行扫描,首先间接获取相对坐标点云数据,然后通过坐标配准转换为绝对坐标点云数据。采用这种方式,人员操作较为复杂,但是扫描时间较短。
[0107]
在实际操作中,可以根据现场的既有设备和工序流程,选择合适的方式,以获取初始点云数据。获取的初始点云数据如图3所示。
[0108]
需要说明的是,真实世界的大地坐标是指cgcs2000国家大地坐标系下的三维坐标,实际工程计算中要按照大地坐标进行计算。
[0109]
s2、根据里程范围在初始点云数据中切分出待计算的部分初始点云数据并对该部分初始点云数据进行下采样处理。
[0110]
需要说明的是,里程范围是根据现场需求确定的,例如,里程范围可以是100m~200m。
[0111]
对待计算的部分初始点云数据进行下采样,过滤掉冗余点云,保留局部范围内代表性点云数据,能够降低点云数据的数量,减少计算量,提升后续点云数据处理速度,进一步保证后续隧道三维点云质量检测的准确性。
[0112]
s3、基于csf(cloth simulation filter,布模拟滤波)算法对下采样后的部分初始点云数据进行地面滤波,以对隧道内特征较为连贯的地面进行识别和剔除。
[0113]
csf算法是假设将一块布铺至原始倒置点云上,通过分析布上各个节点与相应点云之间的关系,最终迭代出布的形态,该布的形态即为地面形态。根据该形态即可划分出地面与非地面。
[0114]
通过分析三维空间内各粒子受到的作用力(例如,重力和碰撞力组成的外力、内部牵引的内力)情况,定义如下基本公式:
[0115][0116]
式(1)中,f
ext
(x,t)表示粒子在时刻t位置x时受到的外力,f
int
(x,t)表示粒子在时刻t位置x时受到的内力,m表示粒子质量(通常为1)。
[0117]
假设粒子相对于地面只有垂直方向的运动,初始状态时布铺在倒置的点云上方。随着受外力影响,布的粒子会下沉,出现与点云相交的情况。判断哪些布粒子与点云相交,通过判断某处粒子的垂直高度和当前点云的高度是否都低于地面点云的高度,如果是,则判定此处粒子为不可移动粒子,否则判定此处粒子为可移动粒子。
[0118]
对可移动粒子考虑内力情况,从而最终拟合出布的形状。
[0119]
具体地,如图4所示,基于csf算法对下采样后的部分初始点云数据进行地面滤波的过程为:
[0120]
s31、对下采样后的部分初始点云数据进行过滤,滤除离群点,倒置点云。
[0121]
s32、初始布栅格化,根据实际点云密度确定栅格大小(grid resolution,gr),初始位置位于点云纵坐标的最大值上。
[0122]
s33、将点云与栅格粒子投影至同一水平面,寻找每个粒子的最近点(corresponding point,cp),将该点投影前的高度值定义为相交高度值(intersection height value,ihv),ihv表示当前粒子可抵达的最低位置。
[0123]
s34、计算每个粒子在外力影响(仅考虑重力)下移动的距离,将位置改变后的高度与ihv比较,如果位置改变后的高度小于或等于ihv,则将该粒子高度设置为等于ihv高度,并将该粒子标记为不可移动粒子。
[0124]
粒子在外力影响下移动的距离用如下公式进行计算:
[0125][0126]
式(2)中,x(t+δt)表示粒子在外力影响下移动的距离,x(t)表示粒子在t时刻的位置,x(t-δt)表示粒子在t-δt时刻的位置,δt表示时间间隔,g表示重力常数。
[0127]
s35、计算每个粒子在内力影响下移动的距离,相邻两个粒子间存在三种情况:1)均受力为可移动粒子,则向相反方向移动相同的距离;2)二者受力不同,一个移动,另一个不移动;3)均不受力为不可移动粒子,原地不动。粒子在内力影响下移动的距离用如下公式进行计算:
[0128]
[0129]
式(3)中,表示粒子的位移向量,当粒子为可移动粒子时,b=1;否则,b=0。表示当前粒子,表示的相邻粒子,表示垂直方向的归一化向量,即
[0130]
通过定义刚性因子(rigidness,ri)来表示粒子的移动次数,常规的刚性因子为1、2、3,刚性因子越大,布的表面越硬,表面越趋向平坦。
[0131]
s36、按照步骤s34和步骤s35不断迭代,直到所有粒子的最大高度变化小于预设阈值或者迭代次数到达指定次数,计算停止。
[0132]
s37、计算栅格化粒子与原始点云的距离。
[0133]
s38、判断栅格化粒子与原始点云的距离是否小于预设的距离阈值,如果是,则判定当前点云为地面点云;否则,判定当前点云为非地面点云。
[0134]
s39、判断是否遍历完所有点云,如果是,则结束;否则,返回至步骤s37,重新计算栅格化粒子与原始点云的距离。
[0135]
在隧道内获取的点云数据,正常情况下地面都处于较平状态,相对于其他非地面点云更具有连通性和相似性,因此采用csf的方式可以有效地分割地面点云与非地面点云,保留非地面点云,为后续提取隧道点云奠定基础。
[0136]
s4、对滤波后的点云数据构建三维空间特征和二维平面特征,并将三维空间特征和二维平面特征划分为训练集和测试集,利用训练集创建支持向量机,采用支持向量机提取隧道点云。
[0137]
三维点云一般包括空间(x,y,z)坐标、rgb颜色、反射率等信息,利用点云数据可以生成特征数据,机器学习算法可以对特征数据进行学习训练,生成稳定模型,最终快速、准确识别目标点云。
[0138]
svm(support vector machine,支持向量机)是机器学习算法中用于完成分类工作的经典算法,通过输入需要提取隧道的点云数据,构建特征向量,生成模型最优参数,实现对输入点云是否为隧道点云的二分判别,达到提取隧道点云的目的,为后续隧道三维点云断面质量检测任务提供高质量数据。
[0139]
如图5所示,采用支持向量机提取隧道点云的过程为:
[0140]
s41、构建隧道点云特征向量,其具体过程为:
[0141]
首先,在点云数据上构造三维kd-树,目的是将离散的三维点云转换为有关联的拓扑结构。
[0142]
其次,在kd-树中寻找每个点的邻近点云簇,点云簇的个数根据实际的点云密度进行确定。
[0143]
最后,计算邻近点云簇内所有点云的协方差特征值,构建三维空间特征和二维平面特征,以供后续支持向量机输入使用。
[0144]
假设p
(x,y,z)
∈u3为三维点云空间中的一个点云,nu(p)表示点云p
(x,y,z)
在kd-树近邻搜索中搜索的最近点云簇,n表示点云簇的个数,则该点云簇形成的矩阵为:
[0145][0146]
式(4)中,表示第i2个点云簇的坐标,n表示点云簇的个数,i2=1,2,

,n。
[0147]
为点云簇的中心点,构建与矩阵a的行数和列数均相等的矩阵b:
[0148][0149]
点云簇的协方差矩阵为:
[0150][0151]
根据点云簇的协方差矩阵计算出的协方差特征值为λ1,λ2,λ3,利用协方差特征值λ1,λ2,λ3构建如下三维空间特征:
[0152]
发散性指数s
λ

[0153][0154]
平面性指数p
λ

[0155][0156]
线性指数l
λ

[0157][0158]
各向同性o
λ

[0159][0160]
各向异性a
λ

[0161]
[0162]
特征熵e
λ

[0163][0164]
特征和∑λ:
[0165]
∑λ=λ1+λ2+λ3ꢀꢀꢀꢀꢀꢀꢀ
(13)
[0166]
曲率变化c
λ

[0167][0168]
垂直度v:
[0169]
v=1-nzꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(15)
[0170]
式(15)中,nz表示每个点法向量的z轴分量。
[0171]
点云簇z轴极差rz:
[0172]rz
=max(z)-min(z)
ꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀꢀ
(16)
[0173]
点云簇z轴方差
[0174][0175]
点云簇密度d:
[0176][0177]
式(18)中,k表示使用kd-树近邻搜索点云簇的k值,r表示搜索半径。
[0178]
除此之外,将点云按照平行z轴方向进行切片,每个切片即为隧道实际的横截面。为确保每个横截面形状完整,因此可以将切片厚度设置为10cm。根据设计横截面及设计轨顶位置,确定每个实际横截面si′
={p1,p2,

,pn′
}的实际轨顶位置其中,p1,p2,

,pn′
表示实际横截面si′
上的各个点,n

表示点数。将实际横截面投影至xoz平面,计算第i

个横截面下第j点与第i

个横截面的轨顶距离dis
(i

,j)
,该距离即为二维平面特征,计算公式如下:
[0179][0180]
式(19)中,表示实际轨顶位置的坐标,(x
(i

,j)
,z
(i

,j)
)表示第i

个横截面下第j个点。
[0181]
s42、根据构建的隧道点云特征向量,将滤波后的点云数据的三维空间特征和二维平面特征划分为训练集和测试集。
[0182]
其中,训练集用于训练svm模型,确定最优参数,因此需要对样本集中的每个样本进行数据标注。
[0183]
确定m
train
个输入样本
[0184]
其中,表示第i4个样本的n维特征向量,i4=1,2,

,m
train

[0185]
根据步骤s41构建的点云特征向量,此处n=13,表示第i4个样本的类别,-1表示非隧道点云,1表示隧道点云。
[0186]
测试集作为svm最优参数模型的输入,将m
test
个测试样本输入到训练好的svm模型中进行隧道点云判别,如果判定为隧道点云,则将该测试样本保留;否则,将该测试样本丢弃。
[0187]
s43、利用训练集创建支持向量机,获取最优参数下的支持向量机模型;
[0188]
支持向量机是通过解决凸优化问题,寻找最合适的支持向量,构建最优分离超平面,从而进行二分类决策。在遇到线性可分的样本时,可以通过引入软间隔降低异常样本点带来的影响,提升最优分离超平面的鲁棒性和泛化性;在遇到线性不可分的样本时,通过提升样本特征空间维度构建最优分离超平面,引入合适的核函数以解决高维度的计算灾难问题。
[0189]
将步骤s42得到的训练集作为输入样本创建支持向量机,获取最优参数下的支持向量机模型的具体过程为:
[0190]
s431、如图6所示,定义分离超平面h(x),当h(x)=0时,表明样本点位于分离超平面上;当h(x)>0时,表明样本类别为y=1;当h(x)<0时,表明样本类别为y=-1。
[0191]
h(x)的表达式为:
[0192]
h(x)=w
t
x+b
ꢀꢀꢀꢀꢀꢀꢀ
(20)
[0193]
式(20)中,w表示参数向量,b表示平移向量。
[0194]
s432、构建最优分离超平面,即寻找图4中示出的间隔最大时的超平面,即:
[0195][0196]
式(21)中,i5=1,2,

,m。
[0197]
s433、对式(21)进行转换并引入拉格朗日乘子,化解后最终优化目标函数为:
[0198][0199]
式(22)中,α表示向量,i5和j均表示序号。
[0200]
s434、为解决线性不可分样本,定义核函数和惩罚系数c>0,最终优化目标函数为:
[0201][0202]
式(23)中,j=1,2,

,m。
[0203]
s435、利用smo(sequential minimal optimization,序列最小优化算法)算法求解出向量α,则可获得对应的参数向量w:
[0204][0205]
s436、根据kkt条件找出所有的s个支持向量,计算每个支持向量的平均值b:
[0206][0207]
s437、确定最优超平面,分类决策函数为:
[0208]
f(x)=sign(w
t
x+b)
ꢀꢀꢀꢀꢀ
(26)
[0209]
s44、利用训练好的支持向量机模型,将测试集作为输入,对隧道点云进行二分类判别;如果输出结果为1,则判定当前输入为隧道点云,保留当前输入的测试集中的点云数据;如果输出结果为-1,则表示当前输入为非隧道点云,丢弃当前输入的测试集中的点云数据。
[0210]
下面采用一个具体的实施例对本技术提供的隧道三维点云提取方法进行说明。
[0211]
采用leica rtc360地面式三维激光扫描仪分别在宣绩铁路路口隧道、金建铁路上徐隧道及西十铁路西岭隧道采集点云数据。
[0212]
基于csf算法对点云数据中的地面进行滤波:
[0213]
如图7(a)所示,初始点云长度为153.9m。在扫描过程中距离扫描仪越近,扫描的点云密度越高,获得的点云数据越好,因此在计算前需要将扫描仪附近的点云按照里程分割出来。
[0214]
如图7(b)所示,本实施例分割出长度为21m的部分点云进行计算,此时点云数量为23215278。为了加速后续计算速度,对当前点云进行下采样处理。如图7(c)所示,下采样后点云数量变为196132。最后,采用csf算法对地面进行剔除,保留剩余点云。如图7(d)所示,可以看出此时隧道点云与非隧道点云连通性较差,离散性较强。
[0215]
基于svm对隧道点云进行提取:
[0216]
构建三维空间特征和二维平面特征,对每组特征归一化处理,防止特征值过大或过小产生的影响。
[0217]
将70%的特征数据划分为训练集,30%的特征数据划分为测试集,对训练集中的隧道点云和非隧道点云进行标注。采用高斯核函数并确定其他最优参数,将五折交叉验证的平均值作为当前训练模型的评分结果,定义准确率为其中n表示预测正确的点云数,m表示总点云数。最终在不同测试集上的预测准确率如表1所示。
[0218]
表1支持向量机预测结果
[0219][0220]
由表1可知,该支持向量机模型在不同测试集上的预测准确率为99%左右,准确率较高。这是因为由csf算法准确剔除地面后,非隧道点云与隧道点云处于离散状态,且具有
明显的特征不一致性,因此可以准确提取出如图8所示的隧道点云提取结果。
[0221]
与隧道距离非常接近的少部分管道、线路、矮边墙点云会被误判为隧道点云,但这些数量占总点云数的比重非常小,对后续隧道三维点云断面质量检测影响可忽略不计。
[0222]
表1中的三组测试数据均为形状相似的不同隧道,但可以使用相同的训练模型进行隧道点云提取,因此本技术具有较好的通用性。
[0223]
本技术提供的三维点云提取方法首先采用csf算法对隧道内获取的初始点云进行地面滤波,随后将保留的离散三维点云转换为有关联的拓扑结构,构建多种三维空间特征与二维平面特征以用于扩展点云数据,最后通过训练最优支持向量机模型快速、准确地提取出隧道点云,本技术具有以下优势:
[0224]
(1)准确性高;
[0225]
由于隧道点云与非隧道点云具有明显的特征不一致性,先采用csf滤波将地面进行剔除,再构建点云特征空间,使用支持向量机对隧道点云进行提取,可以准确地提取出隧道点云,降低了后续对隧道点云进行检测时出现的误判情况。
[0226]
(2)鲁棒性好;
[0227]
由于隧道内施工情况较为复杂,经常会将正在施工的台车、除渣车、喷浆车、人员、通风管、排水管等点云数据一起获取到,但隧道点云相对于该类噪声点云特征相对稳定,且形状相似的隧道特征基本一致,因此模型可以迁移至相似隧道使用,具有较好的鲁棒性。
[0228]
(3)速度较快;
[0229]
与现有技术相比,本技术提供的三维点云提取方法的处理速度具有显著提升,能够满足现场施工规范,具有较好的市场前景。
[0230]
(4)具备较强迁移性;
[0231]
本技术提供的三维点云提取方法可成功迁移至铁路装备检测领域,尤其在铁路罐车三维激光扫描点云数据中进行罐体提取具备较好的识别能力,可以剔除罐体内部的梯子、液位计、标靶等附件点云,准确提取罐壁,为后续计算罐体容积,铁路罐车智能检定检测奠定良好的基础。
[0232]
基于本技术实施例提供的三维点云提取方法,本技术实施例还提供了一种三维点云提取系统,其包括扫描模块、下采样模块、滤波模块和提取模块。
[0233]
其中,扫描模块,用于获取初始点云数据。
[0234]
下采样模块,用于根据里程范围在初始点云数据中切分出待计算的部分初始点云数据并对该部分初始点云数据进行下采样处理。
[0235]
滤波模块,基于csf算法对下采样后的部分初始点云数据进行地面滤波,以对隧道内特征较为连贯的地面进行识别和剔除。
[0236]
提取模块,用于根据滤波后的点云数据得到训练集和测试集,并利用训练集创建支持向量机,采用支持向量机提取隧道点云。
[0237]
需要说明的是:上述实施例提供的三维点云提取系统仅以上述各程序模块的划分进行举例说明,实际应用中,可以根据需要而将上述处理分配由不同的程序模块完成,即将三维点云提取系统的内部结构划分成不同的程序模块,以完成以上描述的全部或者部分处理。另外,上述实施例提供的三维点云提取系统与三维点云提取方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
[0238]
在示例性实施例中,本技术实施例还提供了一种存储介质,是计算机可读存储介质,例如,包括计算机程序的存储器,上述计算机程序可由处理器执行,以完成前述三维点云提取方法中的所述步骤。
[0239]
上述的本技术实施例可在各种硬件、软件编码或两者组合中进行实施。例如,本技术的实施例也可为在数据信号处理器中执行上述方法的程序代码。本技术也可涉及计算机处理器、数字信号处理器、微处理器或现场可编程门阵列执行的多种功能。可根据本技术配置上述处理器执行特定任务,其通过执行定义了本技术揭示的特定方法的机器可读软件代码或固件代码来完成。可将软件代码或固件代码发展为不同的程序语言与不同的格式或形式。也可为不同的目标平台编译软件代码。然而,根据本技术执行任务的软件代码与其他类型配置代码的不同代码样式、类型与语言不脱离本技术的精神与范围。
[0240]
以上所述仅为本技术示意性的具体实施方式,在不脱离本技术的构思和原则的前提下,任何本领域的技术人员所做出的等同变化与修改,均应属于本技术保护的范围。

技术特征:
1.一种三维点云提取方法,其特征在于,包括以下步骤:获取初始点云数据;根据里程范围在初始点云数据中切分出待计算的部分初始点云数据并对该部分初始点云数据进行下采样处理;基于csf算法对下采样后的部分初始点云数据进行地面滤波;对滤波后的点云数据构建三维空间特征和二维平面特征,并将三维空间特征和二维平面特征划分为训练集和测试集,利用训练集创建支持向量机,采用支持向量机提取隧道点云。2.根据权利要求1所述的三维点云提取方法,其特征在于,所述获取初始点云数据的方式为:使用全站式扫描仪对隧道进行扫描,直接获取绝对坐标点云数据;或者,使用地面式三维激光扫描仪与标靶结合的方式对隧道进行扫描,首先间接获取相对坐标点云数据,然后通过坐标配准转换为绝对坐标点云数据。3.根据权利要求1所述的三维点云提取方法,其特征在于,所述基于csf算法对下采样后的部分初始点云数据进行地面滤波的过程为:对下采样后的部分初始点云数据进行过滤,滤除离群点,倒置点云;初始布栅格化,根据实际点云密度确定栅格大小,初始位置位于点云纵坐标的最大值上;将点云与栅格粒子投影至同一水平面,计算当前粒子能抵达的最低位置;计算每个粒子在仅考虑重力时外力影响下移动的距离;计算每个粒子在内力影响下移动的距离;不断计算每个粒子在仅考虑重力时外力影响下移动的距离以及在内力影响下移动的距离,直到所有粒子的最大高度变化小于预设阈值或者迭代次数到达指定次数,计算停止;计算栅格化粒子与原始点云的距离;判断栅格化粒子与原始点云的距离是否小于预设的距离阈值,如果是,则判定当前点云为地面点云;否则,判定当前点云为非地面点云;判断是否遍历完所有点云,如果是,则结束;否则,返回重新计算栅格化粒子与原始点云的距离。4.根据权利要求3所述的三维点云提取方法,其特征在于,所述粒子在仅考虑重力时外力影响下移动的距离为:式中,x(t+δt)表示粒子在外力影响下移动的距离,x(t)表示粒子在t时刻的位置,x(t-δt)表示粒子在t-δt时刻的位置,δt表示时间间隔,g表示重力常数,m表示粒子质量,通常为1。5.根据权利要求3所述的三维点云提取方法,其特征在于,所述粒子在内力影响下移动的距离为:
式中,表示粒子的位移向量,当粒子为可移动粒子时,b=1;否则,b=0;表示当前粒子,表示的相邻粒子,表示垂直方向的归一化向量,6.根据权利要求3所述的三维点云提取方法,其特征在于,所述采用支持向量机提取隧道点云的过程为:构建隧道点云特征向量;根据构建的隧道点云特征向量,将滤波后的点云数据的三维空间特征和二维平面特征划分为训练集和测试集;利用训练集创建支持向量机,获取最优参数下的支持向量机模型;利用训练好的支持向量机模型,将测试集作为输入,对隧道点云进行二分类判别;如果输出结果为1,则判定当前输入为隧道点云,保留当前输入的测试集中的点云数据;如果输出结果为-1,则表示当前输入为非隧道点云,丢弃当前输入的测试集中的点云数据。7.根据权利要求6所述的三维点云提取方法,其特征在于,所述构建隧道点云特征向量的过程为:在点云数据上构造三维kd-树,以将离散的三维点云转换为有关联的拓扑结构;在kd-树中寻找每个点的邻近点云簇,点云簇的个数根据实际的点云密度进行确定;计算邻近点云簇内所有点云的协方差特征值,构建三维空间特征和二维平面特征。8.根据权利要求7所述的三维点云提取方法,其特征在于,所述三维空间特征包括发散性指数s
λ
、平面性指数p
λ
、线性指数l
λ
、各向同性o
λ
、各向异性a
λ
、特征熵e
λ
、特征和∑λ、曲率变化c
λ
、垂直度v、点云簇z轴极差r
z
、点云簇z轴方差和点云簇密度d;发散性指数s
λ
为:平面性指数p
λ
为:线性指数l
λ
为:各向同性o
λ
为:各向异性a
λ
为:特征熵e
λ
为:特征和∑λ为:∑λ=λ1+λ2+λ3;
曲率变化c
λ
为:垂直度v为:v=1-n
z
;点云簇z轴极差r
z
为:r
z
=max(z)-min(z);点云簇z轴方差为:点云簇密度d为:上述各式中,λ1,λ2,λ3表示协方差特征值,n
z
表示每个点法向量的z轴分量,k表示使用kd-树近邻搜索点云簇的k值,r表示搜索半径;二维平面特征包括隧道垂直横截面内每个点与轨顶之间的距离dis
(i

,j)
;式中,表示实际轨顶位置的坐标,(x
(i

,j)
,z
(i

,j)
)表示第i

个横截面下第j个点。9.根据权利要求7所述的三维点云提取方法,其特征在于,所述利用训练集创建支持向量机,获取最优参数下的支持向量机模型的过程为:定义分离超平面h(x),当h(x)=0时,表明样本点位于分离超平面上;当h(x)>0时,表明样本类别为y=1;当h(x)<0时,表明样本类别为y=-1;h(x)的表达式为:h(x)=w
t
x+b;式中,w表示参数向量,b表示平移向量;构建最优分离超平面的表达式为:式中,i5=1,2,

,m;对最优分离超平面的表达式进行转换并引入拉格朗日乘子,化解后最终优化目标函数为:式中,α表示向量,i5和j均表示序号;定义核函数k(x
i5
,x
j
)和惩罚系数c>0,最终优化目标函数为:
式中,j=1,2,

,m;利用smo算法求解出向量α,并获得对应的参数向量w:根据kkt条件找出所有的s个支持向量,计算每个支持向量的平均值b:确定最优超平面,分类决策函数为:f(x)=sign(w
t
x+b)。10.一种基于如权利要求1~9任一项所述的三维点云提取方法的提取系统,其特征在于,包括扫描模块、下采样模块、滤波模块和提取模块;所述扫描模块,用于获取初始点云数据;所述下采样模块,用于根据里程范围在初始点云数据中切分出待计算的部分初始点云数据并对该部分初始点云数据进行下采样处理;所述滤波模块,基于csf算法对下采样后的部分初始点云数据进行地面滤波,以对隧道内的地面进行识别和剔除;所述提取模块,用于根据滤波后的点云数据得到训练集和测试集,并利用训练集创建支持向量机,采用支持向量机提取隧道点云。

技术总结
本申请提供了一种三维点云提取方法及提取系统,提取方法包括以下步骤:获取初始点云数据;根据里程范围在初始点云数据中切分出待计算的部分初始点云数据并对该部分初始点云数据进行下采样处理;基于CSF算法对下采样后的部分初始点云数据进行地面滤波;对滤波后的点云数据构建三维空间特征和二维平面特征,并将三维空间特征和二维平面特征划分为训练集和测试集,利用训练集创建支持向量机,采用支持向量机提取隧道点云。本申请具有准确性高、鲁棒性好以及处理速度快等优势,还可应用在铁路装备检测领域,能够准确剔除铁路罐车罐体点云中梯子、液位计、标靶等附件点云,保留罐壁数据,提升后续容积计算准确性,为铁路罐车智能检定检测奠定基础。检定检测奠定基础。检定检测奠定基础。


技术研发人员:刘云锴 庞庆 张志鹏 邵学君 武慧杰 郭有为 李祉萱
受保护的技术使用者:中国铁道科学研究院集团有限公司
技术研发日:2023.05.16
技术公布日:2023/9/5
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐