转载请注明作者和出处: http://blog.csdn.net/john_bh/

paper 地址:GDR-Net: Geometry-Guided Direct Regression Network for Monocular 6D Object Pose Estimation
作者及团队: 王谷 & 季向阳 团队 & 清华大学 & 字节跳动 & 谷歌
会议及时间:CVPR 2021
code:https://git.io/GDR-Net
视频:

文章目录

  • 1. 主要贡献
  • 2. Method
    • 2.1 Parameterization of 3D Rotation
    • 2.2 Parameterization of 3D Translation
    • 2.3 Disentangled 6D Pose Loss
    • 2.4 Network Architecture
    • 2.5 Dense Correspondences Maps (M2D−3DM_{2D-3D}M2D−3D​)
    • 2.6 Surface Region Attention Maps (MSRA)
    • 2.7 Geometry-guided 6D Object Pose Regression
    • 2.8 Decoupling Detection and 6D Object Pose Estimation
  • 3. 实验
    • 3.1 实验结果
    • 3.2 运行时间
  • 4.结论

1. 主要贡献

在基于RGB 图像的 物体6DoF 姿态估计任务中,目前表现好的算法模型的是基于间接的方法,首先建立图像平面与物体坐标系的 2D-3D 坐标对应关系,然后使用 PnP/ RANSAC算法 。这种two-stage pipeline 方法不是 end-to-end 可训练的,因此很难用于许多需要可微分姿态的任务。另一方面,目前基于直接回归的方法不如基于几何的方法。

这种 correspondences 间接的方法虽然效果号,但是依然存在一些问题:

  1. 这种方法通常使用对应回归的代理目标进行训练(关键点),并不一定反映优化后的6DoF姿态误差的实际情况,例如具有相同误差,两组对应在描述完全不同的姿态时可能有相同的平均误差。
  2. 这种间接的方法对6DoF 姿态估计是不可微的,限制了学习。例如不能与从未标记的真实数据中进行的自我监督学习相结合,因为它们要求位姿的计算是完全可微的,以获得数据和位姿之间的信号。
  3. 当处理稠密对应时 RANSAC 迭代是比较耗时的(time-comsuming)

针对以上问题,作者提出一下解决方法:

  • 提出了一种简单而有效的几何引导直接回归方法网络(GDR-Net);
  • 提出从基于密集对应的中间几何表示中以端到端方式学习6D位姿网络 patch-PnP;

主要参考文章和技术:

  • 主要的网络结构参考作者自己之前的工作 CNPN (ICCV 2019 oral), 包括 Dynamic Zoom-in, Scale-Invariant representation for Translation Estimation (SITE);
  • MSRAM_{SRA}MSRA​ 来自论文 EPOS (CVPR 2020);
  • 关键点的选取使用算法 farthest points sampling (FPS);
  • Rotation 的表示方法 R6dR_{6d}R6d​ 参考论文 On the Continuity of Rotation Representations in Neural Networks (CVPR 2019)
  • allocentic representation of the rotation Ra6dR_{a6d}Ra6d​ 参考文章 3D-RCNN: Instance-level 3D Object Reconstruction via Render-and-Compare (CVPR 2018)

2. Method


如图2所示,作者首先使用检测器检测图像中的物体,然后在训练中使用Dymic zoom in 对应的 RoI 进行数据增强,在测试的时候则不使用DZI; 然后 feed into 网络中提取几何特征(M2D−3DM_{2D-3D}M2D−3D​ 和 MSRAM_{SRA}MSRA​),最后直接回归 6DoF 姿态估计。

2.1 Parameterization of 3D Rotation

存在不同的旋转向量 表示方法来表示 3D rotation。但是为许多表示表现出歧义,例如 Ri≠RjR_i \neq R_jRi​​=Rj​, 但是却表示同样的旋转,所以一般选择 单位四元数(unit quaternion),对数四元数 ( log quaternion),基于李代数的向量 ( Lie algebra-based vectors )。然而,众所周知,对于三维旋转,所有具有四维或更小维的表示在欧几里得空间中都有不连续。当对旋转进行回归时,会引入一个接近不连续点的误差,这个误差往往会变得非常大。

为了克服这个限制,[65]在 SO(3)SO(3)SO(3)中提出了一种新的连续6维 RRR 表示,并且已经被证明它的有效性 (CosyPose ECCV2020)。具体来说,就是6维的表示 R6dR_{6d}R6d​定义为R的前两列:

