基于PCL库的点云滤波算法研究

来源 :卫星电视与宽带多媒体 | 被引量 : 0次 | 上传用户:Dark_tomato
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  【摘要】点云滤波处理作为点云数据处理的初始步骤,其去噪效果直接影响到后续点云分割、地物分类、三维模型重建等操作结果。不同滤波算法由于其原理不同,运行效率及适用性也存在很大差异,通过选取直通滤波、体素滤波、统计滤波、条件滤波、半径滤波这五种经典滤波算法,对其原理作详细描述。在PCL库的基础上,设置不同的阈值对每种算法进行了大量的实验及分析,验证参数设定对每种算法的运行效率,适用范围及滤波结果质量的影响。
  【关键词】点云数据;预处理;滤波算法;阈值;PCL库
  中图分类号:TN94                 文獻标识码:A               文章编号:1673-0348(2020)013-083-03
  Research on point cloud filtering algorithm based
  on PCL library
  Li Ruixue  Zou Jiwei
  (1.Shanghai Jieshi Information Technology Co., Ltd. ; 2. Jiangxi University of Science and Technology)
  Abstract As the initial step of point cloud data processing, and the denoising effect directly affects the quality of subsequent operation results such as segmentation and classification of point cloud, reconstruction of independent feature extraction 3d model, and other operation results. different filtering algorithms due to its principle, operation efficiency and applicability is also very big difference, By selecting five classical filtering algorithms, namely pass-through filtering, voxel filtering, filtering, conditional filtering and radius filtering, the principle of these algorithms is described in detail. Cloud Library, a lot of experiments and analyses were carried out for each algorithm by setting different thresholds to verify the influence of parameter setting on the operation efficiency, application scope and filter result quality of each algorithm.
  Key words Point cloud data; Pretreatment; Filtering algorithm; The threshold value; Point Cloud Library
  点云滤波处理作为点云处理的第一步,对后续数据的处理尤为重要。受设备、人员操作、天气、被测物体表面材质等多种因素影响,采集所获的点云数据不可避免的出现离群点、噪声点,则点云滤波是点云分割、地物分类、三维构建等后续处理的关键。
  一般点云数据去噪分为网格化噪声去除和无网格点云模型去噪两种方法,网格去噪典型的代表有Taubin使用拉普拉斯滤波算法对网格模型进行去噪,Fleishman和Jones等使用具有各向同性的双边滤波进行网格模型的去噪。无网格点云模型去噪的有赵乾、刘英等人运用小波滤波方法对实木板材的点云数据进行预处理,张芳菲等使用近邻搜索的算法对孤立噪声点进行了有效滤除。
  本文介绍直通滤波、体素滤波、统计滤波、条件滤波、半径滤波五种点云滤波方法,对相应技术理论和算法流程进行了描述,通过实验探究各类算法的不同参数设定下点云滤波去噪效果及运行效率。
  1. 点云滤波算法
  PCL点云库是跨平台的C++点云库,并且能够编译和运行在Linux,Windows等操作系统。点云滤波是对特定点云数据调用不同滤波器设置参数准确地将数据中噪声点移除,保证准确率的同时兼顾运行效率。
  1.1 直通滤波算法(Pass Through)
  通过设置阈值参数,指定参数范围之内的点通过,将参数范围之外的点过滤掉,实现对点云数据的基本过滤。步骤如下:
  第一,导入特定点云数据;
  第二,对Z方向设定不同点云阈值;
  第三,筛选离散点,保存去噪后的点云数据,选择最佳去噪阈值。
  1.2 体素化算法(Voxelization)
  体素化算法通过体素化网格进行下采样数据,减少数据点,有利于下一步的点云分割,地物分类等。将网格重心点替代体素网格内所有点,保留过滤后的点云数据。步骤如下:
  第一,将点云数据输入体素滤波器;
  第二,设定0.5*0.5、1.0*1.0、1.5*1.5、2.0*2.0多种不同规格的体素栅格阈值;   第三,重心点替代其他点,重采样点云数据;
  第四,保存体素栅格替代后的点云数据,比较不同规格体素栅格阈值的筛选效果,确定最佳去噪阈值。
  1.3 统计滤波算法(Statistical Outlier Removal)
  统计滤波算法统计每个点到它邻域点的平均距离,去除超出设定距离阈值范围的点。假设原始点云数据集X=(xi,i=1,2····,n),滤除后的点云数据集X’=(xi,i=1,2···,m),令K为其均值,N为其标准差,Si表示其到邻域中点到的平均距离,设定处于(K-std*N, K+ std*N)范围之外的点为离散点,从点云数据集中去除掉。步骤如下:
  第一,导入点云数据至统计滤波器;
  第二,设定不同邻域搜索点云阈值k,计算查询点到邻域点的平均距离;
  第三,设定标准差n的倍数,运行滤波器;
  第四,可视化分析不同阈值的筛选效果,确定最佳去噪阈值。
  1.4 条件滤波算法 (Conditional Removal)
  条件滤波算法可为多个方向指定阈值,达到点云去噪的效果。步骤如下:
  第一,为条件滤波器导入点云数据;
  第二,设定多个不同方向的条件阈值;
  第三,筛选离散点,保存去噪后的点云数据,确定最佳去噪阈值。
  1.5 半径滤波算法(Radius Outlier Removal)
  半径滤波算法原理是设定圆的半径,也可设定落在以某点为中心点的圆中点的数量。剔除不在圆内的点或剔除小于设定值数量的点,二者共同影响滤波结果。步骤如下:
  第一,輸入点云数据;
  第二,设定圆内点的数量阈值;
  第三,对查询点的搜索半径Radius设定不同邻域搜索阈值;
  第四,筛选离散点,可视化,观察比较不同阈值的筛选效果,确定最佳去噪阈值。
  2. 实验与分析
  本文实验数据是由RIEGL VZ-1000扫描获取的学校图书馆、行政楼及周边地物点云,如图1所示,共有566991个点,复杂的场景能有效检验滤波算法的鲁棒性。
  2.1 直通滤波
  本文主要对Z方向进行操作,通过设置100<Z<103、103<Z<115、103<Z<127,得到的滤波效果和统计结果如表1所示。
  通过表1可以看出,若Z值设置得过小,则会对地物进行拆分,当Z值设置合理时,将仅保留地面以上,建筑物以下的点,从而去除其它干扰点。阈值设定以及位于Z方向的点云个数决定了滤波效果,范围设置大,点云个数多则被去除的点云更多,而滤波时间受阈值的影响较小。
  2.2 体素滤波
  体素滤波算法设置体素网格,设置不同大小的体素栅格,网格设置得越大,过滤掉的点云越多,部分结果如表2所示。
  通过表2可以看出,当格网设置得越大时,点云越稀疏,运行时间越短,且体素滤波并不能真正的去除噪点,仅是在保留原始点形状的前提下,减少数据量。
  2.3 条件滤波
  条件滤波与直通滤波类似,不同点在于可以同时给多个方向指定阈值,移除无关点,部分结果如表3所示。
  通过表3可以得出,条件滤波耗时较短,在Z值设置在100-102时,将提取出地面点云,而当X大于0时,仅提取行政楼点云,而图书馆周边被滤掉,该算法所过滤掉的点数跟设置的阈值有关,不能对整体中的稀疏离散噪点进行去除。
  2.4 统计滤波
  统计滤波的作用主要是剔除离群点,本文设置四个不同的近邻搜索点个数k及标准差倍数n,部分结果如表4所示。
  从表4可以看出,原始数据中的许多离群点被移除,独立地物更加清晰。不同阈值移除的点云数据量不同,其运行时间差异较大,当标准差倍数相同时,去噪效果较为接近,但当k越大时,运行时间较长。
  2.5 半径滤波
  半径滤波可设定圆的半径阈值,以及落在该圆内的点个数的阈值,小于设定阈值则将该点移除。本文设置了4个不同的阈值,部分结果如表5所示。
  如表5得出,与滤波前作对比,图中的大多离散点被移除,建筑物及地物的轮廓也更加清晰。当滤波半径不变,设置的点数越大时,移除的噪点数也越多,运行的时间也将成倍增加,当设置的点数不变,滤波半径减少时,滤波时间则较接近,但去噪比例将明显提升。
  3. 结语
  本文分别对PCL中几种常用的滤波算法原理作详细描述,通过大量实验探究每种算法在设置不同的阈值后的滤波效果及运行效率,得出如下结论:
  首先,在对整体点云中的离群点滤波处理时,直通滤波与条件滤波滤波效果不佳,但对筛选指定方向范围内的点云,其执行效率较高,适用于数据量大的点云数据集。
  其次,统计滤波和半径滤波都能对离群点进行有效移除,二者的去噪效果较为接近,且设置阈值较为简单,但若点云数据量增大时,其运行时间都将成倍增加,因此可根据实际情况,对数据进行降采样(如体素滤波),来提升运行效率。
  参考文献:
  [1]田旭东,王艋.基于B样条小波分析的点云数据滤波处理技术[J].现代测绘,2019,42(03).
  [2]Taubin.G.A.Signal.Processing,Appoach,to,Fair,Surface,Design[C]//(SIGGRAPH95).New  York: ACM Press, 1995:351-358.
  [3]Fleishman S, Drori I, Cohen-Or D. Bilateral Mesh Denoising[J]. ACM Transactions on Graphics, 2003,22(3):950-953.
  [4]赵乾,刘英,杨雨图,胡忠康,周晓林.实木板材无损检测中三维点云数据的预处理[J].林业工程学报,2018,3(05):46-51.
  [5]张芳菲,梁玉斌,王佳.基于近邻搜索的激光点云数据孤立噪点滤波研究[J].测绘工程,2018,27(11):29-33.
