1、 电视技术 第 46 卷第 12 期(总第 565 期)29PARTS&DESIGN器件与设计文献引用格式:郑一帆,郑茜颖,程树英.保持细节特征的点云去噪算法 J.电视技术,2022,46(12):29-34.ZHENG Y F,ZHENG Q Y,CHENG S Y.A denoising method for point cloud with detail feature-preservingJ.Video Engineering,2022,46(12):29-34.中图分类号:TP311.5 文献标识码:A DOI:10.16280/j.videoe.2022.12.008保持细节特征的
2、点云去噪算法郑一帆1,2,郑茜颖1,2,程树英1,2(1.福州大学 物理与信息工程学院,福建 福州 350108;2.微纳器件与太阳能电池研究所,福建 福州 350108)摘要:三维点云数据的采集过程受到仪器精度、人为扰动和复杂环境等因素影响,存在大量的噪点并且分布不均匀,造成基于点云数据的重建模型尖锐特征模糊。对此,提出一种保持细节特征的点云去噪算法以提高点云模型的精度。该算法首先通过八叉树建立点云的拓扑关系,加快点云的邻域搜索速度;其次,采用主成分分析法估算点云的法向量;最后,将双边滤波器与加权局部最优投影算法结合,实现对点云的去噪均匀化处理。实验结果表明,所提算法不仅能很好地去除点云数据
3、中的噪点,而且同时保留了点云重建模型的细节特征。关键词:保持特征;点云去噪;八叉树;主成分分析;加权局部最优投影A Denoising Method for Point Cloud with Detail Feature-PreservingZHENG Yifan1,2,ZHENG Qianying1,2,CHENG Shuying1,2(1.College of Physics and Information Engineering,Fuzhou University,Fuzhou 350108,China;2.Institute of Micro-Nano Devices and Sola
4、r Cells,Fuzhou 350108,China)Abstract:The acquisition process of 3D point cloud data is affected by instrument accuracy,human disturbance,complex environment and other factors.There are a large number of noise points and their distribution is not uniform,resulting in the fuzzy sharp features of the r
5、econstruction model based on point cloud data.Therefore,this paper proposes a point cloud denoising algorithm that preserves the detailed features to improve the accuracy of the point cloud model.Firstly,the algorithm established the topological relationship of point cloud by octree to speed up the
6、neighborhood search of point cloud.Secondly,the principal component analysis method is used to estimate the normal vector of the point cloud.Finally,the two-sided filter and weighted local optimal projection algorithm are combined to realize the denoising and homogenization of the point cloud.The de
7、viation analysis diagram proves that the algorithm can not only remove the noise in the point cloud data well,but also retain the detailed features of the point cloud reconstruction model.Keywords:feature-preserving;point cloud denoising;octree;principal component analysis;weighted local optimal pro
8、jection0 引 言近年来,得益于激光雷达、RGB-D 双目相机和 TOF(Time of Flight)相机的不断发展,点云在自动驾驶1、虚拟现实2、3D 打印3等领域广泛运用。但是受到仪器精度、人为操作扰动和复杂环境等因素影响,采集得到的点云数据往往会出现噪声点和离群点,并且存在数据冗余和不均匀等缺点。这些缺点会造成之后的重建过程耗费大量时间,重建模型出现轮廓不清晰和细节特征丢失,造成模型鲁棒性不足。因此,需要在三维重建前对点云数据进行去噪处理。国内外研究人员一直对各种点云去噪技术加以改进和完善,传统的点云去噪方法主要有基于统计学的方法、基于投影的方法以及基于过滤器的方法。早期点云去噪
9、方法以基于统计学方法为主,作者简介:郑一帆(1997),男,硕士,研究方向为计算机图形学。E-mail:。30电视技术 第 46 卷第 12 期(总第 565 期)PARTS&DESIGN器件与设计如 SCHALL 等4使用局部定义的核函数为含有噪声的点云定义全局的概率分布函数,然后求其函数最大值从而实现去噪。而后点云去噪方向逐步以基于投影和基于过滤器方法为主,如有基于双边过滤器5-6和基于邻域滤波器7的去噪算法。近年来,深度学习逐渐兴起,不少研究人员开发了基于深度学习的算法。YU 等8制定一个基于边缘感知的框架,在上采样的同时恢复点云坐标,得到坐标与边缘的距离,利用边缘感知损失函数实现点云去
10、噪。CHEN 等9提出一种能够推理点云拓扑关系的自动编码器网络结构,利用无监督学习得到原始点云。PISTILLI 等10的卷积神经网络通过点的高维特征表示之间的相似性动态构建邻域图来提升点云表面法线的质量,从而实现去噪。CATTAI 等11利用局部谐波角滤波器的研究成果,提出了视觉驱动点云去噪算法(Visually Driven Point Cloud Denoising Algorithm,VIPDA),通过对点云进行谐波角度分析,使点云顶点相关联从而剔除噪声点。CHEN等12受到几何统计的启发,定义一个旋转不变的高度图补丁,将非局部相似的补丁的高度图打包成一个(Height-Map Pat
11、ch,HMP)矩阵,然后利用一个低秩恢复模型过滤噪声。以上算法虽然能够在一定程度上去除点云噪声,但是尖锐特征区域容易出现模糊,造成之后重建模型失真。为了解决上述问题,本文提出一种旨在去除噪声点云的同时保持特征的点云去噪算法。该算法利用八叉树进行递归划分,得到点云之间的拓扑关系,同时加速点云的邻域搜索速度;然后在点云邻域的基础上利用主成分分析法(Principal Component Analysis,PCA)估算点云法向量,使用最小生成树解决点云法向不一致问题;最后依据双边滤波器能够保持特征的特点,将其与加权局部最优算法结合,从而实现点云去噪同时保持细节特征。1 本文方法1.1 基于八叉树的邻
12、域搜索一般情况下,三维扫描设备采集得到的原始点云数据只包含xyz空间坐标,并且点云之间散乱无序,不存在拓扑关系。本文使用八叉树来建立点云的拓扑结构,加速点云的邻域搜索。八叉树是一种描述三维空间的树状数据结构,其递归划分的过程是在开始邻域搜索时先假设一个搜索半径或者阈值,最开始的父节点代表一个标准正方体,一般以点云的最小包围盒大小作为标准正方体的体积,然后对父节点进行递归划分,又划分为 8 个相同大小的小正方体代表子节点。如果子节点的点云数量大于设定的一个阈值,则每个子节点继续向下划分为8 个小正方体,直到点云数量小于阈值则递归划分结束,其过程如图 1 所示。图 2 为斯坦福 Dragon 模型
13、建立八叉树的具体过程。该过程体现了八叉树进行邻域搜索时不需要遍历整个点云集的优点,只需要在部分空间中进行搜索,因此大大加快了点云邻域搜索速度,提高了算法运算效率。图 1 八叉树递归划分过程图 2 Dragon 模型划分过程1.2 PCA 估算点云法向量法向量是点云不可缺少的重要信息。点云法向量一般采用主成分分析法13(Principal Component Analysis,PCA)来估算。PCA 用于法向量估计时,只能得到大致的点云法向量,对于点云法向量方向是否一致无法进行确定。因此,首先进行法向量方向的判断。设两个相邻点的法矢向量为ni和nj,若ni与nj是平行的,则ninj=1;如果ni
14、nj0,则表示ni与nj之间法向量方向相同;如果ninj0,则表示ni和nj之间法向量方向相反,需要使用奇偶图或者最小生成树法(Minimal Spanning Tree,MST)实现法向一致性。本文使用最小生成树法实现法矢方向一致。首先构造点云的黎曼图,任意确定一个点的法向量,沿此点的法向量方向进行传播,然后根据点云法向量之间点积的值进行判断,如果点积值为负则将其法向翻转,重复遍历,直到所有点的法向量方向被调整为一致。1.3 改进的局部最优投影算法1.3.1 LOP 算法和 WLOP 算法为了解决点云噪声和分布不均的问题,LIPMAN14 电视技术 第 46 卷第 12 期(总第 565 期
15、)31PARTS&DESIGN器件与设计等基于 L1 中值问题提出了一种不受点云参数影响的去噪算法,即局部最优投影算法(Local Optimal Projection,LOP)。该算法的核心思想是将目标点云Q=qiiIR3投影到原始点云P=pjjJR3上,从而得到不含噪声的点云Q。具体算法如下。对原始点云P=pjjJR3,LOP 以任意点集 X(0)=xi(0)iIR3开始,将X(0)投影到P上,进行能量方程的优化:X(i+1)=G(X(i)(1)()()()12argmin,iXx i IG CEX P CEX C=+(2)()()1,ijiji Ij JEX P Cxpcp=(3)()(
16、)()2,iiiiiiIi IiEX Cxccc=(4)()()()22/431e,3rhrrr=(5)式中:E1(X,P,C)项中的(r)是快速递减的空间加权函数,作用是促使投影点尽可能逼近采样表面;E2(X,C)项中的(r)是递减的惩罚函数,目的是使投影点保持均匀分布;E2(X,C)项中的i的作用是平衡E1(X,P,C)和E2(X,C)两项函数。当i参数设置得较小时,目标点云Q可以很好地逼近原始点云P,但是点云均匀性较差,当i参数设置得较大,则E1(X,P,C)项作用被削弱,可以得到均匀分布的目标点云Q,但是无法逼近原始点云P,达不到去噪效果。由此可见,LOP 算法对初始点云P的采样点分布有很强的依赖性。因此,HUANG 等15提出加权局部最佳投影(Weighted LOP,WLOP)。在 LOP 基础上,WLOP 进行了两处修改:首先在E1(X,P,C)项加入了全局密度vj,在E2(X,C)项中加入全局密度wik,解决了 LOP 算法依赖于采样点导致的分布不均;其次,WLOP 算法将惩罚项函数改为(r)=-r,使函数可以收敛。WLOP 算法具体方程如下:()()()/kijijj