给定一个 6维向量 R6d=[r1∣r2]R_{6d}=[r_1|r_2]R6d​=[r1​∣r2​],旋转矩阵 R=[R.1∣R.2∣R.3]R=[R_{.1|R_{.2}|R_{.3}}]R=[R.1∣R.2​∣R.3​​] 可以通过计算得出:

ϕ(∙)\phi(\bullet)ϕ(∙)表示向量归一化操作。

鉴于这种表示的优点,作者使用 R6dR_{6d}R6d​参数化 3D3D3D旋转。进一步提出让网络预测旋转 R6dR_{6d}R6d​的异中心表示,这种表示方式很受欢迎,因为它在物体的3D平移下是视点不变的,更适合处理 zoomed-in 的 RoI。注意,给定3D平移和摄像机固有K,自中心旋转可以很容易地从异中心旋转转换。

2.2 Parameterization of 3D Translation

直接回归三维空间的平移变量 t=[tx,ty,tz]t=[t_x,t_y,t_z]t=[tx​,ty​,tz​] 的实际效果不好,之前的工作通常将 translation 解耦到 3D质心投影到 2D位置 (ox,oy)(o_x,o_y)(ox​,oy​)和物体朝向相机的距离 tzt_ztz​ 。给定相机内参 KKK,translation 可以通过反向投影计算的出:

之前有的方法将物体bounding box 的中心 cx,cyc_x,c_ycx​,cy​ 近似等于物体中心ox,oyo_x,o_yox​,oy​, 使用参考相机距离估计 tzt_ztz​ 。尽管如此,这并不适合处理zoom -in RoI ,对于网络来说 估计位置和尺度不变参数是至关重要的。因此作者采用 之前工作 CDPN 中的方法 SITE(scale invariant representation for translation estimation)。具体地,给定输入图像大小bounding box so=max(w,h)s_o=max(w,h)so​=max(w,h) 和中心 cx,cyc_x,c_ycx​,cy​,放缩比例 r=szoom/sor=s_{zoom}/s_or=szoom​/so​,其中 szoongs_{zoong}szoong​ 表示 zoom-in 的大小,网络回归 尺度不变的translation 参数 tSITE=[δx,δy,δz]Tt_{SITE}=[\delta_{x},\delta_{y},\delta_{z}]^{T}tSITE​=[δx​,δy​,δz​]T,如下:

2.3 Disentangled 6D Pose Loss

除了旋转和平移的参数化,损失函数的选择也是6D位姿优化的关键。而不是直接利用基于旋转和平移的距离(例如,角距离,L1L_1L1​或L2L_2L2​距离),大多数作品采用基于ADD(-S)度量的 Point-Matching loss 。作者采用解耦6D 姿态损失:

为了解释对称物体,给定 $R $,对称下所有可能的ground-truth旋转的集合,进一步将损失扩展到对称感知公式 LR,sym=minR∈RLR(R^,Rˉ)\mathcal{L}_{R,sym}=min_{R\in \mathcal{R} }\mathcal{L}_R(\hat R,\bar R)LR,sym​=minR∈R​LR​(R^,Rˉ)。

2.4 Network Architecture

GDR-net 网络参考CDPN 的结构设计,保留了regressing MXYZM_{XYZ}MXYZ​和 MvisM_{vis}Mvis​的层,同时去掉了分离的 translation head。此外,将MSRAM_{SRA}MSRA​所需的通道添加到输出层。由于这些中间几何特征图都是的2D-3D对应图像,采用了一种简单而有效的2D卷积Patch-PnP模块直接从 M2D−3DM_{2D-3D}M2D−3D​和 MSRAM_{SRA}MSRA​回归6D目标位姿。

Patch-PnP模块由三个卷积层组成,内核大小为 3×33\times 33×3,stride为2,每个卷积层后面是Group Normalization 和ReLU激活。两个
全连接(FC)层应用于flattened feature,将维数从8192减少到256。最后,两个平行的FC层分别输出参数化为 $R_{6d} $(Eq. 1)的3D旋转 RRR和参数化为 tSITEt_{SITE}tSITE​(Eq. 4)的3D平移 ttt。

2.5 Dense Correspondences Maps (M2D−3DM_{2D-3D}M2D−3D​)

