ICRA上的一篇文章,提出了一种检测三维物体关键点检测以及6 DoF位姿估计的方法,可以用于instance- and category-based 的场景。
首先采用Faster R-CNN检测得到目标的2D bb, 然后在执行所提出的方法。所使用的网络结构是stacking hourglass,来源于human pose estimation,与cornetNet中的backbone有些类似。网络的输入是RGB图像,输出是一组heatmaps, 每个关键点对应一个heatmap。每个heatmap的真值是一个以关键点真值为中心,方差为1的高斯仿真得到标签图像,目标函数是损失。
使用stacking hourglass有三个优点:
- 可以整合局部和全局信息
- stacking提供了一种迭代有效的过程,且对估计值可以求精;
- 中间监督可以用作有效的训练策略,尤其是在梯度消失的情况
文章中提到了在检测得到关键点后,直接使用PnP方法的两个问题:
- 由于遮挡或背景中的false detection,由网络预测得到的关键点可能被不精确的渲染;
- 目标精确的3D模型通常难以获得
文章中提出了一种deformable shape models方法解决这种问题。针对每一类物体,使用对应的3D CAD模型以及标注的关键点,构建可变形模型:
其中是一给定3D模型的平均形状,是由PCA计算得到形状分量。给定图像中检测的关键点,记为,优化问题为: