文件名称:em算法matlab代码-cycpd:Cython实现相干点漂移(CPD)
文件大小:7.58MB
文件格式:ZIP
更新时间:2024-06-15 10:58:54
系统开源
em算法matlab代码Cython-CPD 相干点漂移算法的Numpy + Cython实现。 更新PyCPD模块以包括Cython尝试并提高性能 简介/背景 请参阅此处(),了解Pure Numpy的实现请参阅此处()以获取描述CPD的原始手稿请在此处()查看您可以请求的原始代码(Matlab) 请参阅此处以获取通过辅助来源存储在github上的Matlab代码() 请参阅此处()以获取C ++实现 此实现旨在加快CPD的PyCPD实现。 首先,我们添加了cython函数来计算EM算法的期望步长。 这样可以将E-step时间减少到1/3。 E-step是刚性和仿射配准的主要瓶颈。 因此,此功能可将这些方法的注册减少到〜1/3。 对于可变形(非刚性)配准,主要瓶颈是求解变换参数的方程组,该过程耗时约9秒(5k点云)。 我们采用的第一种加快处理速度的方法是实施CPD原始论文中描述的低等级方法。 这种低阶方法大大减少了计算时间,现在使用默认参数的整个M步骤花费了不到1秒的时间,而E步骤则成为了瓶颈(与刚性和仿射一样)。 下一步将是: 添加FGT(快速高斯变换)。 这有可能进一步提高所有方
【文件预览】:
cycpd-master
----setup.py(1KB)
----.gitignore(42B)
----README.MD(5KB)
----requirements.txt(12B)
----data()
--------surface_points_bone_1_5k_points.npy(378KB)
--------bunny_target.txt(34KB)
--------surface_points_bone_2_rigid_register_to_1_5k_points.npy(378KB)
--------fish_source.txt(5KB)
--------surface_points_bone_deformable_target.npy(378KB)
--------surface_points_bone_2_5k_points.npy(373KB)
--------fish_target.txt(5KB)
--------bunny_source.txt(33KB)
----.travis.yml(197B)
----LICENSE(1KB)
----.DS_Store(14KB)
----cycpd()
--------rigid_registration.py(4KB)
--------__init__.py(182B)
--------deformable_registration.py(4KB)
--------affine_registration.py(2KB)
--------__pycache__()
--------cython()
--------expectation_maximization_registration.py(6KB)
----testing()
--------deformable_test.py(4KB)
--------affine_test.py(2KB)
--------rigid_test.py(2KB)
--------__pycache__()
----examples()
--------knee_deformable_3D.py(3KB)
--------knee_rigid_3D.py(2KB)
--------knee_affine_3D.py(2KB)
----.idea()
--------misc.xml(296B)
--------workspace.xml(3KB)
--------vcs.xml(180B)
--------inspectionProfiles()
--------cycpd.iml(466B)
--------modules.xml(262B)
----gifs()
--------Deformable_knee.gif(2.3MB)
--------Affine_knee.gif(2.39MB)
--------Rigid_knee.gif(2.23MB)