改进的SIFT算法(精选10篇)
改进的SIFT算法 篇1
0 引言
图像拼接技术作为图像处理的热点问题吸引了很多国内外的研究者对其进行广泛而深入的研究。但是由于数字图像拼接技术涉及到很多学科的理论和技术,致使数字图像拼接技术仍然处于研究和发展的阶段。近些年来,为了提高数字图像拼接的质量和鲁棒性,国内外研究者进行了大量的基础性研究和实际开发工作,取得了大量的研究成果[1]。
图像拼接中最重要的部分是图像配准,图像配准算法分为两大类[2]:一类是基于区域的算法,其中包括基于空间的像素配准算法、基于频域的像素配准算法等;另一类是基于特征的算法,利用图像中的明显特征来计算图像之间的变换。而基于特征的算法由于其较低的复杂度和较高的鲁棒性,成为图像配准的首选,很多学者在这方面进行了研究。文献[3]方法使用基于灰度边缘特征点的拼接方法;文献[4]提出了一种基于角点特征的KLT跟踪全景图像拼接算法;文献[5]提出了一种基于像素点颜色变化特征的拼接算法;文献[6]采取基于像素点颜色变化特征和序列相似性检测算法相结合的图像拼接融合方法;文献[7]采用SIFT特征点进行图像拼接;文献[8]采用SURF特征点进行图像拼接。
本文结合SIFT特征点匹配算法和SURF特征点匹配算法的优点,提出了一种改进的图像拼接算法,实验结果显示,本文改进的算法实时性较高,可以得到比较好的拼接效果。
1 SIFT算法和SURF算法
1.1 SIFT算法
SIFT的主要思路[9]是:首先建立图像的尺度空间表示,然后检测该图像尺度空间特征点,定义特征点主方向,最后生成特征向量描述子。
SIFT算法检测尺度空间主要采用DoG算子,其中DoG算子定义如下:
其中L(x,y,σ)=G(x,y,σ)·I(x,y),G(x,y,σ)为尺度可变高斯函数,I(x,y)为图像位于(x,y)的像素值。
DoG函数在尺度空间的Taylor展开式的二级近似为:
其极值点为:,式(2)对图像的行、列及尺度三个量进行了修正,得到修正值:
将修正后的值带入Taylor展开式,去除不稳定的极值点(Lowe的试验显示取值小于0.04的极值点均可抛弃)。求出精确关键点后,就可以生成用于匹配的描述向量。利用关键点邻域像素的梯度方向分布特性,为每个关键点指定方向参数方向,从而使描述子对图像旋转具有不变性。
1.2 SURF算法
SURF算法由Bay等人[10]提出,它主要分成3部分:1)特征点提取,即在积分图像的基础上,利用方框滤波近似代替二阶高斯滤波计算待选特征点及其周围点的Hessian值,如果最大,则为特征点。2)特征点描述,即在特征点周围小区域上计算Harr小波,并计算其4种和以构成特征描述。3)利用特征点描述向量进行配准。在一定程度上SURF算法是对SIFT算法的改进,它也是一种尺度、旋转不变性的特征点探测器。其最大的特点就是快,并且在快的基础上还能保持性能,能满足实时性的拼接要求。
SURF算法主要部分是Hessian矩阵的计算。Hessian矩阵定义如下:
然后计算其Hessian矩阵的判别式,根据判别式取值正负,来判别该点是否为极值点。因为Hessian矩阵的判别式计算复杂度较高,所以利用方框滤波近似代替二阶高斯滤波计算待选特征点及其周围点的Hessian值,这样可以利用积分图进行快速计算,得到近似的判别值:
2 本文改进的算法
因为传统的SIFT算法能找到大量的特征点,并且通过RANSAC能得到较准确的透视矩阵,所以拼接效果很好,但是它有一个显著的缺点,即使采用BBF算法来加快搜索匹配速度,它的复杂度依然很高。传统的SURF算法只能检测到少量的特征点,还降低了特征点维数,采用积分图方式能加快速度,虽然算法复杂度低,但是其拼接效果有时并不好。上述两个算法的运算时间中检测特征点的过程占据了大部分的时间,此外SIFT的BBF搜索匹配算法比SURF算法要快,而且SIFT中的RANSAC算法能得到较好的矩阵。
本文结合SIFT算法和SURF算法各自的优点,提出了如下改进算法:在求取特征点过程采用SURF算法,由于每幅图像的独立性,采用并行计算来提高速度,在实验中采用多进程算法。对得到的SURF特征点采用SIFT的BBF算法进行快速匹配搜索,最后采用SIFT的RANSAC算法求透视变换矩阵并进行拼接,算法的主要步骤如下:
1)采用并行算法求出每个图像的SURF角点;
2)对每幅图像的特征点建立KD树来加快搜索匹配;
3)利用RANSAC和DLT算法求出两幅图像间的匹配点数量和转换矩阵;
4)利用转换矩阵就可以将两幅图像映射成一幅全景图像。
本算法在Visual C++2005上利用OpenCV库编程实现,算法的实现过程中求两幅图像的匹配点数量和。
转换矩阵的核心代码在下面给出:
3 实验结果及分析
算法实验环境为:AMD Athlon (tm) 64 X2 Dual Core Processor 3600+2000MHz CPU,1GB内存,Windows XP 32位操作系统。编程工具为Visual Studio 2005。实验中所用的三张原始待处理图像是从网络上下载的SIFT角点检测算法的一组测试图片,图片大小为均为568×758。
3.1 SIFT算法拼接结果
图1所示的三张图像即为待处理的图像。通过SIFT算法检测图1中三张图像的尺度空间特征点,如图2所示。其中图(a)共找到2948个特征点,花费时间约11.5s;图(b)共找到3707个特征点,花费时间约12.8s;图(c)共找到3251个特征点,花费时间约12s。图3是SIFT算法拼接得到的全景图像,实验中对三幅经过排序的图像进行拼接总共花费了约52.7s的时间。
3.2 SURF算法拼接结果
采用SURF算法对图1中的3张原图检测尺度空间特征点,检测结果如图4所示。其中(a)共检测到803个特征点,花费时间约5.8s,(b)共检测到874个特征点,共花费约5.8s,(c)共检测到849个特征点,花费时间约5.8s。由图4中3幅图像经过匹配等步骤得到最终的拼接图像,如图5所示。对3幅图像计算特征点总共花费的时间约为17.4s,匹配时间约2.5s,加上矩阵计算,整个完整的拼接过程大约花费约25s。
3.3 本文算法拼接结果
在本文改进算法中,对3幅图像求特征点总共需要11.6s,匹配时间约1.2s,整个拼接过程所花费的时间约为16s,图6为本文算法拼接得到的全景图像。从表1可以看出本文改进算法所耗费的时间比SIFT算法和SURF算法都少,因此本文改进的算法具有较高的实时性。通过比较本文改进算法的拼接全景图和SIFT拼接全景图、SURF拼接全景图,分别如图6、图3、图5所示,可以看出本文改进的算法相较于SURF算法拼接效果更好,与SIFT算法的效果没有太大差别,能得到较好的拼接效果。
4 结语
在基于SIFT算法和SURF算法的基础上,本文提出了一种改进算法,通过实验对比可以看出,本文的改进算法能克服SIFT和SURF的缺点,提高SIFT和SURF算法的运算速度,并且拼接效果也比较好,尤其是速度方面,具有很好的性能。拼接过程采用RANSAC算法求解最优匹配矩阵,有效减少了错拼。由于无人机对算法处理的实时性要求非常高,因此本文改进的算法可以应用于无人机地图全景拼接等方面。本文还没有进行图像拼接的其他步骤,如摄像机误差纠正和图像融合,这是以后工作的重点所在。
摘要:目前,图像拼接技术已经成为数字图像处理、计算机图形学和人工智能等领域的研究热点。介绍基于SIFT(Scale Invariant Feature Transform)特征点的图像拼接算法和基于SURF(Speeded Up RobustFeatures)特征点的图像拼接算法,并且对这两个算法的性能做了比较,给出各自的优劣点。最后,基于这两种算法,提出一种加快图像拼接速度和质量的算法。
关键词:SIFT算法,SURF算法,图像拼接
参考文献
[1]邵向鑫.数字图像拼接核心算法研究[D].长春:吉林大学,2010.
[2]钟力,胡晓峰.重叠图象拼接算法[J].中国图象图形学报,1998,3 (5):367-370.
[3]殷润民,李伯虎,柴旭东.自适应柱状全景图拼接[J].中国图象图形学报,2008,13(6):1191-1196.
[4]胡社教,葛西旺,陈宗海.基于角点特征的KLT跟踪全景图像拼接算法[J].系统仿真学报,2007,12(8):1742-1745.
[5]潘华伟,邹北骥.一种圆柱形全景图生成新算法及其实现[J].计算机工程与科学,2003,25(6):13-16.
[6]彭红星,邹湘军,徐东风,等.改进的全景图拼接融合算法[J].计算机工程与应用,2010,46(25):195-198.
[7]Lowe D G.Object recognition from local scale-invariant features[C]// Proceeding of the seventh International Conference on Computer Vision (ICCV'99).Amsterdam:[s.n.],1999:1150 - 1157.
[8]张锐娟,张建奇,杨翠.基于SURF的图像配准方法研究[J].红外与激光工程,2008,38(1):160-165.
[9]周军太,龙永红.一种改进SURF算法的图像配准[J].湖南工业大学学报,2011,25(2):95-99.
[10]吴建波,赵建民,朱信忠,等.基于一种SIFT优化算法的图像检[J].微型电脑应用,2011,27(5):4-7.
改进的SIFT算法 篇2
摘要:针对DV-Hop算法采用跳数乘以平均每跳跳距估算节点间的跳距,利用三边测量法或极大似然估计法估算节点坐标信息,算法过程存在缺陷从而造成定位误差过高的问题。为此提出一种基于节点密度区域划分的DVHop改进算法(DZDVHop),依据网络的连通度和节点密度限制参与估算的信标节点的跳数,采用加权质心法估算定位坐标。Matlab仿真测试结果表明,在相同的网络硬件和拓扑结构环境下,改进后的算法能有效地减少节点通信量,且平均定位误差率比传统的DVHop算法减少了13.6%左右,提高了定位精度。〖BP)〗
针对DVHop算法采用跳数乘以平均每跳跳距估算节点间的跳距,利用三边测量法或极大似然估计法估算节点坐标信息,算法过程存在缺陷从而造成定位误差过高的问题。为此提出一种基于节点密度区域划分的DVHop改进算法(DZDVHop),依据网络的连通度和节点密度限制参与估算的信标节点的跳数,采用加权质心法估算定位坐标。Matlab仿真测试结果表明,在相同的网络硬件和拓扑结构环境下,改进后的算法能有效地减少节点通信量,且平均定位误差率比传统的DVHop算法减少了13.6%左右,提高了定位精度。
关键词:
无线传感器网络;密度区域划分;节点定位;限跳机制
中图分类号:TP393
文献标志码:A
0引言
现代电子技术、检测技术和信号处理等技术的进步,促进了低功耗、多功能智能传感器的快速发展[1]。无线传感器网络(Wireless Sensor Network,WSN)是指由大量成本低廉的具有智能感知能力、计算能力、无线通信能力的传感器节点组成的网络,它可以感知、采集和处理网络覆盖区域内目标对象的信息[2-3]。作为一种新型信息获取的系统,WSN广泛应用于军事、环境监测、城市交通、灾难防控等众多领域[4]。节点定位问题是传感器网络进行目标识别、监控、定位等应用的前提,也是传感器网络应用的关键技术之一[5-7]。研究节点定位算法的意义主要体现在两方面:一是,WSN中的多数应用都依赖于传感器节点或者被检测目标的地理位置信息,不知检测目标位置而获取的任何信息都是没有意义的[8];二是,WSN网络的运行和管理需要节点位置信息的支持。因此,准确估算节点位置,在传感器网络的应用中起着至关重要的作用。
节点定位技术分为基于测距(Range Based)的定位算法和无需测距(Range Free)的定位算法两类[3]1283,[5]39,[8]3。基于测距的定位算法原理是:通过测量节点与节点间的直线距离或角度信息估算未知节点的坐标位置,目前这类测距技术主要有RSSI(Received Signal Strength Indicator)、TOA(Time of Arrival)、TDOA(Time Difference on Arrival)和AOA(Angle of Arrival)等[1]77,[5]40。基于测距定位算法的优点是定位精度较高,缺点是网络中的节点需要增加特殊的测距设备,从而导致节点成本较高。而无需测距的定位算法原理是:不需要测量节点间的实际距离以及节点间的方位角,只根据网络中节点间的连通性、同向性等信息,就可以估算出未知节点的坐标位置,常用的无需测距技术有:APIT(Approximate PointinTriangulation test)、质心算法、DVHop(Distance VectorHop)和Amorphous等算法[5]40,[9]。无需测距定位算法的优点是:组网成本低、网络资源开销少,缺点是定位误差率稍高。实践证明无需测距定位技术更能适合多数WSN的应用,而在众多无需测距的定位算法中,DVHop算法以其算法过程的简单性和实效性成为目前应用较多的种类之一[7]2468。WSN中的节点分为两类:一类是预先已知自身位置信息的传感器节点,称之为信标节点(或“锚节点”),信标节点的坐标信息既可以通过全球定位系统(Global Positioning System,GPS)等技术自动获得,也可以在部署网络时靠人工设置[8]6;第二类节点是预先并不知道自身的位置,通常称之为待定位节点或者未知节点。这些未知节点的位置信息就需要利用本文和相关研究所探讨的相关定位算法进行估算。
1经典DVHop算法描述
美国Rutgers University的〖BP(〗Dragos 〖BP)〗Niculescu等将距离矢量路由与GPS原理相结合提出了一系列分布式定位算法(Ad Hoc Positioning System,APS)[10]。APS共包括DVHop、DV Distance、Euclidean、DV Coordinate、DV Bearing和DV Radial等6种类型。其中应用较多的是DVHop,DVHop的执行过程可归纳为以下3个阶段[1]77,[5]40,[11]。首先,接收并存储未知节点与它邻近的每个信标节点间最小跳数;信标节点向邻居节点广播包含自身地理位置信息的分组,这样网络中的所有节点都能记录下自己到每个信标节点的最小跳数。其次,计算未知节点与信标节点的跳距;每个信标节点根据上述第一个阶段的操作,记录下了自己与其他信标节点的坐标值以及它们间的跳数。最后利用式(1),就可以估算出自己的平均每跳跳距。其中:(xi,yi)、(xj,yj)是信标节点i和j的坐标,hj是信标节点i与j之间的跳数。
改进的SIFT算法 篇3
关键词:异源图像匹配;改进SIFT;互信息
中图分类号:TP391.41 文献标识码:A 文章编号:1673-5048(2014)05-0015-04
0 引言
自1992年的海湾战争起,图像匹配技术被广泛用于导航定位、运动分析、目标识别、机器立体视觉之中。它是指从两幅图像中提取出对应关系,这两幅图像可以取自不同时间、光照、位置、以及不同的传感器。这项技术被应用于导弹制导中,使导弹有了眼睛,大大地增加了打击的精确度。
导弹的成像末制导主要有红外成像制导、可见光图像制导等形式。随着科技的发展红外成像技术日益成熟,在飞行器上,红外传感器相对于可见光传感器来说,有以下优点:一是由于红外成像的基本特性,相当于给飞行器装上了夜视镜,极大地提高了飞行器的夜视能力。二是使飞行器具备更高的机动性和灵活性[1]。由于这两大优势,使得红外景象匹配制导方式在近十余年来飞速发展。现在,一般来说导引头采集目标的实时图像为红外图像,与存储的基准导航图像进行比对,基准导航图像可能为可见光图像,这是一个异源图像匹配的问题。异源图像匹配是图像匹配领域的一个难题,目前在国内外还没有一个比较完善的方法,本文就针对可见光图像与红外图像之间的匹配进行研究。
异源图像之间的匹配采用的方法有基于灰度、基于变换域、以及基于边缘等算法,考虑目前基于SIFT特征匹配的方法在图像匹配领域中得到了广泛应用,取得较好的匹配效果,本文在异源图像匹配领域尝试使用改进的SIFT算子做匹配,再根据两幅图中SIFT特征点邻域的相关信息作为匹配的标准,排除误匹配点。
摘要:针对同一目标的红外与可见光所形成的异源图像对,提出了一种基于改进SIFT与互信息的算法,寻找两幅图像中的相关点,从而实现两幅图像的匹配。为了改善SIFT算子的匹配效果,本文提出的改进方法,成功地增加了正确匹配点数;同时使用局部互信息量作为判断标准,可以在正确匹配点数即使占劣势的情况下,依然能排除错误的匹配点,扩展了匹配算法的适用性。结果和实际测试表明,两种算法结合能显著改善匹配效果。
关键词:异源图像匹配;改进SIFT;互信息
中图分类号:TP391.41 文献标识码:A 文章编号:1673-5048(2014)05-0015-04
0 引言
自1992年的海湾战争起,图像匹配技术被广泛用于导航定位、运动分析、目标识别、机器立体视觉之中。它是指从两幅图像中提取出对应关系,这两幅图像可以取自不同时间、光照、位置、以及不同的传感器。这项技术被应用于导弹制导中,使导弹有了眼睛,大大地增加了打击的精确度。
导弹的成像末制导主要有红外成像制导、可见光图像制导等形式。随着科技的发展红外成像技术日益成熟,在飞行器上,红外传感器相对于可见光传感器来说,有以下优点:一是由于红外成像的基本特性,相当于给飞行器装上了夜视镜,极大地提高了飞行器的夜视能力。二是使飞行器具备更高的机动性和灵活性[1]。由于这两大优势,使得红外景象匹配制导方式在近十余年来飞速发展。现在,一般来说导引头采集目标的实时图像为红外图像,与存储的基准导航图像进行比对,基准导航图像可能为可见光图像,这是一个异源图像匹配的问题。异源图像匹配是图像匹配领域的一个难题,目前在国内外还没有一个比较完善的方法,本文就针对可见光图像与红外图像之间的匹配进行研究。
异源图像之间的匹配采用的方法有基于灰度、基于变换域、以及基于边缘等算法,考虑目前基于SIFT特征匹配的方法在图像匹配领域中得到了广泛应用,取得较好的匹配效果,本文在异源图像匹配领域尝试使用改进的SIFT算子做匹配,再根据两幅图中SIFT特征点邻域的相关信息作为匹配的标准,排除误匹配点。
摘要:针对同一目标的红外与可见光所形成的异源图像对,提出了一种基于改进SIFT与互信息的算法,寻找两幅图像中的相关点,从而实现两幅图像的匹配。为了改善SIFT算子的匹配效果,本文提出的改进方法,成功地增加了正确匹配点数;同时使用局部互信息量作为判断标准,可以在正确匹配点数即使占劣势的情况下,依然能排除错误的匹配点,扩展了匹配算法的适用性。结果和实际测试表明,两种算法结合能显著改善匹配效果。
关键词:异源图像匹配;改进SIFT;互信息
中图分类号:TP391.41 文献标识码:A 文章编号:1673-5048(2014)05-0015-04
0 引言
自1992年的海湾战争起,图像匹配技术被广泛用于导航定位、运动分析、目标识别、机器立体视觉之中。它是指从两幅图像中提取出对应关系,这两幅图像可以取自不同时间、光照、位置、以及不同的传感器。这项技术被应用于导弹制导中,使导弹有了眼睛,大大地增加了打击的精确度。
导弹的成像末制导主要有红外成像制导、可见光图像制导等形式。随着科技的发展红外成像技术日益成熟,在飞行器上,红外传感器相对于可见光传感器来说,有以下优点:一是由于红外成像的基本特性,相当于给飞行器装上了夜视镜,极大地提高了飞行器的夜视能力。二是使飞行器具备更高的机动性和灵活性[1]。由于这两大优势,使得红外景象匹配制导方式在近十余年来飞速发展。现在,一般来说导引头采集目标的实时图像为红外图像,与存储的基准导航图像进行比对,基准导航图像可能为可见光图像,这是一个异源图像匹配的问题。异源图像匹配是图像匹配领域的一个难题,目前在国内外还没有一个比较完善的方法,本文就针对可见光图像与红外图像之间的匹配进行研究。
一种改进SIFT算法研究 篇4
1 SIFT算法
1.2 SIFT算法原理
1999年David G.Lowe提出一种新的图像局部特征描述算子尺度不变特征变换SIFT (Scale Invariant Feature Transform) 算子。直到2004年, Lowe总结了现有的特征检测方法, 正式提出了该方法。此方法包括两部分, 基于高斯差分尺度空间特征点检测和特征点的局部不变特征描述与配准。Lowe的SIFT检测方法主要有三个步骤:1、建立高斯差分尺度空间;2、极值检测;3、边缘像素剔除。
1.2 SIFT步骤
1.2.1 建立高斯差分 (DOG) 尺度空间
模拟图像数据的多尺度特征是尺度空间理论的目的。高斯卷积核是实现尺度变换的唯一线性核。一幅二维图像的尺度空间定义为:
这个函数是由可变尺度高斯函数G (x, y, σ) 与输入图像I (x, y) 卷积得到, 式中,
(x, y) 是空间坐标, σ是尺度坐标。利用高斯差分函数和原图进行卷积, 然后在卷积后得到的尺度空间之中找到极大值, 这样是为了在尺度空间中检测稳定的特征点。高斯差分 (DOG) 尺度空间D (x, y, σ) 定义为:
1.2.2 极值检测
为了使特征体现出良好的独特性和稳定性, 同时在图像二维平面空间和高斯差分尺度空间DOG (Difference-of-Gaussian) 中检测局部极值作为特征点。为了检测D (x, y, σ) 的局部极大值和极小值, 同时为了确保在二维图像空间也能检测到局部极值, 在检测尺度空间极值时, 每一个采样点要和它所有的相邻点比较, 比较其与在其图像域和尺度域中相邻的点的大小。检测出的极值点所在的尺度为该像素点的特征尺度。
1.2.3 边缘响应剔除
图像的边缘会使高斯差分函数产生较剧烈的响应, 因此必须去除图像中检测出的边缘像素点。Lowe采用2x2的Hessian Matrix来消除边缘像素点。在上一步中检测出的极值点位置计算2x2的Hessian Matrix。其定义为:
其中Dxx表示图像在x方向的二阶导数, 同理Dyy表图像在y方向的二阶导数, Dxy表示先对x方向求导然后再对y方向求导数。为了避免直接求解H的特征值, 利用H的行列式和迹来计算。假设H的较小的特征值为α, 较大的特征值为β, 则矩阵的行列式和迹为:
假设r为较大特征至于较小特征值的比, 即有α=rβ。r代表了两个主曲率的比, 当r接近1时, 表明两个主曲率相近, 该点可以判定为一特征点, 为了判定r, Lowe采用间接方法。由上式有:
(r+1) 2r在两个特征值相等的时候, 即r=1时有最小值, 并随r的减小而增大。这样要判定r, 只需要判断:
主曲率比通常取r=0.1。当小于这个阈值就认定此像素点是特征点。这样就消除了曲率比大于0.1的像素点, 这些像素点主要是图像中的边缘像素。
2 改进SIFT算法
虽然SIFT算法具有尺度不变性, 但是SIFT的特征点检测算法复现率偏低。然而Harris算子具有计算简单、提取的角点特征均匀合理、可定量提取以及算子稳定的特点, 本文提出一种结合SIFT算子与经典Harris角点检测算子的S-H (SIFT-Harris) 方法, 利用本算法来获得更稳定的特征角点, 即有效利用多个不同尺度的角点检测算子, 同时检测图像内不同尺度上的角点, 实现对图像角点更准确与全面的描述。
2.1 S-H算法原理
Harris特征点已经具备了位置、尺度这两方面的信息。在构造Harris特征描述子之前, 首先用特征点大小为3*3的邻域内各像素点梯度方向直方图中最大值所对应的方向作为Harris特征点的方向。该方向作为后续对Harris特征描述子构造的参照方向。结合上文中求出的每个Harris角点的方向信息, Harris特征描述子的具体构造过程如下:
1) 为了使描述子具有旋转不变性, 对任意Harris特征点建立坐标系, 并且以该点的方向为主方向;
2) 在Harris特征点所在的尺度空间, 以该点为中心的取16*16大小的一个邻域, 将这个邻域均匀地分为4*4个子区域, 每个子区域大小为4*4, 再分别对每个子区域计算梯度方向直方图, 并且将直方图均匀地分为8个方向;
3) 对4*4个子区域的8方向梯度直方图根据位置依次排序, 这样就构成了一个4*4*8=128维的特征向量, 该向量即为Harris特征描述向量。然后对该向量进行归一化处理, 使其具有光照不变性。
虽然利用Harris尺度不变检测子检测到的特征所具有的重复性较高, 但是还是会有一些特征点在一副图像中出现, 而没有在另外一副图像中出现, 所以仍有错配的可能。为了提高正确匹配率, Harris特征向量匹配算法采用双向匹配策略。
3 实验
为了验证算法的有效性, 试验选取了不同环境因素下与光照条件以及不同拍摄方式进行配置测试。在不同实验环境与条件下, 对本文算法和经典SIFT算子实现的红外与可见光图像配准结果进行了比较分析, 同组实验中本文算法与经典SIFT算法基本参数设置均相同。由于篇幅有限, 本文只列举部分实验结果。
图1为两幅待配准的图, 箭头为该图的SIFT特征向量。图2中为采用经典SIFT算法得到的匹配效果, 图3中为本文算法得到的匹配效果。从表1进行分析, 经典SIFT算法提取的特征点并非角点, 在图中分布比较分散, 且数目很少;本文算法提取的特征点都是角点, 在图中分布比较均匀, 且数目较多, 并且通过对这些Harris角点进行类SIFT的描述, 提高了角点对旋转、噪声、灰度等影响的鲁棒性, 相对于SIFT特征更为稳定。
4 结论
通过设计具有有效参数的S-H检测算法, 提高了特征点的复现率, 为进一步匹配打下了良好的基础, 并将SIFT特征描述过程引入到Harris算子的描述过程中, 生成了具有旋转、尺度、亮度不变性, 且对噪声也具有一定的稳定性的S-H特征向量。实验结果表明, 此算法在几乎不增加匹配时间的同时, 提高了匹配精度, 并且具有一定的鲁棒性, 适合于对匹配精度要求较高的图像之间的匹配。
摘要:针对SIFT特征配准算法中的特征点检测算法复现率偏低的问题, 该文提出了一种具有尺度不变特征变换描述特征的Harris图像配准算法 (S-H算法) 。主要介绍了算法的主要思想、详细过程, 并且通过实验证实了算法配准的精确性、快速性和稳定性, 具有较好的配准效果。
关键词:SIFT算子,Harris算子,图像配准
参考文献
[1]Lowe D.Distinctive image features from scale-invariant keypoints[J].International Journal of Computer Vision (S0920-5691) , 2004, 60 (2) :91-110.
[2]李晓明, 郑链, 胡占义.基于SIFT特征的遥感影像自动配准[J].遥感学报, 2006, 10 (6) :885-891.
[3]赵明, 林长青.基于改进SIFT特征的红外与可见光图像配准方法[J].光电工程, 2011, 38 (9) :130-136.
[4]陈贤巧.基于特征的图像配准算法研究[D].合肥:中国科技大学, 2009.
改进的SIFT算法 篇5
在噪声消除系统中,若观测噪声为有色噪声,则基于最小二乘准则(LS),提出了两段RLS-RELS算法,这是一种改进的.递推增广最小二乘法,该自适应算法能显著减小噪声的影响,提高信号质量.并在此基础上提出了计算噪声方差的估值方法.计算机数值仿真例子和信噪比的计算比较证明了算法的正确性和有效性.
作 者:许鹏 窦寅丰 XU Peng DOU Yin-feng 作者单位:许鹏,XU Peng(暨南大学珠海学院计算机系,珠海,519070)
窦寅丰,DOU Yin-feng(黑龙江大学电子工程,哈尔滨,150080)
改进的SIFT算法 篇6
关键词:特征匹配,尺度特征不变算法,邻域特征描述子,高维特征矢量
图像匹配是图像处理和机器视觉中重要的研究内容。在目标跟踪、目标识别、图像拼接等领域广泛应用[1]。特征匹配和灰度匹配是图像匹配的两种方法。特征匹配可以减少灰度匹配在匹配过程的计算量。同时,能够减少噪声的影响,提高匹配的精确程度,成为图像匹配的主要方法[2]。
2004年Lowe提出了SIFT[3](Scale Invariant Feature Transform)局部特征,利用金字塔和高斯核滤波差分来快速地求解高斯拉普拉斯空间中的极值点,加快了特征提取的速度。SIFT特征在尺度变换和仿射变换的条件下都有很好的鲁棒性。为改进其特征点的128维描述子在匹配过程中计算量太大的缺点,进一步提高SIFT的匹配效果。很多学者提出了改进算法。Ye和Suktinankar提出PCA-SIFT[4]。与SIFT相比,在保留特征不变性的同时,特征矢量维数降低,使得特征点匹配速度大大提高。但需要一组典型图像的学习,计算的投影矩阵只适应于同类的输入图像。Mikolajczyk提出了GlOH[5]描述子,在对数-极坐标上计算16个方向上的梯度方向直方图,并通过PCA降维形成128维特征向量。与PCA-SIFT类似,GOLH也需要大量的样本进行学习。Moreno P等采用Gabor滤波器改进SIFT特征描述子[6],使其提高了特征匹配的精确度,但算法的复杂性增加。C. Singh等人采用Zernike矩对SIFT算法进行改进[7],当仿射变换程度较大时,SIFT特征描述子的相关性能最佳[8]。
文中针对SIFT局部特征高维特征描述子进行了降维,增强了特征点邻域像素信息,改善了匹配速率和匹配效果。
1SIFT特征检测与匹配算法
尺度不变特征检测与匹配包括以下步骤:尺度空间的建立及关键点检测、关键点定位、关键点方向分配、关键点特描述子生成以及关键点特征匹配。
1.1尺度空间的建立及关键点的检测
图像的尺度空间可表示成一个函数L(x,y,σ),它是由一个变尺度的高斯函数G(x,y,σ)与图像I(x,y)卷积产生的。即
L(x,y,σ)= G(x,y,σ)⨂I(x,y) (1)
SIFT算法建议,在某一尺度上对关键点的检测,可以通过对两个相邻高斯尺度空间的图像尺度函数L(x,y,σ)相减,得到一个DoG (Difference of Gaussians)的响应值图像D(x,y,σ)。通过对响应图像D(x,y,σ)进行非最大值抑制(局部极大搜索),在位置空间和尺度空间中定位关键点。其中
D(x,y,σ)=(G(x,y,σ)- G(x,y,σ))⨂I(x,y)= L(x,y,kσ)- L(x,y,σ) (2)
1.2关键点定位
检测到的候选关键点还需要删除响应过小的点和边缘效应的点,才能确定关键点。
极值点的搜索是在离散空间中进行的,检测到的极值点并不是真正意义上的极值点。为此,通过用离散空间的极值点插值得到连续空间的极值点。利用二维函数二阶泰勒展开式进行插值
通过Hessian矩阵H的特征值与D的主曲率成比例可以删除有边缘效应的关键点。其中
α、β是矩阵H的特征值,则
因此要检验主曲率的比率低于某一个阈值,只需检验
1.3关键点方向分配
为了实现图像旋转的不变性,需要根据检测到的关键点的局部图像结构求得一个方向基准。使用有限差分,计算以特征点为中心,以3×1.5σ为半径的区域内图像梯度的幅角和幅值。计算公式如下
统计梯度直方图,每10°为一个格子,共36个格子。直方图的峰值代表了该关键点的主方向。
1.4特征点特征矢量生成
将坐标轴旋转至关键点的主方向,在特征点的16×16邻域内等间隔划分4×4的子区域。每个子区域计算8个方向的梯度直方图,绘制每个梯度方向高斯加权后进行累加,形成一个种子点。由于存在4×4个子区域,所以共有4×4×8=128个数据,最终形成128维的SIFT特征矢量。
1.5关键点特征匹配
关键点匹配时,用欧式距离度量两幅图像关键点的相似性,采用穷尽搜索的方法对特征点进行匹配,并用比值提纯法对匹配结果进行提纯。在待匹配图像中找到关键点N1,与N1最近邻的点记为N2,次近邻的点记为N3,记Dij表示两个关键点之间的距离,如果距离比
2 改进的SIFT算法
通过在高斯差分尺度空间内检测并确定关键点,SIFT算法达到了尺度和旋转不变性的要求。但由于128维特征描述子在关键点匹配的过程中时间开销较大,使算法不能满足实时性的要求。故针对高维特征描述子进行改进。SIFT算法中联合邻域方向性特征的思想增强了算法的抗噪能力,改善了算法的鲁棒性。也将采用邻域特征构造特征描述子。
改进的64维特征描述子构造方法:以关键点为中心,八邻域向外扩展三个像素为第一组,计算像素的梯度幅值和幅角,幅角以每22.5°为一个格,统计16个方向分组的梯度幅值累加和。以此类推在上一组的8邻域方向上继续扩展三个像素,得到第三、第四组邻域圈,如图2所示。为简化,仅取两组邻域,得到两组梯度方向值。为避免特征描述子的误差过大,统计梯度直方图前,对关键点邻域进行高斯加权,以减少距离关键点较远的像素对关键点特征描述的影响。将第一组得到的16个方向的梯度幅值累加和作为新特征描述子向量的第1到第16个元素,第二组的累加和作为向量的第17到第32个元素。依此类推,将四组梯度幅值累加和排为16×4=64元素的特征描述子向量。新特征描述子向量将维数由128维降到64维,包含邻域像素为25×25,大于原算法邻域面积。
将第一组16个方向的累加值作为特征描述子的第1到第16个元素,以此类推,得到的描述子为16×4=64维的特征描述子。选取的特征点邻域为25×25像素尺寸,大于原邻域16×16的范围,增大了邻域像素的信息量,而特征描述子的维数小于原特征描述子。特征描述子统计16个方向分组的梯度幅值累加和,使特征描述更为准确。由于穷尽搜索的匹配方法没有利用数据的结构特征,在高维空间进行特征匹配时计算量大,时间开销大,文中采用基于BBF的Kd-树对特征匹配过程进行改进。对匹配的结果采用比值提纯法进行提纯,以提高特征匹配的精度。
3 实验结果及分析
实验平台为Windows XP操作系统,CPU主频2.0GHz,内存1G的个人电脑,编程环境为VC6.0集成开发环境。采用多种图像进行实验,并对图像进行旋转、尺度变换检测算法的性能。采用欧氏距离度量关键点之间的相似性,遍历图像中关键点的特征描述子,采用基于BBF的Kd-树进行关键点匹配,并使用比值提纯法对匹配结果进行提纯。图像的初始尺度σ=1.6,尺度空间各层迭代关系为σ=σ×21/S,其中S=5。
通过实验,改进的SIFT算法的匹配速率比原算法提高5%到15%(见图3),特征匹配的准确率(见图4)与原算法相近。
分析实验结果,在待匹配关键点数量比较少时,改进算法在匹配速率上并没有明显提高,这是因为新的算法在采用基于BBF的Kd-树进行关键点匹配时,与原算法相比增加了建立Kd-树的时间。当待匹配的关键点数量增加时,由于Kd-树利用了高维特征向量的数据结构,匹配速率明显加快。
通过实验,表明当图像比较复杂,特征描述子数量比较多时,改进算法与原算法相比提高了正确匹配率。
以下是三组实验结果。
(1)实验一的图片视角和大小完全相同,两种算法的匹配结果如图5所示。表1列举了原算法与改进算法检测到的关键点个数、关键点匹配正确率以及关键点匹配所用时间。
由实验一可见,改进后算法与原算法匹配正确率大致相同,匹配速度有明显提高。
(2)实验二使匹配图片旋转任意角度,两种算法的匹配结果如图6所示。表2列举了两种算法匹配结果的比较情况。
实验二可见,改进的SIFT算法,对图像的旋转变换具有一定的适应能力。
(3)实验三使匹配图片压缩或放大任意倍数,两种算法的匹配结果如图7所示。表3列举了两种算法匹配结果的对比。
实验三表明,改进算法对图像的尺度变换具有较好的抗干扰能力。新的特征描述子扩展了关键点邻域范围,使特征描述子更加独特,对有较多局部相似的区域,可以降低其误匹配。
4 结语
改进的SIFT算法构造的64维特征描述子,较原算法降低了特征描述子的维数。增加了关键点邻域的统计范围,增强了邻域信息。实验表明,改进的SIFT算法的匹配速率比原算法提高5%到15%。如果图像特征复杂,有多个局部相似的区域,改进的特征描述子相对原算法的描述子有更好的特征独特性。较SIFT算法提高的正确匹配率,提高了匹配精度。
参考文献
[1]杨恒,王庆.一种新的局部不变特征检测和描述算法.计算机学报,2010;33(5):935-944
[2]刘萍萍,赵宏伟,臧雪柏,等.一种快速局部特征描述算法.自动化学报,2010;36(1):40-45
[3]Lowe D G.Distinctive image features from scale-invariant key-points.International Journal of Computer Vision,2004;60(2):91-110
[4]Ye K,Suktinankar R.PCA-SIFT:A more distinctive representationfor local image descriptors.In:Proceedings of the Conference on Com-puter Vision and Pattern Recognition,Washington,USA:IEEE,2004;1:511-517
[5]Mikolajczyk K,Schmid C.Aperformance evaluation of local descrip-tors.IEEE transactions on pattern analysis and machine intelligence,2005;27(10):1615-1630
[6]Moreno P,Bernardino A,Victor S J.Improving the SIFT descriptorwith smooth derivative filters.Pattern Recognition Letters,2009;30(1):18-26
[7]Singh C,Walia E.Fast and numerically stable methods for the com-putation of Zernike moments.Pattern Recognition,2010;43(7):2497-2506
改进的SIFT算法 篇7
图像配准技术是图像融合和图像重建等应用的前提, 是不可缺少的关键步骤。图像配准可分为基于特征和基于区域的配准, 其基本步骤为特征检测、特征匹配、匹配函数设计和图像的变换及重采样[1]。图像配准在医学、遥感和目标识别等众多图像分析领域得到了广泛地应用, 是图像处理领域中研究的热点。
尺度不变特征SIFT是由David Lowe于1999年提出, 并于2004年总结完善[2]。SIFT匹配算法主要可分为特征检测、特征描述和特征匹配3个部分。Mikolajczyk和Schmid通过对比SIFT、PCA-SIFT、Steerable Filter和Moment Invariants等数10种特征描述后指出[3], SIFT是目前最为有效地特征检测算子。SIFT算法存在需要完善的地方, 如匹配部分的部分阈值参数不具有普遍适用性, 并且误配点没有得到有效的剔除。针对以上问题提出相应改进, 并将其应用到视频序列图像的配准当中。实验表明, 改进算法实现了更有效的配准。
1 SIFT算子
1.1 检测尺度空间的特征点
图像在尺度空间中表示为图像和可变高斯核函数的卷积, LoG (Laplacian of Gaussian) 算子表达式为:
对相邻层的卷积结果进行差值, 得到差分金字塔DoG (Difference of Gaussian) , DoG算子是对LoG算子的近似, 其表达式为:
式中, 因子k满足k=21/S;D (x, y, σ) 在尺度空间中的极值点作为候选特征点。
1.2 精确定位特征点的位置
差分金字塔DoG的泰勒展开式为:
式中, X= (x, y, σ) T为包含特征点位置和尺度信息的向量。通过D (X) 的幅值大小及其曲率来筛选特征点, D (X) 的曲率特性通过其二阶微分组成的Hessian矩阵来度量。
1.3 确定特征点的主方向
点坐标为 (x, y) 处的梯度幅值和方向为:
在以特征点为中心的邻域内用梯度方向直方图来统计邻域像素的梯度方向。梯度方向直方图的峰值代表了该特征点处邻域梯度的主方向, 即作为该特征点的主方向。
1.4 生成特征描述符
以特征点为中心取16×16的方格, 每个小格代表特征点邻域所在尺度空间的一个像素。在4×4的图像小块上计算8个方向的梯度方向, 绘制每个梯度方向的累加值, 形成128维的SIFT特征向量即特征描述符。对特征描述符进行归一化并与阈值0.2比较, 使其对线性变化和光照具有不变性。
1.5 特征点之间的匹配
采用特征描述符向量之间的Euclid距离来度量2个特征点之间的匹配程度。当2个特征描述符的Euclid距离最小并且与次最小Euclid距离的比值小于给定的阈值时, 则这2个特征点匹配。
2 SIFT改进算子
SIFT改进算子的步骤可分为特征检测、特征描述和特征匹配。首先, 对待配准图像和参考图像进行特征检测。特征检测需要经过检测DoG金字塔中的极值点、除去低对比度的点和除去边缘响应点;其次, 对检测到的特征点生成特征描述子。计算每个特征点梯度的幅值和方向, 统计梯度方向直方图, 生成特征描述子;最后, 通过特征描述子进行特征匹配。通过Euclid距离来匹配特征描述子, 采用相邻平行性、Hough变换和随机一致性采样RANSAC算法等约束, 得到精确的匹配点对, 采用最小二乘LS法来计算它们之间的空间变换矩阵, 对待配准图像进行最终的变换操作, 得到配准图像。
2.1 阈值参数的自适应优化
David将Euclid距离比阈值设为0.8[2], 然而该参数并不是对所有图像均有效。在对不同的图像进行试验时, 发现阈值并不总能得到最佳效果。为了使得该参数对不同的均有效, 应使其对不同的图像进行自适应的动态调整和优化, 即具有普遍适用性。衡量特征检测性能的参量如重复率 (Repeatability) 和信息量 (Information Content) 。重复率表达同一场景在不同情况下的稳定性, 而信息量是特征点显著性的度量。实验中采用重复率来评价特征检测的性能, 通过重复率来调控Euclid距离比阈值的设置。假设参考图像I1和待配准图像Ii, 其公共部分检测到的特征点为x1和xi, 它们匹配的定义为:
式中, H1i为变换矩阵, 则重复率定义如下:
2.2 去除误配点的相邻平行性约束
误配点对仿射参数的求取、图像重采样和变换的影响较大, 因此必须尽可能地剔除误配点。David指出[2], RANSAC算法的性能很好, 但是在外点较多的情况下其性能将受到很大的影响。设每个点是内点的概率为p, 则k个点均为内点的概率为pk, 随机抽样S次, 一致性的概率为P, Richard Szeliski指出[6]参数满足以下关系式:
所需要的最少抽样次数为:
当概率p<50%时, 达到相同的一致性概率所需的运算次数较多, 故在执行RANSAC算法之前, 先进行Hough变换聚类操作。为了更有效地去除误配点, 在Hough变换前加入相邻平行性约束。所谓相邻平行性约束, 是指相邻的匹配点对具有相似的平行关系。计算各匹配点对之间连线的斜率, 通过周围的匹配点对来判断该点对是否匹配。
3 实验结果及分析
3.1 将视频转换为序列图像
实验处理的对象是大桥上拍摄的监控录像。提取6幅图像, 以其中1幅为参考图像, 其他5幅为待配准图像。实验中, 为了减少背景图像的影响, 所处理的图像大小均取256×301。其中, 各表中标号1代表参考图像, 标号2, 3, 4, 5, 6分别代表待配准图像。作为示例, 标号为1和2的参考图像和待配准图像的配准过程具体如下所述。
3.2 特征检测
通过领域比较得到候选的极值点, 再对其进行筛选, 除去低对比度点和边缘响应点, 最终得到较稳定的极值点。所有图像特征点生成过程如表1所示。
由表1可知, 随着汽车向摄影头的方向移动, 图像的尺度越来越大, 检测到的特征点数目越来越多。
3.3 特征匹配
计算特征点对所确定的直线的斜率, 并与相邻的特征点对直线斜率进行比较, 当二者之间的差值超过一定范围时, 则认为该特征点对不满足目前的匹配模式。同时, 对已经匹配的特征点标记, 不再计算该点与其他特征点之间的斜率, 消除一点对多点和多点对一点的情况。通过实验得知, 误配点得到了有效地的剔除。实验中各幅图像内外点数目如表2所示。
表2记录了除参考图像外的其余5幅待配准图像的内外点检测数目。内点是满足模型参数估计的点, 外点是不符合模型的点。由表格可知, 随着特征点总数的增加, 模型内点的数目也在增多。距离比阈值与重复率的关系如图1所示。
由图1可知, 随着Euclid距离比的增加, 重复率出现起伏变化。当Euclid距离比为0.4左右时, 重复率接近于1。此时计算仿射参数的均方根误差, 取最小均方根误差时所对应的距离比阈值。经计算得到, 最小均方根误差为3.969 5×10-13, 对应距离比阈值为0.43。得到的仿射变换矩阵如下:
通过矩阵A对待配准图像进行变换。
3.4 图像变换及重采样
在得到图像之间的变换矩阵后, 对待配准图像进行变换, 得到配准图像如图2所示。图2左上子图为参考图像, 右上子图为待配准图像, 左下子图为原SIFT算法配准后的图像, 右下子图为改进SIFT算法配准后的图像。图2是以第1幅待配准图像为例的配准结果, 其他4幅图像配准过程相同。
由图2可知, 改进算法纠正原算法的扭曲现象, 说明仿射参数的估计更准确, 图像配准的效果更好
4 结束语
尺度不变特征SIFT算法因其稳定性、独特性和多量性等优点, 在图像处理领域发挥着越来越重要的作用。上述对SIFT算法阈值参数的设置进行了调整, 使其具有自适应性;同时去除了部分错配的特征点。将改进后的SIFT算法用于视频序列图像的配准, 实验表明算法性能得到了有效提高。后续工作将改进的算法应用于更多类型的图像, 并采用更加有效的错配点消除方法, 以实现更精确的图像配准。
参考文献
[1]ZITOVAB, FLUSSERJ.Image Registration Methods:a Survey[J].Image and Vision Computing, 2003, 21 (11) :977-1000.
[2]DAVID L G.Distinctive Image Features from Scale-invariantKeypoints[J].International Journal of Computer Vision, 2004, 60 (2) :91-110.
[3]MIKOLAJCZYK K, SCHMID C.A Performance Evaluation ofLocal Descriptors[J].IEEE Transactions on Pattern Analysisand Machine Intelligence, 2005, 27 (10) :1615-1630.
[4]SCHMID C, MOHR R.Christian Bauckhage Evaluation ofInterest Point Detectors[J].International Journal of ComputerVision, 2000, 37 (2) :151-172.
[5]BROWN M, LOWE D G.Invariant Features fromInterest PointGroups[R].Wales:British Machine Vision Conference, 2002:656-665.
基于井下环境的SIFT算法研究 篇8
中国作为煤炭资源大国, 由于煤矿特殊的地理环境, 安全事故的发生严重影响了煤矿的安全生产[1]。为了提高煤矿安全水平和监视煤矿井下的生产过程, 大多数煤矿都安装有工业电视监控系统, 通过工业电视监控系统可以给煤矿的调度指挥、安全生产提供可靠、方便、直观的方式。工业电视系统采用单独光纤或通过工业以太环网系统接入控制中心视频服务器, 实现对井下所有视频信号的监控。通过对不同摄像机获取的视频图像提取目标特征, 可以实时检测并匹配跟踪运动目标, 同时对于摄像机视野范围有限的问题可以根据匹配特征点建立投影模型实现拼接。但由于煤矿井下特殊环境, 不可避免地存在着人工照明光照不均、粉尘多、噪声大的问题, 获取的图像分辨率低, 给图像特征匹配带来难度。常用的角点匹配、颜色匹配算法对噪声和照度敏感, 不适合低照度、高噪声的煤矿环境。为了解决现有算法在复杂环境中易误匹配的现象, 笔者提出了针对井下复杂环境的图像特征提取新算法。
该特征匹配算法首先对图像用曲波算法去除噪声, 然后利用SIFT尺度不变特征向量进行特征匹配, 通过优化改进的RANSAC方法去除误匹配。该算法适应井下特殊环境, 对噪声大、光线变化不均、模糊以及旋转问题有较好的鲁棒性, 在保证匹配精度的同时保证了匹配效率。
1图像预处理
由于井下环境特殊, 监控视频噪声大、清晰度低, 为了准确提取特征点, 需要通过图像预处理去除噪声。小波具有很好的时域和频域分析能力, 很多学者们提出了基于小波的去噪方法, 如非线性小波变换阈值法、平移不变量去噪等。然而二维可分离小波基只具有有限的水平、垂直和对角方向, 多方向的缺乏使其不能最优表示具有线奇异、面奇异的高维函数。在小波理论基础上, E.J.CANDES和D.L.DONOHO于在1998—1999年建立了脊波变换[2]。其脊波本质是通过小波基函数添加一个表征方向的参数得到的, 具有很强的方向选择和辨别的能力, 可以有效表示信号中的方向奇异特征。为了进一步表示多维信号普遍的曲线型奇异性, 提出了Curvelet[3]方法, 可以用多尺度局部直线近似表示曲线。噪声和边缘信息能够很好地分开, 在保持边缘的同时, 使噪声抑制达到了很好的效果。
本文将第二代Curvelet变换运用于煤矿图像的去噪中, 使图像信噪比更高, 图像显示效果更真实、更清晰。
1.1 离散Curvelet
f[t1, t2], 0≤t1, t2≤n为输入函数, 曲波变换可表示为定义
离散Curvelet变换方法先变换到频域, 然后在频域中进行局部化, 局部化后采用2DIFFT得到曲波系数。
1.2 基于USFFT的Curvelet
(1) 对于给定的二维函数f[t1, t2], 0≤t1, t2≤ω进行2DFFT, 得到二维频域表示:undefined。
(2) 在频域, 对于每一对 (j, 1) , 重采样undefined, 得到采样值undefined, 其中Pj={ (n1, n2) :n1, 0≤n1
(3) 将内插后的undefined与窗函数undefined相乘得到undefined。
(4) 对undefined进行2DIFFT逆变换, 得到离散的曲波系数CD (j, l, k) 。
图1为利用小波和Curvelet法对图像井下图像用不同方法去噪后的结果。
从图1可以看出, 使用本文改进的方法进行图像去噪, 能更好地提高图像显示效果, 细节更加清晰。
2特征检测
对于煤矿井下复杂环境中存在的尺度变化、光照遮挡、模糊等问题, 目前没有一种检测算子可以解决所有问题。常用的SUSAN、Harris角点检测算子具有一定程度的不变性, 但对噪声和尺度变化较为敏感, 不适合视角变化、低照度、高噪声的煤矿井下环境。
局部尺度不变SIFT算法通过多尺度变换在尺度空间寻找极值点, 提取特征点位置、方向, 使特征向量保持不变。
2.1 SIFT特征点检测和定位
在多尺度空间对特征点进行检测, 图像尺度空间的定义:L (x, y, σ) =G (x, y, σ) I (x, y) [7]。
SIFT算子通过高斯差分算子在尺度空间中寻找极大值来检测特征点, 如图2所示。高斯差分尺变量度空间公式:undefined。
中间的检测点和同尺度的8个邻接点、上下相邻的18个点比较, 确保极值点在二维图像和尺度空间都被检测到。如图3所示。
2.2 关键点主方向的分配
每一个关键点通过关键点邻域像素的梯度方向分布特征指定方向参数, 保证算子具有旋转不变性。
undefined
式中:m (x, y) 、θ (x, y) 分别表示采样点处的模值和方向。
通过直方图统计梯度方向, 峰值表示关键点的主方向。
2.3 特征向量生成
坐标轴旋转到特征区域方向, 以关键点为中心取16×16窗口, 每个4×4小块上计算8梯度方向直方图, 绘制每个梯度方向的累加值。一个关键点由16个4×4、有8个方向向量的种子点构成。每个特征点用128维向量表征。
3优化匹配
将SIFT算法找出的特征点与待匹配图中所有的特征点进行比较, 计算欧氏距离, 进行相似性判定度量。如果最近和次近的距离比小于阈值 (如0.5) , 则匹配。但由于煤矿井下环境恶劣, 匹配时存在着误匹配现象, 需要筛选出合适的特征匹配点用于后期拼接。
RANSAC (Random Sample Consensus, 随机抽样一致性) [8]是从一个观察数据集合中估计模型参数的一种迭代算法。该算法具有随机不确定性, 可以通过提高迭代次数来提高求解正确模型的概率。每次求出的结果可能不同, 但总能给出一个合理结果。只要4对特征点即可寻找变换矩阵模型。RANSAC具体算法:
(1) 随机选择4对匹配特征对进行变换矩阵的计算;
(2) 将匹配的特征对根据变换矩阵分成内点和外点;
(3) 如果符合的特征对比当前矩阵的最优解多, 则更新变换矩阵;
(4) 返回 (1) 重复执行, 直到符合指定的迭代次数。
虽然标定过程只需要4个点, 可根据统计学来说, 样本数越多, 变换矩阵的计算结果就越精确。综合考虑精确性和运行效率, 本文采用200次迭代。选取井下视频帧直接匹配及在高斯噪声模糊、亮度增强、旋转缩放、部分遮挡不同环境中进行匹配。效果如图4所示。
图4 (a) 为待匹配的原图;图4 (b) 为优化前SIFT算法匹配的结果, 有很多误匹配对出现;图4 (c) 为通过本文优化, 去除掉误匹配点后特征匹配的结果, 误匹配大幅度减少;图4 (d) 为第二幅图模糊处理后旋转一定角度进行匹配的结果;图4 (e) 为第二幅图增加噪声并提高亮度后匹配的结果, 均得到较好的效果。表1描述了不同环境中图像正确匹配率的变化情况。从表1可看出, 本文改进的SIFT局部不变特征提取算法在复杂环境中的匹配精度得到提高, 有较好的应用价值。
4拼接
图像拼接是SIFT特征匹配的应用方向之一, 通过提取上文中匹配的特征点可以建立如下投影变换模型, 将分散的若干个角度不同、大小不同、照度不同的图像拼接成整幅图, 扩大视野范围, 更好地捕获视频信息。根据2幅图像的匹配点建立八参数的投影变换模型:
undefined
在2幅图像拼接的过程中, 假设a和b是图像A和匹配图像B对应的2点, H为投影变换矩阵。变换矩阵H可以描述一系列放大、缩小、旋转、平移操作和透视效果, h是H的参数向量。如果得到4对以上正确匹配点对, 可以求解投影变换参数。拼接效果如图5所示。
图5 (a) ~图5 (c) 为某场景的3幅图, 图5 (d) 为拼接后的结果。可以看出, 改进后的SIFT算法通过去除误匹配得到的特征点进行拼接, 在照度低、噪声高的煤矿井下环境中拼接效果良好。
5结语
由于煤矿井下环境复杂, 常用的角点检测算子对噪声、光照和尺度变化敏感, 不适合低照度、高噪声的煤矿井下环境。本文提出的特征匹配新算法通过Curvelet去噪后, 采用RANSAC随机抽样一致性优化的SIFT算法拼接。实验表明, 该算法较好地去除了错误匹配点, 提高了局部不变特征匹配精度, 有良好的抗噪声和光照能力, 对尺度变化适应性强, 算法稳健, 匹配和拼接效果较好, 在低照度、高噪声的煤矿复杂环境下具有一定的鲁棒性, 应用前景良好。
参考文献
[1]卢倩, 朱真才, 陈光柱, 等.矿井工业以太网大流量负载实时调度策略[J].煤炭学报, 2009, 34 (10) :1430-1434.
[2]CANDES E J.Ridgelet:Theory and Applications[D].Stanford:Depart ment of Statistics, StanfordUniversity, 1998.
[3]CANDES E J, DONOHO D L.Curvelets[D].Stanford:Depart ment of Statistics, StanfordUniversity, 1999.
[4]CANDES E J, DEMANET L, DONOHO D, et al.FastDiscrete Curvelet Transforms[J].Multiscale Modelingand Si mulation, 2006, 5 (3) :861-8991.
[5]CANDES EJ, DEMANET L.Curvelets and Fast WaveEquation Solvers[D].USA:California Institute ofTechnology, 2005.
[6]CANDES E J, NONOHO D L.New Tight Frames ofCurvelets and Opti mal Representations of Objects withC2Singularities[J].Commun.on Pure and Appl.Math., 2004, 57 (2) :219-266.
[7]LOWE D G.Distinctive I mage Features from Scaleinvariant Key Points[J].International Journal ofComputer Vision, 2004, 60 (2) :91-110.
改进的SIFT算法 篇9
图像匹配技术已成为遥感地形、图像处理、图像识别、 计算机视觉等领域的关键技术[1]。现有的基于面积、基于相位等算法对尺度变换、视角变换、遮挡等情况匹配效果均不理想。提取图像视觉特征内容能够根据图像内容进行匹配,获得较准确的匹配效果[2]。但由于全局特征不能很好地描述图像局部信息,因此匹配精度并不高,而SIFT特征具有旋转及尺度不变性,对于光线明暗变换、视角变换、缩放、遮挡等情况具有很好的鲁棒性[3]。本文对SIFT算法进行分析研究,获取SIFT特征进行图像匹配,实验表明SIFT算法在缩放、明暗、旋转、遮挡等情况下具有较好的匹配效果。
1 SIFT算法描述
SIFT特征考虑了在规模较大的图像库中可能具有多视角特征点的图像,且有较强的抗干扰性能,对于噪声干扰图像处理效果较好[4]。获取一幅图像SIFT特征的方法实质上就是将图像特征转变为多个点特征的集合,这个集合就是整个图像的SIFT特征,集合中每个特征分量都具有鲁棒性。图像SIFT特征向量的算法步骤如下:
1.1构造尺度空间
尺度空间实质上是引入不同的尺度参数,获得图像数据在不同尺度下的视觉内容细节,从而准确地挖掘图像视觉特征[5]。图像I(x,y)通过高斯函数获得不同尺度的LOG图像。
上式中G(x,y,σ)代表不同尺度相对的高斯函数,σ 为高斯尺度参数,代表该高斯图像的平滑度,其值大则表示在该尺度下的高斯图像较为平滑,即主要信息为原图像的概况信息;而σ值较小则表示该尺度参数对应的高斯图像包含的原图像的高频成分,即细节信息较多,因此这样的高斯尺度图像也较为清晰[6]。特征点的检测通常在差分金字塔空间即DOG空间中完成,实质上由LOG图像进行差分,可以得到DOG图像,公式如下:
SIFT算法在使用高斯函数获得尺度空间的同时原图像也会由于高斯平滑而丢失高频信息,从而引起图像失真。为了获得尺度空间,同时保证图像质量,必须在构造高斯尺度空间前将原图像进行放大处理,从而增加特征点数量。
1.2检测DOG空间极值点
在DOG空间检测其极大值点和极小值点作为图像特征点。尺度空间的极小值点和极大值点通过每个待测点与其本尺度和相邻两个尺度上3*3邻域内的所有像素点进行比较得到,若该待测点的值为最大或最小时,则判断该待测点为一个特征点。
1.3去除不准确的特征点
通过检测DOG空间的极大值和极小值仅能初步确定特征点位置,其精确度仅为像素精度[7],并不准确,特征点中对比度较低或者对边缘响应稳定性较差的点被认为是非特征点需要删除。删除对比度低的点需要引入泰勒函数,从而获得每个极值的位置X’,若X′ >0.03,那么这个点就是对比度较低的非特征点;另一方面,去除不稳定边缘点则可使用曲率概念和DOG相结合的方法,从而构建一个2*2的海森矩阵,通过其轨迹(trace)以及行列式(determinant)进行推导,从而可获得:
其中,r为主曲率阈值,选择一定阈值,如果特征点不满足式(5),则表示该点为不稳定的边缘点,被认为是非特征点。
1.4确定特征点的方向
特征点的方向需根据特征点的邻域像素确定,以便于后续对图像进行的分析转换为对特征点尺度和方向的分析[8]。可根据高斯尺度图像(LOG)获得像素点的幅值以及方向,如下所示:
式(4)为点(x,y)处梯度方向幅值,而式(5)则表示点(x,y)处的方向。
1.5获取特征点梯度直方图
特征点描述通常采用一个4×4的网格作为特征点的邻域[9],统计每一格中每45°共8个方向的信息,因此就构成了一个128维的特征描述向量,具体步骤如下:
(1)取特征点周围16×16的邻域作为采样窗口;
(2)将采样窗口中像素点归入4×4的网格,每格子就是描述子的一个种子,同一网格中的所有像素点之和就是描述子在该种子的值;
(3)每个网格中每45°设置一个方向,共8个方向,将采样点和特征点之间的相对方向根据高斯加权后归类到对应的每个网格的8个方向中,同一个格子中所有点在这8个方向上的分量作为描述子在该网格的值,这里使用采样点与特征点的相对方向构建方向直方图,从而保证SIFT特征的旋转不变性;
(4)由步骤(2)、(3)就能得到16个网格的8个方向的分量,也即特征点的梯度直方图,也就是特征点的SIFT特征描述。
2 SIFT特征点匹配
特征点的相似性通过计算两个特征点的SIFT特征向量即梯度直方图的欧氏距离获得。如果两个点的相似性小于一定的比例阈值,则判断这两个点为一对匹配的特征点。通过调整阈值可以调整获得的匹配点数量。阈值越低,则获得的匹配结果越稳定,同时匹配点的数目会越小;阈值越高则反之。
3实验结果与分析
针对SIFT算法,本文设计了5组实验以证明SIFT算法在图像匹配方面的有效性,实验中过滤不稳定的边缘点所使用的曲率半径。
图3展示了以lena图像作为测试图像的SIFT特征点以及特征点的描述向量。图3(b)为通过极值检测初步获得的特征点,图3(c)为去除了不稳定和对比度低的点后精确的特征点,图3(d)为特征点位置方向信息。可见SIFT算法可以有效确定图像特征点以及特征点的位置方向,从而有利于生成SIFT描述向量。
图4为由尺度缩放而来的两幅原图的匹配结果,其中左图采用SIFT算法获取了428个特征点,右图采用SIFT算法获取了330个特征点,连线的两端为匹配成功的一对特征点。由此可见,对于内容相同而缩放大小不同的两图图像,SIFT算法大部分特征点可以正确匹配,少数几个不能正确匹配,因而该算法对尺度缩放变换保持较好的稳定性。
图3是两幅亮度不同环境下拍摄的同一物体的匹配结果,虽然图像明亮有变化,但仍能成功匹配,由此可见, SIFT算法的图像匹配方法对于亮度变化保持稳定性,可降低光照的影响。
图4显示原图旋转90°且被部分遮挡的情况下仍然有较好的匹配结果,显示了SIFT算法较好的方向性及稳定性。
4结语
改进的SIFT算法 篇10
脱机签名鉴别是通过分析和比较静态的签名图像里的特征以及书写风格来识别签名人身份的一种技术。由于签名的笔记具有稳定性、唯一性、获取的非侵犯性等优点,因此成为个人身份辨识的有效方法之一[1]。许多专家都曾今对此做过大量研究,如Ammar[2,3]等。但其对于汉字签名的鉴别研究较少,主要由于中文汉字的特殊性,而且脱机签名中可提取的信息相对较少。
稳定的SIFT(Scale Invariant Feature Transform)算法由Lowe等人在1999年提出[4],该算法能较好地用来实现图像匹配等功能,本文中用SIFT算法来实现签名鉴别。
由于汉字为象形文字,相比于英文等其他由字母组成的语言,其单个文字表达的信息要充裕许多,不同人书写的单字差异也会差异很大。因此,本文采用SIFT算法来对单字提取特征点,最后进行匹配,最终完成签名鉴别功能。
1 数据收集
本文采集了包括本人的10名志愿者签名各10份,共100份,以及每人的签名模板,共10份。同时其他9名志愿者模仿本人签名各10次,共90份。之后通过Lenovo M7205扫描得到600×600dpi的256级灰度图像。如图1所示,左边为本人签名,右边为模仿的签名。
2 特征提取
2.1 构建DoG尺度空间
为了有效的检测尺度空间中的极值点,在高斯-拉普拉斯(LoG)算子提取的尺度空间信息的基础上,采用其差分的形式DoG。通过LoG与DoG的表达式结合一阶微分定义与热扩散方程可以得到式(1):
G(x,y,kσ)-G(x,y,σ)≈(k-1)σ2(∇2G) (1)
由此看出,可以将DoG看作尺度归一化后LoG的近似。
如果输入签名图像的尺寸为H×L。构建尺度空间的方法如下:
①以二维离散高斯卷积核(σn较小),对原始签名图像作滤波预处理。
②构造一系列高斯函数,使其尺度逐步值递增,然后分别对预处理完后的签名图像做卷积滤波,对应会生成一系列高斯图像,使其作为高斯图像的第一组,这些图像在尺度方向上间隔为常量k。
③将上步中得到的高斯图像组中尺度为初始图像尺度两倍的图像,按因子2做下采样处理,作为高斯图像下一组的初始图像。
④重复步骤③,生成后续图像。
⑤依次操作,最终可以生成 log2(min(H,L))(结果取整) 组图像。
⑥分别将高斯尺度空间中相邻近的两幅图像作差分,即得到DoG。
2.2 SIFT特征点提取
①对于尺度空间中的极值点,需要把它与所有相邻的26个点比较,即要和其同尺度的8个点以及相邻上下两个尺度对应的各相邻点比较,看其是否是最大或最小。
②由于DoG值对噪声和边缘较敏感,因此,在上面DoG尺度空间中检测到局部极值点还要经过进一步的检验才能精确定位为特征点。根据Lowe在文中的算法[3]。
undefined其中,undefined为修正值
上式去除对比度较低的不稳定极值点。Lowe的程序中抛弃小于0.04的极值点
③另外DoG函数的边缘响应较强,还需要排除边缘响应。在DoG中,通常不好的极值点的主曲率在边缘切线方向较大,而在边缘垂直方向较小。主曲率用Hessian矩阵得到主曲率和该矩阵的特征值成正比,令较大的一个特征值为α,较小的一个为β,则有:
Tr(H)=Dxx+Dyy=α+β,Det(H)=DxxDyy-
(Dxy)2=αβ (2)
当两个特征值相等时,上两式相除最小,并随r增大而递增,因此只需满足:
undefined
通常情况r取10。
2.3 特征点的方向分配
确定特征点的方向采用梯度直方图统计法,统计以特征点为原点,一定区域内的图像像素点对特征点方向生成所作的贡献。具体方法如下:
①直方图以每10度为一格,共36格,每格所代表的方向为该点的梯度方向,格的高低代表了梯度幅值。
②在Lowe的算法中,直方图统计半径采用3×1.5×σ。并采用模板[0.25,0.5,0.25]在直方图统计时对每相邻三个像素点进行两次高斯加权。
③特征点方向即为特征点周围区域梯度直方图的主峰值。
④对方向直方图的泰勒展开式进行二次曲线拟合,精确特征点方向。
2.4 特征点描述
如图2所示,左图中间点为特征点,每一个方格为周围的像素点,方格里的箭头为像素的梯度方向,箭头长度为梯度的模,蓝色圆圈代表高斯加权范围。在4×4范围内计算所有梯度的8个方向上得和值,即得到右图。实际中,SIFT算法采用的时4×4×8=128维向量来表示一个特征点,这样即可排除尺度变换,旋转等影响。再把其归一化,即可排除光照影响。
3 特征匹配
得到签名图像的特征点后,使用欧氏距离进行相似性判定。距离越小,则越相似,只需设置一个阈值,匹配小于阈值的点即可,这里使用BBF(Best Bin First)算法。具体步骤如下:
①首先将图1中的特征点建立KD二叉树。
②用图2中的特征点来寻找KD中的2个最邻近点。
③如果这2个点与该特征点的欧氏距离比小于阈值,则接受该点。
4 结果与分析
通过Visual C++6.0与OpenCV1.0编程实现以上算法,最终得到实验结果如表1所示。结果达到了预期效果。错误鉴别的主要因为以下原因:
①有的签名字迹较潦草,与模板签名无法匹配。
②两人姓氏一样或名字中出现相同汉字的容易出现误配。
5 结束语
研究了基于SIFT算法的签名鉴别算法,首先把签名样本扫描成图像格式,再从图像中提取SIFT特征算子,最后对SIFT特征算子进行匹配,给出鉴别结果。
对于文中研究的算法还有许多不足之处,可以看出日后需要进一步改进的地方主要有以下几点:
①如果把签名分解成单字,再进行逐字匹配应该可以提高匹配的成功率,同时减小姓名中同字出现的误配。
②可以对SIFT算法进行降维,在保持正确率的情况下提高系统鉴定速度。
参考文献
[1]Deng Peter Shaohua,Liao Hong-Yuan Mark,Ho Chin Wen.Wavelet-based off-line handwritten signature verification[J].Computer Vi-sion and Image Understanding,1999,76(3):173-190.
[2] Ammar M,Yuuji Yoshida, Teruo Fukumura. Off-Iine preprocessing and verification of signature[J]. InternationaI JournaI of Pattern Recognition and ArtificiaI Intelligence,l988, 2(4):589-602.
[3]Ammar M.Progress in verification of skiIIfuIIy simuIated handwrit-ten signatures.Int.JournaI of Pattern Recognition and ArtificiaI In-telligence,l99l,5(l&2):337-354.
[4] LOWE D G. Object recognition from local scale -invariant features[C]//International Conference on Computer Vision,1999:1150-1157.
[5] Brown M,Lowe D G. Invariant Features from Interest Point Groups[C]// British Machine Vision Conference,Cardiff,Wales,2002.
[6]LOWE D G.Distinctive image features from scale-invariant key-pointsc[J].International Journal of Computer Vision,2004,60(2):91-110.
【改进的SIFT算法】推荐阅读:
改进的FFT算法05-10
改进的KNN算法05-20
改进的TSP算法05-23
改进的DSM算法06-14
改进的粒子群算法07-05
改进的图像修复算法07-09
改进的直线DDA算法05-16
蚁群算法的改进策略05-16
选课算法的分析与改进07-23
改进型的中继选择算法06-23