一种求解二次图匹配模型的方法与流程

文档序号:17689264发布日期:2019-05-17 20:54阅读:564来源:国知局
一种求解二次图匹配模型的方法与流程

本发明涉及一种求解二次图匹配问题的通用方法,该技术可应用于解决计算机视觉领域的对象检测、特征跟踪、图像分类、形状匹配和图像检索等问题。



背景技术:

图像匹配是指在2幅图像的视觉特征集合间建立一致对应关系。具体来说,图像匹配就是将同一景物或者物体在不同视点、不同角度的2副图像中的对应点关联起来。图匹配模型把2副图像(如G和G′)的特征点匹配问题转化为图匹配优化问题,需要事先从图像G中提出n1个特征点,从图像G′中提取n2(本发明要求n1=n2)个特征点,然后利用这些特征点构造一阶、二阶、三阶甚至更高阶的混合目标函数,并对其进行优化。

国内外学者已经提出了大量优化解图匹配问题中的目标函数的方法,包括稀疏全局最优化方法、普匹配算法以及机器学习方法等。稀疏全局最优算法的核心思想是将图匹配问题形式化为一个整数规划问题,并通过一个凹目标函数在放松搜索域的条件下寻找等价的全局最优解,不仅能处理大多数常用假设,而且能避免组合搜索,缺点是需要限制优化问题的维数,特别是在高阶多项式的情况下;谱匹配算法针对图匹配问题中一对一及多对一的放射性约束提出一种光谱松弛方法,并对目标函数进行归一化处理,较之前的谱匹配及毕业分配算法,增加了对噪声的容忍性,准确度也有了一定的提高;机器学习算法通过对图匹配模型的权重参数进行学习,以达到最优化目标函数的目的,优点是准确度较高,缺点是学习权重参数需要人工精确标注的训练数据难于获得广泛应用。

本发明通过将图匹配目标函数的优化问题视作一个一般的非线性规划问题来计算,而且在求解过程中无需引入辅助变量和辅助函数把原问题转化为无约束极值问题,就可以直接计算求解。所以,本发明不仅具有使用非常方便,计算过程简单,编程实现容易和运行效率较高的优点,而且具有很好的通用性。



技术实现要素:

在给出具体的算法内容之前,这里先给出图匹配模型的问题描述。一般在图匹配模型中,需要定义一组图像匹配对pair(G,G′),其中G为第一幅图像特征点组成的图,G′为第二幅图像特征点所组成的图,图1为CMU House数据库中第1、81张图像人工标注好的30个特征点。Gi(G′i′)表示图G(G′)中的第i个顶点,Gij∈{0,1}(G′i′j′∈{0,1})表示图中由Gi(G′)及Gj(G′j′)所组成的边,若Gij=1(G′i′j′=1)则边Gij(G′i′j′)存在,否则不存在,图2为CMU House数据库中第1、81张图像中30个特征点存在的边。定义图像匹配矩阵x(xii′∈{0,1}),如果xii′=1表明图G中的顶点Gi与图G′中顶点G′i′存在一致性对应关系,xii′=0则相反。定义c为点配对矩阵,其中cii′为点匹配对pair(Gi,G′i′)的权重,同理,定义d为边配对矩阵,其中dii′jj′为边配对pair(Gij,G′i′j′)的权重。那么图匹配问题就转化为求解最优图像匹配矩阵x*,以使二次规划目标函数达到最大化:

其中1≤i,j,i′,j′≤m,m表示图G和G′中的顶点个数,即要求图像匹配矩阵的每一行元素之和为1、列元素之和为1;图像匹配矩阵x(xii′∈{0,1})为0-1矩阵,而为了计算方便,该矩阵首先定义为连续变量,并增加约束条件只在最后一步做相应整数处理就得到真实的0-1匹配矩阵。

为便于后续描述,将上述的图匹配问题转化为标准的非线性规划模型:

max f(vec(x))=vec(x)Tvec(c)+vec(x)Tdvec(x)

其中vec(x)、vec(c)分别为图像匹配矩阵x和点配对矩阵c的列展开向量,vec(x)T为的vec(x)转置,gk(x)、hp(x)(1≤k≤2m,1≤p≤m2)分别表示匹配矩阵的每一行向量元素之和为1,每一列向量元素之和为1以及匹配矩阵的元素大于等于0的等式和不等式约束;m表示图G和G′中的顶点个数;2m为等式约束的个数;m2为不等式约束的个数。

利用计算机、投影仪和屏幕构建一个硬件设计平台,计算机、投影仪、屏幕相互连接,计算机内嵌有相应方法模块;在该平台上能实现求解图匹配模型的通用计算方法,根据以上定义的图匹配模型以及图3所示的算法流程图,本方法的技术方案描述如下:

步骤1:向计算机输入图匹配问题转化的标准非线性规划模型;

步骤2:选择容忍满足所有约束初始图像匹配矩阵;

步骤3:计算匹配目标函数在当前匹配矩阵处的最速上升方向。

步骤4:迭代更新图像匹配矩阵,并判断迭代次数是否达到上限或两次迭代更新的匹配矩阵是否有差别,如果达到迭代上限或两次迭代更新的匹配矩阵无差别,那么在计算机的显示器上或者通过投影仪在屏幕上输出近似最优图像匹配矩阵;否则继续执行以下步骤;

