融合聚类算法的钢轨轮廓点云自适应精简

2023-11-01 12:50张海山张正军宋宗莹柳红利姜大佐
测绘通报 2023年10期
关键词:欧式离群体素

张海山,张正军,宋宗莹,柳红利,姜大佐,曾 杉

(1. 中国神华能源股份有限公司,北京 100011; 2. 中科吉芯(秦皇岛)信息技术有限公司,河北 秦皇岛 066000; 3. 国能包神铁路集团有限责任公司,内蒙古 包头 014000;4. 中国科学院地理科学与资源研究所,北京 100101)

近年来我国高铁在各方面取得了巨大发展,铁路运输高速发展,列车高速行驶、货物的运载及列车高密度的运行,对铁路轨道造成了越来越严重的伤害[1],因此铁路的安全性要求也更加严格。为了确保列车安全运行,需要及时准确地对钢轨进行各项参数检测。

目前我国的轨道检测方式主要是手工检测,精度和效率都比较低,并且获取的检测参数单一[2],同时需要大量的人力成本。结构光三维成像技术是一种非接触式的轮廓点云获取技术[3],它能够完整地获取钢轨表面轮廓的点云数据,并且能对各种钢轨参数进行检测,满足了钢轨检测对于精度和效率的要求。结构光三维成像技术获取的点云被广泛应用于许多领域[4]。

三维结构光扫描获取点云数据时,由于实际天气条件的复杂性、扫描物体的特殊反射率及铁路轨道存在着各种轨道连接件[5],导致三维结构光扫描获取的原始钢轨点云数据有着大量的冗余点,还包含着各种噪声点及离群点,大量的噪点对于点云数据处理的精度和效率有着严重的影响。 因此从点云中去除噪声点并对其进行数据精简至关重要[6]。传统的点云滤波方法有直通滤波、统计滤波、体素滤波等。文献[7]提出了引入法向离群因子的自适应点云双边滤波平滑算法,相比传统的算法平滑效果更好。考虑目前各种滤波算法受人为因素影响大,文献[8]提出了一种改进自适应阈值滤波算法,能实现对复杂地形点云的滤波。文献[9]研究出了一种使用移动最小二乘法的全自动点云数据滤波算法应用于地面点云滤波。文献[10]通过使用空间距离、边界匹配、K-means算法、RGB颜色特征值等实现了对点云离群点的去除,但是对于与点云主体相连的噪声点无法去除。文献[11]提出一种融合自适应密度聚类和双边滤波的点云去噪方法,可以有效地对点云进行去噪平滑。针对点云滤波过程中曲面拟合不连续的问题,文献[12]提出了一种基于混合整体最小二乘的曲面拟合约束点云滤波算法。

结合上述内容,可以看出点云滤波算法一直在不断改进。因为点云数据和其噪声点的复杂性,不同类型的点云都需要不同的滤波算法。但是钢轨点云中噪声点大多分布密集且与钢轨点云距离相近,使用单一的传统点云滤波算法对其去噪效果不理想。针对钢轨点云中杂散点的复杂性,本文提出将传统滤波方法与欧式聚类融合的点云自适应精简算法,充分考虑钢轨点云噪点分布的复杂性,针对不同的噪点采用不同的方法去除,以期实现对弯曲钢轨点云的去噪精简。

1 点云数据滤波处理流程

针对原始钢轨点云中杂散点的复杂性,综合利用欧式聚类和传统点云滤波方式对其进行滤波处理,具体流程如图1所示。首先对原始点云数据进行统计滤波去除离群点,使之后的欧式聚类效果更好,由于原始钢轨点云密度过大,因此使用均匀体素下采样精简点云数据。然后使用欧式聚类将钢轨点云数据与噪声点云数据分类并去除噪声点云,经过欧式聚类后,钢轨点云上还有无法通过欧式聚类去除的轨底粘连噪点。最后使用直通滤波将其去除,经过一系列的滤波处理,可有效去除点云数据中的噪声点和离群点,并精简点云数据,为之后的点云数据处理奠定基础。

图1 点云数据处理流程

1.1 统计滤波去除离群点

