核心思想

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

  语义分割分支采用了常见的全卷积神经网络方法。平移矩阵的预测并不是直接通过回归的形式输出中心点坐标,因为这种方法当中心点被遮挡时容易失效。而是预测物体上的每个点和中心点之间的连线方向,并预测每个点的深度值,通过投票的方式得到每个物体点的中心点坐标,然后根据语义分割结果计算物体上每个点深度的平均值作为中心点的深度,最后通过反透视变换计算中心点的空间位置坐标。旋转矩阵则是根据物体的外接矩形框构成的ROI,通过回归的方式预测四元数。本文还针对对称物体,提出了一种新的损失函数,并提出一个新的位姿估计数据集YCB-video,目前已经是位姿估计的主流Benchmark。

实现过程

  网络的详细结构如上图所示,输入图像首先经过级联的卷积神经网络进行特征提取,该部分采用VGG结构,包含13个卷积层和4个最大池化层。然后网络分成三个任务分支,分别对应语义分割、平移矩阵预测和旋转矩阵预测。对于语义分割任务,作者从特征提取网络中生成两个64通道的特征图,特征图尺寸分别是原图的1/8和1/16。尺寸为原图1/16的特征图经过一个反卷积层恢复到1/8尺寸后,与尺寸为原图1/8的特征图相加,再经过反卷积层恢复到原图尺寸。最后利用softmax层输出每个像素点上的语义标签。
  对于平移矩阵预测任务,其网络结构与语义分割网络类似,只不过由于预测参数更多(每个点都包含三个预测值)所以通道数由64变为了128,最后利用通道为3 * n的卷积层输出每个点的预测结果(n表示物体的类别数量)

其中p=(x,y)\mathbf{p}=(x,y)p=(x,y)为图中一个像素点,(cx,cy)(c_x,c_y)(cx​,cy​)表示物体中心点坐标,nxn_xnx​表示X方向上像素点与中心点之间的偏移,并进行了归一化处理,同理nyn_yny​表示Y方向上的单位偏移,(nx,ny)(n_x,n_y)(nx​,ny​)则构成了像素点和中心点之间的单位方向向量,TzT_zTz​表示像素点的预测深度。得到每个点的预测结果后,采用Hough投票的方法计算每个物体的中心点坐标。根据语义分割的结果,对每个类别的物体,计算所有像素点的投票得分,投票得分的高低就对应了该点是物体中心点的概率。每个像素点的投票得分是根据其他像素点和中心点的方向向量经过该点的次数来计算的,如下图所示

  如果一个点位于许多其他像素点和中心点连线的交汇处,那么这个点就很有可能是中心点。通过投票法得到中心点坐标后,再根据语义分割结果计算属于该中心点对应物体的所有像素点深度的平均值,作为中心点的深度值。已知中心点的图像坐标和深度值,利用反透视变换,即可求得中心点的空间位置坐标,其关系如下

其中fx,fyf_x,f_yfx​,fy​表示相机的焦距,px,pyp_x,p_ypx​,py​表示相机原点(主点)坐标。
  对于旋转矩阵预测任务,本文根据语义分割和中心点预测结果得到每个物体的外接矩形框,然后利用ROI池化层,对特征图进行先裁剪后池化的操作,经过三层的全连接层后输出4 * n个预测结果,对应nnn类物体的四元数。
  语义分割任务采用交叉熵损失函数,平移矩阵预测任务采用L1损失函数,旋转矩阵预测任务采用两个损失函数,第一个是位姿损失PLoss:

其中M\mathcal{M}M表示物体3D模型点的集合,mmm表示3D点的数量,R(q~)R(\tilde{q})R(q~​)表示预测的旋转矩阵,R(q)R(q)R(q)表示真实旋转矩阵。当预测姿态和真实姿态完全相同时,该损失函数取得最小值。但是对于对称的物体,可能存在多个正确的姿态(比如对于一个轴对称图形,其关于对称轴旋转180°仍然算是正确的姿态),而该函数只对其中一个姿态认为是正确的,其他姿态下损失函数较大,会导致训练过程不稳定。因此本文又提出了形状匹配损失SLoss:

在PLoss的基础上做了一点点改进,只计算与当前预测点距离最近的点之间距离损失,只要当两个3D模型相互匹配时,该损失即为最小值,这样就不会对对称物体等效的旋转进行惩罚。
  虽然根据上述过程就能够根据输入图像获取物体的位姿估计结果了,但是为了提高位姿估计的准确性,作者还利用深度图和3D模型得到物体每个像素点的3D坐标,并利用ICP方法对位姿估计结果进行优化。根据试验结果来看,ICP优化对应位姿估计准确性的提高有明显的效果

最后,作者提供了一个包含21件物体,133827帧图像的位姿估计数据集(YCB-Video),并提供了对应的深度图、语义分割图和3D模型。

创新点

  • 提出一种基于卷积神经网络的位姿估计方法,通过投票的方式来预测物体中心点坐标
  • 提出一种形状匹配损失函数,用于解决对称物体的旋转矩阵监督问题

算法评价

  相对于直接利用神经网络回归位姿的方法,本文将旋转矩阵和平移矩阵分开预测,并利用投票法和深度估计来计算平移矩阵显然是更多的融合了先验的知识,提供了更多的约束,而不是单纯的依赖网络的映射能力。但是网络本身的语义分割、深度估计,相对方向的预测任务都是特异性很强的,即需要网络充分提取目标物体的特征信息,但这会导致一个问题泛化困难。对于没有见过的物体,本文的方法恐怕是很难准确的预测出分割结果和深度信息的,这在另一个数据集LineMOD的实验结果也能够很明显的体现出来。另外本文虽然可以只利用RGB图像进行位姿估计,但是如果不经过ICP优化其预测精度是比较差的,说明仅利用RGB图像进行预测还是存在一定的难度。

