2.793

2018影响因子

(CJCR)

  • 中文核心
  • EI
  • 中国科技核心
  • Scopus
  • CSCD
  • 英国科学文摘

留言板

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

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

基于卦限卷积神经网络的3D点云分析

许翔 帅惠 刘青山

许翔, 帅惠, 刘青山. 基于卦限卷积神经网络的3D点云分析. 自动化学报, 2020, 46(x): 1−10. doi: 10.16383/j.aas.c200080
引用本文: 许翔, 帅惠, 刘青山. 基于卦限卷积神经网络的3D点云分析. 自动化学报, 2020, 46(x): 1−10. doi: 10.16383/j.aas.c200080
XU Xiang, SHUAI Hui, LIU Qing-Shan. Octant Convolutional Neural Network for 3D Point Cloud Analysis. Acta Automatica Sinica, 2020, 46(x): 1−10. doi: 10.16383/j.aas.c200080
Citation: XU Xiang, SHUAI Hui, LIU Qing-Shan. Octant Convolutional Neural Network for 3D Point Cloud Analysis. Acta Automatica Sinica, 2020, 46(x): 1−10. doi: 10.16383/j.aas.c200080

基于卦限卷积神经网络的3D点云分析


DOI: 10.16383/j.aas.c200080
详细信息
    作者简介:

    南京信息工程大学自动化学院硕士研究生. 2018年获得南京信息工程大学信息与控制学院学士学位. 主要研究方向为三维点云场景感知. E-mail: xuxiang0103@gmail.com

    南京信息工程大学博士研究生. 2018年获得南京信息工程大学信息与工程学院硕士学位. 主要研究方向为目标检测, 3D点云场景感知. E-mail: huishuai13@163.com

    南京信息工程大学自动化学院院长, 教授. 2003年获得中国科学院自动化研究所博士学位. 主要研究方向为图像理解, 模式识别, 机器学习. 本文通信作者. E-mail: qsliu@nuist.edu.cn

    通讯作者: 刘青山 南京信息工程大学自动化学院院长, 教授. 2003年获得中国科学院自动化研究所博士学位. 主要研究方向为图像理解, 模式识别, 机器学习. 本文通信作者. E-mail: qsliu@nuist.edu.cn
  • 基金项目:  国家自然科学基金(61825601, 61532009)资助

Octant Convolutional Neural Network for 3D Point Cloud Analysis

