搜档网
当前位置:搜档网 › 基于SURF的特征点快速匹配算法

基于SURF的特征点快速匹配算法

基于SURF的特征点快速匹配算法
基于SURF的特征点快速匹配算法

F R E A K 特 征 点 匹 配 算 法 介 绍 ( 2 0 2 0 )

图像特征描述子之FREAK ?在前【给力追-女生资-源】面的博文中,介绍的BRIEF、ORB、BRISK 算法都是基于特征点周围邻域像素点对之间的比较,形成二进制编码串作为特征【QQ】描述子,这种描述方法计算速度快,且占用内存小,满足一些实时【⒈】应用场景的需求。对于这类特征描述子,关键是确定邻域哪些像【0】素点对进行比较,以及如何匹配。BRIEF算法中特征点邻域的像素【1】点对是随机采样生成的,ORB算法是通过贪婪穷举的方法,在所有【6】可能的像素点对中选取相关性较小的若干点对,BRISK则是采用平【9】均采样的方法生成若干采样点。特征匹配方法通常都是采样Ham【⒌】ming距离来进行度量,由于是二进制编码方式,可通过异或操作快速计【2】算。 特征点检【б】测 ?FAST算法可实现快速检测图像特征点,而且对应有一个加速版本AGAST,因此在诸多特征描述子中,都是首先通过FAST算法搜索定位特征点,再加以描述。FREAK同BRISK算法类似,也是建立多尺度空间,在不同尺度的图像上使用FAST算法检测特征点。 采样模式 ?FREAK算法中采样模式接近于人眼视网膜接收图像信息的采样模型,如下图所示,人眼视网膜中,Fovea区域主要对高精度的图像信息进行处理,而Para区域则主要对低精度的图像信息进行处理。