如果大家对于深度学习与计算机视觉领域感兴趣,希望获得更多的知识分享与最新的论文解读,欢迎关注我的个人公众号“深视”。

论文阅读笔记《PoseCNN: A Convolutional Neural Network for 6D Object Pose Estimation in Cluttered Scenes》相关推荐

  1. 《Beta Embeddings for Multi-Hop Logical Reasoning in Knowledge Graphs》论文阅读笔记

    <Beta Embeddings for Multi-Hop Logical Reasoning in Knowledge Graphs>论文阅读笔记 主要挑战贡献: KG上的推理挑战主要 ...

  2. 论文阅读 | NIPS‘20 | Beta Embeddings for Multi-Hop Logical Reasoning in Knowledge Graphs

    很有意思的一篇paper.在众多Knowledge Graph Embedding (KGE) 的论文中通过问题设计和有意思的解决方式脱颖而出. 首先来看看问题设计. 一般的KGE model都是利用 ...

  3. Beta Distribution Guided Aspect-aware Graph for Aspect Category Sentiment Analysis论文阅读笔记(EMNLP2021)

    目录 标题翻译:基于Beta分布引导方面感知图的方面类别情感分析 原文链接:https://aclanthology.org/2021.emnlp-main.19.pdf 摘要: 1 引言 2 相关工 ...

  4. Phrase-BERT: Improved Phrase Embeddings from BERT with an Application to Corpus Exploration论文阅读笔记

    问题: 因为bert是在长文本(512token长度)预训练的,因此,如果没有特定于任务的微调,BERT在短语和句子上的表现通常比简单基线(如GLoVe的平均池化)更差.且字节2020在EMNLP上的 ...

  5. DeepWeak: Reasoning Common Software Weaknesses via Knowledge Graph Embedding 阅读笔记

    DeepWeak: Reasoning Common Software Weaknesses via Knowledge Graph Embedding 阅读笔记 Article Background ...

  6. [论文阅读笔记] Are Meta-Paths Necessary, Revisiting Heterogeneous Graph Embeddings

    [论文阅读笔记] Are Meta-Paths Necessary? Revisiting Heterogeneous Graph Embeddings 购物返利 www.cpa5.cn 本文结构 解 ...

  7. 论文阅读笔记—Reasoning on Knowledge Graphs with Debate Dynamics(AAAI,2020)

    这是一篇非常有趣的工作,看完会觉得眼前一亮. 论文标题:Reasoning on Knowledge Graphs with Debate Dynamics 发表于AAAI,2020 动机  很多机器 ...

  8. 论文阅读笔记——《a simple but tough-to-beat baseline for sentence embeddings》

    <a simple but tough-to-beat baseline for sentence embeddings>published at ICLR 2017. ICLR会议的论文 ...

  9. Learning Hierarchy-Aware Knowledge Graph Embeddings for Link Prediction论文阅读笔记

    我的博客链接 0. 前言 1. 作者试图解决什么问题? 作者想在KGE中对语义层级(semantic hierarchies)进行建模. 2. 这篇论文的关键元素是什么? semantic hiera ...

  10. 斯坦福图机器学习CS224W笔记自用: Reasoning in Knowledge Graphs using Embeddings

    1. 基于嵌入的知识图推理 目标:如何对知识图进行多跳推理? 知识图推理: 回答多跳查询 路径查询 连接查询 Query2box 示例:生物医学图 知识图谱上的预测查询 我们是否可以进行多跳推理,即在 ...

最新文章

  1. java for 嵌套_Java中的for循环嵌套
  2. 基于Linux 的VM TOOLS Install
  3. 找出数组中被其他元素整除的元素_「每日一题」数组中重复的数字
  4. Python中Numpy包的学习
  5. linux源代码安装程序
  6. POJ - 3694 Network(边双缩点+LCA+并查集优化)
  7. mycat mysql端口多少_mycat 9066管理端口 常用命令
  8. js 随机1-10随机数_寻找随机的错误-一个真实的故事
  9. python保存变量_将python 中的变量保存到本地
  10. 使用GRU单元的RNN模型生成唐诗
  11. Bsdiff:Bsd断电差分升级
  12. MySQL读写分离详解(二)——MyCAT实战配置
  13. ExcelHelper代码
  14. linux awk '{print $2}' 用法
  15. Everything本地文件检索 快速搜索/共享神器
  16. 计算机专用英语(常用1695个单词,带音标)
  17. k8s之常用操作命令
  18. 组装电脑基础知识之内存条
  19. iOS10的nano_free nano_relocated crash总结
  20. EasyExcel导出自定义合并单元格文件

热门文章

  1. 7-7 字符串中的大写字母改成小写字母 (10 分)
  2. 【数据字典】第三篇 利用PowDesigner自动生成数据字典
  3. japonensisJava新地址
  4. 备赛电赛学习STM32篇(七):TIM输入捕获
  5. word页码与行号怎么统一设置字体
  6. C++俄罗斯方块源码(Qt版)
  7. HDU 4043 FXTZ II
  8. 在unity中更改天空盒的几种方式
  9. 【概率图与随机过程】25 从有向到无向:谈谈条件随机场
  10. 关于随机数,真随机,伪随机