单目摄像头检测6D姿态

CVPR2019: ROI-10D: Monocular Lifting of 2D Detection to 6D Pose and Metric Shape

论文链接:

https://arxiv.org/pdf/1812.02781.pdf

摘要

本文提出了一种端到端单目三维目标检测和度量形状检索的深度学习方法,将二维检测、定位和尺度估计提升到三维空间,提出了一种新的损失公式。三维实例化不需要单独优化这些数量,而是允许正确测量框的度量偏差。实验表明,本文提出的稀疏二维感兴趣区域(RoIs)的10D提升方法在6D姿态和恢复实例的纹理度量几何方面都取得了很好的效果。这进一步通过将恢复的网格直接修复到2D场景上来实现3D合成数据增强。本文在KITTI3D上对其他强单目方法进行了评估,并证明本文的方法在官方测试集的3D姿势度量上是AP的两倍,定义了新的技术状态。

本文提出了一种单目深网络,它可以在三维空间精确估计和形状恢复的情况下提升二维检测,直接优化一种新的三维损失公式。本文发现,最大化三维对齐端到端的6D姿态估计,导致了非常好的结果,因为本文优化的数量正好是本文所寻求的。本文对KITTI3D中的姿态分布以及如何在恢复网格的情况下利用这些信息进行合成数据增强提供了一些有见地的分析。这个反射对改善姿势很有帮助,改进了recall召回率。然而,非最大抑制2和3是对最终结果的主要影响,也应在未来的工作中加以解决。

主要贡献

本文提出了一种端到端单目三维目标检测和度量形状检索的深度学习方法,提出了一种新的端到端单眼三维目标检测方法,即以单个RGB图像为输入,预测目标在3D中的位置和范围。本文的核心思想是通过使用单目深度网络提升预测的感兴趣区域(roi)来回归面向3D的包围盒。主要贡献是:

1.用于单目3D物体检测的端到端多尺度深度网络,包括一个可微的2D到3D RoI提升地图,该地图内部回归了3D盒子实例化所需的所有组件;通过将2D检测、定向和尺度估计提升到3D空间来制定oss。三维实例化不需要单独优化这些数量,而是允许正确测量框的度量偏差。实验表明,本文提出的稀疏二维感兴趣区域(RoIs)的10D提升方法在6D姿态和恢复实例的纹理度量几何方面都取得了很好的效果。这进一步通过将恢复的网格直接修复到2D场景上来实现3D合成数据增强。本文在KITTI3D上对其他强单目方法进行了评估,并证明本文的方法在官方测试集的3D姿势度量上是AP的两倍,定义了新的技术状态。

2.一个损失函数,在度量空间中对齐这些3D框,直接将它们相对于地面真值3D框的误差最小化;

3.扩展本文的模型,以预测度量纹理网格,支持进一步的三维推理,包括三维相干合成数据增强。

概述

算法流程

本文称本文的方法为“ROI-10D”,因为它提升了感兴趣的2D区域3用于预测6个自由度姿势(旋转和平移)、3个自由度空间范围和1个或多个自由度形状的三维。

图2. 算法总览。

本文使用ResNet-FPN架构和单目深度预测网络对输入图像进行二维检测。本文使用预测感兴趣区域(RoI)从ResNet-FPN和深度网络中提取融合的特征图,在回归3D边界框之前进行roalign操作,本文称之为RoI提升

1.从单目2D到6D姿态

选择将旋转编码为4D四元数,将平移编码为投影的二维物体质心以及相关的深度。此外,本文将三维范围描述为在整个数据集上与平均范围的偏差。

图3. 本文的提升F对所有组件进行回归以估计3D框B(蓝色)。从这里开始,本文的损失最小化了指向地面真相B*的点方向距离(红色)。

本文对这些3D锚的2D实例化是稀疏的,可以在整个图像平面上工作。虽然这样的三维锚显式地提供了物体的三维位置,但本文额外的自由度也需要估计深度。

2.三维提升位姿误差估计

仅从单目数据估计姿态时,像素空间中的微小偏差会导致3D中的较大误差,另外,对每一项进行单独的惩罚会导致不稳定的优化,并且容易产生次优的局部极小值。本文建议将问题提升到3D,并使用一个描述完整6D姿势的代理损失。因此,本文不强制同时对所有术语进行同等优化,而是让网络在训练期间决定其重点。

给定一个地面真值3D框B∗:={B∗1,…,B∗8}及其相关的2D检测X,本文运行本文的提升图来检索3D预测F(X)=B。损失本身是度量空间中八个角距离的平均值

3.向心回归与中心提升