为了计算密集对应映射M2D−3DM_{2D-3D}M2D−3D​,首先估计密集坐标映射(MXYZM_{XYZ}MXYZ​)。M2D−3DM_{2D-3D}M2D−3D​可以通过将MXYZM_{XYZ}MXYZ​ stacking onto 相应的2 d像素坐标 得到。特别是,给定物体的CAD模型,MXYZM_{XYZ}MXYZ​可以通过绘制模型的三维物体坐标得到相关的姿态。与[28,56]类似,让网络预测MXYZM_{XYZ}MXYZ​的规范化表示。具体来说,MXYZM_{XYZ}MXYZ​的每个通道 通过(lx,ly,lz)(l_x,l_y,l_z)(lx​,ly​,lz​) 正则化到[0,1][0,1][0,1]之间,它是对应三维 CAD模型的 bounding box 的大小。

注意,M2D-3D不仅编码了2D-3D的对应关系,而且还明确地反映了对象的几何形状信息。此外,如前所述,由于M2D-3D是图像可以通过一个简单的2D卷积神经网络(Patch-PnP)来学习6D对象的姿态。

2.6 Surface Region Attention Maps (MSRA)

受[15]的启发,作者让网络预测表面区域,作为额外的模糊感知监督。但是,没有将它们与RANSAC耦合,而是在Patch-PnP框架中使用它们。

ground-truth 区域 MSRAM_{SRA}MSRA​可以从MXYZM_{XYZ}MXYZ​采用 farthest points sampling 得到。

对于每个像素,对相应的区域进行分类,从而隐式地得到预测MSRAM_{SRA}MSRA​中物体的对称性的概率。例如,如果一个像素由于对称面被分配给两个可能的碎片,对于每个片段,最小化这个赋值将返回0.5的概率。此外,利用$M_{SRA}$不仅减轻了歧义的影响,而且还充当了$M_{3d}$之上的辅助任务。换句话说,它简化了$M_{3d}$的学习,首先定位粗区域,然后回归更细的坐标。 利用MSRAM_{SRA}MSRA​作为对称感知的注意来指导Patch-PnP的学习。

2.7 Geometry-guided 6D Object Pose Regression

利用基于图像的几何特征patch MSRAM_{SRA}MSRA​ 和 M2D−3DM_{2D-3D}M2D−3D​ 指导Path-PnP直接回归物体6DoF 姿态:

对标准化的MXYZM_{XYZ}MXYZ​和可见mask MvisM_{vis}Mvis​ 采用L1损失,对 MSRAM_{SRA}MSRA​使用交叉熵损失(CE):

GDR-net 的损失函数可以总结为:
LGDR=LPose+LGeom\mathcal {L}_{GDR}=\mathcal {L}_{Pose}+\mathcal {L}_{Geom}LGDR​=LPose​+LGeom​

2.8 Decoupling Detection and 6D Object Pose Estimation

GDR-net 主要关注物体姿态估计工作,允许直接在运行时中使用其他目标检测器的二维目标检测结果,无需改变或重新训练姿态网络。因此,作者采用简化的dynamic zoom-in (DZI)来解耦GDR-Net和目标探测器的训练。在训练期间,首先以25%的比例均匀地移动ground-truth包围盒的中心和比例。然后zoom-in 输入基于r=1:5r = 1:5r=1:5原始高宽比 的RoI(这确保了包含对象的区域大约是RoI的一半)。DZI还可以避免处理不同对象大小的需要。

3. 实验

3.1 实验结果

实验就不在赘述了,可以去看原文的实验结果。这里放上几张实验结果:



3.2 运行时间

在 配置为 Intel 3.4 GHz CPU 和 NVIDIA2080Ti GPU 的 desktop 上,输入640×480640\times 480640×480 图像,使用YOLOv3作为检测器,单个物体的推理时间大概22ms,8个物体大概35ms,其中包括15ms的目标检测。

4.结论

总的来讲,作者重新讨论了直接6D位姿回归的方法,并提出了一个新的GDR-Net来统一直接方法和基于几何的间接方法。其核心思想是利用中间几何特征 M2D−3DM_{2D-3D}M2D−3D​ 和 MSRAM_{SRA}MSRA​ 使用简单而有效的2D卷积Patch-PnP直接从几何制导回归6D位姿。这种end-to-end 的方法效果可达到two-stage 的效果,工作确实很优秀,另外作者团队一直都在做这样的的研究,从DeepIM ,CDPN, self-6D, GDR-Net,还有SO-Pose,论文质量都挺高的。