统计滤波能够很好地去除点云数据中的离群点[13],但是对于点云数据中分布密集的噪声点无法去除,需要依靠其他的滤波方式。统计滤波的主要思路为:首先对原始钢轨点云数据中的所有点进行统计分析;然后随机选取点云数据中一个点,计算该点与K个临近点的平均距离; 最后根据均值和标准差确定一个距离阈值,选取的点计算得到的平均距离在预设距离阈值之外的点就是离群点,需要剔除。

1.2 均匀体素下采样精简点云

原始钢轨点云在进行统计滤波去除离群点后,点云数据量仍很大。结构光扫描获取的原始钢轨点云数据密度过大,将严重影响之后的点云滤波效率,因此需要对其进行精简。同时为了减少后续对点云数据处理的影响,精简后的点云应该与原始点云有一样的几何结构信息。

为了在保留原始点云几何信息的同时最大限度地精简点云数据,采用均匀体素下采样对点云数据进行处理[14]。方法是创建体素栅格将点云数据包围,体素与图像中的像素类似,是具有预定体积、位置和属性的抽象三维单元[15],使用AABB包围盒将点云数据划分成一个个体素栅格,对于每个体素栅格,其中的点将由体素内的重心点近似表示,最后所有体素栅格的重心点就是采样后的点云数据,点云数据精简完成。通过调整包围盒的大小可以调节每个体素栅格的大小,从而调节采样后的点云数据量。

1.3 基于欧式聚类的点云分割

欧式聚类是一种基于欧式距离度量的聚类算法,本质是将距离相近的点归为一类[16]。欧式聚类具体分割流程为:首先对于钢轨点云数据,选取一个点作为种子点,设定一个半径邻域r,对种子点进行半径r邻域搜索,将邻域内的点与种子点归于一个聚类簇Q,以邻域内的点为种子点继续搜索,当聚类簇Q中的点数不再增加时,Q聚类结束。然后在剩余的点云数据中选择一个新的点作为种子点,开始新一轮聚类过程,直至遍历完所有点。计算每个点云聚类簇的点数量,同时设置一个聚类点云的阈值区间,保存聚类簇点数量在这个区间中的聚类,不在区间中的作为噪点直接去除。经过统计滤波处理后,欧式聚类能够很好地将钢轨点云与噪声点云分割开来,并且经过均匀体素下采样的点云精简,欧式聚类的时间相比之前也大大减少。

1.4 直通滤波去除轨底粘连噪点

直通滤波根据需要在X、Y、Z3个方向上设置一个区间范围,去除掉范围外或内的点,保留自己需要的数据[17]。原理是在选定范围实行滤波,剔除指定区间内的点。经过前面的滤波处理已经去除掉了大部分的噪声点,但是获取的原始钢轨点云数据中存在着与轨底粘连的噪声点,上述的滤波方法无法去除这些噪声点,需要直通滤波来去除这些噪声点。由于只剩底部噪声点,只需在Z轴设定滤波范围,范围为Z轴方向上钢轨点云顶点到轨底这一段。从图2的轨道断面图可以看出,这段的距离为0.16 m,通过程序自动选取钢轨点云顶点坐标来确定滤波范围,从而实现点云的自适应直通滤波。

图2 实际轨道断面

2 试验结果及分析

为了验证本文提出的欧式聚类融合多种传统滤波方式的钢轨点云自适应滤波算法可实现对弯曲钢轨点云数据的滤波处理,选取一段弯曲钢轨点云数据,使用本文算法对其进行滤波处理,观察滤波结果,算法流程如图3所示。使用的弯曲钢轨点云数据如图4所示,点云数据有2 458 530个,点云噪点分布密集,且部分与钢轨点云粘连在一起,难以去除。

图3 算法流程

图4 弯曲钢轨点云数据

2.1 统计滤波对欧式聚类效果的影响

由图4可以看出这段钢轨点云数据有许多噪声点,并且分布非常密集,使用统计滤波无法去除,只有将点云与噪点分割为不同的聚类,才可去除噪声数据。直接使用欧式聚类,结果如图5所示。可以看出还有很多杂点没有去除,这是因为在部分离群点的影响下,杂点与钢轨主体点云被归为一类,并且点云数量过多,导致运行时间过长。