More Information
    Corresponding author: LIU Qing-Shan Dean and professor of the School Automation, Nanjing University of Information Science and Technology. He received his Ph.D. degree from the Institute of Automation, Chinese Academy of Sciences in 2003. His research interest covers image understanding, pattern recognition and machine learning. Corresponding author of this paper
  • Fund Project:  Supported by National Natural Science Foundation of China (61825601, 61532009)
  • 摘要: 基于深度学习的三维点云数据分析技术得到了越来越广泛的关注, 然而点云数据的不规则性使得高效提取点云中的局部结构信息仍然是一大研究难点. 本文提出了一种能够作用于局部空间邻域的卦限卷积神经网络(Octant Convolutional Neural Network, Octant-CNN), 它由卦限卷积模块和下采样模块组成. 针对输入点云, 卦限卷积模块在每个点的近邻空间中定位八个卦限内的最近邻点, 接着通过多层卷积操作将八卦限中的几何特征抽象成语义特征, 并将低层几何特征与高层语义特征进行有效融合, 从而实现了利用卷积操作高效提取三维邻域内的局部结构信息; 下采样模块对原始点集进行分组及特征聚合, 从而提高特征的感受野范围, 并且降低网络的计算复杂度. Octant-CNN通过对卦限卷积模块和下采样模块的分层组合, 实现了对三维点云进行由底层到抽象、从局部到全局的特征表示. 实验结果表明, Octant-CNN在对象分类、部件分割、语义分割和目标检测四个场景中均取得了较好的性能.
  • 图  1  网络框架图

    Fig.  1  Illustration of network architecture

    图  2  三阶段与单阶段2D卷积的对比

    Fig.  2  Comparison of 2D CNN with three-stage and one-stage

    图  3  卦限卷积模块

    Fig.  3  Octant convolution module

    图  4  S3DIS可视化结果

    Fig.  4  Visualization of results on S3DIS

    图  5  KITTI目标检测可视化结果

    Fig.  5  Visualization of detection results on KITTI

    图  6  K近邻和八卦限搜索的比较

    Fig.  6  Comparison of KNN and 8 octant search

    表  1  ModelNet40分类结果

    Table  1  Classification results on ModelNet40

    MethodoAcc(%)mAcc (%)
    PointNet[12]89.286.2
    PointNet++[13]90.7-
    PointSIFT[14]90.286.9
    SFCNN[15]91.4-
    ConvPoint[17]91.888.5
    ECC[18]87.483.2
    RGCNN[19]90.587.3
    PAT[22]91.7-
    SCN[23]90.087.6
    SRN-PointNet++[24]91.5-
    JUSTLOOKUP[25]89.586.4
    Kd-Net[26]91.888.5
    SO-Net[27]90.987.2
    Octant-CNN91.988.7
    下载: 导出CSV

    表  2  ShapeNet部件分割结果

    Table  2  Part segmentation results on ShapeNet

    MethodmIoUaerobagcapcarchairearphoneguitarknifelamplaptopmotormugpistolrocketskateboardtable
    PointNet[12]83.783.478.782.574.989.673.091.585.980.895.365.293.081.257.972.880.6
    PointNet++[13]85.182.479.087.777.390.871.891.085.983.795.371.694.181.358.776.482.6
    PointSIFT[14]79.075.178.481.874.585.264.389.681.977.595.164.093.577.154.270.674.3
    RGCNN[19]84.380.282.892.675.389.273.791.388.483.396.063.995.760.944.672.980.4
    DGCNN[20]85.184.283.784.477.190.978.591.587.382.996.067.893.382.659.775.582.0
    SCN[23]84.683.880.883.579.390.569.891.786.582.996.069.293.882.562.974.480.8
    Kd-Net[26]82.380.174.674.370.388.673.590.287.281.094.957.486.778.151.869.980.3
    SO-Net[27]84.681.983.584.878.190.872.290.183.682.395.269.394.280.051.672.182.6
    RS-Net[29]84.982.786.484.178.290.469.391.487.083.595.466.092.681.856.175.882.2
    Octant-CNN85.383.983.688.379.291.170.891.887.582.995.772.294.583.660.075.581.9
    下载: 导出CSV

    表  3  S3DIS语义分割结果

    Table  3  Semantic segmentation results on S3DIS

    MethodmIoUOAceilingfloorwallbeamcolumnwindowsdoorchairtablebookcasesofaboardclutter
    PointNet[12]47.778.688.088.769.342.423.147.551.642.054.138.29.629.435.2
    PointNet++[13]57.383.891.592.874.641.328.154.559.664.658.927.152.052.348.0
    PointSIFT[14]55.583.591.191.375.542.024.051.456.660.255.817.050.257.149.9
    RS-Net[29]56.5-92.592.878.632.834.451.668.159.760.116.450.244.952.0
    Octant-CNN58.384.692.194.576.348.930.856.962.965.855.528.048.150.348.4
    下载: 导出CSV

    表  4  3D目标检测对比结果

    Table  4  Performance compression in 3D object detection

    MethodCarsPedestriansCyclists
    EasyModerateHardEasyModerateHardEasyModerateHard
    F-PointNet v1[32]83.7569.3762.8365.3955.3248.6270.1752.8748.27
    F-PointNet v2[32]83.9371.2363.7264.2356.9550.1574.0454.9250.53
    Frustum PointSIFT[14]71.5666.1758.9763.1355.0849.0570.3652.5648.53
    Frustum Geo-CNN[33]85.0971.0263.3869.6460.5052.8875.6456.2552.54
    Frustum Octant-CNN85.1072.3164.4667.9059.7352.4476.5657.5054.26
    下载: 导出CSV

    表  5  结构设计分析

    Table  5  Analysis of the structure design

    模型多层融合残差投票oAcc(%)
    A90.7
    B$\checkmark$91.2
    C$\checkmark$$\checkmark$91.5
    D$\checkmark$$\checkmark$$\checkmark$91.9
    下载: 导出CSV

    表  6  2D卷积和MLP的对比

    Table  6  Comparisons of 2D CNN and MLP

    模型运算oAcc(%)
    AMLP90.8
    B2D CNN91.9
    下载: 导出CSV

    表  7  不同邻点的比较

    Table  7  The results of different neighbor points

    模型邻点准确率
    AK近邻90.2
    B八卦限搜索91.9
    下载: 导出CSV

    表  8  不同搜索半径的比较

    Table  8  Comparison of different search radius

    模型搜索半径oAcc(%)
    A(0.25, 0.5, 1.0)88.0
    B(0.4, 0.8, 1.0)89.2
    C(0.5, 1.0, 1.0)89.9
    DNone91.9
    下载: 导出CSV

    表  9  不同输入通道的结果比较

    Table  9  The results of different input channels

    模型输入通道oAcc(%)
    A($f_{ij}$)90.1
    B($x_i-x_{ij}, f_{ij}$)90.3
    C($x_i, f_{ij}$)90.8
    D($x_i, x_i-x_{ij}, f_{ij}$)91.9
    下载: 导出CSV

    表  10  点云旋转鲁棒性比较

    Table  10  Comparison of robustness to point cloud rotation

    角度$0^\circ$$30^\circ$$60^\circ$$90^\circ$$180^\circ$均值方差
    PointSIFT[14]88.289.288.988.788.588.70.124
    PointSIFT+T-Net89.189.489.488.688.689.040.114
    Octant-CNN91.591.791.991.591.891.680.025
    下载: 导出CSV

    表  11  点云语义分割的复杂度

    Table  11  Complexity in point cloud semantic segmentation

    方法参数量FLOPs
    PointNet[12]1.17M7.22B
    PointNet++[13]0.97M1.96B
    PointSIFT[14]13.53M24.32B
    Octant-CNN4.31M2.44B
    下载: 导出CSV
  • [1] Krizhevsky A, Sutskever I, Hinton G E. Imagenet classification with deep convolutional neural networks. In: Advances in Neural Information Processing Systems. Nevada, USA, 2012. 1097−1105
    [2] He K, Zhang X, Ren S, Sun J. Deep residual learning for image recognition. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas, NV, USA: IEEE, 2016. 770−778
    [3] Girshick R. Fast r-cnn. In: Proceedings of the IEEE International Conference on Computer Vision. Santiago, Chile: IEEE, 2015. 1440-1448
    [4] Redmon J, Divvala S, Girshick R, Farhadi A. You only look once: unified, real-time object detection. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas, NV, USA: IEEE, 2016. 779-788
    [5] Zhu Z, Xu M, Bai S, Huang T, Bai X. Asymmetric non-local neural networks for semantic segmentation. In: Proceedings of the IEEE International Conference on Computer Vision. Seoul, South Korea: IEEE, 2019. 593-602
    [6] Li Y, Qi H, Dai J, Ji X, Wei Y. Fully convolutional instance-aware semantic segmentation. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Hawaii, USA: IEEE, 2017. 2359-2367
    [7] 彭秀平, 仝其胜, 林洪彬, 冯超, 郑武. 一种面向散乱点云语义分割的深度残差-特征金字塔网络框架. 自动化学报, 2019, 45(x): 1−10

    Peng Xiu-Ping, Tong Qi-Sheng, Lin Hong-Bin, Feng Chao, Zheng Wu. A deep residual-feature pyramid network for scattered point cloud semantic segmentation. Acta Automatica Sinica, 2019, 45(x): 1−10
    [8] Maturana D, Scherer S. Voxnet: a 3d convolutional neural network for real-time object recognition. In: Proceedings of 2015 IEEE/RSJ International Conference on Intelligent Robots and Systems. Hamburg, Germany: IEEE, 2015. 922-928
    [9] Wu Z, Song S, Khosla A, et al. 3d shapenets: a deep representation for volumetric shapes. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Boston, USA: IEEE, 2015. 1912-1920
    [10] Su H, Maji S, Kalogerakis E, Learned-Miller E. Multi-view convolutional neural networks for 3d shape recognition. In: Proceedings of the IEEE International Conference on Computer Vision. Santiago, Chile: IEEE, 2015. 945-953
    [11] Yang Z, Wang L. Learning relationships for multi-view 3d object recognition. In: Proceedings of the IEEE International Conference on Computer Vision. Seoul, South Korea: IEEE, 2019. 7505-7514
    [12] Qi C R, Su H, Mo K, Guibas L J. Pointnet: deep learning on point sets for 3d classification and segmentation. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Hawaii, USA: IEEE, 2017. 652-660
    [13] Qi C R, Yi L, Su H, Guibas L J. Pointnet++: deep hierarchical feature learning on point sets in a metric space. In: Advances in Neural Information Processing Systems. Long Beach, USA, 2017. 5099-5108
    [14] Jiang M, Wu Y, Zhao T, Zhao Z, Lu C. Pointsift: a sift-like network module for 3d point cloud semantic segmentation[Online], available: https://arxiv.org/abs/1807.00652, July 22, 2020
    [15] Rao Y, Lu J, Zhou J. Spherical fractal convolutional neural networks for point cloud recognition. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Long Beach, CA, USA, 2019. 452-460
    [16] Liu Y, Fan B, Xiang S, Pan C. Relation-shape convolutional neural network for point cloud analysis. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Long Beach, CA, USA, 2019. 8895-8904
    [17] Boulch A. Convpoint: continuous convolutions for point cloud processing. Computers & Graphics, 2020, 88: 24−34
    [18] Simonovsky M, Komodakis N. Dynamic edge-conditioned filters in convolutional neural networks on graphs. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Hawaii, USA: IEEE, 2017. 3693-3702
    [19] Te G, Hu W, Zheng A, Guo Z. Rgcnn: regularized graph cnn for point cloud segmentation. In: Proceedings of the 26th ACM International Conference on Multimedia. Seoul, South Korea: ACM, 2018. 746-754
    [20] Wang Y, Sun Y, Liu Z, Sarma S E, Bronstein M M, Solomon J M. Dynamic graph cnn for learning on point clouds. ACM Transactions on Graphics (TOG), 2019, 38(5): 1−12
    [21] Srivastava N, Hinton G, Krizhevsky A, Sutskever I, Salakhutdinov R. Dropout: a simple way to prevent neural networks from overfitting. The journal of machine learning research, 2014, 15(1): 1929−1958
    [22] Yang J, Zhang Q, Ni B, et al. Modeling point clouds with self-attention and gumbel subset sampling. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Long Beach, CA, USA, 2019. 3323-3332
    [23] Xie S, Liu S, Chen Z, Tu Z. Attentional shapecontextnet for point cloud recognition. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Salt Lake City, USA: IEEE, 2018. 4606-4615
    [24] Duan Y, Zheng Y, Lu J, Zhou J, Tian Q. Structual relational reasoning of point clouds. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Long Beach, CA, USA: IEEE, 2019. 949-958
    [25] Lin H, Xiao Z, Tan Y, Chao H, Ding S. Justlookup: one millisecond deep feature extraction for point clouds by lookup tables. In: Proceedings of 2019 IEEE International Conference on Multimedia and Expo. Shanghai, China: IEEE, 2019. 326-331 Wang P, Liu Y, Guo Y, Sun C, Tong X. O-cnn: octree-based convolutional neural networks for 3d shape analysis. ACM Transactions on Graphics (TOG), 2017, 36(4): 1-11
    [26] Klokov R, Lempitsky V. Escape from cells: deep kd-networks for the recognition of 3d point cloud models. In: Proceedings of the IEEE International Conference on Computer Vision. Venice, Italy: IEEE, 2017. 863-872
    [27] Li J, Chen B M, Hee L G. So-net: self-organizing network for point cloud analysis. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Salt Lake City, USA: IEEE, 2018. 9397-9406
    [28] Yi L, Kim V G, Ceylan D, et al. A scalable active framework for region annotation in 3d shape collections. ACM Transactions on Graphics (ToG), 2016, 35(6): 1−12
    [29] Huang Q, Wang W, Neumann U. Recurrent slice networks for 3d segmentation of point clouds. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Salt Lake City, USA: IEEE, 2018. 2626-2635
    [30] Armeni I, Sener O, Zamir A R, et al. 3d semantic parsing of large-scale indoor spaces. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Las Vegas, USA: IEEE, 2016. 1534-1543
    [31] Geiger A, Lenz P, Urtasun R. Are we ready for autonomous driving. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Rhode Island, USA: IEEE, 2012. 3354-3361
    [32] Qi C R, Liu W, Wu C, Su H, Guibas L J. Frustum pointnets for 3d object detection from rgb-d data. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Salt Lake City, USA: IEEE, 2018. 918-927
    [33] Lan S, Yu R, Yu G, Davis L S. Modeling local geometric structure of 3d point clouds using geo-cnn. In: Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition. Long Beach, USA: IEEE, 2019. 998-1008
  • [1] 许玉格, 钟铭, 吴宗泽, 任志刚, 刘伟生. 基于深度学习的纹理布匹瑕疵检测方法[J]. 自动化学报, doi: 10.16383/j.aas.c200148
    [2] 孟琭, 孙霄宇, 赵滨, 李楠. 基于卷积神经网络的铁轨路牌识别方法[J]. 自动化学报, doi: 10.16383/j.aas.c190182
    [3] 薄迎春, 张欣, 刘宝. 延迟深度回声状态网络及其在时间序列预测中的应用[J]. 自动化学报, doi: 10.16383/j.aas.c180264
    [4] 李良福, 马卫飞, 李丽, 陆铖. 基于深度学习的桥梁裂缝检测算法研究[J]. 自动化学报, doi: 10.16383/j.aas.2018.c170052
    [5] 罗浩, 姜伟, 范星, 张思朋. 基于深度学习的行人重识别研究进展[J]. 自动化学报, doi: 10.16383/j.aas.c180154
    [6] 夏元清, 闫策, 王笑京, 宋向辉. 智能交通信息物理融合云控制系统[J]. 自动化学报, doi: 10.16383/j.aas.c180370
    [7] 林金花, 姚禹, 王莹. 基于深度图及分离池化技术的场景复原及语义分类网络[J]. 自动化学报, doi: 10.16383/j.aas.2018.c170439
    [8] 田娟秀, 刘国才, 谷珊珊, 鞠忠建, 刘劲光, 顾冬冬. 医学图像分析深度学习方法研究与挑战[J]. 自动化学报, doi: 10.16383/j.aas.2018.c170153
    [9] 蔡云飞, 石庭敏, 唐振民. 基于双多线激光雷达的非结构化环境负障碍感知技术[J]. 自动化学报, doi: 10.16383/j.aas.2018.c160453
    [10] 陈伟宏, 安吉尧, 李仁发, 李万里. 深度学习认知计算综述[J]. 自动化学报, doi: 10.16383/j.aas.2017.c160690
    [11] 胡长胜, 詹曙, 吴从中. 基于深度特征学习的图像超分辨率重建[J]. 自动化学报, doi: 10.16383/j.aas.2017.c150634
    [12] 罗建豪, 吴建鑫. 基于深度卷积特征的细粒度图像分类研究综述[J]. 自动化学报, doi: 10.16383/j.aas.2017.c160425
    [13] 奚雪峰, 周国栋. 面向自然语言处理的深度学习研究[J]. 自动化学报, doi: 10.16383/j.aas.2016.c150682
    [14] 朱煜, 赵江坤, 王逸宁, 郑兵兵. 基于深度学习的人体行为识别算法综述[J]. 自动化学报, doi: 10.16383/j.aas.2016.c150710
    [15] 段艳杰, 吕宜生, 张杰, 赵学亮, 王飞跃. 深度学习在控制领域的研究现状与展望[J]. 自动化学报, doi: 10.16383/j.aas.2016.c160019
    [16] 郭潇逍, 李程, 梅俏竹. 深度学习在游戏中的应用[J]. 自动化学报, doi: 10.16383/j.aas.2016.y000002
    [17] 常亮, 邓小明, 周明全, 武仲科, 袁野, 杨硕, 王宏安. 图像理解中的卷积神经网络[J]. 自动化学报, doi: 10.16383/j.aas.2016.c150800
    [18] 唐朝辉, 朱清新, 洪朝群, 祝峰. 基于自编码器及超图学习的多标签特征提取[J]. 自动化学报, doi: 10.16383/j.aas.2016.c150736
    [19] 耿杰, 范剑超, 初佳兰, 王洪玉. 基于深度协同稀疏编码网络的海洋浮筏SAR图像目标识别[J]. 自动化学报, doi: 10.16383/j.aas.2016.c150425
    [20] 随婷婷, 王晓峰. 一种基于CLMF的深度卷积神经网络模型[J]. 自动化学报, doi: 10.16383/j.aas.2016.c150741
  • 加载中