在FREAK的采样模式中,图中每一个黑点代表一个采样点,每个圆圈代表一个感受野,每个采样点需进行高斯模糊处理,以降低噪声影响,感受野的半径表示高斯模糊的标准差。这种采样模式与BRISK的不同之处在于,感受野之间存在重叠的区域;与BRIEF和ORB算法的不同之处在于,FREAK的采样点根据与特征点的距离远近,采用了不同大小的高斯核函数进行平滑处理。不同大小的感受野在人眼视网膜中也存在类似的结构,通过重叠的感受野,可以获得更多的信息,使最终的描述符更具独特性和可区分性。最终FREAK算法的采样结构为6、6、6、6、6、6、6、1,6代表每层中有6个采样点并且这6个采样点在一个同心圆上,一共有7个同心圆,最后的1表示特征点。 特征描述 ?FREAK算法同样采用二进制编码描述特征点,用FF表示编码特征 F=Σ0≤aN2aT(Pa) F=Sigma_{0 leq a < N} 2^a T(P_a) T(Pa)={1,I(Pr1a)I(Pr2a) 0,otherwise T(P_a) = begin{cases} 1,I(P_a^{r_1}) > I(P_a^{r_2}) 0,otherwise end{cases} 式中,I(Pr1a)I(P_a^{r_1})表示采样点经过高斯模糊后的灰度值。 ?FREAK的采样模式中一共有43个采样点,可以产生N=43(43?1)-2=903N = 43(43 - 1)-2 = 903个采样点对,有些采样点对的编码值对特征描述并没有实际作用,反而会造成特征冗余,因此需要对特征的描述向量进行筛选,也就是降维。原论文中采用与ORB中类似的贪婪

图像中角点(特征点)提取与匹配算法

角点提取与匹配算法实验报告 1 说明 本文实验的目标是对于两幅相似的图像,通过角点检测算法,进而找出这两幅图像的共同点,从而可以把这两幅图像合并成一幅图像。 下面描述该实验的基本步骤: 1.本文所采用的角点检测算法是Harris 角点检测算法,该算法的基本原理是取以目标像素点为中心的一个小窗口,计算窗口沿任何方向移动后的灰度变化,并用解析形式表达。设以像素点(x,y)为中心的小窗口在X 方向上移动u ,y 方向上移动v ,Harris 给出了灰度变化度量的解析表达式: 2 ,,|,|,,()(x y x y x u y v x y x y I I E w I I w u v o X Y ??= -=++??∑∑ (1) 其中,,x y E 为窗口内的灰度变化度量;,x y w 为窗口函数,一般定义为2 2 2 ()/,x y x y w e σ +=; I 为图像灰度函数,略去无穷小项有: 222222 ,,[()()2]2x y x y x y x y E w u I v I uvI I Au Cuv Bv = ++=++∑ (2) 将,x y E 化为二次型有: ,[]x y u E u v M v ?? =???? (3) M 为实对称矩阵: 2 ,2 x y x x y x y y I I I M w I I I ???= ???????∑ (4) 通过对角化处理得到: 11 ,200x y E R R λλ-??= ??? (5) 其中,R 为旋转因子,对角化处理后并不改变以u,v 为坐标参数的空间曲面的形状,其特征值反应了两个主轴方向的图像表面曲率。当两个特征值均较小时,表明目标点附近区域为“平坦区域”;特征值一大一小时,表明特征点位于“边缘”上;只有当两个特征值均比较大时,沿任何方向的移动均将导致灰度的剧烈变化。Harris 的角点响应函数(CRF)表达式由此而得到: 2 (,)det()(())C RF x y M k trace M =- (6)

基于特征的图像匹配算法毕业设计论文(含源代码)

诚信声明 本人声明: 我所呈交的本科毕业设计论文是本人在导师指导下进行的研究工作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不包含其他人已经发表或撰写过的研究成果。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了谢意。本人完全意识到本声明的法律结果由本人承担。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 本人签名:日期:2010 年05 月20日

毕业设计(论文)任务书 设计(论文)题目: 学院:专业:班级: 学生指导教师(含职称):专业负责人: 1.设计(论文)的主要任务及目标 (1) 了解图象匹配技术的发展和应用情况,尤其是基于特征的图象匹配技术的发展和应用。 (2) 学习并掌握图像匹配方法,按要求完成算法 2.设计(论文)的基本要求和内容 (1)查阅相关中、英文文献,完成5000汉字的与设计内容有关的英文资料的翻译。(2)查阅15篇以上参考文献,其中至少5篇为外文文献,对目前国内外图象匹配技术的发展和应用进行全面综述。 (3)学习图象匹配算法,尤其是基于特征的图象匹配算法。 (4)实现并分析至少两种基于特征的图象匹配算法,并分析算法性能。 3.主要参考文献 [1]谭磊, 张桦, 薛彦斌.一种基于特征点的图像匹配算法[J].天津理工大学报,2006, 22(6),66-69. [2]甘进,王晓丹,权文.基于特征点的快速匹配算法[J].电光与控制,2009,16(2), 65-66. [3]王军,张明柱.图像匹配算法的研究进展[J].大气与环境光学学报,2007,2(1), 12-15.

F R E A K 特 征 点 匹 配 算 法 介 绍 ( 2 0 2 0 )

三个描述符的比较:SURF,FREAK和BRISK =================分割线================= 我认为从事对象识别,图像注册和使用关键点提取的其他领域的开发人员和研究人员可以发现这个帖子很有用。最近(从2.4.2),一个新的特征描述符算法被添加到OpenCV库中。据称FREAK描述符优于ORB和SURF描述符,但速度非常快(与ORB相当)。也有人在我的博客上的评论提到BRISK描述符,这是比SURF更新,更高效。那么,最后我找到一个时间来比较他们,并发表我的研究成果。 这篇文章与我过去的OpenCV比较报告非常相似。虽然这些报告是多年前发表的,但它们还是有些实际的。对于这个测试,我决定从头开始重写整个测试框架。源代码即将可用。但现在,让我解释我做了什么来找到最好的三种算法。将图像转换为描述符的主要目标是什么?从像素域移动到更紧凑的表示形式相同的数据。此外,我们希望我们的表示是旋转和比例不变的(例如,当源图像旋转或缩放时,表示保持不变或略微变化)。SURF,FREAK和BRISK描述符宣称它们是旋转和尺度不变的。 ========================分割线============================== 就像在OpenCV比较报告中一样,测试应用程序与测试模式图像一起工作。我们有四个基本的转换:旋转,缩放,模糊和亮度调整。这里是如何旋转转换类看起来像:

class ImageRotationTransformation : public ImageTransformation ImageRotationTransformation(float startAngleInDeg, float endAngleInDeg, float step, cv::Point2f rotationCenterInUnitSpace) : ImageTransformation("Rotation") , m_startAngleInDeg(startAngleInDeg) , m_endAngleInDeg(endAngleInDeg) , m_step(step) , m_rotationCenterInUnitSpace(rotationCenterInUnitSpace) -- Fill the arguments for (float arg = startAngleInDeg; arg = endAngleInDeg; arg += step) m_args.push_back(arg); virtual std::vector getX() const return m_args; virtual void transform(float t, const cv::Mat source, cv::Mat result) const cv::Point2f center(source.cols * m_rotationCenterInUnitSpace.x, source.cols * m_rotationCenterInUnitSpace.y);

图像匹配之surf算法

上面这段文字的大体意思就是说: SURF意指加速的具有鲁棒性的特征,由Bay在2006年首次提出,这项技术可以应用于计算机视觉的物体识别以及3D重构中。SURF算子由SIFT算子改进而来,一般来说,标准的SURF算子比SIFT算子快好几倍,并且在多幅图片下具有更好的鲁棒性。SURF最大的特征在于采用了harr特征以及积分图像integral image的概念,这大大加快了程序的运行时间。 surf提出算法参见http://www.vision.ee.ethz.ch/~surf/papers.html有paper下载地址。 1、提取特征点 2、提取特征描述符 1. 特征点的提取 1)利用Hessian矩阵,计算特征值α 其中Lxx(x, σ)是高斯滤波后图像g(σ)的在x方向的二阶导数,其他的Lyy(x, σ)、Lxy(x, σ)都是g(σ)的二阶导数。为了减小计算量,原文使用了一个简单的方法,并利用了积分图像的优势(大大的减少计算量),方法其实很简单就是在模糊的基础上将原本的模块近似下。 总所周知,一般计算图像的二阶导时,利用下面的公式 d2f(x)/dx2=(f(x+1)-f(x))-(f(x)-f(x-1))=-2*f(x)+f(x+1)+f(x-1)。但是f(x)=g(h(x))【h(x)为图像的灰度值,f(x)

是将h(x)高斯滤波处理的灰度函数】 图一模板近似 以9X9滤波器为例,如上图所示,左边两幅图分别为灰度图像在中心点(黑色点)处的二阶导数d2f(x)/dx2和 d2f(x)/dxdy的模板对应的值, 近似后变成右边的两幅图,图中灰色部分像素值为0。可是这样计算特征值不是也很复杂么?当然,所以作者提供了一种新思路--使用积分图像。 积分图像,顾名思义,即指当前像素点所在位置距原点(0,0)所包围面的所有灰度之和。 绿色的部分为当前像素点,红色为积分区域。 这样计算图像中任意一块矩形区域的灰度之和Sx只需要利用矩形4个顶点(Xi,Yi)(i=1,2,3,4 顺序为从上之下,先左后右)的积分值S(x,y)即可。 Sx=S(X1,Y1)+S(X4,Y4)-S(X2,Y2)-S(X3,Y3) 至此,大家应该知道近似二阶导数的高斯模板并引入积分图像的好处了吧,只需要在函数定义之前计算各个坐标点的积分图像,然后就能方便的求出hessian的特征值。 不过由于函数模板的近似,这里需要修正下特征值α的求解公式: 这里Dxx和Dxy就是根据图一得到的,而Dyy和Dxx类似,只需要导致一下模板即可。 2)根据是否为领域极大值判断特征点

SIFT特征点提取与匹配算法

SIFT 特征点匹配算法 基于SIFT 方法的图像特征匹配可分为特征提取和特征匹配两个部分,可细化分为五个部分: ① 尺度空间极值检测(Scale-space extrema detection ); ② 精确关键点定位(Keypoint localization ) ③ 关键点主方向分配(Orientation assignment ) ④ 关键点描述子生成(Keypoint descriptor generation ) ⑤ 比较描述子间欧氏距离进行匹配(Comparing the Euclidean distance of the descriptors for matching ) 1.1 尺度空间极值检测 特征关键点的性质之一就是对于尺度的变化保持不变性。因此我们所要寻找的特征点必须具备的性质之一,就是在不同尺度下都能被检测出来。要达到这个目的,我们可以在尺度空间内寻找某种稳定不变的特性。 Koenderink 和Lindeberg 已经证明,变换到尺度空间唯一的核函数是高斯函数。因此一个图像的尺度空间定义为:(,,)L x y σ,是由可变尺度的高斯函数(,,)G x y σ与输入图像(,)I x y 卷积得到,即: ),(),,(),,(y x I y x G y x L *=σσ (1.1) 其中:2222/)(221 ),,(σπσσy x e y x G +-= 在实际应用中,为了能相对高效地计算出关键点的位置,建议使用的是差分高斯函数(difference of Gaussian )(,,)D x y σ。其定义如下: ) ,,(),,() ,()),,(),,((),,(σσσσσy x L k y x L y x I y x G k y x G y x D -=*-= (1.2) 如上式,D 即是两个相邻的尺度的差(两个相邻的尺度在尺度上相差一个相乘系数k )。

图像匹配搜索算法

本文基于相关性分析来实现图像匹配 第一步:读取图像。 分别读取以下两幅相似的图片,显示效果如下: 第二步:选择一副图像的子区域。用户可以通过鼠标选择需要截取的图像部分,用于匹配。随机选取图片的一块区域,如下图:

第三步:使用相关性分析两幅图像 采用协方差的方式计算相关系数,分析图片的相似性。 1.协方差与相关系数的概念 对于二维随机变量(,)X Y ,除了关心它的各个分量的数学期望和方差外,还需要知道这两个分量之间的相互关系,这种关系无法从各个分量的期望和方差来说明,这就需要引进描述这两个分量之间相互关系的数字特征——协方差及相关系数。 若X Y 与相互独立,则()( )0 Y E X EX Y EY σ--???? =≠;若()()0E X EX Y EY --≠????,则表 示X 与Y 不独立,X 与Y 之间存在着一定的关系 设 (,)X Y 是二维随机变量, 则称()()E X EX Y EY --????为X 与Y 的协方差(Covariance ),记为 ()cov ,X Y 或XY σ,即 ()()()cov ,XY X Y E X EX Y EY σ==--???? 若 0X σ≠ 且0Y σ=≠,则称 XY XY X Y σρσσ== 为X 与Y 的相关系数(Correlation Coefficient )。()c o v ,X Y 是 有量纲的量,而XY ρ则是无量纲的量.协方差常用下列公式计算

()() =-? cov,X Y E XY EX EY 2.用全搜索和协方差计算截取图片与另外一幅图片的各点的相似度。c=normxcorr2(sub_I1(:,:,1),I2(:,:,1)); 第四步:找到整幅图像的偏移。 [max_c,imax]=max(abs(c(:))); [ypeak,xpeak]=ind2sub(size(c),imax(1)); [m,n]=size(sub_I1); xbegin=xpeak-n+1; ybegin=ypeak-m+1; xend=xpeak; yend=ypeak; 从原图像提取匹配到的图像 extracted_I1=I2(ybegin:yend,xbegin:xend,:); 第五步:显示匹配结果。 相关性匹配图: 找出峰值即最相似区域的中心

SIFT特征点提取与匹配算法

二 特征点提取算法 1、基于SIFT (Scale Invariant Feature Transform )方法的图像特征匹配 参看David G. Lowe 的“Distinctive Image Features from Scale-Invariant Keypoints ” 基于SIFT 方法的图像特征匹配可分为特征提取和特征匹配两个部分,可细化分为五个部分: ① 尺度空间极值检测(Scale-space extrema detection ); ② 精确关键点定位(Keypoint localization ) ③ 关键点主方向分配(Orientation assignment ) ④ 关键点描述子生成(Keypoint descriptor generation ) ⑤ 比较描述子间欧氏距离进行匹配(Comparing the Euclidean distance of the descriptors for matching ) 1.1 尺度空间极值检测 特征关键点的性质之一就是对于尺度的变化保持不变性。因此我们所要寻找的特征点必须具备的性质之一,就是在不同尺度下都能被检测出来。要达到这个目的,我们可以在尺度空间内寻找某种稳定不变的特性。 Koenderink 和Lindeberg 已经证明,变换到尺度空间唯一的核函数是高斯函数。因此一个图像的尺度空间定义为:(,,)L x y σ,是由可变尺度的高斯函数(,,)G x y σ与输入图像(,)I x y 卷积得到,即: ),(),,(),,(y x I y x G y x L *=σσ (1.1) 其中:2222/)(221 ),,(σπσσy x e y x G +-= 在实际应用中,为了能计算的相对高效,所真正使用的是差分高斯尺度空间(difference of Gaussian )(,,)D x y σ。其定义如下: ) ,,(),,() ,()),,(),,((),,(σσσσσy x L k y x L y x I y x G k y x G y x D -=*-= (1.2) 如上式,D 即是由两个相邻的尺度的差(两个相邻的尺度在尺度上相差一个相乘系数k )。

图像处理技术--模板匹配

图像处理技术——模板匹配算法 左力2002.3. 认知是一个把未知与已知联系起来的过程。对一个复杂的视觉系统来说,它的内部常同时存在着多种输入和其它知识共存的表达形式。感知是把视觉输入与事前已有表达结合的过程,而识别也需要建立或发现各种内部表达式之间的联系。 匹配就是建立这些联系的技术和过程。建立联系的目的是为了用已知解释未知。 章毓晋《图像工程下册》P.163 一.模板匹配的基本概念 模板就是一幅已知的小图像。模板匹配就是在一幅大图像中搜寻目标,已知该图中有要找的目标,且该目标同模板有相同的尺寸、方向和图像,通过一定的算法可以在图中找到目标,确定其坐标位置。 以8位图像(其1个像素由1个字节描述)为例,模板T( m ? n个像素)叠放在被搜索图S( W ? H个像素)上平移,模板覆盖被搜索图的那块区域叫子图Sij。i,j为子图左上角在被搜索图S上的坐标。搜索范围是: 1 ≤ i ≤ W – M 1 ≤ j ≤ H – N 通过比较T和Sij的相似性,完成模板匹配过程。 注意:图像的数据是从下到上、从左到右排列的。 可以用下式衡量T和Sij相似性: ∑∑ = =- = N n ij M m n m T n m S j i D 12 1 )] , ( ) , ( [ ) ,(被搜索图 S 模板 T m i {

∑∑ ∑∑ ∑∑ ======+?-=N n M m N n ij M m N n ij M m n m T n m T n m S n m S 1 2 1 1 1 1 2 1 )] ,([),(),(2)],([ 上式的第一项为子图的能量,第三项为模板的能量,都与模板匹配无关。第二项是模板和子图的互相关,随( i, j )而改变。当模板和子图匹配时,该项有极大值。将其归一化,得模板匹配的相关系数: ∑∑∑∑∑∑======?= N n M m N n ij M m N n ij M m n m T n m S n m T n m S j i R 1 2 1 1 2 1 1 1 )] ,([)],([) ,(),(),( 当模板和子图完全一样时,相关系数R( i, j ) = 1。在被搜索图S 中完成全部搜索后,找出R 的最大值Rmax( im, jm ),其对应的子图Simjm 即为匹配目标。显然,用这种公式做图像匹配计算量大、速度较慢。 另一种算法是衡量T 和Sij 的误差,其公式为: ∑∑ ==-=N n ij M m n m T n m S j i E 1 1 |),(),(|),( E( i, j )为最小值处即为匹配目标。为提高计算速度,取一个误差阈值E 0,当E( i, j )> E 0时就停止该点的计算,继续下一点计算。 试验结果如下: 注:以上试验是在赛扬600 PC 机上用VC6.0进行的。 结果表明:被搜索图越大,匹配速度越慢;模板越小,匹配速度越快。误差法速度较快,阈值的大小对匹配速度影响大,和模板的尺寸有关。 二.改进模板匹配算法 我在误差算法的基础上设计了二次匹配误差算法: 第一次匹配是粗略匹配。取模板的隔行隔列数据,即四分之一的模板数据,在被搜索图上进行隔行隔列扫描匹配,即在原图的四分之一范围内匹配。由于数据量大幅度减少,匹配速度显著提高。 为了合理的给出一个误差阈值E0,我设计了一个确定误差阈值E0的准则: E 0 = e 0 * (m+1)/2 * (n+1)/2

SURF特征原理

SURF特征提取分析 背景引言 计算机视觉中,引入尺度不变的特征,主要的思想是每个检测到的特征点都伴随着对应的尺寸因子。当我们想匹配不同图像时,经常会遇到图像尺度不同的问题,不同图像中特征点的距离变得不同,物体变成不同的尺寸,如果我们通过修正特征点的大小,就会造成强度不匹配。为了解决这个问题,提出一个尺度不变的SURF特征检测,在计算特征点的时候把尺度因素加入之中。SURF与SIFT算法相似,SIFT算法比较稳定,检测特征点更多,但是复杂度较高,而SURF要运算简单,效率高,运算时间短一点。相关SIFT算法请详见博文【图像分析】尺度不变特征变换(SIFT)特征提取分析。本节介绍SURF算法相关知识。基本介绍 首先,我们引用[3]中对SURF描述为:“SURF (Speeded Up Robust Features)is a robust local feature detector, first presented by Herbert Bayet al. in 2006, that can be used in computer vision tasks likeobject recognition or 3D reconstruction. It is partly inspired by the SIFT descriptor.The standard version of SURF is several times faster than SIFT and claimed by its authors to be more robust against different image transformations than SIFT. SURF is based on sums of2D Haar wavelet responses and makes an efficient use ofintegral images.It uses an integer approximation to the determinant of Hessian blob detector, which can be computed extremely quickly with an integral image (3 integer operations). For features, it uses the sum of the Haar wavelet response around the point of interest. Again, these can be computed with the aid of the integral image". 从上述对SURF描述,可知:第一、SURF算法是对SIFT算法加强版,同时加速的具有鲁棒性的特征。第二、标准的SURF算子比SIFT算子快好几倍,并且在多幅图片下具有更好的鲁棒性。SURF最大的特征在于采用了harr特征以及积分图像integral image的概念,这大大加快了程序的运行时间。 算法描述 为了实现尺度不变性的特征点检测与匹配,SURF算法则先利用Hessian矩阵确定候选点,然后进行非极大抑制,计算复杂度降低多了。整个算法由以下几个部分组成。 1.Hessian黑森矩阵构建 我们知道:SIFT算法建立一幅图像的金字塔,在每一层进行高斯滤波并求取图像差(DOG)进行特征点的提取,而SURF则用的是Hessian Matrix进行特征点的提取,所以黑森矩阵是SURF算法的核心。假设函数f(x,y),Hessian矩阵H是由函数偏导数组成。首先来看看图像中某个像素点的Hessian Matrix的定义为:

OpenCV中特征点提取和匹配的通用方法

OpenCV中特征点提取和匹配的通用方法 OpenCV在新版本中把很多C语言的代码都重新整理成了C++代码,让我们在使用的时候更加方便灵活。其中对于特征点的提取和匹配,充分体现了C++的强大。下面直接用例子来说明。假设我们有两幅图:1.bmp和2.bmp,要从中提取体征点并匹配,代码如下: // Load image from file IplImage *pLeftImage = cvLoadImage("1.bmp", CV_LOAD_IMAGE_GRAYSCALE); IplImage *pRightImage = cvLoadImage("2.bmp", CV_LOAD_IMAGE_GRAYSCALE); // Convert IplImage to cv::Mat Mat matLeftImage = Mat(pLeftImage, false); // Do not copy Mat matRightImage = Mat(pRightImage, false); // Key point and its descriptor vectorLeftKey; vectorRightKey; Mat LeftDescriptor; Mat RightDescriptor; vector Matches; // Detect key points from image FeatureDetector *pDetector = new SurfFeatureDetector; // 这里我们用了

SURF特征点 pDetector->detect(matLeftImage, LeftKey); pDetector->detect(matRightImage, RightKey); delete pDetector; // Extract descriptors DescriptorExtractor *pExtractor = new SurfDescriptorExtractor; // 提取SURF描述向量 pExtractor->compute(matLeftImage, LeftKey, LeftDescriptor); pExtractor->compute(matRightImage, RightKey, RightDescriptor); delete pExtractor; // Matching features DescriptorMatcher *pMatcher = new FlannBasedMatcher; // 使用Flann 匹配算法 pMatcher->match(LeftDescriptor, RightDescriptor, Matches); delete pMatcher; // Show result Mat OutImage; drawMatches(matLeftImage, LeftKey, matRightImage, RightKey, Matches, OutImage); cvNamedWindow( "Match features", 1); cvShowImage("Match features", &(IplImage(OutImage))); cvWaitKey( 0 ); cvDestroyWindow( "Match features" ); 从上面的代码可以看见,用OpenCV来做特征提取匹配相当简便,出去读图和显示结果的代码,真正核心的部分只有3段代码,分别是检测关键点,提取描述向量和特征匹配,一共只有11行代码。

F R E A K 特 征 点 匹 配 算 法 介 绍

图像局部特征(一)--概述 本文根据下面这篇文章,做下简单修改。 研究图像特征检测已经有一段时间了,图像特征检测的方法很多,又加上各种算法的变形,所以难以在短时间内全面的了解,只是对主流的特征检测算法的原理进行了学习。总体来说,图像特征可以包括颜色特征、纹理特等、形状特征以及局部特征点等。其中局部特点具有很好的稳定性,不容易受外界环境的干扰,本篇文章也是对这方面知识的一个总结。 1. 局部特征点 图像特征提取是图像分析与图像识别的前提,它是将高维的图像数据进行简化表达最有效的方式,从一幅图像的M×N×3?M×N×3的数据矩阵中,我们看不出任何信息,所以我们必须根据这些数据提取出图像中的关键信息,一些基本元件以及它们的关系。 局部特征点是图像特征的局部表达,它只能反正图像上具有的局部特殊性,所以它只适合于对图像进行匹配,检索等应用。对于图像理解则不太适合。而后者更关心一些全局特征,如颜色分布,纹理特征,主要物体的形状等。全局特征容易受到环境的干扰,光照,旋转,噪声等不利因素都会影响全局特征。相比而言,局部特征点,往往对应着图像中的一些线条交叉,明暗变化的结构中,受到的干扰也少。 而斑点与角点是两类局部特征点。斑点通常是指与周围有着颜色和灰度差别的区域,如草原上的一棵树或一栋房子。它是一个区域,

所以它比角点的噪能力要强,稳定性要好。而角点则是图像中一边物体的拐角或者线条之间的交叉部分。 2. 斑点检测原理与举例 2.1 LoG与DoH 斑点检测的方法主要包括利用高斯拉普拉斯算子检测的方法(LOG),以及利用像素点Hessian矩阵(二阶微分)及其行列式值的方法(DOH)。 LoG的方法已经在斑点检测这入篇文章里作了详细的描述。因为二维高斯函数的拉普拉斯核很像一个斑点,所以可以利用卷积来求出图像中的斑点状的结构。 DoH方法就是利用图像点二阶微分Hessian矩阵: H(L)=[L?xx?L?xy?L?xy?L?yy?]?H(L)=[LxxLxyLxyLyy] 以及它的行列式的值DoH(Determinant of Hessian): det=σ?4?(L?xx?(x,y,σ)L?yy?(x,y,σ)?L?2?xy?(x,y,σ))?de t=σ4(Lxx(x,y,σ)Lyy(x,y,σ)?Lxy2(x,y,σ)) Hessian矩阵行列式的值,同样也反映了图像局部的结构信息。与LoG相比,DoH对图像中的细长结构的斑点有较好的抑制作用。 无论是LoG还是DoH,它们对图像中的斑点进行检测,其步骤都可以分为以下两步: 1)使用不同的σ?σ生成(?2?g?x?2?+?2?g?y?2?)?(?2g?x2+?2g?y2) 或?2?g?x?2?,?2?g?y?2?,?2?g?x?y?2g?x2,?2g?y2,?2g?x?y模板,并

关于各种图像匹配方法的报告

关于各种图像匹配方法的报告 图像匹配方法,大致可以分为三类:基于特征点、灰度分布和频域。本文的主要工作就是研究这三类图像匹配方法,分析各种方法的优缺点,其中重点研究了基于特征的匹配方法。注:为了控制篇幅,本报告只对相关算法进行了很简单的叙述,故附有两个文件夹,文件夹“报告相关文档”相对详细地叙述了各算法(节号相对应)。如果还不够详细、清楚,可参照文件夹“References”。 1、基于特征点匹配方法 1.1 SUSAN 特征点算法 SUSAN算法的基本原理是通过以一个点为中心的局部区域内亮度值的分布情况来判断平滑区域、边缘及角点。如图1所示,一个在图像上移动的圆形模板,模板的中心称为核心,它的位置有以下五种形式。图像一定区域的每个像素的亮度值与核心点的亮度值相比较,把比较结果相似或相同的点组成的区域叫做USAN(单值分割相似核心)。USAN区域含有图像在某个局部区域的结构信息,而大小反映了图像局部特征的强度。 SUSAN算子使用的是圆形模板来进行角点探测,一般使用模板的半径为3-4个像元,模板在图像上滑动,在每一个位置求亮度相似比较函数,并计算合计值,就得到了USAN区域的面积,而后再跟一个给定阈值进行比较。计算重心求出核

到重心的距离,对应正确角点,若重心距离核较远,就能以距离消除虚假角点的影响。最后使用非最大抑制(No Max Suppression)方法,这样就可以找出角点。 1.2 A New SUSAN Based Image Sharpness Function 对于Susan的改进,Yu Song等人提出了一种自适应阈值的检测算法,解决了SUSAN算子对灰度细节丰富的图像检测效果不佳的问题。 下面是原SUSAN算法中使用的相似度函数: 而这种新的SUSAN算法的与原SUAN算法的区别就在于它使用了不依赖于固定阈值的相似度函数。Yu Song等人的文章中提出了7种相似度函数,如下:

一种基于直方图统计特征的直方图匹配算法的研究_朱磊

收稿日期:2004-01-21 作者简介:朱磊(1973— ),男,江苏南京人,工学博士,讲师,研究方向:多媒体信息处理与通信网络管理。文章编号:1003-6199(2004)02-0048-04 一种基于直方图统计特征的直方图匹配算法的研究 朱 磊 (解放军理工大学通信工程学院,江苏南京 210007) 摘 要:本文提出并验证了基于直方图统计特征的直方图匹配算法。直方图作为对图像 颜色或灰度分布的一种基本描述量,利用其统计特征进行直方图之间的相似性度量。实验结果表明,在获得相同查准率的情况下,利用直方图统计特征量测算的算法比经典的欧氏距离测算算法具有更高的查全率。 关键词:直方图;匹配算法;统计特征中图分类号:TP391 文献标识码:A The Application of Digital Library T echnology in the Integrated Management Platform for Military Information ZHU Lei (Institute of Communication Engineering ,PLAUST ,Nanjing ,210007,China ) Abstract :In this paper ,the histogram ’s matching that based on the histogram ’s statistical characteriza 2tion was put forward and implemented.As a basic descriptor of the distribution of color or gray ,histogram ’s statistical characterization was used to compute the similarity between each other.The experimental result in 2dicates that when compared with the classical Euclidean distance measure method ,the new matching algo 2rithm can achieve a higher recall and the same precision. K ey w ords :histogram ;matching algorithm ;statistical characterization 1 引言 在对图像颜色特征的描述上,直方图(his 2togram )是一个非常有效的工具。直方图描述了图像颜色的统计分布特征,且具有平移、尺度和旋转的不变性,因此在颜色检索中被广泛采用。经典的直方图匹配算法是计算直方图之间的欧氏距离,在这种计算方法中,对直方图之间的相似度测量是按照矢量距离测量的思路进行的。本文采用随机变量的数字特征分析方法,利用直方图的统计特征进行直方图之间的相似性度量,将直方图随机变量的均值、方差和K olmogorov -Smirnov 检测量结合起 来,利用三者的加权和来代替欧氏距离判决公式, 对两幅图像的直方图之间的相似性进行度量。本文对这部分的工作进行了实验比较,实验结果表明,在获得相同查准率的情况下,利用直方图统计特征量测算的算法比经典的欧氏距离测算算法具有更高的查全率。 2 基于随机变量统计特征的直方图匹配算法 灰度直方图是灰度级的函数,它表示图像中具有每种灰度级的像素的个数,反映图像中每种灰度出现的频率。如图1所示,灰度直方图的横坐标是灰度级,纵坐标是该灰度级出现的频率,是图像最 第23卷第2期2004年6月 计 算 技 术 与 自 动 化Computing Technology and Automation Vol 123,No 12 J un 12004

SURF算法

SURF算法 SURF是一种尺度、旋转不变的detector和descriptor。最大的特点是快!在快的基础上保证性能(repeatability,distinctiveness 和robustness)。 SURF采用有效策略的主要有:1)积分图像(用于对图像卷积)2)detector 是基于Hessian矩阵,descriptor是基于分布的。 下面是SURF算法的具体实现: 1.兴趣点检测 SURF对于兴趣点的检测是基于最基本的Hessian近似矩阵。 1.1积分图像

