核心思想

  本文提出一种通过图块匹配寻找图像和CAD模型之间的对应关系,并进一步实现位姿估计的算法。与许多从单目图像中实现目标物体三维识别并估计位姿的方法类似,本文也是通过从CAD模型库中检索最相似的CAD模型,然后计算旋转和平移矩阵,最终实现三维识别和位姿估计。本文的主要创新在于不是对整幅图像和模型进行匹配,而是在图像中选取小的图块,然后对图块进行匹配。作者认为这种方式不仅能够获取图像和CAD模型之间全局的语义相似性,而且能够获取中级和低级的几何相似性。

实现过程

  首先,本文采用RetinaNet进行2D目标检测,并得到目标物体的特征fkf_kfk​,然后利用ShapeMask网络实现物体的实例分割,得到分割结果mkm_kmk​,将分割结果和特征相乘fk∘mkf_k\circ m_kfk​∘mk​作为后续模型检索和位姿估计的输入。

  然后,本文构建了一个基于图块的联合嵌入空间,将物体的图像和CAD模型整合在一个统一的空间中来描述。这本身是个困难的任务,因为图像和CAD模型在视角、颜色、光照和材料等方面都有很大的不同。而且对于完整的目标物体而言,图像和CAD模型之间很难找到精确匹配的对象,通常都包含一定的细节差别,如何寻找到二者的共同特征是非常困难的。因此作者考虑到将整个目标对象分解成若干个图块,每个图块中只包含部分的简单结构,这样在进行特征描述时就能够包含更多的低级和中级的几何信息。本文从fk∘mkf_k\circ m_kfk​∘mk​中随机选取图块(尺寸为ROI区域的1/3)作为图像输入,对于每个CAD模型,都从16个主视角分别拍摄图像,并提取图块(尺寸为渲染模型的1/3)作为模型输入。图像输入和模型输入分别经过一系列的2D卷积得到对应的特征fimf^{im}fim和{fjcad}\{f^{cad}_j\}{fjcad​},特征提取网络的损失函数如下


其中,AAA表示查询图块的集合,P(a)P(a)P(a)和N(a)N(a)N(a)分别表示正确的匹配图块和错误的匹配图块集合,CCC是一个加权系数,本文取C=24C=24C=24。D(x,y)D(x,y)D(x,y)计算过程如下

其中,τ=0.15\tau=0.15τ=0.15
  为了实现上述的训练过程,必须明确图像和模型之间图块相似性的定义,也就是说给定一个查询图块aaa,如何判断哪些模型图块是正确匹配,哪些是错误匹配。本文是利用CAD模型中渲染得到的法线向量来描述局部的几何特征。对于CAD模型来说,就直接提取图块对应的法线向量;对于图像来说,则是提取图块对应的CAD模型(groundtruth)在该区域的法线向量。对于每个图块的法线向量都利用自相似性直方图(self-similarity histogram)来作为特征描述,自相似性直方图统计了该图块中各个法向量两两之间的角度差异,并且进行了归一化处理。通过计算两个图块对应的自相似性直方图之间的IoU区域大小来计算两个图块之间的匹配相似性,将IoU>θpIoU>\theta_pIoU>θp​图块视为正确匹配图块,将IoU<θnIoU<\theta_nIoU<θn​的图块视为错误匹配。对于每个查询图块aaa,都选择1024个错误匹配图块来进行训练,而正确匹配图块的数量可能是不固定的,但这会影响训练的稳定性,因此作者将所有正确匹配图块取平均值作为一个正确匹配图块来进行训练。
  接下来利用图块来完成模型的检索,对于一个待检索的目标物体fimf^{im}fim,从中随机选择KqK_qKq​个图块,而对于每个图块都从模型数据库中检索得到KrK_rKr​个相似的模型图块。根据这KrK_rKr​个模型图块归属的CAD模型,通过投票的方式,选择得票数最多的CAD模型作为当前图块的匹配模型。举个例子解释一下,比如对于一个图像图块aaa,检索得到10个(Kr=10K_r=10Kr​=10)模型图块与之相似,其中7个图块属于模型A,2个图块属于模型B,1个图块属于模型C,那么模型A就是图像图块aaa的匹配模型。那么KqK_qKq​个图像图块就会得到KqK_qKq​个对应的匹配模型,然后同样通过投票的方式选择得票数最高的模型,作为整个目标物体的匹配模型。
  最后,要根据检索得到的匹配模型来进行目标的姿态估计。对于旋转参数(用四元数表示),本文通过对训练目标的旋转参数进行K中心值聚类得到对应的KKK个旋转参数分区(rotation bins),然后利用交叉熵损失函数通过分类的方式判断当前目标属于哪个分区,再利用Huber损失通过回归的方式计算旋转参数的偏移量,在分区的基础上进行优化。对于平移参数,则是直接利用Huber损失函数预测目标外接框中心的偏移量。

