百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 技术资源 > 正文

基于ASIFT算法特征匹配的研究

moboyou 2025-04-23 14:11 80 浏览

李银1,2,何强1,2,乔龙辉1,2

(1.重庆邮电大学,重庆400065;2.重庆信科设计有限公司,重庆400065)

:针对SIFT算法对大角度视角变化下特征提取鲁棒性不强的弱点,引入了一种完全仿射不变的图像特征匹配算法—ASIFT。ASIFT算法不仅继承了SIFT算法的尺度、旋转和平移的不变性,并且在此基础上增加了两个空间特征描述参数:经度和纬度,从而定义出度量仿射形变的两个参量绝对倾斜t(absolute tilt)和过渡倾斜τ(transition tilt),模拟相机光轴变化,实现完全仿射不变。一种双分辨率(two-resolution)加速方法的提出,使ASIFT算法的复杂度约为SIFT的2倍。

:特征匹配;仿射不变;过渡倾斜;绝对倾斜;双分辨率;SIFT;ASIFT

图像匹配旨在建立出现在不同的图像相似对象之间的对应关系,已在许多计算机视觉和图像处理方面得到应用,例如图像识别、三维重建、目标跟踪、机器人定位等。目前国际上最先进的图像匹配算法通常由检测器和描述符两部分组成,根据不变特性可以分为:平移和旋转不变特性的Harris角点检测器[1] ;旋转和尺度不变的HarrisLaplace、HessianLaplace和DoG(差分高斯)区域检测器[23];仿射性不变的基于双极线的区域检测器MSER[4]。这些方法通过归一化局部区域、部分区域或者水平线修补程序可以形成仿射变换,当归一化这些参量使其成为标准对象时,仿射变换的效果就会消除。LOWE D G提出了尺度不变特征转换SIFT[56],是完全尺度不变的唯一方法,由于SIFT没有覆盖整个仿射空间,它的性能在视角变化的情况下迅速降低,因而不具有完全仿射性。

ASIFT算法建立模型增加了经度和纬度两个参数,模拟相机轴方向和尺度变化,并归一化旋转和平移,实现了完全仿射不变,但相应的复杂度会大大增加。它是一种双分辨率方法,具有单一的SIFT算法大约两倍的复杂性。经过实验发现,ASIFT算法能够很好地处理视角变化的图像仿射特征匹配,验证了仿射不变性。因而ASIFT算法匹配在各种复杂情况下的图像识别领域都有广阔的应用前景。

1.1仿射相机模型

通过仿射平面变换能模拟拍摄视角变化所产生的图像形变,这种模型提供对象的边界是分段光滑的,因此,一种摄像机运动图像变形模型[7]表示如下:

μ(ax+by+e,cx+dy+f)

其中,A=ab

cd为线性平面的正行列式,可以分解为:

图1仿射模拟记A=λR(ψ)TtR(),其中λ>0,λ是A的决定因子,R(ψ)表示平面旋转ψ角, Tt(t>1)指倾斜。图1是对式(1)的摄像机运动解释:和θ=arccos1t是指相机的视角,ψ参数化相机旋转。在这个仿射模型中,相机远离平面物体,从正面开始,平行于对象平面的相机运动会引起图像旋转,具有法线和光轴的平面与固定的垂直平面形成的夹角称为经度;光轴与平面u的法线之间夹角θ称为纬度;定义倾斜t=1cosθ,相机可绕其光轴旋转(旋转参数ψ),相机通过变焦参数λ前后移动。

1.2视角变换下的仿射模型

式(1)定义了绝对倾斜(absolute tilt)t,它表示相机从正面到斜视图的图像形变率,用来量化图像之间的倾斜量。图2绝对倾斜示例图图2、图3描述了绝对倾斜与过渡倾斜的不同。

图3过渡倾斜示例图图2中相机在移动的过程中保持过渡倾斜与绝对倾斜同步,即经度不变=′,纬度θ=30°,θ′=60°,绝对倾斜t=1cosθ=23,t′=1cosθ′=2,过渡倾斜τ(μ1,μ2)=t1′t2=3。

图3表示在正交方向上倾斜:=′+90°,μ1与μ2之间的过渡倾斜可表示为:τ(μ1,μ2)=t′t,取θ=60°,θ′=75.3°,t=2,t′=4,τ(μ1,μ2)=t′t=8,可见两幅图的正常绝对倾斜会产生较大的过渡倾斜。因此在实际应用中绝对倾斜t只能取到6,对应的纬度角θ≈80.5° ,过渡倾斜τ可达到36。

2ASIFT算法

SIFT算法思想是结合模拟和归一化。SIFT检测器对目标图像归一化旋转、平移,模拟尺度缩放,因此SIFT是唯一的完全的尺度不变方法。ASIFT算法在SIFT的基础上进行了改进,模拟尺度、经度和纬度3个参数,并且归一化旋转和平移,由此完成了对整个仿射空间的模拟,实现仿射不变性,相关证明参见参考文献[8]。图4形象地表示了对ASIFT算法的概述,其中正方形A、B代表匹配图像,模拟产生图像由周围的平行四边形表示,从而完成了模拟因相机光轴方向变化所产生的形变。由于ASIFT特征提取过程复杂,计算量大,一种双分辨率(two-resolution)的提出将进一步减少SIFT算法的复杂性,大约是SIFT的2倍。