1.2 用于检测兴趣点的Hessian矩阵 中得到启发,采用了盒子型滤波器(box filter)对上面的滤波器进行近似。盒子型滤波器见图1.3.

再根据filter的大小做一个归一化。这对于尺度不变性是有必要的。 有了前面的着一些准备工作,就可以对一幅图像I计算每个点的近似Hessian矩阵的行列式值,将这些值存储,备用! 1.3尺度空间表示 算法的尺度不变性主要靠不同尺度下寻找感兴趣点。谈到不同尺度就不得不说‘金字塔’。Lowe在其SIFT大作中是这样构造尺度空间的:对原图像不断地进行Gauss平滑+降采样。得到金字塔图像后,又进一步得到了DOG图,边和斑状结构就是通过DOG图得到其在原图的位置。SURF中的做法与SIFT是有所不同的。SIFT算法在构造金字塔图层时Gauss滤波器大小不变,改变的是图像的大小;而SURF则恰恰相反:图像大小保持不变,改变的是滤波器的大小。 之所以这么做的目的考虑的主要目的还是效率问题(这样可以利用积分图有关的快速计算,用不同size的Mask进行卷积运算,复杂度是一样的,仅仅是三个加减法而已)。而且,由于没有对图像进行降采样,所以不存在混叠现象。 与SIFT类似,SURF的尺度空间也是按组(Octaves)划分的。每一个Octave 里是对输入图像用size不断增加的filter进行滤波后得到的一系列响应。总的来说,一组包含了一个缩放因子。每一组内的层数是一个常量。

