《论文阅读》PMP-Net: Point Cloud Completion by Learning Multi-step Point Moving Paths

本文介绍了一种名为PMP-Net的点云补全方法,通过学习多步点移动路径,实现从稀疏到稠密的转换。该方法采用迭代结构,利用PointNet++提取特征并传播全局信息,结合RNN模块进行逐点位移预测,同时引入EMD损失和正则化约束。文章重点展示了方法的步骤、关键模块设计及在Completion3D数据集上的实验效果。
摘要由CSDN通过智能技术生成

留个笔记自用

PMP-Net: Point Cloud Completion by Learning Multi-step Point Moving Paths

做什么

在这里插入图片描述
Point Cloud Completion点云补全,简单来说,由于扫描限制,扫描得到的结果可能是一个不完整的稀疏点云,任务目标就是保证形状和全局的前提下进行上采样一样的工作,将稀疏点云构造成具有局部信息的稠密点云

做了什么

在这里插入图片描述
这里点云补全的方法是来模拟移动行为,将不完整点云中的逐个点进行移动,也就是根据总的点移动距离的约束,为每个点预测唯一的点移动路径,来组成最后的补全点云
在这里插入图片描述
并且这里是一个迭代式的步骤

怎么做

在这里插入图片描述
整体框架是迭代式结构,P是输入点云,pi∈P,目标点云也就是补全点云P’,pj’∈P’,任务目标是预测每个点的位移能让它从输入点云P到补全点云P’,也就是预测△P={△pi}。迭代分为三步,不同步的预测标记为△pik,上面的图就表示了整体的输入和输出过程,第一步输入原点云,输出第一次位移量,第二次输入第一次位移量和原点云,作为第二次点云,输出第二次位移量,第三步同理。
然后是这里每步的预测模块,PMD
在这里插入图片描述
首先,先将输入的点云经过一个feature encoder,这里采用的是PointNet++的提取全局特征,然后通过特征传播模块将全局特征传播到每个点,这里的h就是逐点特征,最后这一步期望输出的逐点位移△由最后一个逐点特征h通过MLP得到,而FP-module是Pointnet++中的结构,可以理解成根据逐点特征求得全局特征
在这里插入图片描述
然后是图上的RPA模块,也就是全局特征传播至逐点特征的模块
在这里插入图片描述
这个模块可以理解成用于记忆先前路径的信息和推断每个点的下一个位置
在这里插入图片描述
这里的输入有一个hk-1也就是上一个step的逐点特征,这里为了将这个先验信息进行选择性记忆和遗忘,模仿了GRU的设计方法进行设计
在这里插入图片描述
一个r一个z,设计方法跟GRU中的reset重置门和update更新门一样
在这里插入图片描述
然后再通过一个门控计算,计算的是前面step特征到现在这步的信息保留特征
在这里插入图片描述
最后就将保留特征和当前全局特征进行计算得到,简单来说,这里由于是迭代式的结构,所以需要用RNN来选择性保留遗忘时序信息,所以设计了一个注重当前输入的结构
至此,就完成了整体框架
接下来是根据输出△来进行LOSS设计和最小化路径,也就是任务目标,首先,定义两个约束
在这里插入图片描述
这里的X^是原点云,也就是不完整点云,X是目标点云,也就是完整点云,这个LOSS是EMD LOSS,重建里面常用的了,φ是一个映射函数,最小化点之间的平均距离
简单来说,这个LOSS就是计算的是每个点到另外一个点云的平均距离,希望这个和是最小的
在这里插入图片描述
这里可以理解成一个正则化,不仅希望点云和GT间距离最小,也希望变化量的和最小,这俩都可以理解成是约束,防止网络做出冗余决策或者强制决策
在这里插入图片描述
标准的chamfer loss
最后
在这里插入图片描述

效果

在这里插入图片描述
在Completion3D数据集上,通过L2 chamfer距离进行的检测

总结

1.逐步迭代的想法,很多领域都很范用,一步步迭代式的增强效果
2.补全邻域的新的一种做法,相比于点直接生成,采用逐点位移的方式,可以用几何约束进行约束,这块或许可以做成无监督的?

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值