计量
  • 文章访问数:  17
  • HTML全文浏览量:  7
  • 被引次数: 0
出版历程
  • 收稿日期:  2020-02-25
  • 录用日期:  2020-07-21

基于卦限卷积神经网络的3D点云分析

doi: 10.16383/j.aas.c200080
    基金项目:  国家自然科学基金(61825601, 61532009)资助
    作者简介:

    南京信息工程大学自动化学院硕士研究生. 2018年获得南京信息工程大学信息与控制学院学士学位. 主要研究方向为三维点云场景感知. E-mail: xuxiang0103@gmail.com

    南京信息工程大学博士研究生. 2018年获得南京信息工程大学信息与工程学院硕士学位. 主要研究方向为目标检测, 3D点云场景感知. E-mail: huishuai13@163.com

    南京信息工程大学自动化学院院长, 教授. 2003年获得中国科学院自动化研究所博士学位. 主要研究方向为图像理解, 模式识别, 机器学习. 本文通信作者. E-mail: qsliu@nuist.edu.cn

    通讯作者: 刘青山 南京信息工程大学自动化学院院长, 教授. 2003年获得中国科学院自动化研究所博士学位. 主要研究方向为图像理解, 模式识别, 机器学习. 本文通信作者. E-mail: qsliu@nuist.edu.cn

