基于邻域表面形变信息加权的点云配准 下载: 717次
1 引言
随着三维扫描与成像技术的飞速发展,三维点云配准技术已被广泛应用于三维场景重建、逆向工程、虚拟现实和文物保护等领域[1]。点云配准作为三维重建的关键技术之一,目的是找到一个三维刚体变换,使得在不同视角下的同一物体的位姿能够通过旋转和平移等操作快速、准确地匹配。
点云配准技术中应用最为广泛的是由Besl等[2]提出的迭代最近点(ICP)算法,该算法逐点计算点对的最小欧氏距离,计算简便、直观且配准具有较好的精度,但算法的运行速度和收敛性很大程度上取决于点云的初始位姿,配准结果易陷入局部最优,故常作为二次配准使用[3]。为了弥补ICP算法的缺陷,近年来,国内外研究学者提出了众多方法,其中常见的改进方式是基于特征来确定点与点的对应关系。三维空间中,点云的特征有很多表现形式,包括法向量[4]、曲率[5]和欧氏距离等一维特征,也包含形状特征函数集合(ESF)[6]、方向直方图(SHOT)[7]和快速点特征直方图(FPFH)[8]等多维特征。
点云配准前,计算所有点的特征会严重降低点云整体的配准效率,基于特征点的配准方式可避免这种情况。如曾繁轩等[9]计算各点的大、小主曲率,并判断两者中任意一个是否为其主方向上的极值以此提取曲率极值特征点,该方法对于棱角分明的点云具有较好的配准效果,但抗噪性能较差;张哲等[10]利用法向量分布特征模型将夹角均值作为判断依据,加强了点云的特征描述能力并解决了密集点云的配准问题,但其仅考虑法向量特征,使得平滑点云的配准效果不佳;He等[11]结合曲率、法向量角度和点云密度等参数构建特征向量,提高了ICP算法的配准效率,但最近点匹配的正确率较低,导致最终配准结果不理想;Elbaz等[12]设计了一种关键点描述符,依据点云的几何信息实现旋转平移变换,并使用基于深度神经网络的自动编码器对局部3D几何特征进行编码,配准结果准确但特征形式单一,导致深度神经网络的计算量较大;Jauer等[13]假设点云是由粒子组成的刚体,基于力学和热力学原理将粒子间的相互作用力作为特征,该配准框架紧凑且健壮但仅适用于稠密点云。
本文提出一种基于邻域表面形变信息加权的点云配准方法。先提出以邻近点数量作为约束条件,结合高斯加权方式提高内部形态描述子(ISS)特征点的提取效率,得到增强内部形态描述子(EISS)特征点;为了避免单一特征造成特征信息缺失,考虑EISS特征点邻域的表面变化,得到点云的增强内部形态变化描述子(EISCS)特征点;再进行FPFH特征描述,利用双重约束获取正确的点对并将其作为单位四元数法的初始值;最后在精确配准阶段,采用双向k维树ICP(DTICP)算法来实现配准。所提方法能够在噪声环境下有效地完成缺失点云配准,并具有更好的鲁棒性和更高的配准精度。
2 基本原理
2.1 EISCS特征点提取算法
传统的ISS特征点提取算法能够依据邻域表面形状提取点云模型的边缘点,但冗余的邻近点数量往往会造成ISS特征信息缺失,邻域内的远点对采样点的影响会导致噪声点数量增多。为此,提出以邻近点数量作为约束条件改进点邻域选取方式,并引入加权方法抑制噪声以提高近点对采样点的影响,通过以上两次改进提高ISS特征点的提取效率。
2.1.1 邻近点数量约束条件
以各点间的疏密程度定义邻近点数量约束条件:将三维点云P中第i个点pi视为圆心,R为预置半径的r最近邻域包含ki个与pi最近欧氏距离的点,其中ki为pi的最近点数量。设需要邻近点的数量K为8,若ki>K,则pi采用k最近邻域搜索方式查询邻近点并更新ki,即ki=K,如
图 1. pi邻域中不同邻近点数量。(a)邻近点数量为8;(b)邻近点数量为7
Fig. 1. Number of different closest points in pi neighborhood. (a) Number of closest points is 8; (b) number of closest points is 7
2.1.2 高斯加权方式
对于pi及邻域,计算pi与其各个邻近点pij间距离的权值wij,j=1,…,ki。传统ISS特征点提取算法的权重为欧氏距离的倒数,即wij=1/|pi-pij|,但其倒数形式使得最近点权重值很大,距离稍远的点的权重值迅速衰减[14],而引入高斯函数能很好地克服倒数形式的弊端。权重值随着距离增加逐渐减小且不会衰减至0,表达式为
式中:dij为pi与pij间的欧氏距离;μd和σd分别为点pi到其各个邻近点距离的平均值和标准差。这种加权方式重视dij值小于平均值的邻近点对采样点的影响,dij值大于μd的邻近点根据dij值计算不同权值,距离越远影响程度越小。对pi的邻域作协方差分析[15],得到pi与各个邻近点pij之间的协方差矩阵VS。计算协方差矩阵Vs的特征值{
的点视为EISS特征点。式中:ε1和ε2为EISS特征阈值,主要作用是剔除易导致坐标轴模糊的局部对称点[15],若阈值过大则不能起到筛选特征点的作用,阈值过小则会造成特征点缺失。经多次实验发现ε1=0.8和ε2=0.4,模型可取得较好的特征提取效果。
2.1.3 EISCS特征点的提取方法
由于EISS特征点的数量冗余,单一形式的特征描述点云形状的能力有限,为此提出在提取EISS特征点时考虑邻域表面的法向量特征,从而获得EISCS特征点。点邻域中,法向量间的夹角变化是衡量邻域表面弯曲和平缓的度量之一。将向量内积的计算方式应用于评价pi是否为法向量特征点,先采用主成分分析(PCA)算法对EISS特征点和其邻近点进行协方差分析[10],得到协方差矩阵Ce,并计算Ce的特征值和特征向量。最小特征值对应的特征向量近似表示为该点的法向量ni。定义
式中:nij为第j个邻近点的法向量;τ的值域为(0,1),τ值越小说明邻域内部变化越剧烈;
2.2 对应关系估计及筛选
2.2.1 获取初始匹配点对
较高的初始匹配正确率是得到最佳初始配准结果的前提。考虑到低维特征的识别率低,特征信息表述不清等问题,采用FPFH描述EISCS特征点并生成33维特征向量。为了提高初始匹配点对的正确率,提出双重约束,即
1) 计算特征向量间的欧氏距离d,表达式为
式中:
如果仅考虑将d的最小值作为初始匹配点对的判断依据,易发生多对一情况,无法避免错误匹配点对的出现。因此引入余弦相似度概念,对初始匹配点对作进一步筛选。
2) 计算特征向量间的余弦相似度ρ,表达式为
余弦相似度是采用空间中两个向量夹角的余弦值度量两者之间的差异。ρ值越接近于1,表明两个向量越相似。对于两组点云的任意点对,若ρ值最大、d值最小,则将
2.2.2 获取正确匹配点对
采用点对间欧氏距离约束[16]对Cm内点对进行检验,若初始配准结果良好,则第i对匹配点(
式中:(
选取点对间欧氏距离阈值ε3=0.02,点对间欧氏距离约束可表示为
计算Cm中与(
式中:Nm为初始匹配点对数量。获取精确匹配点对的目的是得到较好的初始配准位姿,所以初始配准误差最小时,对应的点对数量阈值就是β的最佳取值。
2.3 点云配准算法
对于两组点云P和Q,通过双重约束获取各自精确的匹配点对集,采用单位四元数法[17]实现初始配准。初始配准后,两组点云可获得较好的初始位姿,但配准精度较差。为了得到良好的配准结果,在初始配准结果的基础上需进行精细配准。目前最常用到的精细配准算法为ICP算法,由于ICP算法在搜索最近点对时易出现多对一情况。为此,在k维树提高最近点搜索效率的基础上构建双向k维树,具体实现步骤如下。
1) 分别构建P和Q点云的k维树。
2) 在Q内搜索pi的最近点qi。
3) 若在P内搜索qi的最近点为pi,则说明pi和qi为一对具有一一对应关系的最近点。
4) 若在P内搜索qi的最近点不为pi,则继续寻找下一点qi+1在Q内的最近点。
5) 遍历点云P内各点。
双向k维树的优势在于能够确定最近点的最佳对应关系,虽搜索时间是k维树的2倍,但一一对应的最近点对使得迭代时间得到大幅度缩减,因此构建双向k维树的搜索方式特别适用于数据量大的点云模型。配准算法的具体流程如
图 2. 所提配准算法的具体流程
Fig. 2. Schematic of specific process of proposed registration algorithm
3 配准实例与分析
3.1 阈值选取实验
以斯坦福大学的点云数据库中Bunny模型和Dragon模型作为实验对象,为了排除阈值对配准结果的影响,在精确配准实验开始前需对α和β值的选取进行大量实验。由于τ值是确定EISS特征点是否为EISCS特征点的关键,匹配点对的正确率是提高精确配准效率的前提,因此α和β值的选取尤为重要。Bunny模型和Dragon模型中α取值范围分别为0.95~0.99、0.93~0.97,β取值范围为0.1~0.9。阈值对初始配准误差的影响曲线如
从
图 3. 阈值对初始配准结果的影响曲线。(a) Bunny模型;(b) Dragon模型
Fig. 3. Curves of threshold effect on initial registration results. (a) Bunny model; (b) Dragon model
3.2 不同噪声环境下无数据丢失的精确配准
三维扫描过程中可能会出现噪声干扰、数据丢失和遮挡等情况[18],为了分析所提方法(EISCS-DTICP)在不同噪声环境下的抗噪声性能,实验以Bunny模型作为实验对象,并采用配准后的方均根误差(RMSE)作为配准误差ξ的衡量指标[19],ξ的表达式为
式中:N为最近点对的数量;(
将所提方法与引入k维树改进的迭代最近点(TCIP)算法、采用法向量(NV)特征点实现配准的TICP方法[10]、采用ISS特征点实现配准的TICP方法[20]以及采用多分辨率(MR)特征点[21]实现配准的TICP方法进行对比,其中TICP算法是MATLAB R2018a提供的ICP算法。
从
图 4. Bunny模型的配准效果。(a) TICP;(b) NV-TICP;(c) ISS-TICP;(d) MR-TICP;(e) EISCS-DTICP
Fig. 4. Registration results of Bunny model. (a) TICP; (b) NV-TICP; (c) ISS-TICP; (d) MR-TICP; (e) EISCS-DTICP
3.3 不同数据丢失情况下有噪声干扰的精确配准
在数据随机丢失的情况下,两组点云中点的排列顺序发生改变,为了便于对比4种算法的配准性能,引入另一种配准误差的评价方法[18],即
式中:m为丢失的点数量;N-m为重叠点的数量。当m=0时,(10)式与(9)式相等。
表 1. Bunny模型在不同噪声情况下的精确配准结果
Table 1. Accurate registration results of Bunny model under different noise conditions
|
在40 dB的高斯白噪声环境下,对Dragon模型分别进行10%,20%,30%的数据随机丢失处理。
从
图 5. Dragon模型的配准效果。(a) TICP;(b) NV-TICP;(c) ISS-TICP;(d) MR-TICP;(e) EISCS-DTICP
Fig. 5. Registration results of Dragon model. (a) TICP; (b) NV-TICP; (c) ISS-TICP; (d) MR-TICP; (e) EISCS-DTICP
表 2. Dragon模型在不同数据丢失情况下的精确配准结果
Table 2. Accurate registration results of Dragon model under different data loss situations
|
3.4 实际物体的精确配准
为了讨论配准算法在实际应用中的效果,以常州大学Creaform Handy SCAN 700高精度工业级手持式三维激光扫描仪获得的沐浴露瓶(Bottle)点云[18]作为实验样本。为了模拟点云在实际情况下的配准过程,实验选择在40 dB的高斯白噪声、数据丢失程度为5%的非理想环境下验证所提算法的配准效果。
图 6. Bottle模型的配准效果。(a) TICP;(b) NV-TICP;(c) ISS-TICP;(d) MR-TICP;(e) EISCS-DTICP
Fig. 6. Registration results of Bottle model. (a) TICP; (b) NV-TICP; (c) ISS-TICP; (d) MR-TICP; (e) EISCS-DTICP
表 3. Bottle模型在不同环境下的精确配准效果
Table 3. Accurate registration results of Bottle model under different environments
|
观察
4 结论
为了解决特征形式单一导致ICP算法鲁棒性差、配准精度低等问题,提出一种基于邻域形状变化信息加权的点云配准方法。从实际物体的配准结果来看,所提方法的配准精度比TICP算法提高了99.8%,并且更适用于特征复杂点云的配准。从配准结果来看,较采用单一特征进行配准的NV-TICP方法、ISS-TICP方法及MR-TICP方法,在非理想情况下所提方法具有更好的鲁棒性和更高的配准精度。
[1] 伍龙华, 黄惠. 点云驱动的计算机图形学综述[J]. 计算机辅助设计与图形学学报, 2015, 27(8): 1341-1353.
Wu L H, Huang H. Survey on points-driven computer graphics[J]. Journal of Computer-Aided Design & Computer Graphics, 2015, 27(8): 1341-1353.
[2] Besl P J. McKay N D. A method for registration of 3-D shapes[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 1992, 14(2): 239-256.
[3] LiuB, Gao XH, Liu HD, et al. A fast weighted registration method of 3D point cloud based on curvature feature[C]∥Proceedings of the 3rd International Conference on Multimedia and Image Processing-ICMIP 2018, March 16-18, 2018, Guiyang, China. New York: ACM, 2018: 83- 87.
[4] 张彬, 熊传兵. 基于体素下采样和关键点提取的点云自动配准[J]. 激光与光电子学进展, 2020, 57(4): 041008.
[5] 马忠玲, 周明全, 耿国华, 等. 一种基于曲率的点云自动配准算法[J]. 计算机应用研究, 2015, 32(6): 1878-1880, 1887.
Ma Z L, Zhou M Q, Geng G H, et al. Automatic registration algorithm for scattered point clouds based on curvature feature[J]. Application Research of Computers, 2015, 32(6): 1878-1880, 1887.
[6] 王帅, 孙华燕, 郭惠超. 适用于激光点云配准的重叠区域提取方法[J]. 红外与激光工程, 2017, 46(s1): s126002.
Wang S, Sun H Y, Guo H C. Overlapping region extraction method for laser point clouds registration[J]. Infrared and Laser Engineering, 2017, 46(s1): s126002.
[7] TombariF, Salti S, di Stefano L. Unique signatures of histograms for local surface description[M] ∥Daniilidis K, Maragos P, Paragios N. Computer vision-ECCV 2010. Lecture notes in computer science. Berlin: Springer, 2010, 6313: 356- 369.
[8] Rusu RB, BlodowN, BeetzM. Fast point feature histograms (FPFH) for 3D registration[C]∥2009 IEEE International Conference on Robotics and Automation, May 12-17, 2009, Kobe, Japan. New York: IEEE, 2009: 3212- 3217.
[9] 曾繁轩, 李亮, 刁鑫鹏. 基于曲率特征的迭代最近点算法配准研究[J]. 激光与光电子学进展, 2017, 54(1): 011003.
[10] 张哲, 许宏丽, 尹辉. 一种基于关键点选择的快速点云配准算法[J]. 激光与光电子学进展, 2017, 54(12): 121002.
[11] He Y, Liang B, Yang J, et al. Aniterative closest points algorithm for registration of 3D laser scanner point clouds with geometric features[J]. Sensors, 2017, 17(8): 1862.
[12] ElbazG, AvrahamT, FischerA. 3D point cloud registration for localization using a deep neural network auto-encoder[C]∥2017 IEEE Conference on Computer Vision and Pattern Recognition (CVPR), July 21-26, 2017, Honolulu, HI, USA. New York: IEEE, 2017: 2472- 2481.
[13] Jauer P, Kuhlemann I, Bruder R, et al. Efficient registration of high-resolution feature enhanced point clouds[J]. IEEE Transactions on Pattern Analysis and Machine Intelligence, 2019, 41(5): 1102-1115.
[14] 陆军, 范哲君, 王婉佳. 点邻域信息加权的点云快速拼接算法[J]. 计算机辅助设计与图形学学报, 2019, 31(7): 1238-1246.
Lu J, Fan Z J, Wang W J. Fast point cloud splicing algorithm based on weighted neighborhood information of points[J]. Journal of Computer-Aided Design & Computer Graphics, 2019, 31(7): 1238-1246.
[15] 葛宝臻, 周天宇, 陈雷, 等. 基于改进ISS特征点与人工蜂群算法的点云拼接方法[J]. 天津大学学报, 2016, 49(12): 1296-1302.
Ge B Z, Zhou T Y, Chen L, et al. Point clouds registration algorithm based on improved ISS feature points and artificial bee colony algorithm[J]. Journal of Tianjin University, 2016, 49(12): 1296-1302.
[16] 陶海跻, 达飞鹏. 一种基于法向量的点云自动配准方法[J]. 中国激光, 2013, 40(8): 0809001.
[17] 袁志聪, 鲁铁定, 邓小渊. 点云的刚体运动参数估计方法的比较[J]. 测绘工程, 2018, 27(4): 34-40.
Yuan Z C, Lu T D, Deng X Y. Comparison of parameter estimation methods for rigid motion of point cloud[J]. Engineering of Surveying and Mapping, 2018, 27(4): 34-40.
[18] 唐志荣, 蒋悦, 苗长伟, 等. 基于因子分析法的三维点云配准算法[J]. 激光与光电子学进展, 2019, 56(19): 191503.
[19] 陈旭, 何炳蔚. 一种基于校正点云主成分坐标系的快速全局配准算法[J]. 激光与光电子学进展, 2018, 55(6): 061003.
[20] 李仁忠, 杨曼, 田瑜, 等. 基于ISS特征点结合改进ICP的点云配准算法[J]. 激光与光电子学进展, 2017, 54(11): 111503.
[21] 王勇, 邹辉, 何养明, 等. 多分辨率配准点的ICP算法[J]. 小型微型计算机系统, 2018, 39(3): 406-410.
Wang Y, Zou H, He Y M, et al. ICP algorithm based on multi-resolution registration point[J]. Journal of Chinese Computer Systems, 2018, 39(3): 406-410.
Article Outline
李新春, 闫振宇, 林森. 基于邻域表面形变信息加权的点云配准[J]. 激光与光电子学进展, 2020, 57(14): 141102. Xinchun Li, Zhenyu Yan, Sen Lin. Point Cloud Registration Based on Weighting Information of Neighborhood Surface Deformation[J]. Laser & Optoelectronics Progress, 2020, 57(14): 141102.