APP下载

利用双边滤波法进行点云去噪的试验与分析

2017-03-07马先明李永树谢嘉丽

测绘通报 2017年2期
关键词:离群栅格邻域

马先明,李永树,谢嘉丽

(西南交通大学,四川 成都 611756)

利用双边滤波法进行点云去噪的试验与分析

马先明,李永树,谢嘉丽

(西南交通大学,四川 成都 611756)

利用无人机影像生成点云数据时,会产生一些噪声点,这些噪声点对点云数据的分类提取等会带来不利影响。为了消除这些噪声点,利用栅格法去除浮在点云上方的稀疏点,并利用pcl库的StatisticalOutlierRemoval滤波器去除离群噪声点,以及利用双边滤波算法对小型的噪声点进行纠正。试验结果表明,本文方法既保留了目标地物的几何特征,又能够有效地去除影响目标地物识别的噪声。

无人机;点云;去噪;双边滤波

无人机航测遥感系统利用了遥感传感器技术、通信技术、GPS差分定位等技术,具备自动化、智能化、专题化及快速获取国土资源信息的能力。无人机影像数据采集技术发展迅速,已成为空间数据获取的一种重要技术手段[1-2]。尤其是对于城市近郊复杂地带或险要山区空间信息采集工作,无人机技术具有方式灵活、速度快、周期短、效率高及成本低等优点。

对于缺乏LiDar点云数据的地区,用无人机影像根据重叠部分提取点云数据是一种简单有效的方法。将该地区及周围有重叠部分的影像一同处理,就可以得到该地区的点云数据,然后,结合纹理信息进行分类、提取、精细建模[3]等工作。由于影像生成的点云数据存在一定的噪声,这些噪声点对后来的分类提取等工作会造成较大的干扰。这些噪声大致可分为3种,即偏离点云且浮在点云上方的稀疏点、离群噪声点、与真实点混合的小型噪声点。在传统的C均值算法中,引入模糊聚类权重因子降低类内距离和拉大类间距离,能够有效地增强离群点特征以降低识别难度,进而将识别出的噪声分类处理,并利用改进的C均值算法去除大尺度噪声[4]。正交整体最小二乘法是从离散点到平面的最短距离为基准,对参数进行解算,避免了由于计算困难而省略误差因子σd,可以达到去噪的效果[5]。通过改进K-means聚类算法来建立点云空间拓扑关系,然后对聚类后每一类的点云进行噪声点识别与去除[6]。多尺度的密度算法可以去除孤立噪声和小的簇状噪声,然后利用三角网约束检测是否正确[7]。另外平均曲率算法[8]等都能够较好地去除噪声。本文利用pcl点云库[9]StatisticalOutlierRemoval滤波器和基于双边滤波算法[10]相结合的方法,研究去除点云离群点噪声和小型噪声,并通过试验验证本文方法的有效性。

1 点云去噪方法

1.1 栅格法

针对偏离点云且浮在点云上方的稀疏点,可以将整个点云分成若干个栅格,然后统计栅格中的点云数并设置阈值,小于阈值的栅格,其栅格中的点将被删除。

1.2 StatisticalOutlierRemoval滤波

离群噪声点一般表现为距离主体点云较远、小而密集的块状点云。图像生成点云通常会产生密度不均匀的点云数据集,测量中的误差也会产生稀疏的离群点。本文将对每个点邻域进行一个统计分析,并删除那些不符合一定标准的点。

首先设点云模型中的测点集合Cloud1={P1,P2,…,Pn}Pi∈R,任一测点P∈Cloud1,则与测点P距离最近的k个点,称为P的k-邻域,建立P点的k-邻域之后,计算这些点到它的所有临近点的平均距离。假设得到的结果是一个高斯分布,其形状由均值和标准差决定,平均距离在标准范围(由全局距离平均值和方差定义)之外的点,可被定义为离群点,并从数据集中删除。

1.3 双边滤波算法

双边滤波算法是为每个采样点建立k-邻域并估算法矢,对该点邻域点拟合的平面作为视平面,建立一个双边滤波器,通过双边滤波器来进行噪声的处理,具体步骤如下。

1.3.1 建立k-邻域

利用kd树[11-13]的方法为空间散乱点云建立拓扑关系,设点云模型中的测点集合Cloud2={P1,P2,…,Pn}Pi∈R,任一测点P∈Cloud2,则与测点P距离最近的k个点,称为P的k-邻域,这里的k根据实际点云数据取得。

