1.背景信息

  1. 输入单张RGB图像
  2. 隔壁实验室的成果
  3. 最大的亮点:
    (1)证明了两阶段(先求关键点再用PnP求解位姿)比end to end的方法具有优势。直接求解非线性旋转空间,会带来优化上的困难。
    (2)使用unit vector filed来表示方向特征,这被证明是更利于学习和优化的。这里没有用offset,失去了特征大小信息,我觉得是个可以改进的地方。
    (3)使用dense的方法,pixel-wise预测unit vector,并且用基于RANSAC的投票方法进行投票。
    (4)改进的PnP,在PnP公式中引入了不确定性,协方差矩阵,使得位姿估计更准确。

2.方法

2020.10.14重读 PVNet:Pixel-wise Voting Network for 6DoF Pose Estimation
2020.10.14重读 PVNet:Pixel-wise Voting Network for 6DoF Pose Estimation

2.1基于投票的关键点定位

预测逐像素方向的好处:
增强网络关注更多目标局部特征的能力
可以表示优于遮挡和截断不可见的关键点

流程:

  1. 预测每个点相对于第k个关键点的vector:
    2020.10.14重读 PVNet:Pixel-wise Voting Network for 6DoF Pose Estimation
    这里的 x k x_{k} xk显然是最本质的预测值。

  2. 对第k个关键点,随机选择所在目标中的两个点p1,p2,计算 v k ( p 1 ) v_{k}(p1) vk(p1) x k ( p 2 ) x_{k}(p2) xk(p2)方向的交点,将其记为假设 h k , i h_{k,i} hk,i,这样进行N次,就可以得到一个假设集:2020.10.14重读 PVNet:Pixel-wise Voting Network for 6DoF Pose Estimation
    这个假设集中就包含了可能的关键点位置,这是RANSAC方法在这里的应用。

  3. 对每个假设 h k , i h_{k,i} hk,i计算投票分数 w k , i w_{k,i} wk,i
    2020.10.14重读 PVNet:Pixel-wise Voting Network for 6DoF Pose Estimation
    我个人的理解,并举了个例子:
    2020.10.14重读 PVNet:Pixel-wise Voting Network for 6DoF Pose Estimation

  4. 计算第k个关键点预测假设的统计量
    2020.10.14重读 PVNet:Pixel-wise Voting Network for 6DoF Pose Estimation
    关键点选择:FPS,K=8
    **handle多个实例:**语义分割+中心点预测=实例分割

2.2不确定性驱动的PnP

PnP+confidences:
2020.10.14重读 PVNet:Pixel-wise Voting Network for 6DoF Pose Estimation
这个公式添加了协方差矩阵,考虑了信息的不确定性。

原始PnP公式:
2020.10.14重读 PVNet:Pixel-wise Voting Network for 6DoF Pose Estimation

3.实现细节

2020.10.14重读 PVNet:Pixel-wise Voting Network for 6DoF Pose Estimation
FCN具体实现:
2020.10.14重读 PVNet:Pixel-wise Voting Network for 6DoF Pose Estimation
具体有三点不同,我没细究。
训练loss:
2020.10.14重读 PVNet:Pixel-wise Voting Network for 6DoF Pose Estimation
实验结果略。

4.读后感

1. 应该将一些公认测试有效的好的模块和思想集成起来,以期待得到更好的效果。
2. PVNet用的unit vector只取方向信息,而忽略了向量大小的信息。虽然理论上多加信息会有助于性能提升,但是作者这样选择,有可能是加了向量大小的信息在实现上性能会退化。
3. 输出 H ∗ W ∗ ( K ∗ 2 ∗ C ) H*W*(K*2*C) HW(K2C),这里将C引入的原因是这个预测vector的分支还没有接受到语义信息,个人猜想将语义分割的结果引入到vector预测中会提升性能。

相关文章: