核心思想

  本文提出一种基于运动一致性(Montion Coherence)的特征匹配方法(CODE),从全局的层面来看,正确匹配点更倾向于拥有一致的运动,而错误匹配点通常随机的散落在不同位置。本文提出一种非线性回归技术,从包含噪声的匹配点中获得运动一致性的估计函数。然后用该函数输出匹配点的一致性得分,并将其作为正确匹配的概率值。最后,将一致性得分超过一定阈值的点判断为正确匹配点。
  现有的特征匹配方法,通常利用Ratio Test方法筛选掉误匹配点,但这种方法有两个问题:如果选择较高的阈值,会导致很多正确匹配点也被筛除了;而如果降低阈值标准,误匹配点数量会快速增加。作者认为正确匹配点在两幅图像之间的运动具备一致性,也就是相邻的点的运动情况是一致的,而误匹配点的运动情况是随机变动的。所以运动的一致性可以作为判断正确/错误匹配点的一个指标,下面的问题就是如何利用匹配点的位置坐标以及坐标变化等信息来计算运动一致性。作者提出一种基于运动一致性的非线性回归方法,用于获得运动一致性得分计算函数f(p):p→qf(\mathbf{p}):\mathbf{p}\rightarrow qf(p):p→q。该函数是KKK个平滑函数的线性集合

其中p\mathbf{p}p是位置与运动描述向量,qqq可以表示一致性得分,aka_kak​表示第kkk个函数的权重。实际的观测值通常包含一定的噪声,则上式可写为

其中njn_jnj​表示噪声。每一个平滑函数fkf_kfk​都由两项构成

其中HkH_kHk​是一个未知的标量偏移,ϕk\phi_kϕk​是使用运动一致性作为平滑惩罚项评估的平滑函数,该平滑惩罚项如下

ϕˉk\bar{\phi}_kϕˉ​k​表示ϕk\phi_kϕk​的傅里叶变换,gˉ\bar{g}gˉ​表示高斯函数的傅里叶变换,上式通过惩罚高频项来实现平滑。
  当前的目标是希望根据已知的数据点集合{p,q^}\{\mathbf{p},\hat{q}\}{p,q^​},来获得最平滑的函数fkf_kfk​,按照能量最小化原则,上述目标可表述为下式

其中C(⋅)C(\cdot)C(⋅)表示Huber函数

上述的能量函数也很好理解,第一项就是希望回归得到的函数输出的估计值和真实观察值尽可能接近,这是回归过程的核心诉求;第二项则是前面介绍的平滑项,希望函数尽可能平滑。这里的平滑也就反映出位置特征接近的点其运动情况也相对一致,而不平滑的点则是由于误匹配点的随机运动导致的,通过增加平滑惩罚项就是为了减少误匹配点对于回归过程的影响。下图描述了回归计算得到的二维曲面和数据点之间的关系。

  为了计算能使能量函数达到最小值的函数fkf_kfk​,对能量函数求导,并令导数为零

其中wk\mathbf{w}_kwk​表示一个N×1N\times1N×1维的向量,NNN表示用于函数回归的数据点的个数。整理上式可得

对其进行傅里叶反变换可得

其中g(p,pj)g(\mathbf{p},\mathbf{p}_j)g(p,pj​)表示高斯径向基函数,wk\mathbf{w}_kwk​则是一个未知变量。将上式代入到惩罚项函数中,可得

其中GGG是一个对称矩阵,其元素为

则将ϕk\phi_kϕk​和Ψk\Psi_kΨk​带回到能量函数中可得

通过求解上式就能够得到使得能量函数达到最小值的函数fkf_kfk​,其可以用wk\mathbf{w}_kwk​和HkH_kHk​两个参数来描述。因为上式是一个凸函数,因此利用梯度下降法可以寻找到全局最小值。根据计算得到的wk\mathbf{w}_kwk​和HkH_kHk​两个参数,回归函数f(p)f(\mathbf{p})f(p)可表示为

  值得注意的是,参数wk\mathbf{w}_kwk​的维度与用于回归计算的数据点的数量NNN一致,因此当数据点较多是计算量较大。为解决这个问题,作者提出一种近似计算方法,简单来说就是用K-means聚类方法,将NNN个数据点压缩至MMM个聚类中心点,然后再进行上述计算过程。
  下面作者将上述基于运动一致性的回归方法用于图像特征匹配中,首先使用A-SIFT+FLANN等方法获得大量匹配点,并用Ratio Test方法筛除部分误匹配点,这里的阈值标准设定较低(τ=0.86\tau=0.86τ=0.86),目的是尽可能的保留更多的正确匹配点。然后使用候选匹配点回归得到一个运动一致性回归模型,并用该模型计算所有匹配点(τ=1.0\tau=1.0τ=1.0)的运动一致性得分,将得分低于设定阈值的点视作误匹配点筛除掉。具体而言,作者计算了两个回归模型,并将二者级联起来得到较好的匹配结果。过程如下图所示

  第一个回归模型叫做“匹配可能性边界”(Matching Likelihood Boundaries),其数据点定义如下