提升多个工作强调了估计单目数据,特别是大视场的异中心姿态的重要性。图4描述了这种差异,其中相对于相机的相对对象平移改变了观察到的视点。因此,本文遵循同样的原则,因为roi失去了全局上下文。因此,在F内的回归过程中,旋转q被认为是非中心的,然后用推断的平移进行校正,以构建以中心为目标的3D盒。

图4。中心(上)和非中心(下)姿势的比较。当中心的姿势在转换时会对摄影机进行视点更改时,以自我为中心的姿势总是显示相同的视图,与对象的位置无关。

4.物体形状学习与检索

光滑形状空间的学习:光滑形状空间的学习

在实验过程中,本文发现形状空间在远离平均值的情况下是快速不连续的,从而导致网格退化。利用主成分分析(PCA)方法生成合适的形状需要根据其标准差对每个维度进行评估,为了避免这个繁琐的过程,本文训练了一个由编码器E和解码器D组成的三维卷积自动编码器,并对输出TSDF施加不同的约束。

5.合成三维数据增强

本文不使用强大的手动或地图优先级来放置场景中的合成对象。取而代之的是,本文采用非中心姿势来移动三维物体而不改变视点。本文在3D中应用一些旋转摄动来产生新的不可见姿势并减少过度拟合。图6展示了一个综合生成的训练样本。红色边界框显示原始的地面真值注释,而绿色边界框则显示综合添加的汽车及其采样的6D姿势。

主要结果

如表1和表3所示,由于严格的3D-NMS,本文的方法在2D中的性能较差,但在鸟瞰图和3D AP中,本文是最强的。这突出了适当的数据分析以抵消过度拟合的重要方面。在官方测试中,本文得到的3D AP大约是本文最近的单眼竞争对手的两倍。

表1. KITTI3D验证[3]和官方KITTI3D测试集的3D检测性能。本文报告了鸟瞰图和3D IoU的AP,每个指标的官方IoU阈值为0.7。注意,本文只评估了在线测试集上的合成ROI-10D版本。

表3 从[3]中分离出列车/验证的不同加权策略和输入模式。本文的AP涉及二维检测、鸟瞰挑战和三维IoU。除了官方的IoU阈值0.7,本文对比了0.5的软阈值。

上图与初始值无关,本文可以观察到本文的损失总是平稳地收敛到全局最优。本文还从公式3中显示了每个雅可比分量的大小,并且可以看出,损耗强烈集中在深度上,同时对旋转和二维质心位置的重要性稳步增加

上图给定2droix的控制性升降损失实验。上图:在相机和鸟瞰图的优化过程中可视化F(X)。底部:每个提升组件的梯度大小,在所有运行中平均。本文参考完整动画的补充。

通过检查2D AP中的下降,本文意识到本文的增强设计是无遮挡的,以避免与环境不现实的交叉。反过来,这导致了强遮挡实例的弱表示和另一个引入的偏差。本文在图2中还显示了一些定性结果。

上图测试(左)和验证(右)集上的定性结果。值得注意的是,本文只是在训练集训练,以确保本文从来没有看到过这些图像。对于验证样本,本文还用红色描绘了地面真实姿势。

最新文章

  1. Android项目实战(二十七):数据交互(信息编辑)填写总结
  2. nginx泛域名解析实现二级域名多域名
  3. Java Web中将oracle的数据库内容以表格形式展现到页面中(分页展示)
  4. codeforces B. Vasya and Public Transport 解题报告
  5. php排序测试
  6. paip.云计算以及分布式计算的区别
  7. 动态规划(斜率优化):BZOJ 1010 【HNOI2008】 玩具装箱
  8. uva-699 Not so Mobile (杠杆,巧妙递归)
  9. return_url和notify_url的区别
  10. C#中static void Main(string[] args) 参数详解
  11. Vue解析四之注册变量
  12. 关机充电如何实现短按pwrkey灭屏
  13. json-sever 配置与应用
  14. jQuery-4.动画篇---淡入淡出效果
  15. BZOJ3456 城市规划 【多项式求ln】
  16. HUD 1024 Max Sum Plus Plus (滚动数组)
  17. Prime Test(POJ 1811)
  18. sping整合redis,以及做mybatis的第三方缓存
  19. restful framework之频率组件
  20. Linux文件权限总结

热门文章

  1. 关于width的继承和获取
  2. Redhat中网络启动错误解决办法( Failed to start LSB: Bring up/down networking RTNETLINK answers: File exists)
  3. Python脚本与Metasploit交互进行自动永恒之蓝攻击
  4. UVA11174村民排队问题
  5. UVA10125和集
  6. XCTF-mfw
  7. Mac使用brew搭建LNMP
  8. Error starting userland proxy: /forwards/expose/port returned unexpected status: 500.
  9. 深度解析对象的hashcode和equals的差异,以及String的内存分配方式
  10. 曾经我认为C语言就是个弟弟