图像匹配中特征点提取算法研究

、原始依据 1.工作基础 特征点是数字图像中重要的几何特征,特征点的准确提取对于图像处理和图像测量具有重要意义。Harris算子是C. Harris和J. Stephens在1988年提出的一种基于信号的点特征提取算子。Harris角点检测算法是一种非常经典的提取算法,这种算子受信号处理中自相关函数的启发。给出与自相关函数相联系的矩阵M。M阵的特征 值是自相关函数的一阶曲率,如果两个曲率值都高,则认为该点是特征点。Harris算 法具有计算简单、提取的角点特征均匀合理、可以定量提取特征点以及算子稳定的特点。 2?研究条件 系统的开发已经具备的外界条件是具有藏书丰富的天津大学仁爱学院图书馆,并 且随时可以得到指导老师的辅导和指点,系统开发所使用的电脑已经介入In ternet,能方便的在外网上进行查阅资料。开发环境是普通个人计算机,软件支持是Windows 系列的操作系统。 3?应用环境 论文在解决图像特征点的提取问题上积极应用并改进Harris算法,并运用多个不 同类型的图像实验比较算法的优缺点。 4.工作目的 掌握使用Harris算法提取图像特征点的方法以及Harris算法的原理。考证不同类型图像使用Harris算法提取图像特征点的优劣。 二、参考文献修改同开题 [1]陈利军.图像角点检测和匹配算法的研究[D].西安:西安电子科技大学, 2005. 163—168. [2]李兰友,王学彬.Visual C#图像处理程序设计实例[M].北京:北京国防工业出版社,2003. 88— 102. [3]李玲玲,李印清.图像配准中角点检测算法的研究与比较[J].郑州:郑州航空工业管理学院学报 (社会科学版),2006, 25(2): 190—192. [4]W ANG Wei ,TANG Yi-ping. Image Corner Detection Technique Research on Machine Vision[R] . Beijing : National Natural Scienee Foundation of China 2006. 46—58. ⑸Kitchen L,Rosenfeld A. Gray -Level Corner Detection[J]. Netherlands: Pattern Recog ni tion Letters, 1982,13(2):163—175. [6]Moravia HP . Towards Automatic Visual Obstacle Avoidance[C]. Proceedings of International Joint Conference on Artificial Intelligenee, Cambridge, MA . USA: 1977. 10—12. [7]Smith S M. Brady M. SUSAN-a New Approach to Low Level Image Processi ng

相关主题