其他文献
在电子战侦察接收机中,需要硬件解调器对通信信号实时解调信息。本文以AM、SSB、和DPSK调制信号为例,研究了上述几种调制信号适合于在FPGA中硬件解调的方法,给出了数学模型,硬件
【摘要】本文分析了地市级气象影视制作存在的问题,并提出了针对性的改善措施和应对处理,以期为气象事业的发展提供的帮助。  【关键词】地市级;气象影视  电视天气预报节目是气象科学与电视艺术的结合,是反映气象科学社会应用价值的重要渠道。目前,电视天气预报节目已成为气象公共服务的主要手段和窗口。随着广播电视数字化时代的到来,影视节目制作也不断面临着新的技术变革和发展难题。最近这些年,地市级的气象部门对气
简单叙述了ADAM数据采集模块的工作原理及其使用方法,并介绍了一种监控方案,即在工业监控现场放置高可靠性高抗干扰的数据采集模块,计算机放置在相对较好的环境里,数据采集模
本文回顾了作者课题研究、撰写专著、教材编写、课堂实践的完整过程,从母语高等教育的高度探讨了大学语文学科理论,提出大学语文教材编写必须有理论开路、实践检验的观点,全面总
【摘要】播音专业招生院校数量和招生规模一直在增长,而传统媒体的就业岗位数量却是有限的,且基本处于饱和状态。除却招生周期和就业周期存在的较大矛盾之外,学生专业技能教育与就业岗位需求不适应也是一大矛盾。作为播音主持教育工作者,解决专业技能和实践技能不协调是我们工作的重心,传统的播音主持培养模式培养出的“传声筒”式主持人已经不符合现有的岗位需求。所以定位准确的培养模式才能有效的解决就业问题,除要求字正腔
病虫害是导致枣树产量低、质量差的主要原因。所以,做好病虫害的防治工作,才能够使枣树优质高产。病虫害的防治应该采取预防为主,科学防控的防治措施,减少化学农药的使用,避
数学思想是数学的灵魂,是开启数学知识宝库的金钥匙,数学问题的解决以数学思想为指导,以数学方法为手段。
要提高初中语文课堂教学效率,就必须发挥学生的主体作用。有几种方法可供参考:先学后教,当堂训练;小组合作,争先发言;角色互换,取长补短;探究学习,分析讨论。只有坚持以人为
目的:探究小剂量血浆置换(PE)联合双重血浆分子吸附疗法(DPMAS)在妊娠期急性脂肪肝(AFLP)中的应用价值.方法:选取2016年1月至2019年6月我院接受治疗的AFLP患者60例,按随机数
目的:探讨CRRT(持续肾脏替代治疗)治疗PICU(儿科重症监护病房)重症肺炎链球菌脑膜炎的临床效果。方法:纳入2017年1月至2018年12月徐州医科大学附属徐州儿童医院PICU收治的21