2.1ASIFT算法过程

(1)经度纬度采样:由相机光轴产生的形变取决于两个参数:经度和纬度θ,过渡倾斜τ=1cosθ,因此纬度可以按照等比数列t=1,a,a2…an进行采样,考虑到精确性和稀疏性,a=2为最优选择, n可以取到5甚至更高,这样过渡倾斜τ可以达到36甚至更高;经度对每个倾斜取等差数列0,bt,2bt…kbt,取b=72°使数列的最后一个整数kbt<180°。

(2)确定模拟图像:由(1)中采样得到的和tt=1cosθ,模拟图像表示如下:

其中ω为输入图像,以每组和θ采样通过式(2)得到一组模拟图。

(3)对模拟图像进行SIFT算法特征检测和匹配。

2.2双分辨率加速

双分辨率加速(Acceleration with Two Resolution )方法[89]是通过对低分辨率目标图像进行2.1节描述的ASIFT算法,该过程首先对输入图像进行低分辨率处理,然后模拟仿射变化,最后对得到的模拟图像应用SIFT算法。

双分辨率方法总结如下:

(1)由一个K×K 采样因子对查询图像μ和搜索图像υ进行二次采样:μ′=SKGKμ和υ′=SKGKυ,其中SK是二次采样抽样算子,GK是一个抗混叠高斯离散滤波器;

(2)低分辨率下ASIFT算法:对查询图像μ和搜索图像υ应用2.1节中所述的ASIFT算法;

(3)确定模拟图μ′和υ′之间最多匹配对的M种仿射变换;

(4)高分辨率ASIFT算法:对原始图像μ和υ使用ASIFT算法,而只模拟确定的M种仿射变换。

2.3ASIFT的复杂度

评估ASIFT的复杂度归结为由低分辨率下ASIFT方法模拟图像区域[10]。图像局部特征的计算量与输入图像面积成正比,ASIFT模拟的全部图像区域也正比于倾斜t:(180/72)t=2.5t,取a=,n=6,可得:|Γt|=|{1,,2,2,4,4}|=6,模拟图像区域可达到6×2.5=15倍输入图像;通过采用K×K=3×3二次采样,则低分辨率ASIFT算法的模拟图像区域是:倍输入图像,因此模拟图像会产生原图1.5倍的特征点,复杂度就是SIFT的1.52=2.25倍。这种二次采样的方法大大降低了ASIFT算法的复杂性,把此方法应用到输入的两个匹配图像上,整体的复杂度就只相当于SIFT算法的2倍了。

3ASIFT算法实验分析

实验在Intel i5 CUP,2 GB内存MATLAB仿真平台上完成,通过仿真对ASIFT算法与SIFT算法匹配效果进行对比,采用匹配对数目作为比较标准,实验图形分辨率为500×670。

(1)绝对倾斜实验:对绝对倾斜进行测试,改变相机光轴与正面视图的角度,分别取纬度θ=30°、75°进行实验仿真,可分别得如图4(a)、(b)匹配图。

(2)过渡倾斜实验:对过渡倾斜τ进行测试,取t=4,分别取经度角φ=30°、80°进行实验仿真,分别得到如图5所示的匹配图(a)、(b)。

实验表明ASIFT算法扩展了SIFT算法的装置,通过仿射模型提出的经度和纬度两个重要参数,模拟光轴变化,充分考虑了实际目标发生的变化,相对于SIFT算法能够检测出更多的匹配对。实验对比图所示SIFT算法的过渡倾斜只能模拟到2,而ASIFT算法可取到16(理论上可达36),有效地量化了两幅图像因角度变化引起的形变。可以看出ASIFT算法不仅继承了SIFT算法完全尺度不变的特性,而且实现了完全仿射不变,保证了特征匹配的准确性、完备性。

4结论

本文对ASIFT算法的研究分析可以看出,ASIFT改进了目前几种先进的特征匹配算法的不足,鲁棒性、稳定性和适应性最好,在实际的目标识别、跟踪等很多方面都有很强的适用性。针对模拟图像引起复杂度增加的问题,提出的双分辨率法有效地降低了ASIFT的复杂度,提高了算法的性能。下一步工作是将该算法运用到实际中,结合实际的需求进一步改善ASIFT算法的性能。

参考文献

[1] 张波,王天召,李科,等.一种改进的Harris特征点匹配算法[J].计算机系统应用,2013,22(7):100103.

[2] MIKOLAJCZYK K, SCHMID.An affine inva giant interest point detector[C].The Seventh European Conference on Computer Vision ,Springerverlag,London,2002,12814.

[3] MIKOLAJCZYK K,SCHMID C.Scale and affine invariant interest point detectors[J].International Journal of Computer.Vision, 2004(60) :6386.