摘要: 基于深度学习的三维点云数据分析技术得到了越来越广泛的关注, 然而点云数据的不规则性使得高效提取点云中的局部结构信息仍然是一大研究难点. 本文提出了一种能够作用于局部空间邻域的卦限卷积神经网络(Octant Convolutional Neural Network, Octant-CNN), 它由卦限卷积模块和下采样模块组成. 针对输入点云, 卦限卷积模块在每个点的近邻空间中定位八个卦限内的最近邻点, 接着通过多层卷积操作将八卦限中的几何特征抽象成语义特征, 并将低层几何特征与高层语义特征进行有效融合, 从而实现了利用卷积操作高效提取三维邻域内的局部结构信息; 下采样模块对原始点集进行分组及特征聚合, 从而提高特征的感受野范围, 并且降低网络的计算复杂度. Octant-CNN通过对卦限卷积模块和下采样模块的分层组合, 实现了对三维点云进行由底层到抽象、从局部到全局的特征表示. 实验结果表明, Octant-CNN在对象分类、部件分割、语义分割和目标检测四个场景中均取得了较好的性能.

English Abstract

许翔, 帅惠, 刘青山. 基于卦限卷积神经网络的3D点云分析. 自动化学报, 2020, 46(x): 1−10. doi: 10.16383/j.aas.c200080
引用本文: 许翔, 帅惠, 刘青山. 基于卦限卷积神经网络的3D点云分析. 自动化学报, 2020, 46(x): 1−10. doi: 10.16383/j.aas.c200080
XU Xiang, SHUAI Hui, LIU Qing-Shan. Octant Convolutional Neural Network for 3D Point Cloud Analysis. Acta Automatica Sinica, 2020, 46(x): 1−10. doi: 10.16383/j.aas.c200080
Citation: XU Xiang, SHUAI Hui, LIU Qing-Shan. Octant Convolutional Neural Network for 3D Point Cloud Analysis. Acta Automatica Sinica, 2020, 46(x): 1−10. doi: 10.16383/j.aas.c200080
  • 随着自动驾驶和机器人应用技术的兴起, 3D点云数据分析引起了广泛关注. 近年来, 由于基于深度学习的神经网络在图像分类[1-2]、目标检测[3-4]和图像分割[5-6]等任务中取得了很大的成功, 基于深度学习的点云数据分析也成为了研究的热点[7]. 现有的基于深度学习的点云数据分析方法大体可以分为以下两类:

    一类是基于无序点云规则化的深度学习方法, 这类方法先将3D点云转换为规则的体素结构[8-9]或多视图图像[10-11], 然后使用CNN方法来学习特征表示. 由于体素化过程存在量化误差, 多视图投影则压缩了数据维度, 这些都会不同程度上导致3D点云中几何信息的丢失. 另一类方法是直接基于点云的深度学习方法. 这类方法又可以分为基于多层感知机(Multi-Layer Perceptron, MLP)的方法; 基于卷积的方法; 基于图的方法. 其中基于多层感知机的方法[12-14]的核心思想是通过参数共享的MLP独立地提取每个点的特征, 然后通过一个对称函数聚合得到全局特征, 这类方法往往不能充分考虑到3D点之间的关系. 基于卷积的方法[15-17]的核心思想是根据邻域点之间的空间位置关系去学习点之间的权重参数, 并根据学习到的权重参数自适应地聚合局部特征, 这类方法已经取得了极大的成功. 基于图的方法[18-20]在近年来也受到了广泛的关注, 它们将每个点都作为图的顶点, 通过在顶点之间学习边的权重以更新顶点的特征, 这类方法通常在构图的过程中会产生相当大的计算量.

    在上述的方法当中, 基于MLP的方法是最直接简单的方法. PointNet[12]是这类方法中的开创性工作, 其核心思想是通过参数共享的多层感知机独立地将每个点的坐标信息映射至高维特征空间, 再通过一个对称函数聚合最终的高维特征以获得全局表示, 从而解决了点云的无序性问题; 此外, PointNet还使用T-Net网络[12]学习变换矩阵对点云进行旋转, 从而保证点云的旋转不变性; 在分割任务中, PointNet将全局特征与每个点的局部特征级联, 通过多层MLP提取每个点的语义特征, 实现对每个点的分类. 虽然该方法简单有效, 但是由于其是对每个点进行独立地处理, 因此该网络并没有有效提取点云的局部特征. 对此, PointNet++[13]提出了一种层次化的网络结构, 通过在每一层级递归使用采样、分组和PointNet网络来抽象低层次的特征; 面对语义分割任务, PointNet++提出基于欧氏距离的插值法对点进行上采样, 并将通过插值计算所得语义特征与低层学习的语义特征进行融合以更准确地学习每个点的语义特征. 但是在每一个子区域中, PointNet++仍然独立地处理每个点的信息. PointSIFT[14]引入卦限约束来有效探索各个点周围的局部模式, 其主要思想是以每个点为原点, 在周围八个卦限中找到特定范围内的最近点, 然后沿着X, Y, Z轴使用三阶段2D卷积来提取局部模式, 其三阶段的卷积操作会受到因点云旋转而造成的不同卦限顺序的影响, 从而使得提取的局部模式具有方向敏感性; 此外, 在下采样阶段, PointSIFT沿用PointNet++的网络结构, 采用可学习的方式聚合局部特征, 这为其引入额外的参数, 从而大大增加了其计算量.

    为了克服上述问题, 本文提出了一种新的卦限卷积神经网络(Octant-CNN)来提取点云的局部几何结构. 该网络主要由卦限卷积模块和下采样模块两部分组成. 具体来说, 卦限卷积模块首先搜索每个点在八个卦限内的最近邻点, 由于点云的密度特性可以通过近邻点的距离来表征, 为了使Octant-CNN能更好的反映这一特性, 本文取消了对搜索半径的限制, 从而保证远离中心点的近邻点同样可以被度量. 卦限卷积模块使用单阶段卷积操作同时作用在八个卦限的近邻点, 从而克服了三阶段卷积操作对卦限顺序敏感这一问题, 并且配合T-Net的使用, 能够对点云旋转具有更好的鲁棒性. 最后通过级联各层的特征和残差连接方式实现了多层次特征的融合. 下采样模块根据空间分布对点云进行分组聚合, 扩大了中间特征的感受野, 构成了层次化的网络连结结构, 并且该模块并没有引入额外的可学习参数, 从而大大降低了Octant-CNN的计算复杂度. 通过对卦限卷积模块和下采样模块的多层堆叠, Octant-CNN实现了从局部模式中不断抽象出全局特征.

    • Octant-CNN的整体网络框架如图1所示. 以原始点云作为输入, 首先将点云送入T-Net中进行点云旋转, 将点云标定至规范空间, 接着通过卦限卷积模块(Octant Convolution Module)提取点云的局部几何结构, 其后采用下采样模块(Sub-sampling Module)来减少点的数量, 以设计一种分层式的层次化网络结构, 从而增加中间层特征的感受野. 通过这两个模块的多层堆叠, Octant-CNN实现了对高层语义特征的抽象, 为点云处理提出了一种高效的特征编码方式.

      图  1  网络框架图

      Figure 1.  Illustration of network architecture

    • 假设具有$ n $个点的点云为$ S = (X; F) \subseteq {\bf{R}}^{3+C} $, 其中$ X = \{x_{1}, x_{2}, \cdots, x_{n}\} \subseteq {\bf{R}}^{3} $表示坐标信息, $ F = \{f_{1}, f_{2}, \cdots, f_{n}\} \subseteq {\bf{R}}^{C} $表示点云的特征. 对于每个点$ s_{i} $, 以该点为原点建立一个三维局部坐标系, 可以将空间划分为八个卦限, 然后在八个卦限中分别找到$ s_{i} $的最近邻点, 即$ N(s_{i}) = \{s_{i1}, \cdots, s_{i8}\} $. 在卦限卷积模块中, Octant-CNN取消了搜索半径上限的限制, 这样可以确保远离中心点的近邻点同样可以被捕获到, 从而可以更好地反映点云的局部密度特性.

      对于八个最近邻点, PointSIFT[14]使用了具有三阶段操作的2D卷积, 如图2(a)所示. 该卷积操作沿X, Y和Z轴分别使用卷积核大小为$ 1 \times 2 $的2D卷积. 这种三阶段的卷积操作存在着先后顺序, 对于三维空间中的不同维度具有各向异性, 而且PointSIFT中没有采用T-Net对输入点云进行旋转, 因此不同的卦限顺序会造成不同的卷积结果. 为了克服这个问题, 本文采用T-Net对点云进行旋转标定, 并通过单阶段的卷积操作直接在八个最近邻点上进行运算. 如图2(b)所示, Octant-CNN先按照卦限的顺序对八个邻点进行排序, 接着利用一个卷积核大小为$ 1 \times 8 $的2D卷积直接作用在这八个邻点上. 给定中心点$ s_{i} $及其最近邻点$ N(s_{i}) $, 卷积的输入通道包括中心点坐标$ x_{i} $, 中心点及其最近邻点之间的残差坐标$ x_{i} - x_{ij} $, 以及最近邻点的特征$ f_{ij} $, 该操作过程如下:

      图  2  三阶段与单阶段2D卷积的对比

      Figure 2.  Comparison of 2D CNN with three-stage and one-stage

      $$ f^{(l)}(s_{i}) = \sum\limits_{j = 1}^{8}w_{ij}\left(concat(x_{i}, x_{i} - x_{ij}, f_{ij})\right) $$ (1)

      其中$ f^{(l)}(s_{i}) $表示点$ s_{i} $在第$ l $层学到的特征, $ concat $表示级联操作, $ w_{ij} $表示$ s_{i} $$ s_{ij} $之间的可学习权重.

      由于Octant-CNN先通过T-Net对点云方向进行预先标定, 其后采用一个二维卷积同等处理各卦限内的点及其特征, 使得单阶段卷积对输入点云具有各向同性, 因此对于不同角度的同一点云输入, Octant-CNN总能得到相似的特征表示, 具有旋转不变性.

      为了使每个点能够提取更丰富的特征, Octant-CNN在卦限卷积模块中堆叠了多层卷积操作, 并将各层的输出特征通过MLP进行融合, 以便可以充分利用各层次特征信息, 同时保证MLP的输出尺寸与最后一个卷积层相同, 这样可以在最后一层添加残差块以缓解梯度消失问题. 整个卦限卷积模块可以表示为:

      $$ f_{O} \!\!=\!\! F_{res}\!+\!F^{(l)} \!= \!MLP\!\left(\!F^{(1)}, F^{(2)}, \cdots\!, F^{(l)}\!\right)\!+\!F^{(l)} $$ (2)

      卦限卷积模块的架构如图3所示.

      图  3  卦限卷积模块

      Figure 3.  Octant convolution module

    • 下采样模块的目的是为了扩大每个点特征学习的局部感受野. 主要思路为: 从输入点集中选择一系列种子点作为聚类中心点; 然后, 将这些中心点周围的点的特征用对称函数聚合在一起. 由于PointSIFT[14]在下采样的过程中沿用了PointNet++[13]的结构设计, 这为PointSIFT引入了可学习的参数, 从而增加了其计算量; 不同于此, Octant-CNN在下采样模块中的核心操作是种子点的选择和特征聚合, 而在特征聚合时仅仅通过对称函数即可实现, 这并没有为Octant-CNN带来额外的可学习参数, 因此降低了Octant-CNN的计算复杂度.

      给定输入点$ \{x_{1}, x_{2}, \cdots, x_{n}\} $, 下采样模块迭代使用最远点采样(Furthest Point Sampling, FPS)来选择该点集的一个子集$ \{x_{1}, x_{2}, \cdots, x_{m}\} $, $ m < n $, 并将该子集作为聚类中心的种子点. 与随机采样相比, FPS通过最大化采样点之间的距离来更好地覆盖整个点集[13].

      对于每一个采样点, Octant-CNN都可以在一定的半径内寻找它的邻点. 为了保持一致性, 本文在实际操作中设置了一个上限$ K $. 该操作可以表示为: 给定一个大小为$ N \times C $的原始点集, 以及通过FPS采样得到的大小为$ M \times C $的子集, 其中$ M $$ N $表示集合中点的数量($ M < N $), $ C $表示特征维度. 对于每个采样点, 都可以在一定半径内从原始点集中选取$ K $个邻点, 并输出大小为$ M \times K \times C $的数据. 这些邻点的特征都可以通过一个对称函数聚合并输出大小为$ M \times C $. 在实际操作中, 本文使用最大值来聚合局部特征.

    • 为了详细评估Octant-CNN的性能, 本文在对象分类、部件分割、场景语义分割、3D目标检测四组任务中, 对其进行了实验测试, 并和相关方法进行了比较. 此外, 本文还通过实验分析评估了卦限卷积和下采样模块的不同设置对网络性能的影响.

    • 首先在ModelNet40[9]分类基准上评估Octant-CNN. 该数据集包含40个人工设计的对象类别, 共有12311个CAD模型, 其中9843个用于训练集, 2468个用于测试集. 参照PointNet[12], 本文均匀采样1024个点并将其标准化到单位球体中, 并仅将采样点的坐标作为模型的输入. 在训练过程中, 本文与PointNet++[13]一样, 通过随机旋转和缩放对象并扰动对象点的位置来扩充数据.

      图1所示, 首先使用PointNet[12]设计的T-Net对点云进行旋转. T-Net首先通过三层共享的MLP提取点的特征, 然后通过最大值采样以获取全局表示, 最后通过两个全连接层来计算一个转换矩阵. Octant-CNN在卦限卷积模块中学习点的局部特征, 然后在下采样模块中对点进行分组聚合局部特征. 在实际操作中, 对于最后一个下采样模块, 本文仅对原点进行采样, 然后使用最大值聚合全局特征, 最后通过两层全连接层来输出对象的类别概率. 在训练过程中, 本文在全连接层中使用了dropout[21]机制, 并将该比率设置为50%. 在测试阶段, 本文和PointNet++[13]一样, 使用投票机制将点云均匀旋转12个不同的角度后分别送入模型中预测, 并对这12个预测结果取平均获取最终的分类结果.

      表1列出了Octant-CNN与最新一些相关方法进行的比较结果, 包括PointNet[12], PointNet++[13], PAT[22]等. 本文采用了整体准确率(Overall Accuracy, oAcc)和平均准确率(Mean Accuracy, mAcc)两种指标来衡量分类结果, 它们的定义分别如下:

      表 1  ModelNet40分类结果

      Table 1.  Classification results on ModelNet40

      MethodoAcc(%)mAcc (%)
      PointNet[12]89.286.2
      PointNet++[13]90.7-
      PointSIFT[14]90.286.9
      SFCNN[15]91.4-
      ConvPoint[17]91.888.5
      ECC[18]87.483.2
      RGCNN[19]90.587.3
      PAT[22]91.7-
      SCN[23]90.087.6
      SRN-PointNet++[24]91.5-
      JUSTLOOKUP[25]89.586.4
      Kd-Net[26]91.888.5
      SO-Net[27]90.987.2
      Octant-CNN91.988.7
      $$ oAcc = \dfrac{\sum\limits_{i = 1}^{N}p_{ii}}{\sum\limits_{i = 1}^{N}\sum\limits_{j = 1}^{N}p_{ij}} $$ (3)
      $$ mAcc = \dfrac{1}{N}\sum\limits_{i = 1}^{N}\frac{p_{ii}}{\sum\limits_{j = 1}^{N}p_{ij}} $$ (4)

      其中$ p_{ij} $表示真实标签为$ i $, 预测结果为$ j $的数量, $ N $表示类别数. 为了客观分析比较, 本文还实现了基于PointSIFT[14]的对象分类任务. 从表1可以看到, Octant-CNN取得了不错的效果, 这也说明了Octant-CNN在一定程度上可以更好地学习到点云的局部几何特征.

    • ShapeNet[28]数据集主要用于测试部件分割任务. 该数据集包含16个对象类别的16881个不同形状, 总共被标记为50个部件. 本文参照PointNet[12]的方法对数据集进行划分, 并随机采样2048个点作为网络输入. Octant-CNN仅使用坐标信息作为网络的输入, 而没有采用PointNet++[13]中的法线信息.

      但是, 对于分割任务, 模型希望获得每个点的语义特征以实现每个点的分类. PointSIFT[14]首先参照PointNet++[13]的方法, 先使用基于欧氏距离的插值法对点进行上采样, 并将内插值与上一个卦限卷积模块中学习的特征进行级联, 然后通过共享的多层感知机提取丰富的语义特征; 紧接着, PointSIFT在此基础上使用三阶段卷积操作进一步做特征变换. 该三阶段的卷积操作在原来多层感知机的基础上又引入了额外的参数. 不同于此操作, 考虑到计算量的问题, Octant-CNN在上采样的过程中仅通过多层感知机来抽象高层的语义特征.

      在实际操作中, 我们还将对象的one-hot标签级联到最后一层特征传播层中, 以进行准确的预测. 为了更好的评测Octant-CNN在部件分割上的性能, 本文还和PointNet[12], PointNet++[13]等方法进行了实验比较, 表2中给出了实验比较结果. 本文采用平均交并比(mean Intersection over Union, mIoU)作为衡量分割任务性能的指标, 其定义如下:

      表 2  ShapeNet部件分割结果

      Table 2.  Part segmentation results on ShapeNet

      MethodmIoUaerobagcapcarchairearphoneguitarknifelamplaptopmotormugpistolrocketskateboardtable
      PointNet[12]83.783.478.782.574.989.673.091.585.980.895.365.293.081.257.972.880.6
      PointNet++[13]85.182.479.087.777.390.871.891.085.983.795.371.694.181.358.776.482.6
      PointSIFT[14]79.075.178.481.874.585.264.389.681.977.595.164.093.577.154.270.674.3
      RGCNN[19]84.380.282.892.675.389.273.791.388.483.396.063.995.760.944.672.980.4
      DGCNN[20]85.184.283.784.477.190.978.591.587.382.996.067.893.382.659.775.582.0
      SCN[23]84.683.880.883.579.390.569.891.786.582.996.069.293.882.562.974.480.8
      Kd-Net[26]82.380.174.674.370.388.673.590.287.281.094.957.486.778.151.869.980.3
      SO-Net[27]84.681.983.584.878.190.872.290.183.682.395.269.394.280.051.672.182.6
      RS-Net[29]84.982.786.484.178.290.469.391.487.083.595.466.092.681.856.175.882.2
      Octant-CNN85.383.983.688.379.291.170.891.887.582.995.772.294.583.660.075.581.9
      $$ mIoU = \frac{1}{N}\sum\limits_{i = 1}^{N}\frac{p_{ii}}{\sum_{j = 1}^{N}p_{ij}+\sum_{j = 1}^{N}p_{ji}-p_{ii}} $$ (5)

      其中$ p_{ij} $表示真实标签为$ i $, 预测结果为$ j $的数量, $ N $表示类别数. 可以看到, 本文仅将坐标信息用作输入, 就可以得到比使用法线信息的PointNet++[13]更好的性能. 同时, PointSIFT[14]在部件分割任务中并不能取得很好的效果, 主要由于其上采样使用了三阶段的卷积操作, 这带来了大量的参数, 对于ShapeNet[28]这种相对较小的数据集, 很容易造成模型的过拟合.

    • 为了进一步证明Octant-CNN的有效性, 本文还在斯坦福大学大型3D室内空间数据集(S3DIS)[30]上评估了其性能. 该数据集包含来自6个室内区域的272个房间. 每个点都用来自13个类别(天花板, 地板, 墙壁, 梁和其他)的语义标签进行标注. 参照PointNet[12], 本文将每个房间分成面积为$ 1m \times 1m $的块, 每个点都表示为9维向量(XYZ, RGB和归一化坐标). 在训练过程中, Octant-CNN在每个块中随机选取4096个点, 并将所有的点用于测试. 与PointNet[12]一样, 本文在6个区域上使用了6折交叉验证的方式.

      本文将Octant-CNN与PointNet[12], PointNet++[13], PointSIFT[14]进行了比较. 由于我们无法达到PointSIFT[14]中报告的结果, 因此仅显示根据作者提供的代码而获得的结果. 结果总结在表3中, 本文提出的Octant-CNN优于其他方法. 图4显示了Octant-CNN的一些可视化结果, 可以发现, Octant-CNN可以更平滑地分割场景, 这是由于Octant-CNN在卦限卷积模块中更好地学习局部几何特征.

      表 3  S3DIS语义分割结果

      Table 3.  Semantic segmentation results on S3DIS

      MethodmIoUOAceilingfloorwallbeamcolumnwindowsdoorchairtablebookcasesofaboardclutter
      PointNet[12]47.778.688.088.769.342.423.147.551.642.054.138.29.629.435.2
      PointNet++[13]57.383.891.592.874.641.328.154.559.664.658.927.152.052.348.0
      PointSIFT[14]55.583.591.191.375.542.024.051.456.660.255.817.050.257.149.9
      RS-Net[29]56.5-92.592.878.632.834.451.668.159.760.116.450.244.952.0
      Octant-CNN58.384.692.194.576.348.930.856.962.965.855.528.048.150.348.4

      图  4  S3DIS可视化结果

      Figure 4.  Visualization of results on S3DIS

    • 最后, 本文将Octant-CNN和PointSIFT[14]扩展到了KITTI[31]数据集上进行3D目标检测. KITTI 3D目标检测数据集由7481个训练图像和7518个测试图像以及相应的点云数据组成. 它具有三个目标类别: 汽车、行人和自行车. 对于3D目标检测, 本文遵循Frustum PointNets[32]的检测流程, 仅将PointNet特征提取模块替换成Octant-CNN以客观比较. 由于Frustum PointNets[32]仅公开了在训练集和验证集上的2D检测框, 因此本文评估的是Octant-CNN及相关方法在验证集上的检测结果.

      3D目标检测的实验结果如表4所示, 这些方法的检测流程都是基于Frustum PointNets[32]实现的, 主要不同之处在于点云的分割网络以及3D目标检测框的回归网络, 其中Frustum PointNet v1采用的是PointNet[12]的网络结构, Frustum PointNet v2采用的是PointNet++[13]的网络结构, 可以发现, 本文提出的方法要优于这些方法. 尤其对于小目标的检测性能提升较为明显, 图5同时也展示了一些检测的可视化结果.

      表 4  3D目标检测对比结果

      Table 4.  Performance compression in 3D object detection

      MethodCarsPedestriansCyclists
      EasyModerateHardEasyModerateHardEasyModerateHard
      F-PointNet v1[32]83.7569.3762.8365.3955.3248.6270.1752.8748.27
      F-PointNet v2[32]83.9371.2363.7264.2356.9550.1574.0454.9250.53
      Frustum PointSIFT[14]71.5666.1758.9763.1355.0849.0570.3652.5648.53
      Frustum Geo-CNN[33]85.0971.0263.3869.6460.5052.8875.6456.2552.54
      Frustum Octant-CNN85.1072.3164.4667.9059.7352.4476.5657.5054.26

      图  5  KITTI目标检测可视化结果

      Figure 5.  Visualization of detection results on KITTI

    • 本节在ModelNet40[9]数据集上进行了实验, 详细分析了网络结构中各个模块的作用, 并且分析了卦限卷积中不同特征融合方式、不同近邻点选择方法和不同特征输入的效果. 此外, 本节还对卦限卷积与其他方法的旋转鲁棒性和计算复杂度进行了比较.

      1) 结构的设计: 为了分析卦限卷积模块中各个部件的重要性, 通过将各个部件分别加入卦限卷积模块中进行实验, 结果如表5所示. 在卦限卷积模块中, 首先通过堆叠多层2D卷积以获取点云丰富的局部特征, 此时该模型可以达到90.7%的准确率. 为了充分利用低层的几何特征, 接着将所有卷积层的输出特征级联起来, 并通过一层MLP实现多层特征的融合, 此时的准确率可以提升到91.2%. 考虑到多层堆叠卷积可能带来的过拟合问题, 进一步以残差方式将融合特征与最后一层2D卷积层的输出特征相加, 准确率也进一步提升到91.5%. 最后, 为了能够客观的与PointNet++[13]等方法对比, 采用了投票机制, 将输入点云均匀旋转12个不同角度并分别送入模型中预测, 并取平均值作为最终的结果, 最终取得91.9%的准确率.

      表 5  结构设计分析

      Table 5.  Analysis of the structure design

      模型多层融合残差投票oAcc(%)
      A90.7
      B$\checkmark$91.2
      C$\checkmark$$\checkmark$91.5
      D$\checkmark$$\checkmark$$\checkmark$91.9

      2) 特征融合方式的选择: 为了比较2D卷积和MLP两种特征融合方法对最终结果性能的影响, 本组实验对这两种特征融合的方式进行了对比, 实验结果如表6所示. 可以观察到2D卷积效果更佳, 这是由于在使用MLP时, 其是对每个邻点单独处理, 然后通过最大值操作聚合局部特征, 该操作只保留了每个通道中最重要的信息, 从而导致细节信息的丢失; 而在使用2D卷积时, 其会考虑到所有邻点各个通道的信息, 充分利用了细节信息.

      表 6  2D卷积和MLP的对比

      Table 6.  Comparisons of 2D CNN and MLP

      模型运算oAcc(%)
      AMLP90.8
      B2D CNN91.9

      3) 近邻点的选择: $ K $近邻(K-nearest neighbor, KNN)是最常见的一种近邻选择方式, 本文提出了使用八卦限搜索的方式来选择近邻点. 对此, 本组实验对这两种近邻点的选择进行了对比, 实验结果如表7所示. 可以发现, 本文所使用的八卦限搜索的性能要优于KNN. 这两种近邻点的区别如图6所示, 其中方框表示选择的近邻点. 当使用KNN时, 选取的近邻点会受到点云密度特性的影响而偏向某一特定方向; 而使用八卦限搜索时, 所选取的近邻点来自于不同的方向, 从而更好地覆盖在点云上.

      表 7  不同邻点的比较

      Table 7.  The results of different neighbor points

      模型邻点准确率
      AK近邻90.2
      B八卦限搜索91.9

      图  6  K近邻和八卦限搜索的比较

      Figure 6.  Comparison of KNN and 8 octant search

      4)搜索半径的设置: 为了分析在使用八卦限搜索近邻点时, 搜索半径的限制对模型性能的影响, 通过设置几组不同的搜索半径进行实验. 由于在点云分类任务中, 点云首先被标准化到单位球体中, 因此最大搜索半径设置为1. 结果如表8所示, 我们观察到, 当搜索半径越大, 分类准确率也会随之提升. 这是由于在设置搜索半径时, 部分偏离中心点较远的近邻点会被丢弃, 从而导致几何结构的不完整. 因此, 我们取消了搜索半径的限制.

      表 8  不同搜索半径的比较

      Table 8.  Comparison of different search radius

      模型搜索半径oAcc(%)
      A(0.25, 0.5, 1.0)88.0
      B(0.4, 0.8, 1.0)89.2
      C(0.5, 1.0, 1.0)89.9
      DNone91.9

      5) 不同输入特征的比较: 本组实验对比了使用不同的输入特征对模型最终性能的影响, 实验结果如表9所示. 从实验结果可以看出来, 当仅使用邻点的特征作为卷积的输入时, 由于缺少点云的空间位置信息, 此时的效果不佳. 随着越来越多的坐标信息, 如中心点的坐标、中心点与邻点的残差坐标同时送入卷积中进行运算, 精度也会得到相应的提升.

      表 9  不同输入通道的结果比较

      Table 9.  The results of different input channels

      模型输入通道oAcc(%)
      A($f_{ij}$)90.1
      B($x_i-x_{ij}, f_{ij}$)90.3
      C($x_i, f_{ij}$)90.8
      D($x_i, x_i-x_{ij}, f_{ij}$)91.9

      6) 点云旋转的鲁棒性分析: 在本组实验中, 将输入点云分别旋转$ 0^{\circ} $, $ 30^{\circ} $, $ 60^{\circ} $, $ 90^{\circ} $, $ 180^{\circ} $后送入Octant-CNN和PointSIFT[14]中进行预测, 通过计算由不同角度得到的准确率的均值和方差来比较这两种方法对点云旋转的鲁棒性. 由于Octant-CNN在一定程度上依赖于T-Net, 为了更客观地比较单阶段卷积和三阶段卷积对点云旋转的鲁棒性的影响, 我们还将T-Net加入PointSIFT模型中, 实验结果如表10所示. 可以发现, T-Net在一定程度上提高了PointSIFT的旋转鲁棒性, 但是本文提出的单阶段卷积对点云旋转依然更具鲁棒性, 这是由于三阶段卷积是存在先后顺序的, 对于三维空间不同维度具有各向异性, 而单阶段卷积同等处理各卦限的点, 对输入点云具有各向同性.

      表 10  点云旋转鲁棒性比较

      Table 10.  Comparison of robustness to point cloud rotation

      角度$0^\circ$$30^\circ$$60^\circ$$90^\circ$$180^\circ$均值方差
      PointSIFT[14]88.289.288.988.788.588.70.124
      PointSIFT+T-Net89.189.489.488.688.689.040.114
      Octant-CNN91.591.791.991.591.891.680.025

      7) Octant-CNN的复杂度: 最后, 我们对比了Octant-CNN和其他一些方法在语义分割任务中的参数量和每秒的浮点运算量(FLOPs), 结果如表11所示. 可以观察到, 相比于PointSIFT[14], Octant-CNN的参数量和FLOPs都得到了明显的降低, 这主要来自于两个方面: 1) 在下采样阶段, PointSIFT采用可学习的方式聚合局部特征, 这为PointSIFT引入了额外的可学习参数, 而Octant-CNN直接采用最大值采样聚合局部特征, 这一操作不需要额外参数; 2) 由于语义分割任务需要上采样以恢复点的原始数量, PointSIFT首先使用几层MLP抽象语义特征, 紧接着使用三阶段卷积进一步丰富语义信息, 这带来了大量的参数, Octant-CNN则只使用了MLP来抽象高层语义特征. 同时可以发现, 对于部件分割和目标检测这两个数据集相对较小的任务, PointSIFT由于参数量过大, 导致模型出现过拟合的情况, 因此在这两个任务上的效果不佳.

      表 11  点云语义分割的复杂度

      Table 11.  Complexity in point cloud semantic segmentation

      方法参数量FLOPs
      PointNet[12]1.17M7.22B
      PointNet++[13]0.97M1.96B
      PointSIFT[14]13.53M24.32B
      Octant-CNN4.31M2.44B
    • 为了有效捕获点云的局部几何信息, 本文提出了Octant-CNN, 并在对象分类、部件分割、语义分割和目标检测上均取得显著提升. Octant-CNN具有三个关键点: 首先, 在近邻空间中定位最近邻点时, Octant-CNN取消了搜索范围的限制, 这使得远离中心点的近邻点可以被捕获, 从而更好地反映点云的密度特性. 其次, Octant-CNN使用单阶段的卷积操作直接提取点的局部几何结构, 这克服了三阶段卷积操作带来的对卦限顺序敏感的问题, 从而对点云旋转更具鲁棒性. 最后, 通过下采样模块实现对原始点集的分组及特征聚合, 从而增大了中间特征的感受野, 并大大降低了卷积操作的计算量.

WeChat 关注分享

返回顶部

目录

    /

    返回文章
    返回