GDR-Net: Geometry-Guided Direct Regression Network for Monocular 6D Object Pose Estimati相关推荐

  1. Deep Ordinal Regression Network for Monocular Depth Estimation 单目深度估计,论文阅读,DORN;视频笔记

    tags: 单目深度估计,论文阅读,DORN 原始论文是: Deep Ordinal Regression Network for Monocular Depth Estimation Huan Fu ...

  2. 笔记:PoseCNN:A Convolutional Neural Network for 6D Object Pose Estimation in Cluttered Scenes

    PoseCNN: A Convolutional Neural Network for 6D Object Pose Estimation in Cluttered Scenes (Robotics: ...

  3. 论文精读 《CaDNN: Categorical Depth Distribution Network for Monocular 3D Object Detection》

    CaDNN: Categorical Depth Distribution Network for Monocular 3D Object Detection 文章目录 CaDNN: Categori ...

  4. 论文阅读 [TPAMI-2022] Locally Connected Network for Monocular 3D Human Pose Estimation

    论文阅读 [TPAMI-2022] Locally Connected Network for Monocular 3D Human Pose Estimation 论文搜索(studyai.com) ...

  5. 论文笔记(三):PoseCNN: A Convolutional Neural Network for 6D Object Pose Estimation in Cluttered Scenes

    PoseCNN: A Convolutional Neural Network for 6D Object Pose Estimation in Cluttered Scenes 文章概括 摘要 1. ...

  6. PoseCNN(A Convolutional Neural Network for 6D Object Pose Estimation in Cluttered Scenes)复现记录

    PoseCNN: A Cbjonvolutional Neural Network for 6D Object Pose Estimation in Cluttered Scenes 挖个坑,希望研究 ...

  7. 显著性应用--论文笔记--2019--Aesthetic guided deep regression network for image cropping

    论文信息: 作者:Peng Lua, Hao Zhanga, XuJun Pengb, Xiang Penga 期刊:Signal Processing: Image Communication 任务 ...

  8. 论文阅读笔记《PoseCNN: A Convolutional Neural Network for 6D Object Pose Estimation in Cluttered Scenes》

    核心思想   本文提出一种基于卷积神经网络的物体分割与位姿估计的方法(PoseCNN).如下图所示,输入图像经过卷积层特征提取之后,分成三个任务分支:语义分割.平移矩阵预测和旋转矩阵(四元数)预测.最 ...

  9. PoseCNN: A Convolutional Neural Network for 6D Object Pose Estimation in Cluttered Scenes—2017(笔记)

    PoseCNN:用卷积神经网络估计杂乱场景中目标6D姿态-2017(笔记) 文章提出了新的PoseCNN姿态估计网络,通过CNN提取图像特征,然后分三路进行目标分割标签标注.平移估计和姿态估计得到目标 ...

最新文章

  1. 如何解读「量子计算应对大数据挑战:中国科大首次实现量子机器学习算法」?——是KNN算法吗?...
  2. 基于异或,取反和循环移位实现一个简单的加密解密函数
  3. 运营商市场定位决定移动互联网的成败
  4. 端侧AI:高隐私、高可靠的智能个性化服务
  5. Spark _04集群搭建及测试
  6. LeetCode Longest Valid Parentheses
  7. (2021) 18 [代码讲解] 可执行文件
  8. rocketmq新扩容的broker没有tps_深入研究RocketMQ消费者是如何获取消息的
  9. Python+matplotlib绘制三维图形5个精选案例
  10. 哪些因素会影响数据质量
  11. 在 Linux 上如何清除内存的 Cache、Buffer 和交换空间
  12. android intent singletask,android – launchMode =“singleTask”不会创建新任务
  13. 网吧收银系统无法连接服务器失败,网吧收银系统pubwin修复网吧数据库出现一致性错误方法.docx...
  14. creo2.0+VS2010采用protoolkit二次开发环境配置(64位win7)
  15. Hadoop-HDFS总结(五)
  16. Douyin-Bot 项目优化-改进(二),主播昵称识别+数据库储存
  17. 星际争霸2 sc2replay录像回放python库sc2reader常用函数总结
  18. 如何使用TI的DSP芯片cmd文件
  19. VS2015安装完成后Visual C++的一些模板找不到,安装C++新模板
  20. Uboot SPL的Boot模式选择(从MMC切换到SPI启动)

热门文章

  1. [译] 3.泛型和子类型
  2. 学ajax要学php吗,javascript – Ajax新手学习(PHP JQuery)
  3. node安装后的设置(node_global和node_cache)
  4. 字符编码OneHotEncoder
  5. 【CUDA】安装想要版本的CUDA(CUDA10.2)
  6. 微信小程序-组件的生命周期
  7. 论文投稿指南——中文核心期刊推荐(自然科学总论)
  8. 更好地提问ChatGPT_常用prompt表
  9. crackme02——Afkayas.1
  10. 什么是MVC设计模式???