计算机视觉工坊单阶段6D对象姿势估计


_本文原题:单阶段6D对象姿势估计
来源:公众号|3D视觉工坊(系投稿)作者:康斯坦奇「3D视觉工坊」技术交流群已经成立 , 目前大约有12000人 , 方向主要涉及3D视觉、CV&深度学习、SLAM、三维重建、点云后处理、自动驾驶、CV入门、三维测量、VR/AR、3D人脸识别、医疗影像、缺陷检测、行人重识别、目标跟踪、视觉产品落地、视觉竞赛、车牌识别、硬件选型、学术交流、求职交流、ORB-SLAM系列源码交流、深度估计等 。 工坊致力于干货输出 , 不做搬运工 , 为计算机视觉领域贡献自己的力量!欢迎大家一起交流成长~添加小助手微信:CV_LAB , 备注学校/公司+姓名+研究方向即可加入工坊一起学习进步 。
论文题目:Single-Stage 6D Object Pose Estimation
论文地址:在公众号「3D视觉工坊」 , 后台回复「6D姿态估计」 , 即可直接下载 。
摘要: 最新的6D姿态估计框架首先依靠深度网络在3D对象关键点和2D图像位置之间建立对应关系 , 然后使用基于RANSAC的Perspective-n-Point(PnP)算法的变体 。 但是 , 此两阶段过程不是最佳的:首先 , 它不是端到端可训练的 。 第二 , 训练深层网络依赖于替代损失 , 该损失不会直接反映最终的6D姿态估计任务 。
在这项工作中 , 本文介绍了一种直接从对应关系中回归6D姿势的深度架构 。 它为每个3D关键点输入一组候选对应关系 , 并说明每个组内对应关系的顺序无关紧要的事实 , 而各组(即3D关键点)的顺序是固定的 。 本文的体系结构是通用的 , 因此可以与现有的对应关系提取网络一起使用 , 从而生成单阶段6D姿态估计框架 。 本文的实验表明 , 这些单阶段框架在准确性和速度方面始终优于两阶段框架 。
一、简介
最新的方法遵循两个阶段的范式:首先使用深层网络在3D对象点与其2D图像投影之间建立对应关系 ,然后使用基于RANSAC的Perspective-n点(PnP)算法来计算6个位姿参数 。 这种范例虽然有效 , 但存在一些弱点 。 首先 , 用于训练深度网络的损失函数不会反映真实的目标估计 , 但会编码替代任务 , 例如将检测到的图像投影的2D误差最小化 。 但是 , 这种误差与姿势精度之间的关系不是一对一的 。 如图1(a)所示 , 对于最新框架 , 具有相同平均准确度的两组对应关系可能导致不同的姿态估计 。 其次 , 分别建立对应关系 。 这无法利用以下事实:知道3D点之一的2D投影的位置会对其他投影的潜在位置施加约束 。 最后 , 两阶段过程不是端到端可训练的 。

计算机视觉工坊单阶段6D对象姿势估计
本文插图
图1:算法示意图 。 考虑一下的当前6D姿态估计算法 , 该算法使用深度网络为投手包围盒的八个3D角中的每个角预测几个2D对应关系 。 (a)因为它使这些对应关系的平均2D错误最小化 , 所以这种框架的两个实例可能会产生不同但具有相同平均准确度的对应关系 , 例如绿色和红色 。 如预计的绿色和红色参考帧所证明的那样 , 将基于RANSAC的PnP算法应用于这两组对应关系可以产生实质上不同的姿势 。 (b)即使仅使用绿色对应集 , 仅更改其顺序也会导致基于RANSAC的PnP算法返回不同的解决方案 。
二、方法
给定经过校准的相机捕获的RGB图像 , 本文的目标是同时检测物体并估计其6D姿态 。 本文假设它们是刚性的 , 并且可以使用其3D模型 。 在本节中 , 本文首先对6D姿态估计问题进行形式化 , 假设对目标对象上的每个3D关键点都给予2D对应关系优先级 , 并提出一种从此类输入中产生6D姿态的网络体系结构 。 该网络如图3所示 。 然后 , 本文讨论当这些对应关系是另一个网络的输出时 , 如何获得单阶段6D姿态估计框架 。
2.1 密集点位姿估计
让本文假设 , 对于n个3D对象关键点pi中的每一个 , 给定3×3摄像机固有参数矩阵K和m个潜在2D对应uik , 其中1≤i≤n和1≤j≤m 。 pi用链接到对象的坐标系表示 , 如图2(a)所示 。 对于每个有效的3D到2D对应关系pi?uik ,