1.3.2 平面拟合

由1.3.1中点云模型中的测点集合Cloud2={P1,P2,…,Pn}Pi∈R,任一测点P∈Cloud2的k-邻域为k(p),通过最小二乘法[14-15]在邻域k(p)上拟合一个切平面,记作S(p)。

1.3.3 平面的法矢量估计

根据k-邻域点已经拟合的平面S(p)来计算该平面的单位法向量n,拟合的平面S(p)的单位法向量n就是所估计的法矢量。

1.3.4 各点坐标的改正

利用单位法矢量和双边滤波算子来计算最终坐标

P′=P+n×L

式中,P′为该点的最终坐标;n为对应的单位法矢量;L为双边滤波因子

2 去噪试验与分析

2.1 数据处理

在Pix4Dmapper软件里建立一个新项目,将目标区域的影像及其周围8张的影像导入此项目中,然后进行点云生成,导出为LAS格式和TXT格式的数据。

取建筑物的点云数据进行去噪试验,如图1所示。将数据导入程序进行去噪处理,算法在VS2010编译器下实现,语言为C++。

图1 试验区建筑点云图

2.1.1 用栅格法去除浮在点云上方的稀疏点

将原始数据中浮在点云上方的稀疏点设置阈值M为2,然后将栅格中点云数少于2的栅格中的点删除。

2.1.2 运用StatisticalOutlierRemoval滤波器去除离群噪声

试验区建筑点云共有158 737个点。试验区生成的原始点云经过StatisticalOutlierRemoval滤波器分别利用不同参数去除离群噪声后得出对比图,如图2所示。对每个点不同的临近点个数及标准偏差进行分析,这意味着如果一个点的距离超出平均距离σ标准差以上,则该点被标记为离群点,并将被移除。表1为不同参数消除点的个数。由图2可以看出当σ=2.0,k=20、σ=2.0,k=40、σ=3.0,k=30时仍然有噪声没有去除,当σ=1.0,k=30、σ=2.0,k=10时,去除了噪声的同时把一部分墙体的点也删除了。当σ=2.0,k=30时,既消除了噪声点,也很好地保留了建筑物的点。综上可以得出当σ=2.0,k=30时,去噪的效果最好。

图2 不同参数去噪后对比图

σ(标准偏差),k(邻域点个数)去除点个数σ=1.0,k=304685σ=2.0,k=303355σ=3.0,k=302951σ=2.0,k=104184σ=2.0,k=202247σ=2.0,k=405549

2.1.3 用双边滤波对试验区进行平滑处理

经过StatisticalOutlierRemoval滤波器去除离群噪声后的点云作为双边滤波去噪的原始点云,然后通过双边滤波器进行处理。经过双边滤波处理前后的点云得出对比图及左侧部分墙面点云法线的变化图,如图3所示,经过双边滤波器处理后,点云的小型噪声被纠正,法矢量变得更加整齐。

图3 经过双边滤波处理的前后对比图

2.2 试验结果分析

利用本文以上提到的去噪方法,经过StatisticalOutlierRemoval滤波器去除离群噪声后的点云图2中,参数取σ=2.0,k=30时效果最好,既去除了噪声,又保留了建筑物的点。栅格法去除浮在点云上方的稀疏点,如果点云数据中噪声点极其稀少可以用栅格法去除。但是如果是比较多的离群点,则可用StatisticalOutlierRemoval滤波方法将浮在点云上方的稀疏点和离群噪声点一同去除。经过双边滤波算法处理的点云数据,可以通过点云的法线来观察其前后的变化。

本试验原始点云共158 737个点,经过去噪后还有155 382个点。StatisticalOutlierRemoval滤波程序运行时间为40 s,共去除了3355个点,双边滤波算法程序时间复杂度为O(n2)。图3(c)为算法处理后部分墙面云数据的法线变化。由视线方向对点云的法线方向进行观察,经过双边滤波处理之后,消除了小型噪声的干扰,k-邻域内法线的方向变化很小,变得更加整齐,使得部分法线沿视线方向长度变短,达到了纠正法矢方向的目的。经过去噪后的数据可以进行下一步的点云处理工作。但也存在不足,如果建筑物墙体点云量特别稀疏,会导致其与噪声的空间分布特征很接近而被误删。双边滤波算法中,虽然法线的变化对双边滤波的算法结果可以验证,但并不是特别明显,应该进一步研究以使试验结果更加明显。

3 结束语