步骤5:如果当前图像匹配矩阵容忍满足所有约束,则跳转至步骤3继续执行;否则,判断本次迭代过程中执行的回拉操次数是否达到上限,是则输出“该问题很难在容忍度δ下求解或无解”停止,否则执行以下步骤;

步骤6:执行回拉操作并更新图像匹配矩阵,跳转至步骤5继续执行。

本发明的基本原理是:在给定图匹配模型和容忍满足所有约束条件的图像匹配矩阵时,首先在容忍满足等式约束的条件计算图匹配目标函数的上升方向,然后在至少有一个等式约束和不等式约束的违反超过容忍度时,计算回拉梯度矩阵增量并执行回拉操作,以保证整个迭代计算上升方向的过程在容忍满足所有约束的条件下进行。其中,当对某个不等式约束的违反超过容忍度时,意味着该不等式约束此时能够提供可行域的部分边界信息,故将被暂时当作等式约束处理用于上升方向的计算。

本发明的创新之处在于提供一种求解图匹配问题的非线性规划方法,可广泛应用于解决计算机视觉领域的对象检测、特征跟踪、图片分类、形状匹配和图片检索等问题。

附图说明

图1:CMU House数据库中第1、81张图像人工标注好的30个特征点。

图2:CMU House数据库中第1、81张图像中30个特征点存在的边。

图3:本发明的算法流程图。

图4:本方法的具体实施方案流程图。

图5:CMUHouse数据库中第1、51张图像对得到的匹配结果。

图6:CMUHouse数据库中第1、81张图像对得到的匹配结果。

具体实施方式

给定一由图匹配问题转化的标准非线性规划模型,根据图4所示的具体实施方案流程图,本发明的具体实施方案如下:

步骤1:向计算机输入图匹配模型的目标函数f(vec(x))、2m个等式约束条件{g1(x)-1=0,...,g2m(x)-1=0}和m2个不等式约束条件设置最大迭代次数N、最大回拉次数M、容忍度δ>0、迭代步长t>0、收敛精度ε>0,比如通常可以把N设置为10,102,…,1010中的一个数,把M设置为10,20,…,100中的一个数,并把δ、t和ε分别设置为10-1,10-2,…,10-10中的一个数;

步骤2:选择初始图像匹配矩阵x0,容忍满足所有约束,即所有|gk(x0)|≤δ且所有hp(x0)≥-δ;

步骤3:计算匹配目标函数f(vec(x))在图像匹配矩阵x=x0处的最速上升方向ad=▽f(vec(x0))+G(vec(x0))λ*,其中用▽f(vec(x0))表示求函数f(vec(x0))在图像匹配矩阵x0处的梯度;G(x0)=(▽g1(vec(x0)),...,▽gl+m(vec(x0)));λ*为最优乘子向量λ*=-(G(vec(x0)))+▽f(vec(x0)),(G(vec(x0)))+表示矩阵函数G(vec(x0))在x0处的伪逆。

步骤4:迭代计算更新图像匹配矩阵vec(x1)=vec(x0)+tad,如果迭代次数超过N或||vec(x1)-vec(x0)||≤ε,那么在计算机的显示器上或者通过投影仪在屏幕上输出近似最优图像匹配矩阵x0和最大的匹配值f(vec(x0)),停止;否则设置梯度矩阵E(vec(x1))=(▽g1(vec(x1)),...,▽gm(vec(x1)))和向量F(x1)=(g1(x1),...,gl+m(x1)),继续执行以下步骤;

步骤5:如果图像匹配矩阵x1容忍满足所有约束,则令x0=x1,G(vec(x0))=E(vec(x1)),并跳转至步骤3;否则,判断本次迭代过程中执行的回拉操次数是否大于M,是则输出“该问题很难在容忍度δ下求解或无解”停止,否则执行以下步骤;

步骤6:利用所有满足hp(x1)<-δ的不等式约束函数及其梯度,更新和其中s表示图像匹配矩阵x1违背的不等式约束条件的数目;

步骤7:计算回拉图像匹配矩阵的增量vec(Δx)=-((E(vec(x1)))T)+(F(x1))T,其中((E(vec(x1)))T)+为E(vec(x1))的转置矩阵的伪逆;

步骤8:执行回拉操作x1=x1+Δx,并跳转至步骤5。

本发明提供的方法计算过程简单,编程实现容易和运行效率较高,可以在给定图匹配模型后快速的得到最优的图像匹配矩阵。

按照本发明给出的算法流程,设置最大迭代次数N=100、最大回拉次数M=10、容忍度δ=10-6、迭代步长t=0.05以及收敛精度ε=10-8,对CMUHouse数据库中第1、50张和第1、80张图像对的图像匹配矩阵进行了计算,通过计算结果分析,其分别给出了CMUHouse数据库中第1、50张和第1、80张图像对得到的匹配结果,该结构满足相关要求。图5、图6分别给出了CMUHouse数据库中第1、51张和第1、81张图像对得到的匹配结果,其中矩形框连接线表示误匹配的结果。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1