[4] MATAS J,CHUM O,URBAN M,et al.Robust widebaseline stereo from maximally stable extremal regions[J].Image and Vision Computing ,2004,22(10):761767.

相关推荐

Excel技巧:SHEETSNA函数一键提取所有工作表名称批量生产目录

首先介绍一下此函数:SHEETSNAME函数用于获取工作表的名称,有三个可选参数。语法:=SHEETSNAME([参照区域],[结果方向],[工作表范围])(参照区域,可选。给出参照,只返回参照单元格...

Excel HOUR函数:“小时”提取器_excel+hour函数提取器怎么用

一、函数概述HOUR函数是Excel中用于提取时间值小时部分的日期时间函数,返回0(12:00AM)到23(11:00PM)之间的整数。该函数在时间数据分析、考勤统计、日程安排等场景中应用广泛。语...

Filter+Search信息管理不再难|多条件|模糊查找|Excel函数应用

原创版权所有介绍一个信息管理系统,要求可以实现:多条件、模糊查找,手动输入的内容能去空格。先看效果,如下图动画演示这样的一个效果要怎样实现呢?本文所用函数有Filter和Search。先用filter...

FILTER函数介绍及经典用法12:FILTER+切片器的应用

EXCEL函数技巧:FILTER经典用法12。FILTER+切片器制作筛选按钮。FILTER的函数的经典用法12是用FILTER的函数和切片器制作一个筛选按钮。像左边的原始数据,右边想要制作一...

office办公应用网站推荐_office办公软件大全

以下是针对Office办公应用(Word/Excel/PPT等)的免费学习网站推荐,涵盖官方教程、综合平台及垂直领域资源,适合不同学习需求:一、官方权威资源1.微软Office官方培训...

WPS/Excel职场办公最常用的60个函数大全(含卡片),效率翻倍!

办公最常用的60个函数大全:从入门到精通,效率翻倍!在职场中,WPS/Excel几乎是每个人都离不开的工具,而函数则是其灵魂。掌握常用的函数,不仅能大幅提升工作效率,还能让你在数据处理、报表分析、自动...

收藏|查找神器Xlookup全集|一篇就够|Excel函数|图解教程

原创版权所有全程图解,方便阅读,内容比较多,请先收藏!Xlookup是Vlookup的升级函数,解决了Vlookup的所有缺点,可以完全取代Vlookup,学完本文后你将可以应对所有的查找难题,内容...

批量查询快递总耗时?用Excel这个公式,自动计算揽收到签收天数

批量查询快递总耗时?用Excel这个公式,自动计算揽收到签收天数在电商运营、物流对账等工作中,经常需要统计快递“揽收到签收”的耗时——比如判断某快递公司是否符合“3天内送达”的服务承...

Excel函数公式教程(490个实例详解)

Excel函数公式教程(490个实例详解)管理层的财务人员为什么那么厉害?就是因为他们精通excel技能!财务人员在日常工作中,经常会用到Excel财务函数公式,比如财务报表分析、工资核算、库存管理等...

Excel(WPS表格)Tocol函数应用技巧案例解读,建议收藏备用!

工作中,经常需要从多个单元格区域中提取唯一值,如体育赛事报名信息中提取唯一的参赛者信息等,此时如果复制粘贴然后去重,效率就会很低。如果能合理利用Tocol函数,将会极大地提高工作效率。一、功能及语法结...

Excel中的SCAN函数公式,把计算过程理清,你就会了

Excel新版本里面,除了出现非常好用的xlookup,Filter公式之外,还更新一批自定义函数,可以像写代码一样写公式其中SCAN函数公式,也非常强大,它是一个循环函数,今天来了解这个函数公式的计...

Excel(WPS表格)中多列去重就用Tocol+Unique组合函数,简单高效

在数据的分析和处理中,“去重”一直是绕不开的话题,如果单列去重,可以使用Unique函数完成,如果多列去重,如下图:从数据信息中可以看到,每位参赛者参加了多项运动,如果想知道去重后的参赛者有多少人,该...

Excel(WPS表格)函数Groupby,聚合统计,快速提高效率!

在前期的内容中,我们讲了很多的统计函数,如Sum系列、Average系列、Count系列、Rank系列等等……但如果用一个函数实现类似数据透视表的功能,就必须用Groupby函数,按指定字段进行聚合汇...

Excel新版本,IFS函数公式,太强大了!

我们举一个工作实例,现在需要计算业务员的奖励数据,右边是公司的奖励标准:在新版本的函数公式出来之前,我们需要使用IF函数公式来解决1、IF函数公式IF函数公式由三个参数组成,IF(判断条件,对的时候返...

Excel不用函数公式数据透视表,1秒完成多列项目汇总统计

如何将这里的多组数据进行汇总统计?每组数据当中一列是不同菜品,另一列就是该菜品的销售数量。如何进行汇总统计得到所有的菜品销售数量的求和、技术、平均、最大、最小值等数据?不用函数公式和数据透视表,一秒就...