创新点

  • 提出一种基于图块的模型检索方法,降低了构建整个图像和模型间匹配关系的难度
  • 利用法线向量之间的自相似性来评估图块之间的相似程度

算法评价

  本文的核心思想并没有什么大的改变,还是延续着二维图像识别+分割,三维模型匹配,模型检索和位姿估计的路线,主要的创新在于考虑到图像和模型整体匹配的难度,而使用图块的局部特征来进行匹配和检索,并通过投票的形式选出最佳匹配模型。从实验结果来看,本文的方法相较于整体进行匹配的方法(Mask2CAD)还是有一定提升的。

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

论文阅读笔记《Patch2CAD: Patchwise Embedding Learning for In-the-Wild Shape Retrieval from a Single Image》相关推荐

  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. centeros7网络服务无法启动_Linux网络服务02——DHCP原理与配置
  2. python斐波那契数列前20项_Python每日一练之实现斐波那契数列
  3. 网博士自助建站系统_自助建站:自助建站到底好还是不好?
  4. java后端项目怎么实现图片预览_项目经验不重样!3个基于 SpringBoot 的图片识别处理系统送给你!...
  5. ae可围绕帧拖动放大插件:Drag Zoom Pro for AE mac(兼容M1)
  6. 前缀表达式后缀表达式_你知道波兰表达式和逆波兰表达式吗
  7. C#的百度地图开发(四)前端显示与定位
  8. 西班牙语动词变位探究:陈述式现在时
  9. 我在富士康挨踢了七年(十三.悉尼工作篇 )
  10. 【git】小甲鱼Git教程《极客Python之Git实用教程》笔记二
  11. cmake: 使用jom实现msvc工程并发编译提高速度(-j)
  12. 在标准IO库中,rewind函数作用?
  13. 2023新版php仿蓝奏云网盘合集下载页面系统源码 带后台版本 源码搭建
  14. HTML知识点(来自广陵散老师)
  15. 地理空间数据项目实战——共享单车停车需求识别与地图匹配
  16. 在技术面前,请保持一颗谦卑的心
  17. 2013 年开源中国 10 大热门 Java 开源项目
  18. JavaScript压缩工具JSA使用介绍
  19. windows10风格 springboot vue.js html 跨域 前后分离 activiti 整合项目框架源码
  20. uni-app自定义导航栏使用阿里矢量图

热门文章

  1. 高职单招计算机试题及答案,福建高职单招计算机类试题及标准答案
  2. WUSTOJ 1324: Base64 Coding(Java)未解决,求题解
  3. c语言怎么快速乘法口诀表,乘法口诀表,C语言实现
  4. shiro整合springboot,配置mybatis和增加邮箱验证码登录
  5. 对话 Maker 多年跨界学习的斜杠青年 00
  6. 【数据库】Oracle中的字符型及处理方法
  7. (转载)typed用法总结
  8. 一文了解Python深拷贝与浅拷贝问题
  9. 分数转换(Python)
  10. MySQL Connector/C++ 操作MySQL数据库