图5 原始点云直接欧式聚类

对原始钢轨点云数据进行统计滤波处理,结果如图6所示,点云整体没有变化。因为统计滤波只能去除离群点,无法去除分布密集的噪声点。使用统计滤波是为了去除离群点后欧式聚类的分割效果更好。

对经过统计滤波的点云数据进行欧式聚类,效果如图7所示。可以看出比直接进行欧式聚类效果好,但仍然还有部分噪声点未去除,这说明统计滤波的离群点去除效果不够理想,需要更改统计滤波算法参数。选取更多的临近点K计算平均距离,K=10的结果如图7所示,经过更改K的大小,发现K=80的统计滤波后欧式聚类效果最好,结果如图8所示。

图7 统计滤波后欧式聚类

图8 更改统计滤波参数后的欧式聚类

点云数据经过统计滤波的处理,欧式聚类效果更好。当统计滤波参数调整好后,大部分的噪声点与钢轨点云主体数据成功分割,只剩下了轨底的粘连点,无法通过欧式聚类进行分割。并且K=80时,虽然统计滤波的时间变长了,但是欧式聚类所需的时间比K=10时短,整体的滤波时间变短。具体的数据见表1。

表1 统计滤波对欧式聚类的影响

2.2 均匀体素下采样对欧式聚类速度的影响

虽然欧式聚类分割效果很好,但是算法运行时间长,因此需要对原始钢轨点云使用均匀体素下采样精简点云数据,提升欧式聚类速度。均匀体素下采样后结果如图9所示,点云数据的密度明显变小,此时点云数据还有212 097个点。

图9 均匀体素下采样结果

点云数据精简完成后,再对其进行欧式聚类,将钢轨点云和噪声点分成不同的类,从而去除噪声点,聚类结果如图10所示。与统计滤波后直接欧式聚类效果相似,但缩短了算法运行时间。不同过程具体的运行时间见表2。

表2 算法处理运行时间变化

图10 欧式聚类结果

2.3 直通滤波去噪结果

经过上述滤波处理,大多噪声点都已去除,剩余噪声点与轨底相连,无法通过欧式聚类去除,但是这些点都在钢轨点云数据的底部,可以使用Z轴范围的直通滤波去除。直通滤波需要的时间为1.257 s,去噪结果如图11所示。可以看出轨底的噪点均已去除,此时点云数据还剩154 446个点,点云精简比约为94%。最终整段点云滤波结果如图12所示,与原始点云相比,保留了钢轨点云数据,去除了噪声点云,较好地实现了对弯曲钢轨点云数据的滤波处理。

图12 点云滤波结果

3 结 论

本文提出了一种欧式聚类融合多种传统滤波方式的点云滤波方法。该方法实现了对弯曲钢轨点云中各种杂散点的完全去除。针对钢轨点云中噪声点和离群点分布的复杂性,首先通过统计滤波去除部分离群点,消除了这些离群点对后续欧式聚类的影响;然后使用均匀体素下采样精简点云数据,去除了点云数据中的冗余点。在此基础上,通过欧式聚类对点云数据进行分割去除了噪声点,再通过直通滤波去除与轨底粘连的噪声点,最终去除了点云中的杂散点。最后选取一段弯曲钢轨点云数据进行试验,通过对其滤波结果的观察分析,发现点云数据中的噪声点和离群点均被完全去除,证明了本文的滤波算法能够有效地去除弯曲钢轨点云数据中的杂散点。本文提出的滤波算法效果好、效率高,且整体算法实现了自适应性处理,去除了人为干预可能造成的误差,为之后的点云处理奠定了良好的基础。

猜你喜欢
欧式离群体素
基于多级细分的彩色模型表面体素化算法
瘦体素决定肥瘦
运用边界状态约束的表面体素加密细分算法
基于Creo软件的石材欧式壁炉三维造型设计
一类特殊混合跳扩散Black-Scholes模型的欧式回望期权定价
欧式城堡——木炭与色彩的碰撞
对我国小城镇建设过程中欧式古典风格建筑兴起的思考
基于体素格尺度不变特征变换的快速点云配准方法
离群数据挖掘在发现房产销售潜在客户中的应用
离群的小鸡