留言板

尊敬的读者、作者、审稿人, 关于本刊的投稿、审稿、编辑和出版的任何问题, 您可以本页添加留言。我们将尽快给您答复。谢谢您的支持!

姓名
邮箱
手机号码
标题
留言内容
验证码

基于IVCCS的三维点云配准算法

王春阳 李国瑞 刘雪莲 施春皓 丘文乾

王春阳, 李国瑞, 刘雪莲, 施春皓, 丘文乾. 基于IVCCS的三维点云配准算法[J]. 红外与激光工程, 2022, 51(6): 20210491. doi: 10.3788/IRLA20210491
引用本文: 王春阳, 李国瑞, 刘雪莲, 施春皓, 丘文乾. 基于IVCCS的三维点云配准算法[J]. 红外与激光工程, 2022, 51(6): 20210491. doi: 10.3788/IRLA20210491
Wang Chunyang, Li Guorui, Liu Xuelian, Shi Chunhao, Qiu Wenqian. 3D point cloud registration algorithm with IVCCS[J]. Infrared and Laser Engineering, 2022, 51(6): 20210491. doi: 10.3788/IRLA20210491
Citation: Wang Chunyang, Li Guorui, Liu Xuelian, Shi Chunhao, Qiu Wenqian. 3D point cloud registration algorithm with IVCCS[J]. Infrared and Laser Engineering, 2022, 51(6): 20210491. doi: 10.3788/IRLA20210491

基于IVCCS的三维点云配准算法

doi: 10.3788/IRLA20210491
基金项目: 中国博士后科学基金(2020M673606XB)
详细信息
    作者简介:

    王春阳,女,教授,博士生导师,博士,主要从事激光成像目标探测、跟踪与识别理论技术方面的研究

    通讯作者: 刘雪莲,女,讲师,硕士生导师,博士,主要从事激光成像目标探测与识别理论与技术方面的研究。
  • 中图分类号: TN958.98

3D point cloud registration algorithm with IVCCS