其中在位置pj\mathbf{p}_jpj​处每个索引值为jjj的匹配点其对应的q^j\hat{q}_jq^​j​值假定为1,xj\mathbf{x}_jxj​表示点的图像坐标,mj\mathbf{m}_jmj​表示运动向量,oj\mathbf{o}_joj​表示仿射变换方向向量,使用这几个向量来作为位置描述向量的原因有三点:1.能够保留不连续的平面(Discontinuity Preservation),对于图像中不连续的两个平面(如相邻的两个物体)其位置坐标可能非常接近,但其运动情况可能差别很大(如一个物体运动而另一个物体静止),因此也可能不具备运动一致性。作者将运动向量引入,就避免了仅仅依赖位置坐标而导致错误估计的问题。2.仿射平滑性(Affine Smoothness),作者将仿射变换向量引入是为了更好的处理旋转运动。3.对称性(Symmetry),作者引入xj+mj\mathbf{x}_j+\mathbf{m}_jxj​+mj​是为了保证左右图像之间的数学对称性。
  在该模型中设置K=1K=1K=1,Hk=0H_k=0Hk​=0,ak=1a_k=1ak​=1,则按照前面叙述的回归过程,可得到匹配可能性函数f~(p)\widetilde{f}(\mathbf{p})f​(p)

其中

当存在一簇临近的匹配点时,其对应的匹配可能性会接近于1,另外当一个很大范围内的多个点都有相同的运动时,其对应的匹配可能性也会接近于1,如下图(a)、(b)所示

因此,将设定一个匹配可能性阈值ϵ\epsilonϵ,将匹配可能性大于阈值的点保留下来

  第二个模型叫做“双边变化仿射运动边界”(Bilaterally Varying Affine Motion Boundaries),其对X和Y两个方向分别建模,该模型的思想是处于这样一个判断,正确的运动不仅聚类,而且倾向于近似分段平滑变化仿射模型。对于X方向而言,其数据点的定义如下

数据点的输入p\mathbf{p}p与第一个模型的定义相同,K=3K=3K=3,a1(p)=xa_1(\mathbf{p})=xa1​(p)=x,a2(p)=ya_2(\mathbf{p})=ya2​(p)=y,a3(p)=1a_3(\mathbf{p})=1a3​(p)=1,则得到可能性函数f~x(p)\widetilde{f}_x(\mathbf{p})f​x​(p)

其中


对于Y方向其过程是类似的不再赘述。最后同样是设定阈值,并保留空间差异大于阈值的点

  如上文所说,第一个模型的匹配精确性不如第二个模型,而第二个模型的鲁棒性不如第一个模型,因此全部的候选匹配点依次经过两个模型的过滤,得到最终的匹配点。

创新点

  • 提出一种基于运动一致性的非线性回归模型
  • 根据运动一致性回归模型设置了匹配可能性边界和双边变化仿射运动边界,以此来滤除错误匹配点

算法评价

  该方法的基本假设是建立在正确匹配点的运动一致性上,根据这一假设设计了回归模型用于计算匹配点之间的运动一致性,并设计了上下两个边界,实现误匹配的滤除的基础上,更多的保留了正确匹配点。

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

论文阅读笔记《CODE: Coherence Based Decision Boundaries for Feature Correspondence》相关推荐

  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. Android 第三方图表类 MPChart 的使用
  2. 改变eclipse工程中代码的层次结构
  3. webpack4--提取css到单独文件并且压缩css
  4. java商城管理系统ssm_基于SSM+MYSQL的一个小型商城网站后台管理系统
  5. python下sqlite增删查改方法(转)
  6. 避免在 ASP.NET Core 3.0 中为启动类注入服务
  7. ios基础篇(十二)——UINavgationController的使用(三)ToolBar
  8. FTP:介绍、vsftpd搭建ftp、xshell使用xftp传输文件、pure-ftpd搭ftp
  9. 区别:synchronized与static synchronized
  10. 工具使用篇–typora+picGo实现图片上传
  11. matlab 画点标号,学习笔记(四)——MATLAB画图
  12. Win10在使用setuna2时,启动截屏后屏幕会放大的问题。
  13. LSB算法的改进matlab版
  14. 如何搭建一个网站,访问量一天几千人如何购买服务器?...
  15. 【Photoshop实用教程】如何用魔术棒工具替换背景?
  16. 强化学习—— 离散与连续动作空间(随机策略梯度与确定策略梯度)
  17. 5G标准核心内容:R15+R16(内含赠书福利)
  18. 信创产业国产CPU产业研究报告
  19. audio 自动播放 iPhone微信客户端
  20. MySQL经典四表查询(教师,学生,成绩,课程表)多表查询

热门文章

  1. 缓和曲线回头曲线交点法坐标计算实例
  2. python 显著性检验_Python SciPy 统计显著性检验(Statistical Significance Tests)
  3. 饿了么接入之饿了么首次下单测试
  4. matlab 绘制对数曲线图,大神经验!教你用matlab画对数坐标!
  5. 路由表的下一跳地址如何计算
  6. shenyu2.5.0对restful的path中文不支持,400错误解决
  7. 轮廓(图形)之凹点切分
  8. layui 表格序号累加 翻页序号也累加
  9. 王炸 | 海康汽车来了 商机还是冒进?
  10. c语言求开平方标准库函数,c语言如何求平方根 C语言中开平方函数是什么?