杨彤 薛河儒
【摘 要】利用手持式三维激光扫描仪对被测物体进行数据采集时,往往会产生较多的体外噪声飞点。将严重影响后期点云的处理和曲面重建的精度,所以必须要及时有效的去除这些噪声。通过观察发现,这些噪声具有无规律且悬浮在主体点云外呈现孤立,稀疏状态的特点,而基于密度滤波的方法适用于将此类噪声进行去除。该方法先对点云数据进行密度聚类分析,再根据密度聚类结果实现被测目标与噪声点的分离。实验结果表明,该算法能准确的识别并剔除体外噪声数据。
【关键词】体外噪声数据;密度滤波;密度聚类分析;
引言
三维激光扫描技术是利用仪器对被测目标进行扫描,再通过对采集到的数据进行处理,从而复建出被测物体的三维数据模型与之前的单点采集方式相比,三维激光扫描具有速度更快,精度更高,零接触,便于操作等优点,使其在文物保护,人工仿造,复杂零件建模等诸多领域得到了越来越广泛的应用。
在采集数据时由于受到人为原因(如扫描人员的错误操作),非人为原因(如扫描仪本身的功能缺陷),内部的(如扫描对象表面的光滑粗糙度不一),外部的(如扫描环境的不稳定)等各种因素的影响,会导致获取的点云数据中产生大量的噪声点。而噪声点的存在将会对点云数据的后续处理造成极大的影响,因此,必须对采集到的点云数据进行去噪。通过观察实验采集的数据的成像特点,发现采集到的目标点云数据与被测物体表面成像一致,而噪声点偏离实测数据较远,且悬浮在主体点云外呈现孤立,稀疏状态,所以本文采用基于密度聚类的方法,实现目标与噪声的快速分离。
1 基于密度的聚类算法
聚类是指在没有任先前何处理经验的情况下,根据不同数据对象的特征,分成不同的类或簇。并且聚类算法可以实现同一类内的相似性较大,不同类间的相似性较小。
基于密度聚类算法将类定义为密度相连的点的最大集合,能够发现任意大小的类,对数据集中的异常点不敏感,克服了基于距离判别只能发现“类圆形”聚类的缺点其中比较有代表性的聚类算法是DBSCAN(Density-Based Spatial Clustering of Application with Noise)算法。
DBSCAN算法的聚类结果不会有偏倚。但是该算法对两个初始值的设置要求较高,在选取合适的数值时,要进行多次的尝试和联合比较,选取最优的参数。
2 对采集的数据进行密度聚类
聚类滤波基本参数设置:
1)根据点云数据,计算点云间的平均距离。
2)设定最小点云距离为平均间隔的2倍,大于此距离,则认为是噪声。
3)根据统计结果选择初始最小节点数Minpts。
密度聚类的算法步骤如下(如图1所示):
Step1 给定最小点云距离e和最小节点数Minpts,并对信号,噪声点都赋初始值为0;
Step2所有数据循环计算;
Step3从数据集中取出一点p,判断该点是否已经归类(噪声或信号);
Step4如果没有归类,暂时认为该点是信号,相应信号值置“1”;
Step5查找该点的邻域点(小于平均间隔的2倍的点),Neighbors;
Step6如果点数小于最小节点数,则认为是噪声,相应噪声值置“1”;
Step7否则确认该点是信号,信号类编码加1;
Step8扩展邻域点,将彼此之间很近的点,都归入信号类;
过程是:
1)对Neighbors中的数据循环;
2)取出Neighbors中的1个点;
3)判断该点是否已经归类(噪声或信号);
4)如果没有归类,暂时认为该点是信号,相应信号位置“1”;
5)查找该点的邻域点(小于平均间隔的两倍的点),Neighbor2;
6)如果点数大于节点数,则确认该点是信号,将Neighbor2合并到Neighbors中;
7)判断该点是否已经有信号类(组),若没有,则该点编入当前组;
8)邻域点编号加1,k=k+1;
9)判断邻域点编号是否大于邻域总点数;
10)如果大于,则说明没有新的邻域点归入此类,该类的信号已经找完,则跳出循环;
11)否则循环至1);
Step9否则循环至2,直至循环取完所有的点;
Step10分离目标,聚类完成。
3 实验结果与分析
本实验利用Handy Scan3D手持式三维激光扫描仪对待测物体鼢鼠头颅进行数据采集,在Matlab R2019b编程环境下完成数据的显示和去噪代码的编写。
将利用手持激光扫描仪采集到的鼢鼠头颅的点云数据导入MATLAB中,所显示的结果如图2所示,可以清楚地看到本张鼢鼠头颅三维图像中,有很多体外飞点噪声点;观察体外飞点噪声的分布情况,我们选取密度聚类滤波对噪声进行剔除。剔除噪声后得到的点云数据如图3所示,发现采集到的体外噪声点已经全部去除。
4 结语
本文根据实验采集到的三维点云数据的成像特点以及阅读了大量的相关文献,最终选择了密度聚类算法对采集到的点云数据进行去噪。此算法在保持模型特征的前提下有效去除三维点云数据中的噪声,为后期三维点云特征提取及重建质量奠定了基础。但本文中的应用还仅限于小范围,表面连续的物体点云;对初始参数的选取和联合调参时,耗时较长。下一步的工作需优化代码,将此算法应用的范围更广泛,进一步提高算法的效率。
参考文献:
[1]程效军,贾东峰,程小龍,等.海量点云数据处理理论与技术[M].上海:同济大学出版社,2004
[2]鲁冬冬,邹进贵.三维激光点云的降噪算法对比研究[J].测绘通报,2019(S2):102-105.
[3]彭永鹏,王振,崔利富,张庆高,范伟.手持式三维激光扫描仪扫描方法优化[J].低温建筑技术,2016,38(02):1-4.
[4]赵扬.三维点云混合去噪算法研究[J].信息通信,2019(02):1-4.
[5]唐靖.三维重建过程中的点云数据处理技术研究[D].重庆理工大学,2015
[6]张巧英,陈浩,朱爽.密度聚类算法在连续分布点云去噪中的应用[J].地理空间信息,2011,9(06):101-104+2+1.
[7]张秀玲.数据挖掘技术在电信客户欺诈分析中的应用[D].中国石油大学,2007.
[8]毛国君,段立娟,王实,等.数据挖掘原理与算法[M].北京:清华大学出版社,2005
作者简介:
杨彤(1995.8—),女,汉族,籍贯:天津人,内蒙古农业大学计算机与信息工程学院,18级在读研究生,硕士学位,专业:计算机应用技术,研究方向:模式识别与智能信息处理
(作者单位:内蒙古农业大学计算机与信息工程学院)