《计算机应用》唯一官方网站 ›› 2022, Vol. 42 ›› Issue (7): 2184-2191.DOI: 10.11772/j.issn.1001-9081.2021071319
所属专题: 多媒体计算与计算机仿真
秦庭威1,2, 赵鹏程1,2, 秦品乐1,2(), 曾建朝1,2, 柴锐1,2, 黄永琦1,2
收稿日期:
2021-07-22
修回日期:
2021-10-13
接受日期:
2021-10-18
发布日期:
2021-11-01
出版日期:
2022-07-10
通讯作者:
秦品乐
作者简介:
秦庭威(1997—),男,陕西渭南人,硕士研究生,CCF会员,主要研究方向:点云配准、机器学习基金资助:
Tingwei QIN1,2, Pengcheng ZHAO1,2, Pinle QIN1,2(), Jianchao ZENG1,2, Rui CHAI1,2, Yongqi HUANG1,2
Received:
2021-07-22
Revised:
2021-10-13
Accepted:
2021-10-18
Online:
2021-11-01
Published:
2022-07-10
Contact:
Pinle QIN
About author:
QIN Tingwei, born in 1997, M. S. candidate. His research interests include point cloud registration, machine learning.Supported by:
摘要:
针对传统点云配准算法精度低、鲁棒性差以及放疗前后癌症患者无法实现精确放疗的问题,提出一种基于残差注意力机制的点云配准算法(ADGCNNLK)。首先,在动态图深度卷积网络(DGCNN)中添加残差注意力机制来有效地利用点云的空间信息,并减少信息损失;然后,利用添加残差注意力机制的DGCNN提取点云特征,这样做不仅可以在保持点云置换不变性的同时捕捉点云的局部几何特征,也可以在语义上将信息聚合起来,从而提高配准效率;最后,将提取到的特征点映射到高维空间中并使用经典的图像迭代配准算法LK进行配准。实验结果表明,所提算法与迭代最近点算法(ICP)、全局优化的ICP算法(Go-ICP)和PointNetLK相比,在无噪、有噪的情况下配准效果均最好。其中,在无噪情况下,与PointNetLK相比,所提算法的旋转均方误差降低了74.61%,平移均方误差降低了47.50%;在有噪声的情况下,与PointNetLK相比,所提算法的旋转均方误差降低了73.13%,平移均方误差降低了44.18%,说明所提算法与PointNetLK相比鲁棒性更强。将所提算法应用于放疗前后癌症患者人体点云模型的配准,从而辅助医生治疗,并实现了精确放疗。
中图分类号:
秦庭威, 赵鹏程, 秦品乐, 曾建朝, 柴锐, 黄永琦. 基于残差注意力机制的点云配准算法[J]. 计算机应用, 2022, 42(7): 2184-2191.
Tingwei QIN, Pengcheng ZHAO, Pinle QIN, Jianchao ZENG, Rui CHAI, Yongqi HUANG. Point cloud registration algorithm based on residual attention mechanism[J]. Journal of Computer Applications, 2022, 42(7): 2184-2191.
算法 | 旋转 | 平移 | ||||
---|---|---|---|---|---|---|
均方误差 | 均方根误差 | 绝对平均误差 | 均方误差 | 均方根误差 | 绝对平均误差 | |
ICP | 911.478 455 | 30.190 701 | 26.454 945 | 0.096 454 | 0.310 570 | 0.279 845 |
Go-ICP | 158.565 457 | 12.592 278 | 3.296 845 | 0.000 892 | 0.029 866 | 0.008 194 |
PointNetLK | 240.456 441 | 15.506 657 | 4.847 512 | 0.000 539 | 0.023 216 | 0.006 258 |
本文算法 | 61.045283 | 7.813148 | 2.854556 | 0.000283 | 0.016822 | 0.004146 |
表1 使用ModelNet40所有数据的训练和测试
Tab. 1 Training and testing on all data of ModelNet40
算法 | 旋转 | 平移 | ||||
---|---|---|---|---|---|---|
均方误差 | 均方根误差 | 绝对平均误差 | 均方误差 | 均方根误差 | 绝对平均误差 | |
ICP | 911.478 455 | 30.190 701 | 26.454 945 | 0.096 454 | 0.310 570 | 0.279 845 |
Go-ICP | 158.565 457 | 12.592 278 | 3.296 845 | 0.000 892 | 0.029 866 | 0.008 194 |
PointNetLK | 240.456 441 | 15.506 657 | 4.847 512 | 0.000 539 | 0.023 216 | 0.006 258 |
本文算法 | 61.045283 | 7.813148 | 2.854556 | 0.000283 | 0.016822 | 0.004146 |
算法 | 旋转 | 平移 | ||||
---|---|---|---|---|---|---|
均方误差 | 均方根误差 | 绝对平均误差 | 均方误差 | 均方根误差 | 绝对平均误差 | |
ICP | 901.144 123 | 30.019 062 | 24.565 215 | 0.092 549 | 0.304 218 | 0.281 916 |
Go-ICP | 194.451 413 | 13.944 583 | 3.245 444 | 0.000 512 | 0.0226 27 | 0.007 219 |
PointNetLK | 314.554 104 | 17.735 671 | 6.345 844 | 0.000 849 | 0.029 138 | 0.008 106 |
本文算法 | 84.145566 | 9.173089 | 3.155154 | 0.000454 | 0.021307 | 0.005651 |
表2 在 ModelNet40未知对象类别的数据上测试
Tab. 2 Testing on unknown object class data of ModelNet40
算法 | 旋转 | 平移 | ||||
---|---|---|---|---|---|---|
均方误差 | 均方根误差 | 绝对平均误差 | 均方误差 | 均方根误差 | 绝对平均误差 | |
ICP | 901.144 123 | 30.019 062 | 24.565 215 | 0.092 549 | 0.304 218 | 0.281 916 |
Go-ICP | 194.451 413 | 13.944 583 | 3.245 444 | 0.000 512 | 0.0226 27 | 0.007 219 |
PointNetLK | 314.554 104 | 17.735 671 | 6.345 844 | 0.000 849 | 0.029 138 | 0.008 106 |
本文算法 | 84.145566 | 9.173089 | 3.155154 | 0.000454 | 0.021307 | 0.005651 |
算法 | 旋转 | 平移 | ||||
---|---|---|---|---|---|---|
均方误差 | 均方根误差 | 绝对平均误差 | 均方误差 | 均方根误差 | 绝对平均误差 | |
ICP | 896.454 135 | 29.940 843 | 24.454 120 | 0.088 652 | 0.297 745 | 0.261 245 |
Go-ICP | 132.451 575 | 11.508 761 | 2.652 314 | 0.000 569 | 0.023 853 | 0.004 896 |
PointNetLK | 262.451 567 | 16.200 357 | 4.784 552 | 0.000 498 | 0.022 316 | 0.006 205 |
本文算法 | 70.512 636 | 8.397 180 | 2.559 214 | 0.000 278 | 0.016 673 | 0.004 526 |
表3 在ModelNet40添加高斯噪声的数据上进行测试
Tab. 3 Testing on data with Gaussian noise added of ModelNet40
算法 | 旋转 | 平移 | ||||
---|---|---|---|---|---|---|
均方误差 | 均方根误差 | 绝对平均误差 | 均方误差 | 均方根误差 | 绝对平均误差 | |
ICP | 896.454 135 | 29.940 843 | 24.454 120 | 0.088 652 | 0.297 745 | 0.261 245 |
Go-ICP | 132.451 575 | 11.508 761 | 2.652 314 | 0.000 569 | 0.023 853 | 0.004 896 |
PointNetLK | 262.451 567 | 16.200 357 | 4.784 552 | 0.000 498 | 0.022 316 | 0.006 205 |
本文算法 | 70.512 636 | 8.397 180 | 2.559 214 | 0.000 278 | 0.016 673 | 0.004 526 |
算法 | 旋转 | 平移 | ||||
---|---|---|---|---|---|---|
均方误差 | 均方根误差 | 绝对平均误差 | 均方误差 | 均方根误差 | 绝对平均误差 | |
PointNetLK | 240.456 441 | 15.506 657 | 4.847 512 | 0.000 539 | 0.023 216 | 0.006 258 |
APointNetLK | 178.165 455 | 13.347 863 | 3.845 162 | 0.000 386 | 0.019 647 | 0.004 948 |
DGCNNLK | 84.159 554 | 9.173 851 | 3.245 457 | 0.000 326 | 0.018 055 | 0.004 256 |
本文算法 | 61.045283 | 7.813148 | 2.854556 | 0.000283 | 0.016822 | 0.004146 |
表4 APointNet、DGCNN和ADGCNN特征学习比较
Tab. 4 Comparison of feature learning among APointNet, DGCNN and ADGCNN
算法 | 旋转 | 平移 | ||||
---|---|---|---|---|---|---|
均方误差 | 均方根误差 | 绝对平均误差 | 均方误差 | 均方根误差 | 绝对平均误差 | |
PointNetLK | 240.456 441 | 15.506 657 | 4.847 512 | 0.000 539 | 0.023 216 | 0.006 258 |
APointNetLK | 178.165 455 | 13.347 863 | 3.845 162 | 0.000 386 | 0.019 647 | 0.004 948 |
DGCNNLK | 84.159 554 | 9.173 851 | 3.245 457 | 0.000 326 | 0.018 055 | 0.004 256 |
本文算法 | 61.045283 | 7.813148 | 2.854556 | 0.000283 | 0.016822 | 0.004146 |
算法 | 误差≤ 0.01的点对个数 | 误差>0.01的点对个数 | 准确率/% |
---|---|---|---|
ICP | 4 824 | 2 066 | 70.01 |
Go-ICP | 5 128 | 1 762 | 74.43 |
PointNetLK | 5 396 | 1 494 | 78.32 |
本文算法 | 5 876 | 1 014 | 85.28 |
表5 放疗前后人体点云模型配准结果
Tab.5 Registration results of human body point cloud models before and after radiotherapy
算法 | 误差≤ 0.01的点对个数 | 误差>0.01的点对个数 | 准确率/% |
---|---|---|---|
ICP | 4 824 | 2 066 | 70.01 |
Go-ICP | 5 128 | 1 762 | 74.43 |
PointNetLK | 5 396 | 1 494 | 78.32 |
本文算法 | 5 876 | 1 014 | 85.28 |
算法 | 头(1 045对)准确率 | 胸(549对)准确率 | 腹(536对)准确率 | 胳膊(1 214对)准确率 | 腿(694对)准确率 |
---|---|---|---|---|---|
ICP | 71.29 | 85.79 | 75.93 | 82.37 | 63.54 |
Go-ICP | 75.41 | 90.35 | 81.72 | 88.63 | 62.97 |
PointNetLK | 80.77 | 93.62 | 85.26 | 89.95 | 70.61 |
本文算法 | 84.98 | 95.08 | 86.57 | 92.34 | 71.33 |
表6 放疗前后人体部位配准结果 (%)
Tab. 6 Registration results of human body parts before and after radiotherapy
算法 | 头(1 045对)准确率 | 胸(549对)准确率 | 腹(536对)准确率 | 胳膊(1 214对)准确率 | 腿(694对)准确率 |
---|---|---|---|---|---|
ICP | 71.29 | 85.79 | 75.93 | 82.37 | 63.54 |
Go-ICP | 75.41 | 90.35 | 81.72 | 88.63 | 62.97 |
PointNetLK | 80.77 | 93.62 | 85.26 | 89.95 | 70.61 |
本文算法 | 84.98 | 95.08 | 86.57 | 92.34 | 71.33 |
1 | 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. 10.1109/34.121791 |
2 | RUSINKIEWICZ S, LEVOY M. Efficient variants of the ICP algorithm [C]// Proceedings of the 3rd International Conference on 3D Digital Imaging and Modeling. Piscataway: IEEE, 2001: 145-152. |
3 | SEGAL A, HAEHNEL D, THRUN S. Generalized-ICP[EB/OL]. [2021-05-13]. . 10.15607/rss.2009.v.021 |
4 | BOUAZIZ S, TAGLIASACCHI A, PAULY M. Sparse iterative closest point[J]. Computer Graphics Forum, 2013, 32(5): 113-123. 10.1111/cgf.12178 |
5 | POMERLEAU F, COLAS F, SIEGWART R. A review of point cloud registration algorithms for mobile robotics[J]. Foundations and Trends in Robotics, 2015, 4(1): 1-104. 10.1561/2300000035 |
6 | QI C R, SU H, MO K C, et al. PointNet: deep learning on point sets for 3D classification and segmentation[C]// Proceedings of the 2017 IEEE Conference on Computer Vision and Pattern Recognition. Piscataway: IEEE, 2017: 77-85. 10.1109/cvpr.2017.16 |
7 | WANG Y, SUN Y B, LIU Z W, et al. Dynamic graph CNN for learning on point clouds[J]. ACM Transactions on Graphics, 2019, 38(5): No.146. 10.1145/3326362 |
8 | AOKI Y, GOFORTH H, SRIVATSAN R A, et al. PointNetLK: robust & efficient point cloud registration using PointNet[C]// Proceedings of the 2019 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Piscataway: IEEE, 2019: 7154-7165. 10.1109/cvpr.2019.00733 |
9 | LUCAS D D, KANADE T. An iterative image registration technique with an application to stereo vision[C]// Proceedings of the 1981 International Joint Conference on Artificial Intelligence. San Francisco: Morgan Kaufmann Publishers Inc., 1981: 674-679. |
10 | SARODE V, LI X Q, GOFORTH H, et al. PCRNet: point cloud registration network using pointnet encoding[EB/OL]. (2018-11-04) [2021-05-13].. |
11 | WANG Y, SOLOMON J. Deep closest point: learning representations for point cloud registration[C]// Proceedings of the 2019 IEEE/CVF International Conference on Computer Vision. Piscataway: IEEE, 2019: 3522-3531. 10.1109/iccv.2019.00362 |
12 | WANG Y, SOLOMON J. PRNet: self-supervised learning for partial-to-partial registration[C/OL]// Proceedings of the 33rd Conference on Neural Information Processing Systems. [2021-05-13].. |
13 | YEW Z J, LEE G H. RPM-Net: robust point matching using learned features[C]// Proceedings of the 2020 IEEE/CVF Conference on Computer Vision and Pattern Recognition. Piscataway: IEEE, 2020: 11821-11830. 10.1109/cvpr42600.2020.01184 |
14 | LOPER M, MAHMOOD N, ROMERO J, et al. SMPL: a skinned multi-person linear model[J]. ACM Transactions on Graphics, 2015, 34(6): No.248. 10.1145/2816795.2818013 |
15 | QI C R, YI L, SU H, et al. PointNet++: deep hierarchical feature learning on point sets in a metric space[C]// Proceedings of the 31st International Conference on Neural Information Processing Systems. Red Hook, NY: Curran Associates Inc., 2017: 5105-5114. |
16 | JADERBERG M, SIMONYAN K, ZISSERMAN A, et al. Spatial transformer networks[C]// Proceedings of the 28th International Conference on Neural Information Processing Systems. Cambridge: MIT Press, 2015: 2017-2025. 10.1007/s11263-015-0823-z |
17 | ZHOU B, KHOSLA A, LAPEDRIZA A, et al. Learning deep features for discriminative localization[C]// Proceedings of the 2016 IEEE Conference on Computer Vision and Pattern Recognition. Piscataway: IEEE, 2016: 2921-2929. 10.1109/cvpr.2016.319 |
18 | WOO S, PARK J, LEE J Y, et al. CBAM: convolutional block attention module[C]// Proceedings of the 2018 European Conference on Computer Vision, LNCS 11211. Cham: Springer, 2018: 3-19. |
19 | HE K M, ZHANG X Y, REN S Q, et al. Deep residual learning for image recognition[C]// Proceedings of the 2016 IEEE Conference on Computer Vision and Pattern Recognition. Piscataway: IEEE, 2016: 770-778. 10.1109/cvpr.2016.90 |
20 | 林钦壮,何昭水. 基于注意力机制的高效点云识别方法[J]. 计算机与现代化, 2020(8):51-55. 10.3969/j.issn.1006-2475.2020.08.008 |
LIN Q Z, HE Z S. Method of efficient point cloud recognition based on attention mechanism[J]. Computer and Modernization, 2020(8):51-55. 10.3969/j.issn.1006-2475.2020.08.008 | |
21 | ZHOU Q Y, PARK J, KOLTUN V. Open 3D: modern library fora 3D data processing[EB/OL]. (2018-01-30) [2021-05-13].. |
[1] | 黄云川, 江永全, 黄骏涛, 杨燕. 基于元图同构网络的分子毒性预测[J]. 《计算机应用》唯一官方网站, 2024, 44(9): 2964-2969. |
[2] | 杨鑫, 陈雪妮, 吴春江, 周世杰. 结合变种残差模型和Transformer的城市公路短时交通流预测[J]. 《计算机应用》唯一官方网站, 2024, 44(9): 2947-2951. |
[3] | 潘烨新, 杨哲. 基于多级特征双向融合的小目标检测优化模型[J]. 《计算机应用》唯一官方网站, 2024, 44(9): 2871-2877. |
[4] | 李顺勇, 李师毅, 胥瑞, 赵兴旺. 基于自注意力融合的不完整多视图聚类算法[J]. 《计算机应用》唯一官方网站, 2024, 44(9): 2696-2703. |
[5] | 秦璟, 秦志光, 李发礼, 彭悦恒. 基于概率稀疏自注意力神经网络的重性抑郁疾患诊断[J]. 《计算机应用》唯一官方网站, 2024, 44(9): 2970-2974. |
[6] | 王熙源, 张战成, 徐少康, 张宝成, 罗晓清, 胡伏原. 面向手术导航3D/2D配准的无监督跨域迁移网络[J]. 《计算机应用》唯一官方网站, 2024, 44(9): 2911-2918. |
[7] | 付帅, 郭小英, 白茹意, 闫涛, 陈斌. 改进的CloFormer模型与有序回归相结合的年龄评估方法[J]. 《计算机应用》唯一官方网站, 2024, 44(8): 2372-2380. |
[8] | 陈彤, 杨丰玉, 熊宇, 严荭, 邱福星. 基于多尺度频率通道注意力融合的声纹库构建方法[J]. 《计算机应用》唯一官方网站, 2024, 44(8): 2407-2413. |
[9] | 刘禹含, 吉根林, 张红苹. 基于骨架图与混合注意力的视频行人异常检测方法[J]. 《计算机应用》唯一官方网站, 2024, 44(8): 2551-2557. |
[10] | 顾焰杰, 张英俊, 刘晓倩, 周围, 孙威. 基于时空多图融合的交通流量预测[J]. 《计算机应用》唯一官方网站, 2024, 44(8): 2618-2625. |
[11] | 石乾宏, 杨燕, 江永全, 欧阳小草, 范武波, 陈强, 姜涛, 李媛. 面向空气质量预测的多粒度突变拟合网络[J]. 《计算机应用》唯一官方网站, 2024, 44(8): 2643-2650. |
[12] | 赵亦群, 张志禹, 董雪. 基于密集残差物理信息神经网络的各向异性旅行时计算方法[J]. 《计算机应用》唯一官方网站, 2024, 44(7): 2310-2318. |
[13] | 徐松, 张文博, 王一帆. 基于时空信息的轻量视频显著性目标检测网络[J]. 《计算机应用》唯一官方网站, 2024, 44(7): 2192-2199. |
[14] | 龙伍丹, 彭博, 胡节, 申颖, 丁丹妮. 基于加强特征提取的道路病害检测算法[J]. 《计算机应用》唯一官方网站, 2024, 44(7): 2264-2270. |
[15] | 刘瑞华, 郝子赫, 邹洋杨. 基于多层级精细特征融合的步态识别算法[J]. 《计算机应用》唯一官方网站, 2024, 44(7): 2250-2257. |
阅读次数 | ||||||
全文 |
|
|||||
摘要 |
|
|||||