随着无人机遥感技术的发展与计算机运算速度和处理能力的提高,对点云数据的利用领域必将越来越广泛,对点云去噪结果的质量要求也越来越高。本文对建筑物点云数据的孤立点和离群点噪声进行了去噪处理,并对建筑物表面进行了平滑处理,去除噪声效果较明显,同时保持了建筑物的基本几何特征,但是仍然存在误删点等问题,这将是进一步的研究重点。

[1] 金伟,葛宏立,杜华强,等. 无人机遥感发展与应用概况[J]. 遥感信息,2009(1):88-92.

[2] 李德仁,李明. 无人机遥感系统的研究进展与应用前景[J]. 武汉大学学报(信息科学版),2014(5):505-513.

[3] MOORFIELD B,HAEUSLER R,KLETTE R. Bilateral Filtering of 3D Point Clouds for Refined 3D Roadside Reconstructions[J]. Lecture Notes in Computer Science,2015(9):394-402.

[4] 宋阳,李昌华,马宗方,等. 应用于三维点云数据去噪的改进C均值算法[J]. 计算机工程与应用,2015(12):1-4.

[5] 叶珉吕,花向红,陈西江,等. 基于正交整体最小二乘平面拟合的点云数据去噪方法研究[J]. 测绘通报,2013(11):37-39.

[6] 王勇,唐靖,饶勤菲,等. 一种新的散乱点云快速去噪算法[J]. 计算机应用与软件,2015(7):74-78.

[7] 朱俊锋,胡翔云,张祖勋,等. 多尺度点云噪声检测的密度分析法[J]. 测绘学报,2015,44(3):282-291.

[8] NGUYEN TM,WU QMJ. Fast and Robust Spatially Constrained Gaussian Mixture Model for Image Segmentation [J]. Circuits and Systems for Video Technology,IEEE Transactions on,2013,23(4):621-635.

[9] 朱德海. 点云库PCL学习教程[M].北京:北京航空航天大学出版社,2012 :189-191.

[10] 杜小燕,姜晓峰,郝传刚,等. 点云模型的双边滤波去噪算法[J]. 计算机应用与软件,2010(7):245-246.

[11] 刘艳丰. 基于kd-tree的点云数据空间管理理论与方法[D].长沙:中南大学,2009.

[12] 杨建思,刘华,林鹏. 基于KD树的点云数据自适应屏幕精度高效显示方法[J]. 测绘通报,2014(7):18-22.

[13] 陈茂霖,万幼川,田思忆,等. 一种基于线性KD树的点云数据组织方法[J]. 测绘通报,2016(1):23-27.

[15] 田垅,刘宗田. 最小二乘法分段直线拟合[J]. 计算机科学,2012(S1):482-484.

Experiment and Analysis of Point Cloud Denoising Using Bilateral Filtering Method

MA Xianming,LI Yongshu,XIE Jiali

(Southwest Jiaotong University,Chengdu 611756,China)

In this paper, we extracted point cloud data from image of UAV with overlapping regions. There are some noise points while extracting the data. These noise points will have a great impact on the image classification and other operations. Therefore, we need to remove the noise points. A grid method is used to remove the sparse points above the point cloud. StatisticalOutlierRemoval filter of PCL Library is used to remove outliers noise. A bilateral filter is used to deal with small noise. Through experiments, we can not only retain the characteristics, but also remove the noise points.

UAV;point cloud;denoising;bilateral filter

马先明,李永树,谢嘉丽.利用双边滤波法进行点云去噪的试验与分析[J].测绘通报,2017(2):87-89.

10.13474/j.cnki.11-2246.2017.0055.

2016-05-12;

2016-09-26

十二五国家科技支撑计划项目(2014BAL01B00)

马先明(1990—),男,硕士,主要研究方向为点云数据预处理。E-mail:289012365@qq.com 通信作者: 谢嘉丽。E-mail:254782451@qq.com

P208

A

0494-0911(2017)02-0087-03

猜你喜欢

离群栅格邻域
一种基于邻域粒度熵的离群点检测算法
基于混合变邻域的自动化滴灌轮灌分组算法
基于邻域栅格筛选的点云边缘点提取方法*
基于A*算法在蜂巢栅格地图中的路径规划研究
基于自然邻居邻域图的无参数离群检测算法
尖锐特征曲面点云模型各向异性邻域搜索
一种相似度剪枝的离群点检测算法
基于细节点邻域信息的可撤销指纹模板生成算法
候鸟
不同剖面形状的栅格壁对栅格翼气动特性的影响