2020.09.24-2020.09.26读 P2GNet:Pose-Guided Point Cloud Generating Networks for 6-DoF Object Pose Esti

P2GNet:Pose-Guided Point Cloud Generating Networks for 6-DoF Object Pose Estimation

背景信息

  1. 输入RGBD图像
  2. 基于DenseFusion
  3. 最大创新点是将model也训练在特征提取网络中,并且用一个点云生成网络来进行监督学习

方法

整个网络可以由三部分组成:
Point-wise Fusion Network,Point cloud generating network, pose estimation network
在这里插入图片描述
canonical pose的理解:我理解的这个正则位姿就是model本身相对于世界坐标系的位姿。
在这里插入图片描述
这篇文章作图做的不是很好,有很多会引起歧义,还有图中重复的地方,不明确的地方特别多。
所以,理解起来比较吃力。

Point-wise Fusion Network

在这里插入图片描述

  1. 三种数据源的数据表示方法
    在这里插入图片描述
    三种数据源,相对于densefusion多了model作为输入。这三种数据源表示成:
    (1)RGB提取成deep representation(N sample)
    (2)depth提取成re-projected depth values(N sample)
    (3)model转换到target进行表示(N sample)

  2. Point-wise Fusion 网络
    (1)逐点(共N个点)融合在这里存在一个问题:三种数据源的点对应关系怎么找?
    densefusion两种数据源RGB和depth逐像素对应就可以找到点的对应,但是model本身是点云,怎么跟RGB和depth对应是个困难的问题。如果直接使用没有对其的model点云来做,发现性能会下降。
    作者说Point-wise Fusion 网络可以实现这个功能,因为他们提出一个point-fusion block里面引入了修正的Non-Local block[X.Wang,R.Girshick,A.Gupta,andK.He.Non-localneural networks. In CVPR, 2018. 4 ]
    这里面的原理或许还需要看一下Non-Local block原理才能知道,这留作后面的任务
    (2)如何生成最后的特征向量?
    作者说经过这三个分支之后(Point-wise Fusion本身就处理三个分支数据),每个分支输出的向量维度都是 d e m b d_{emb} demb, 把他们串联起来,每个点的特征就会变为 d e m b ∗ 3 d_{emb}*3 demb3维的向量。然后把所有点的特征(原文the concatenated features)输入到一个类似PointNet结构的网络中,如图2a所示那种. 然后再作用一个全局平均池化,以最终生成一个固定大小的全局特征向量。

  3. 点云生成网络
    good idea: 用点云生成网络来监督特征提取和融合过程
    生成目标点云in target pose来监督point-fusion网络对model点云内在属性的提取。
    生成目标点云in canonical pose来稳定训练过程以及使编码特征包含目标模型的完整3D信息。
    注意:点云生成网络生成的点云只用作训练监督作用,这些点云不参与后面的位姿估计。

  4. 位姿估计网络
    这篇文章采用了与densefusion相似的位姿估计网络,位姿估计网络的输入是Point-wise Fusion 网络生成的feature。
    与densefusion网络存在三点不同:
    (1) 输入通道数量由二维增加到三维。
    (2)densefusion每个目标对象都要对应一个位姿估计网络,P2GNet改善了这一问题,使得网络更通用。
    (3)把densefusion估计置信分数的网络激活函数由sigmoid换成了softmax,去掉了置信分数计算的正则项。

学习目标函数

(1)位姿估计损失
与densefusion一样,
ADD:
在这里插入图片描述
ADD-S:
在这里插入图片描述
这里再解释一下ADD-S的理解:对称对象上使用ADD,会在神经网络上施加不必要的约束,即回归到备选3D旋转之一,产生训练不一致的信号。
final goal:
在这里插入图片描述
i是指第i个点的预测,这跟作者上面的描述产生的矛盾:上面“2. Point-wise Fusion 网络” 指出用了一个类似于PointNet的网络最后生成了全局的特征向量,我理解的是:作者并没有很好的描述清楚这里的步骤,我感觉应该是类似与densefusion中那种,生成全局特征向量之后,再把它串联到每个点的 d e m b ∗ 3 d_{emb}*3 demb3维向量上。

(2)点云生成损失
在这里插入图片描述
这个所谓的chamfer distance(倒角距离),我理解的是跟ADD-S很像的指标,1)原始点云上的点不动,去用它与生成点云上的最近点做距离误差。 2)生成点云上的点不动,去用它与原始点云上的最近点做距离误差。这两种距离误差取最大的那一个作为最终的倒角距离。

(3)整体训练损失

在这里插入图片描述

技术实现细节

训练策略
step1:
联合训练pose-guided point cloud generation network和pose estimation network.
step2:
用densefusion中的iterative refinement network进行位姿优化训练。

实验结果

LineMOD

在这里插入图片描述
文章做了消融实验,证明他们提出的模块工作有效:

在这里插入图片描述

YCB

在这里插入图片描述

推理时间效率:
real-time application (∼25 FPS, about 5 objects each frame)

读后感

1.这篇文章最重要的一个创新就是,将模型点云作为数据输入到网络中去。增加了模型3D信息有助于位姿估计。

2.文章中用的处理逐点匹配的Point-wise Fusion Network原理没有解释的很清楚。最终要想实现RGB、depth、model上各个点的对应关系可能确实比较困难,否则直接就用model与depth的对应关系通过ICP算出位姿了。所以作者提出的方法只能说是部分匹配,究竟有匹配度有多少作者也没做这方面的实验,因此不得而知,这是可以改进的地方。

3.在输入数据源上增加模型空间信息,是3D位姿估计中一个可以尝试的方向。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值