Funds: China Postdoctoral Science Foundation(2020M673606XB)
  • 摘要: 针对传统迭代最近点(ICP)算法在数据丢失以及存在噪声点的情况下配准时间过长、精度较低等问题,提出了一种基于改进的体素云连通性分割(IVCCS)与加权最近邻距离比相结合的配准算法。利用双阈值体素去噪剔除初始种子体素中的噪声体素,解决原本体素云连通性分割算法(VCCS)中因单一约束条件导致种子体素错误剔除的问题,同时将体素云分层去噪来加快配准的运算速度;利用流约束聚类提取点云中的特征点,并依据最近邻距离比验证特征点是否为重合点,赋予不同的权重优化ICP最小目标函数,从而加快配准速度。实验结果表明,该算法相对于传统ICP算法迭代次数减少,在精度与速度方面均有显著提升,相比于基于快速点特征直方图(FPFH)的ICP算法配准精度提高了8.5%~24.7%,速度上提高了65.6%~92.3%,迭代次数减少了16.6%~38%。
  • 图  1  空间体素化示意图

    Figure  1.  Schematic diagram of spatial voxelization

    图  2  体素化和网格化参数示意图

    Figure  2.  Schematic diagram of voxelization and meshing parameters

    图  3  流约束聚类算法的搜索顺序

    Figure  3.  Search order of stream-constrained clustering algorithm

    图  4  小阈值去噪示意图

    Figure  4.  Schematic diagram of small threshold denoising

    图  5  大阈值去噪示意图

    Figure  5.  Schematic diagram of large threshold denoising

    图  6  IVCCS算法流程图

    Figure  6.  Flow chart of IVCCS algorithm

    图  7  (a) VCCS和(b) IVCCS

    Figure  7.  (a) VCCS and (b) IVCCS

    图  8  Gazebo数据配准可视化效果

    Figure  8.  Visualization effect of Gazebo data registration

    图  9  加噪数据配准可视化效果

    Figure  9.  Visual effect of data registration with noise

    图  10  不同视角相机拍摄图片

    Figure  10.  Images taken by cameras with different viewing angles

    图  11  不同视角雷达扫描点云图

    Figure  11.  Point cloud images scanned by radar at different viewing angles

    图  12  车辆数据配准可视化效果

    Figure  12.  Visual effect of car data registration

    图  13  图书馆实采数据

    Figure  13.  Actual collected data of the library

    图  14  图书馆数据配准可视化效果

    Figure  14.  Visual effect of library data registration

    图  15  装甲车实采数据

    Figure  15.  Actual collected data of the panzer

    图  16  装甲车数据配准可视化效果

    Figure  16.  Visual effect of panzer data registration

    表  1  数据集中部分点云模型片段尺寸

    Table  1.   Segment size of partial point cloud model in the data set

    ModelModel FragmentNumber
    GazeboGazebo_0135842
    Gazebo_1135589
    ScansScan_358254934
    Scan_372554818
    下载: 导出CSV

    表  2  Gazebo理想数据实验结果统计

    Table  2.   Statistics of experimental results of Gazebo ideal data

    AlgorithmRMSETime/sIterations
    ICP1.49×10−5298.99629
    FPFH+ICP1.28×10−517.6524
    IVCCS+WICP1.06×10−52.29420
    下载: 导出CSV

    表  3  改进前后算法实验结果统计

    Table  3.   Statistics of experimental results of the algorithm before and after improvement

    AlgorithmRMSETime/sIterations
    VCCS+ICP2.14×10−57.68230
    VCCS+WICP1.34×10−52.44127
    IVCCS+ICP1.76×10−57.51830
    IVCCS+WICP1.16×10−52.29420
    下载: 导出CSV

    表  4  加噪数据结果统计

    Table  4.   Statistics of noise data results

    AlgorithmNoiseRMSETime/sIterations
    ICP5%3.57×10−3485.125133
    FPFH+ICP2.83×10−324.82724
    IVCCS+WICP2.47×10−31.89615
    ICP10%4.18×10−3533.17142
    FPFH+ICP3.41×10−325.74827
    IVCCS+WICP3.12×10−32.22421
    ICP15%1.08×10−2942.03157
    FPFH+ICP9.57×10−327.25337
    IVCCS+WICP8.68×10−32.46825
    下载: 导出CSV

    表  5  实采数据片段尺寸

    Table  5.   Actual collected data segment size

    ModelModel fragmentNumber
    CarCar_view161699
    Car_view265015
    LibraryLibrary_view118933
    Library_view218925
    PanzerPanzer_view110828
    Panzer_view29298
    下载: 导出CSV

    表  6  车辆数据结果统计

    Table  6.   Statistics of car data results

    AlgorithmRMSETime/sIterations
    ICP 6.39×10−4 185.125 41
    FPFH+ICP 3.88×20−4 5.978 21
    IVCCS+WICP 2.92×10−5 1.474 13
    下载: 导出CSV

    表  7  图书馆数据结果统计

    Table  7.   Statistics of library data results

    AlgorithmRMSETime/sIterations
    ICP8.011×10−484.82859
    FPFH+ICP6.243×10−43.16531
    IVCCS+WICP5.386×10−40.94520
    下载: 导出CSV

    表  8  图书馆数据结果统计

    Table  8.   Statistics of library data results

    AlgorithmRMSETime/sIterations
    ICP2.199×10−431.11638
    FPFH+ICP1.652×10−42.11221
    IVCCS+WICP1.388×10−40.72614
    下载: 导出CSV
  • [1] Xiao J, Qu W, Jiang H, et al. Three-dimensional fractal characterization of concrete surface subjected to sulfuric acid attacks [J]. Journal of Nondestructive Evaluation, 2020, 39(3): 39-57.
    [2] Xu S Q, Jia X L, Choi Y, et al. Three-dimensional scanning technique in the congenital microtia reconstruction with tissue expander [J]. Chinese Medical Journal, 2021, 134: 842-844.
    [3] Peng Y, Zhou Y, Yao J, et al. Three-dimensional shape reconstruction via an objective function optimization-based point cloud registration method [J]. Optical Engineering, 2017, 56(11): 113108.
    [4] Aldoma A, Marton Z C, Tombari F, et al. Tutorial: point cloud library: three-dimensional object recognition and 6 DOF pose estimation [J]. IEEE Robotics & Automation Magazine, 2012, 19(3): 80-91.
    [5] Hu Yanwei, Wang Jianjun, Fan Yuanyuan, et al. Lidar-based three-dimensional modeling and volume calculation for space objects [J]. Chinese Journal of Lasers, 2020, 47(5): 0510001. (in Chinese)
    [6] Lu Tieding, Yuan Zhicong, Zheng Kun. Super 4PCS point cloud registration algorithm combining scale invariant features [J]. Remote Sensing Information, 2019, 34(5): 15-20. (in Chinese)
    [7] Liu Jian, Bai Di. 3D point cloud registration algorithm based on feature matching [J]. Acta Optica Sinica, 2018, 38(12): 1215005. (in Chinese)
    [8] Blais G, Levine M D. Registering multiview range data to create 3D computer objects [J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 1995, 17(8): 820-824.
    [9] Huber D F, Hebert M. Fully automatic registration of multiple 3D data sets [J]. Image & Vision Computing, 2003, 21(7): 637-650.
    [10] Besl P J, Mckay H D. A method for registration of 3-D shapes [J]. IEEE Transactions on Pattern Analysis & Machine Intelligence, 1992, 14(2): 239-256.
    [11] Rusu R B, Blodow N, Beetz M. Fast point feature histograms (FPFH) for 3D registration[C]//IEEE International Conference on Robotics & Automation. IEEE, 2009: 3212-3217.
    [12] Rusu R B, Blodow N, Marton Z C, et al. Aligning point cloud views using persistent feature histograms [C]//EEE/RSJ International Conference on Intelligent Robots and Systems. IEEE, 2008: 3384-3391.
    [13] Weber T, Hänsch R, Hellwich O. Automatic registration of unordered point clouds acquired by Kinect sensors using an overlap heuristic [J]. ISPRS Journal of Photogrammetry & Remote Sensing, 2015, 102: 96-109.
    [14] Xiong Fengguang. Research on registration technology of 3D point cloud[D]. Taiyuan: North University of China, 2018. (in Chinese)
    [15] Lin Junyi, Wu Lei, Yang Meiying, et al. Rapid robot vision positioning method for large free-form surface parts [J]. Computer Integrated Manufacturing Systems, 2021, 27(7): 1951-1958. (in Chinese)
    [16] Papon J, Abramov A, Schoeler M, et al. Voxel cloud connectivity segmentation-supervoxels for point clouds [C]//Computer Vision & Pattern Recognition. IEEE, 2013: 2027-2034.
    [17] Jiang Yuanyuan. Research on supervoxel based region growing segmentation for point cloud data[D]. Xi'an: Xidian University, 2017. (in Chinese)
    [18] Liu Xiaoni. Research on 3D data segmentation method based on supervoxel[D]. Changchun: Jilin University, 2019. (in Chinese)
    [19] Zhou Shengtao, Liu Xuelian, Wang Chunyang. Non-iterative denoising algorithm based on a dual threshold for a 3D point cloud [J]. Optics and Lasers in Engineering, 2020, 126: 105921.
    [20] Wang Jianjun, Lu Yunpeng, Zhang Jiyun, et al. Optimization and performance verification of high efficiency ICP registration for laser point clouds[J]. Infrared and Laser Engineering, 2021, 50(10): 20200483. (in Chinese)
  • [1] 杨耘, 江万成, 任超锋, 马正龙, 蒲禹池, 焦宇航.  倾斜影像辅助的无人机载LiDAR高陡边坡形变监测 . 红外与激光工程, 2023, 52(2): 20220373-1-20220373-8. doi: 10.3788/IRLA20220373
    [2] 林森, 赵振禹, 任晓奎, 陶志勇.  基于语义信息补偿全局特征的物体点云分类分割 . 红外与激光工程, 2022, 51(8): 20210702-1-20210702-12. doi: 10.3788/IRLA20210702
    [3] 张帅台, 李国元, 周晓青, 么嘉棋, 郭金权, 唐新明.  基于多特征自适应的单光子点云去噪算法 . 红外与激光工程, 2022, 51(6): 20210949-1-20210949-11. doi: 10.3788/IRLA20210949
    [4] 王明军, 易芳, 李乐, 黄朝军.  自适应局部邻域特征点提取和匹配的点云配准 . 红外与激光工程, 2022, 51(5): 20210342-1-20210342-10. doi: 10.3788/IRLA20210342
    [5] 常兵涛, 陈传法, 郭娇娇, 武慧明.  机载LiDAR点云分块插值滤波 . 红外与激光工程, 2021, 50(9): 20200369-1-20200369-9. doi: 10.3788/IRLA20200369
    [6] 苏云征, 郝群, 曹杰, 闫雷, 武帅.  合并分割块的点云语义分割方法 . 红外与激光工程, 2021, 50(10): 20200482-1-20200482-10. doi: 10.3788/IRLA20200482
    [7] 赵毅强, 艾西丁·艾克白尔, 陈瑞, 周意遥, 张琦.  基于体素化图卷积网络的三维点云目标检测方法 . 红外与激光工程, 2021, 50(10): 20200500-1-20200500-9. doi: 10.3788/IRLA20200500
    [8] 李鑫, 莫思特, 黄华, 杨世基.  自动计算重叠度的多源点云配准方法 . 红外与激光工程, 2021, 50(12): 20210088-1-20210088-9. doi: 10.3788/IRLA20210088
    [9] 卢祺, 林婷婷, 李程鹏, 李荣华, 葛研军.  空间非合作目标点云聚类配准方法 . 红外与激光工程, 2021, 50(9): 20200431-1-20200431-10. doi: 10.3788/IRLA20200431
    [10] 崔文弢, 焦卫东, 庞艳丽.  基于几何代数的SVS-NLMS点云配准算法 . 红外与激光工程, 2021, 50(12): 20210115-1-20210115-10. doi: 10.3788/IRLA20210115
    [11] 王建军, 卢云鹏, 张荠匀, 白崇岳, 胡燕威, 李旭辉, 王炯宇.  实现激光点云高效配准的ICP优化及性能验证 . 红外与激光工程, 2021, 50(10): 20200483-1-20200483-7. doi: 10.3788/IRLA20200483
    [12] 王鹏, 杨文超, 孙长库, 郭世珍.  舌面彩色三维点云的舌体分割及舌裂纹提取 . 红外与激光工程, 2017, 46(S1): 82-89. doi: 10.3788/IRLA201746.S117004
    [13] 王帅, 孙华燕, 郭惠超.  适用于激光点云配准的重叠区域提取方法 . 红外与激光工程, 2017, 46(S1): 137-142. doi: 10.3788/IRLA201746.S126002
    [14] 贾桂敏, 卢薇冰, 路玉君, 杨金锋.  基于地理同名点配准的机载红外移动小目标检测方法 . 红外与激光工程, 2016, 45(8): 804002-0804002(7). doi: 10.3788/IRLA201645.0804002
    [15] 武奕楠, 李国宁, 张柯, 张宇, 金龙旭.  基于同名点追踪的空间相机成像拼接配准模型 . 红外与激光工程, 2016, 45(3): 326002-0326002(7). doi: 10.3788/IRLA201645.0326002
    [16] 刘玉, 陈凤, 王盈, 黄建明, 魏祥泉.  基于激光雷达的航天器相对位姿测量技术 . 红外与激光工程, 2016, 45(8): 817003-0817003(6). doi: 10.3788/IRLA201645.0817003
    [17] 张宏伟, 樊祥, 朱斌, 施展.  引入外点剔除机制的双波段红外图像的配准 . 红外与激光工程, 2015, 44(S1): 23-28.
    [18] 胡晓彤, 王建东.  基于子空间特征向量的三维点云相似性分析 . 红外与激光工程, 2014, 43(4): 1316-1321.
    [19] 李峰, 崔希民, 刘小阳, 卫爱霞, 吴燕雄.  机载LIDAR 点云定位误差分析 . 红外与激光工程, 2014, 43(6): 1842-1849.
    [20] 吴泽鹏, 郭玲玲, 朱明超, 贾宏光, 宣明.  结合图像信息熵和特征点的图像配准方法 . 红外与激光工程, 2013, 42(10): 2846-2852.
  • 加载中
图(16) / 表(8)
计量
  • 文章访问数:  381
  • HTML全文浏览量:  85
  • PDF下载量:  38
  • 被引次数: 0
出版历程
  • 收稿日期:  2021-07-19
  • 修回日期:  2021-10-06
  • 刊出日期:  2022-07-05

基于IVCCS的三维点云配准算法

doi: 10.3788/IRLA20210491
    作者简介:

    王春阳,女,教授,博士生导师,博士,主要从事激光成像目标探测、跟踪与识别理论技术方面的研究

    通讯作者: 刘雪莲,女,讲师,硕士生导师,博士,主要从事激光成像目标探测与识别理论与技术方面的研究。
基金项目:  中国博士后科学基金(2020M673606XB)
  • 中图分类号: TN958.98

摘要: 针对传统迭代最近点(ICP)算法在数据丢失以及存在噪声点的情况下配准时间过长、精度较低等问题,提出了一种基于改进的体素云连通性分割(IVCCS)与加权最近邻距离比相结合的配准算法。利用双阈值体素去噪剔除初始种子体素中的噪声体素,解决原本体素云连通性分割算法(VCCS)中因单一约束条件导致种子体素错误剔除的问题,同时将体素云分层去噪来加快配准的运算速度;利用流约束聚类提取点云中的特征点,并依据最近邻距离比验证特征点是否为重合点,赋予不同的权重优化ICP最小目标函数,从而加快配准速度。实验结果表明,该算法相对于传统ICP算法迭代次数减少,在精度与速度方面均有显著提升,相比于基于快速点特征直方图(FPFH)的ICP算法配准精度提高了8.5%~24.7%,速度上提高了65.6%~92.3%,迭代次数减少了16.6%~38%。

English Abstract

    • 三维激光扫描技术可以快速、准确地获取目标物体或场景的三维模型信息,在逆向工程、虚拟现实、数字城市、无人驾驶、生物医学等应用领域[1-5]都发挥了重要的作用。由于激光扫描仪容易受到扫描视野的限制,为了获得物体完整的三维信息,必须对被测物体多角度扫描的数据进行配准。通过对两片点云重叠部分、对应点或者其他特征[6-7]的搜寻,实现两数据之间的融合,来获取物体表面的完整信息[8-9]。因此,精确的配准结果是后续标定、融合的保障。

      随着图像处理技术的发展和国内外学者的广泛研究,应用最为广泛的迭代最近点(ICP)算法[10]也不断地被更新和优化。2009年,Rusu R B[11]等人将点特征直方图(PFH)[12]加以改进,提出一种称为快速点特征直方图(FPFH)的局部特征描述符,在保证区分能力的同时将直方图理论计算复杂度由$ O(n·{k}^{2}) $降低至$ O(n·k) $,加快运算速率,减少配准时间。2015年,Weber[13]等人依据场景的几何结构信息,通过均匀采样降低点云运算数据,又利用快速点特征直方图(FPFH)检测和描述三维点云中的关键点并建立匹配关系,减少配准时间。上述两种方法分别在描述符的计算复杂度以及点云数据量等方面进行优化,虽然加快配准的速度,但并未提高点云面对噪声干扰配准的鲁棒性。2018年,熊风光[14]等人将配准中对应点对的搜索策略进行优化,利用两片点云的双向最近邻距离比约束最佳特征点对匹配,从而加快点云配准速度,但该算法依旧没有解决噪声点在配准中的影响。2021年,林俊义[15]等人为解决数据丢失、规则特征不明显导致定位精度难以保证的问题,引入体素云连通性分割(VCCS)[16]与ICP相结合的配准算法,该算法虽然没有明显提高配准速度,但在面对数据丢失以及噪声点干扰的情况下依旧有良好的配准精度。

      综上,现有文献对配准算法的研究大多集中在速度优化方面,而对于算法鲁棒性方面的研究相对较少,导致现阶段的配准算法在面对噪声点干扰时特征提取时间增加,精度降低使配准失败。为了解决噪声点对配准的影响,提高点云的鲁棒性,文中提出一种改进的体素云连通性分割(IVCCS)与加权双向距离ICP相结合的三维点云配准算法。首先通过双阈值体素去噪算法对VCCS进行改进,解决了VCCS算法在复杂场景下因单一约束半径的过大或过小导致噪声点的错误剔除的问题,防止后续流约束聚类算法在初始化的过程中产生误差,并且在聚类迭代的过程中不断叠加,最终导致错误分割,影响后续配准精度,为了增加算法的运算速度,针对体素空间特性在噪声去除过程中对体素云分层并行处理。接着为解决传统ICP算法耗时长、精度低以及配准速率慢的问题,通过最近邻距离比判断是否为重合点云,赋予不同权重来优化ICP最小目标函数,从而加快配准运算速率,提高精度。该研究将为点云配准领域提供一种新方法,为三维激光成像雷达点云配准技术在实际中应用提供了新思路。

    • 在点云配准过程中,通常会受到噪声点以及点云密度分布不均对配准效果的影响,VCCS算法首先利用体素化与网格化选取点云中的初始种子点,并利用半径滤波降低初始种子点中的噪声干扰,最后利用流约束聚类提取出点云中的特征点。VCCS算法首先利用八叉树数据结构对点云进行体素化(如公式(1)所示),将点云最小包围盒V划分成分辨率为$ {R_v} $的若干立方体,利用立方体内所有点云数据的重心点来近似表示所有点,与处理点数据相比,基于体素的数据结构可以抑制点云中存在的噪声、异常值和不均匀点密度的负面影响,同时大大降低计算成本,提高分割过程的效率和稳健性。另外,体素化处理可以部分减少三维激光雷达扫描物体因距离变化引起的点的各向异性密度影响。如图1所示,最小包围盒V被划分为n个体素$ {v_i} $,其中体素分辨率表示为$ {R_v} $

      图  1  空间体素化示意图

      Figure 1.  Schematic diagram of spatial voxelization

      $$ \sum\limits_{i = 0}^n {{v_i} = V} $$ (1)

      对体素化后的点云,选用分辨率为$ {R_s} $($ {R_v} $<<$ {R_s} $)的体素网格来进行网格化处理,将距离体素网格中心最近的体素作为初始种子体素。为了剔除初始种子体素中的错误体素,需要删除体素空间中因漂移噪声点造成的孤立的体素。VCCS算法针对每一个种子体素建立一个半径为$ {R_{search}} $的搜索区域,计算在该区域内的体素数目,对数目小于固定阈值的种子体素予以剔除,如图2所示。

      图  2  体素化和网格化参数示意图

      Figure 2.  Schematic diagram of voxelization and meshing parameters

      VCCS算法通过计算搜索半径$ {R_{search}} $区域内的体素数目来剔除噪声种子体素,而单一限制条件无法取得良好的去噪效果。搜索半径过小,虽保证了噪声种子体素的正确剔除,但也会错误剔除空间中正确种子体素;而搜索半径过大,则导致剔除效果不理想,无法有效去除空间中紧密的漂移噪声体素,而错误种子体素会使得后续流约束聚类算法在初始化的过程中产生误差,并且在聚类迭代的过程中不断增加,最终导致错误分割。

      对去噪后的体素云,为了保证后续分割具有宏观结构特性,对体素之间的空间连通性进行约束,通过相邻体素中心距离不超过$ \sqrt 3 {R_v} $这一约束条件,保证流过的体素具有26邻接[17]的空间关系,在上述基础之上,又综合考虑体素云数据的颜色信息、几何特征和空间距离来衡量体素之间的相似性,通过相似性距离D[16]计算邻接体素与聚类中心所有体素的距离均值,对平均距离最近的体素进行标记,通过逐层向外搜索至下一个体素,直至所有体素均得到遍历。当所有体素的邻接图搜索结束后,对已经聚类的超体素进行更新,当聚类中心稳定或达到最大的迭代次数时完成体素云的连通性分割。流约束聚类算法[18]搜索顺序如图3所示。

      图  3  流约束聚类算法的搜索顺序

      Figure 3.  Search order of stream-constrained clustering algorithm

    • 通过VCCS原理可知,该算法与以往通过投影进行分割的方法不同,通过考虑空间连通性,保证了分割的超体素具有宏观的结构特征,其中关键在于对种子体素的正确选取,文中为解决去噪过程中单一限制条件的局限性,将二维的canny思想延伸到三维,通过大小两阈值分别对孤立漂移噪声体素与紧密漂移噪声体素针对性地剔除,首先选用小阈值对初始种子体素进行分层去噪,以达到去除孤立噪声种子体素的目的。接着为了防止小阈值对紧密漂移噪声体素剔除效果不理想,对小阈值去噪后的体素云再通过大阈值进行分层去噪,进一步对紧密噪声种子体素进行剔除,通过双阈值两个限制条件,防止因后续聚类迭代过程导致误差不断增加,为噪声种子体素的正确剔除提供保障;双阈值体素去噪在保证去噪效果的同时解决了传统迭代去噪算法速度慢的问题,通过对体素云进行大小阈值分层并行处理,大大减少了去噪时间,加快了整体的运算速率。具体算法如下。

      双阈值体素去噪算法包括三个步骤:归一化处理、种子体素分层处理和双阈值去噪。

      首先,为了规范种子体素的去噪过程,对体素云PQ进行归一化操作,步骤如下。

      Step1:根据公式(2)计算参数M

      Step2:根据公式(3)计算归一化系数s

      Step3:根据公式(4)分别对体素云PQ进行归一化处理,得到归一化后的体素云集合$ P' $$ Q' $

      $$ M = \max \{ {x_{\max }},{x_{\min }},{y_{\max }},{y_{\min }},{{\textit{z}}_{\max }},{{\textit{z}}_{\min }}\} $$ (2)
      $$ s = 1/M $$ (3)
      $$ P' = P \times s Q' = Q \times s $$ (4)

      对于归一化后体素云集合$ P' $$ Q' $的最小包围盒分别用U1U2表示。

      为了增加体素去噪的运算速度,对体素云进行分层处理,将体素云$ P' $$ Q' $按照Z轴方向距离信息从小到大进行排序。针对体素空间特性,将Zhou Shengtao[19]等人分层去噪的思想加以改进,利用体素分辨率$ {R_v} $设置大小阈值分层厚度,减少Zhou Shengtao[19]等人算法中针对点云分层厚度的计算,提高去噪运算速率,如公式(5)所示,其中待配准两片体素云数据在Z轴方向的层数分别为$ {m_i} $$ {h_i} $$ \left| {{L_i}} \right| $为体素云Z轴距离信息方向的长度。

      $$ {m_i} = \left| {{L_i}} \right|/{R_v} {h_i} = \left| {{L_i}} \right|/{R_v} $$ (5)

      为了加快体素云运算速度,忽略Z方向上的影响,将体素云按照体素分辨率$ {R_v} $进行分层,在第$ i\left( {i = 1,...,m{{\left( h \right)}_i}} \right) $层剔除孤立种子体素的过程中,小阈值设置如公式(6)所示,由于小阈值主要处理的是空间中孤立的漂移体素噪声,根据孤立漂移体素噪声的空间特性,其一定不具有空间连续关系,因此,通过判断初始种子体素小阈值包围正方体内是否有唯一体素来剔除孤立噪声体素,其包围正方形S的示意图如图4所示。

      $$ \eta = 3/2 \times {R_v} $$ (6)

      图  4  小阈值去噪示意图

      Figure 4.  Schematic diagram of small threshold denoising

      为防止小阈值去噪后的体素云中含有紧密漂移噪声体素,对小阈值去噪后的体素云,判断其大阈值包围盒内初始种子体素是否空间连续,来去除空间中的紧密漂移噪声体素,大阈值设置如公式(7)所示。若初始种子体素是空间连续的,则如图5所示,图中深蓝色为初始种子体素,浅蓝色为相邻体素;若种子体素不是噪声体素,即使处在体素云边缘,其大阈值包围盒内最少应当存在9个体素。因此,通过大阈值$ \rho $计算初始种子体素$P(Q)\left( {x,y,{\textit{z}}} \right)$的正方体包围盒V中体素是否小于9,对紧密噪声体素进行去除。

      图  5  大阈值去噪示意图

      Figure 5.  Schematic diagram of large threshold denoising

      $$ \rho = 5/2 \times {R_v} $$ (7)

      为了减少大阈值去噪时间,加快运算速率,对小阈值去噪后的体素云,依据厚度$\; \rho $对体素云进行分层,同时为了去除分层边缘对去噪的影响,对Z轴进行体素云分层时应保证分层体素云与邻层存在厚度为2$ {R_v} $的嵌套关系。

    • 通过双阈值体素去噪将VCCS算法进行改进,使其在面对复杂噪声时依旧有良好的去噪效果,减少在后续聚类运算的误差,保证其分割效果。实验算法流程如图6所示。

      图  6  IVCCS算法流程图

      Figure 6.  Flow chart of IVCCS algorithm

      首先将体素进行体素化与网格化,降低混合噪声的干扰并提取出初始种子体素,通过对初始种子体素小阈值$ \eta $产生的包围盒进行判定,剔除包围盒中孤立的种子体素,接着通过大阈值$ \;\rho $进行判定,将包围盒中仅包含少量体素的种子体素进行再次剔除,最后将正确的种子体素通流约束聚类分割成若干个超体素。基于双阈值体素去噪的IVCCS算法通过正确选取种子体素,保证了后续良好的分割效果。从图7实验结果可以看出,IVCCS算法对噪声剔除效果更强,分割效果明显优于VCCS算法。

      图  7  (a) VCCS和(b) IVCCS

      Figure 7.  (a) VCCS and (b) IVCCS

    • 通过聚类的思想,将具有相同属性的体素聚在一起,使体素云的宏观结构信息保留在数据之中。利用宏观信息提取点云特征点,提出一种改进的ICP算法(WICP),根据最近邻距离比这一匹配特征验证点云两片点云中点是空间重叠,将重合点与非重合点设置不同权重,优化ICP最小目标函数,减小在迭代过程中丢失点云信息对配准的影响,在保证算法效果的同时提高运行效率。

    • 不同于目前基于最近邻(NN)和最近邻距离比(NNDR)[19]的特征匹配,利用双向最近邻距离比[14],通过双向搜索最近邻点判断是否为重合点云。其匹配过程如下:

      (1)正序查找。针对原始点云$ P'' $中任一点$ {p_j} $,在目标点云$Q''$中寻找其最近邻点,其最近距离可以定义为$ \overrightarrow {{d_j}} $

      (2)逆序查找。针对目标点云$ Q'' $中搜索到的最近邻点,令其在原始点云$ P'' $中反向搜索最近邻点,并将最近距离定义为$ \overrightarrow {{d_\varepsilon }} $

      (3)由于激光雷达扫描的里两片点云存在角度差异,该双向距离存在一种现象:在重叠区域中,一个点的双向对应关系是其本身或者相邻点,所以该点的后向距离等于或者略小于前向距离;在非重叠区域内,一个点的双向距离对应点相聚较远,所以前向距离远大于后向距离。

      (4)循环执行步骤(2)~(4),找到所有点的双向最近距离点,比较双向距离的$ \overrightarrow {{d_j}} /\overrightarrow {{d_\varepsilon }} $,如果$ \overrightarrow {{d_j}} /\overrightarrow {{d_\varepsilon }} $小于阈值thr,将其视为重合点赋予较高的概率值,同时对于双向最近邻距离比大于thr的点,降低非重叠的点的概率值,降低其对配准影响。

      阈值thr代表的是两片点云前向距离与后向距离的比值,其值越大,则证明该点距重合点云距离越远,也证明该点对配准效果的影响越大;反之,其值越小(最小值为1),证明其距重合点云越近或该点就是重合点云。

    • 传统的ICP算法将待配准两片点云分别定义为$ P = \{ {p_j}\} _{j = 1}^w $$ Q = \{ {q_\varepsilon }\} _{\varepsilon = 1}^n $,其中wn分别为原始点云和目标点云的数量,利用公式(8)最小化点云距离求取旋转矩阵R和平移矩阵T

      $$ \min \Bigg(\sum\limits_{j = 1}^w {\left\| {\left( {R{p_j} + T} \right) - {q_\varepsilon }} \right\|_2^2} \Bigg) $$ (8)

      将传统的ICP算法利用双向最近邻距离比进行改进,利用点云重合信息将每个点赋予不同的权重来最小化目标函数,用于部分重叠的点云配准,优化后的公式如下:

      $$ \underset{R,T}{\mathrm{min}}\Bigg({\displaystyle \sum _{j=1}^{w}{\Vert (R{p}_{j}+T)-{q}_{\epsilon }\Vert }_{2}^{2}}·\overrightarrow{{\omega }_{j}}\Bigg) $$ (9)

      其中,$\overrightarrow {{\omega _j}} $表示赋予每个点权重,其定义如下:

      $$ \overrightarrow {{\omega _j}} = {{\rm{e}}^{ - \lambda ({\varphi _j} - 1)}} $$ (10)
      $$ {\varphi _j} = \overrightarrow {{d_j}} /\overrightarrow {{d_\varepsilon }} $$ (11)

      式中:$\lambda $(大于0)为预设参数。可知随着比率${\varphi _j}$的增加,权重$\overrightarrow {{\omega _j}} $在1~0范围内逐渐减小,并且$\overrightarrow {{\omega _j}} $的减小速率与$\lambda $的值相关。因此,将公式(9)与ICP算法相结合,其主要步骤如下。

      (1) 将由体素质心构成的点云$P''$中的每个点${p_j}$建立双向搜索对应关系:

      $$ {c_{k + 1}}(j) = \mathop {\arg }\limits_{\varepsilon \in (1,...,n)} \min \left\| {({R_k}{p_j} + {T_k}) - {q_\varepsilon }} \right\|_2^2 $$ (12)
      $$ f = \mathop {\arg }\limits_{\varepsilon \in (1,...,w)} \min \left\| {{q_\varepsilon } - ({R_k}{p_j} + {T_k})} \right\|_2^2 $$ (13)

      (2) 计算各点的权重:

      $$ {\overrightarrow \omega _{j,k + 1}} = {{\rm{e}}^{ - \lambda ({\varphi _{j,k + 1}} - 1)}} $$ (14)
      $$ {\varphi _{j,k + 1}} = \frac{{{{\overrightarrow d }_{j,k + 1}}}}{{{{\overrightarrow d }_{\varepsilon ,k + 1}}}} $$ (15)

      式中:${\overrightarrow d _{j,k + 1}}$${\overrightarrow d _{\varepsilon ,k + 1}}$为点云由${R_k}$${T_k}$转换后${p_j}$的向前最近距离和向后最近距离。

      (3) 通过最小化加权最小二乘函数来计算最佳的旋转平移矩阵:

      $$ ({R}_{k+1},{T}_{k+1})=\mathrm{arg}\mathrm{min}\Bigg({\displaystyle \sum _{j=1}^{m}{\Vert ({R}_{k}{p}_{j}+{T}_{k})-{q}_{{c}_{k}(j)}\Vert }_{2}^{2}·{\overrightarrow{\omega }}_{j,k+1}}\Bigg) $$ (16)

      将前文分割得到的超体素提取关键点,通过迭代地执行上述三个步骤来获得最优解,直到满足收敛标准。为了加快算法运行,采用最优节点优先(Best Bin First, BBF)优化K-D Tree近邻搜索[20],加速对应点对搜索。

      (1)分割结点确定:统计所有特征点在(x, y, z)各维度方差,方差最大的维度为主维度,将特征点按主维度排序,正中间特征点为分割结点。

      (2)搜索对应关系点对:待查询点值与分割结点值比较,若小于等于则进左子树,否则进右子树,沿K-DTree搜索,直至叶子结点,在该子空间内查找与待查询点距离最近的点,同时建立优先级,点的优先级${T_{pri}}$定义为:

      $$ {T_{pri}} = \left| {{s_i} - {r_i}} \right|,i \in (x,y,{\textit{z}}) $$ (17)

      式中:${s_i}$为待查询点第i维值;$ {r_i} $为特征点第i维值;i为分割维度。${T_{pri}}$越小,优先级越大。

      (3) “回环”搜索:按优先级大小查找是否存在于该点距离更近的对应点,若在其他分割子空间中存在,则进入该空间继续搜索。

      综上,基于IVCCS的三维点云配准算法的伪代码如算法1所述。

      算法1 基于IVCCS的三维点云配准算法

      (1) 对三维点云数据进行体素化与网格化处理,降低混合噪声点干扰的同时提取初始种子体素,其中体素与网格分辨率分别为$ {R_v} $$ {R_s} $

      (2) 通过大阈值$ \rho $与小阈值$ \eta $对种子体素去噪,剔除初始种子体素中的噪声体素;

      (3) 将剩余种子体素以26邻接为约束条件,通过在39维的特征空间描述得到相邻体素间的相似性距离D

      (4) 计算种子体素与相邻体素相似性距离均值,将距离最近的邻接体素进行标记;

      (5) do;

      (6) For 标记体素 do;

      (7) 依据邻接图遍历标记体素所有邻接体素,计算标记体素与其相邻未标记体素相似性距离均值,标记距离最近的邻接体素;

      (8) End for;

      (9) 更新聚类中心;

      (10) Until 聚类中心稳定或者达到最大迭代次数;

      (11) 提取分割后超体素的质心生成待配准的点云$ P'' $$ Q'' $

      (12) 通过最近邻距离比判断点云中的点是否为重合点;

      (13) 将不同重叠情况的点云赋予不同的权重,优化最小目标函数:$\underset{R,T}{\mathrm{min}}\Bigg({\displaystyle \sum _{j=1}^{w}{\Vert (R{p}_{j}+T)-{q}_{\epsilon }\Vert }_{2}^{2}}·\overrightarrow{{\omega }_{j}}\Bigg)$

    • 为了验证文中算法的有效性,实验仿真在AMD R5 4600H CPU、16 GB内存的计算机上以C++为基础,在PCL1.8.1环境下进行,采用Sydney等扫描数据集作为配准模型,利用实采数据进行实验验证,将文中算法与传统ICP、FPFH+ICP配准算法进行对比。实验采用迭代次数、均方根误差(RMSE)和配准时间来衡量配准的精度与效率。

    • 理想数据实验部分选用扫描数据片段尺寸大小如表1所示。

      表 1  数据集中部分点云模型片段尺寸

      Table 1.  Segment size of partial point cloud model in the data set

      ModelModel FragmentNumber
      GazeboGazebo_0135842
      Gazebo_1135589
      ScansScan_358254934
      Scan_372554818

      对Gazebo数据进行对比实验,由图8表2可以看出,三种方法均得到了很小的误差值,文中算法相对于传统的ICP和FPFH+ICP算法误差更低,时间更快。在配准过程中,由于传统ICP并未对点云进行筛选,导致迭代次数较多,配准时间较为缓慢。FPFH+ICP虽然对点云进行了有效的筛选,降低了点云迭代次数和配准时间,但该方法依旧需要遍历所有点云数据。文中算法利用体素、网格化对点云进行降采样,减少了处理点云数据,利用超体素的宏观特性提取对应点,相比于FPFH+ICP算法减少了迭代次数,配准精度提高了17.1%,配准时间缩短了87%,迭代次数减少了16.6%。

      表 2  Gazebo理想数据实验结果统计

      Table 2.  Statistics of experimental results of Gazebo ideal data

      AlgorithmRMSETime/sIterations
      ICP1.49×10−5298.99629
      FPFH+ICP1.28×10−517.6524
      IVCCS+WICP1.06×10−52.29420

      图  8  Gazebo数据配准可视化效果

      Figure 8.  Visualization effect of Gazebo data registration

      为了验证文中算法的优势,利用Gazebo数据集将文中算法、VCCS和ICP相结合以及VCCS与ICP分别改进相结合的算法进行对比,如表3所示,通过时间、均方根误差以及迭代次数来验证文中算法的优越性。

      表 3  改进前后算法实验结果统计

      Table 3.  Statistics of experimental results of the algorithm before and after improvement

      AlgorithmRMSETime/sIterations
      VCCS+ICP2.14×10−57.68230
      VCCS+WICP1.34×10−52.44127
      IVCCS+ICP1.76×10−57.51830
      IVCCS+WICP1.16×10−52.29420

      通过表3可知,文中算法通过改进,在均方根及时间方面均有所提高。经过双阈值体素去噪后的分割算法精度提高了13.4%,时间缩短了6%;加权最近邻距离比优化后的ICP算法精度提高了34%,速度提高了69.4%。优化后的总体算法,在精度方面提高了45.8%,速度提高了70.1%。

    • 考虑到雷达在对实际物体进行扫描时,由于环境等因素采集到的数据会存在噪声点影响后续的配准,为了检验文中算法对含有噪声点云数据的配准效果,利用激光雷达两帧数据对每一片点云在xy轴上分别添加强度为5%、10%、15%的随机噪声,通过多组实验求取平均值,实验可视化结果及数据如图9表4所示。

      表 4  加噪数据结果统计

      Table 4.  Statistics of noise data results

      AlgorithmNoiseRMSETime/sIterations
      ICP5%3.57×10−3485.125133
      FPFH+ICP2.83×10−324.82724
      IVCCS+WICP2.47×10−31.89615
      ICP10%4.18×10−3533.17142
      FPFH+ICP3.41×10−325.74827
      IVCCS+WICP3.12×10−32.22421
      ICP15%1.08×10−2942.03157
      FPFH+ICP9.57×10−327.25337
      IVCCS+WICP8.68×10−32.46825

      图  9  加噪数据配准可视化效果

      Figure 9.  Visual effect of data registration with noise

      表4可以看出,文中算法相比于传统ICP和FPFH+ICP算法受噪声影响程度较小。传统ICP算法在添加噪声之后虽能保证配准效果,但受噪声点的影响较为严重。对于上述的三组实验分别在迭代49、63和82次后,受混合噪声影响极为明显,导致后续配准过程中出现坐标变换尺度变小、迭代次数增多、配准时间加长等问题;FPFH+ICP算法迭代次数虽然没有明显增加,但是由于噪声点的干扰,增加其筛选特征点的时间;而文中算法通过体素化与双阈值密度去噪分别降低混合噪声点与漂移噪声点对后续配准的影响,在点云数据受噪声点干扰的情况下实现良好的配准结果,相对于FPFH+ICP算法在处理噪声数据方面精度提高了8.5%~12.7%,配准速度提高了90.9%~92.3%,迭代次数减少了22.2%~37.5%。

    • 为了验证文中算法在实际应用中的准确性与可行性,利用RS-LiDAR-M1(B2)型号雷达对实际采集的三组数据进行实验验证。三组实验仿真数据片段尺寸如表5所示。

      表 5  实采数据片段尺寸

      Table 5.  Actual collected data segment size

      ModelModel fragmentNumber
      CarCar_view161699
      Car_view265015
      LibraryLibrary_view118933
      Library_view218925
      PanzerPanzer_view110828
      Panzer_view29298

      (1)首先对实际采集的车辆数据进行对比实验,相机拍摄和雷达扫描点云图如图10图11所示。将文中算法与传统ICP算法和FPFH+ICP算法进行对比实验,仿真可视化效果与实验结果统计如图12表6所示。

      表 6  车辆数据结果统计

      Table 6.  Statistics of car data results

      AlgorithmRMSETime/sIterations
      ICP 6.39×10−4 185.125 41
      FPFH+ICP 3.88×20−4 5.978 21
      IVCCS+WICP 2.92×10−5 1.474 13

      图  10  不同视角相机拍摄图片

      Figure 10.  Images taken by cameras with different viewing angles

      图  11  不同视角雷达扫描点云图

      Figure 11.  Point cloud images scanned by radar at different viewing angles

      图  12  车辆数据配准可视化效果

      Figure 12.  Visual effect of car data registration

      表6可知,在处理实际点云数据时,由于两片点云视角相差较小,点的数量相对较多,宏观结构大致相似,文中算法相比于其他两种算法在配准速度上具有明显的优势,在针对大规模点云数据配准问题上,相对于FPFH+ICP精度提高了24.7%,处理速度上加快了75.3%,迭代次数减少了38%。

      (2)为了验证文中算法的适用性,以大视场图书馆为对象,利用不同视角下采集的数据进行实验验证,雷达扫描点云图如图13所示。将文中算法与传统ICP算法和FPFH+ICP算法进行对比实验,仿真可视化效果与实验结果统计如图14表7所示。

      表 7  图书馆数据结果统计

      Table 7.  Statistics of library data results

      AlgorithmRMSETime/sIterations
      ICP8.011×10−484.82859
      FPFH+ICP6.243×10−43.16531
      IVCCS+WICP5.386×10−40.94520

      图  13  图书馆实采数据

      Figure 13.  Actual collected data of the library

      图  14  图书馆数据配准可视化效果

      Figure 14.  Visual effect of library data registration

      表7可知,在处理大视场实际点云数据时,文中算法相比于其他两种算法在配准速度上具有明显的优势,相对于FPFH+ICP精度提高了13.7%,处理速度上加快了70.1%,迭代次数减少了35.4%。

      (3)为了验证文中算法的抗干扰能力,以装甲车为对象,通过路人和树人为增加遮挡,降低两幅点云重复率,将不同视角下采集的数据进行实验验证,雷达扫描点云图如图15所示。将文中算法与传统ICP算法和FPFH+ICP算法进行对比实验,仿真可视化效果与实验结果统计如图16表8所示。

      表 8  图书馆数据结果统计

      Table 8.  Statistics of library data results

      AlgorithmRMSETime/sIterations
      ICP2.199×10−431.11638
      FPFH+ICP1.652×10−42.11221
      IVCCS+WICP1.388×10−40.72614

      图  15  装甲车实采数据

      Figure 15.  Actual collected data of the panzer

      图  16  装甲车数据配准可视化效果

      Figure 16.  Visual effect of panzer data registration

      表8可知,在对含有遮挡的实采数据进行点云配准时,文中算法相比于其他两种算法在配准速度上具有明显的优势,在针对大规模点云数据配准问题上,相对于FPFH+ICP精度提高了15.9%,处理速度上加快了65.6%,迭代次数减少了33.3%。

      通过对实际采集数据进行多组实验,验证算法在面对在不同视场、遮挡以及数据丢失的情况下的配准能力,由实验结果可知,文中算法在面对以上几种情况下依旧能够达到良好的配准效果。相比于ICP算法具有鲁棒性强、速度快以及迭代次数少的优势,相比于FPFH+ICP算法,文中算法在精度方面提高了13.7%~24.9%,速度提高了65.6%~75.3%。

    • 针对传统ICP算法在配准过程中效率低耗时长、鲁棒性差、容易受到噪声点影响等问题,提出了一种改进的体素云连通性分割与加权双向距离比ICP算法相结合的配准算法,利用双阈值体素去噪对VCCS算法进行改进,保证了正确的分割效果,同时利用双向最近邻距离比对ICP最小目标函数进行加权,提高了配准精度,加快了配准速度。实验结果显示,文中算法与统ICP和FPFH+ICP算法相比具有速度快、迭代次数少、受噪声点影响小等优势,相比于FPFH+ICP算法,配准精度提高了10.6%~22.4%,速度上提高了87%~95.2%,迭代次数减少了16.1%~46%;相比于未优化的VCCS+ICP算法,精度提高了47.9%,速度提高了70%。最后,在针对实际点云数据配准问题上,相比于FPFH+ICP算法,文中算法在精度方面提高了13.7%~24.9%,速度提高了65.6%~75.3%。实验证明文中算法能够有效地完成配准实验,为点云配准在实际应用中提供了新思路。

参考文献 (20)

目录

    /

    返回文章
    返回