第1页基于局部尺度不变性特征的目标识别大卫·罗伊英属哥伦比亚大学计算机科学系摘要一类利用新型的局部图像特征的目标识别系统已经得到发展,该特征对图像缩放、平移和旋转,特别是对光照变化和仿射或3D投射具有不变性。这些特征和用于识别目标的灵长类动物视觉颞皮层神经元具有相似性质。通过一种分级滤波法确定尺度空间中的稳定点,从而能够有效地找到特征。图像键允许局部几何变形,在多方位面和多尺度中,通过模糊图像梯度表示。该键被用作最近邻检索法的输入,识别候选对象匹配。每一个匹配的最终验证是通过寻找低残留的最小二乘法来获得未知的模型参数。实验结果显示,鲁棒性强的目标识别在杂乱和部分闭塞图像中的计算时间不超过2秒。1.介绍在杂乱的现实世界场景的目标识别中,需要有对周边的杂乱和部分闭塞不受影响的局部图像特征。该特征必须至少对光照变化、3D射影变换和一般的物体变化具有部分不变性。另一方面,这个特征必须同样足够独特,能在众多选择中识别出特定目标。目标识别的困难,其很大程度上归因于寻找这样的图像特征时缺乏成功。然而,近期对于密集局部特征的应用研究(如Schmid&Mohr[19])表明,通过利用从大量可重复位置采样的局部图像描述子,我们经常可以达到有效地识别。本文提出一种产生图像特征的新方法,称为尺度不变特征变换(SIFT)。该方法将图像变换为大量的局部特征向量,每一个向量对图像平移、缩放和旋转具有不变性,对光照变化和仿射或者3D投影有部分不变性。之前产生局部特征的方法对尺度缺乏不变性,且对射影失真和光照变化更加敏感。SIFT特征与灵长类动物视觉颞皮层神经元的反应有一些共通的性质,本文描述了索引和模型验证的改进方法。尺度不变的特征能通过采用分阶段滤波的方法有效地确定,第一阶段识别关键点在尺度空间的位置可通过寻找高斯差分函数的极值的位置确定。每个点用来产生一个特征向量,该向量描述了从和它有关联的尺度空间坐标中采样的局部图像区域。这个功能实现了模糊图像梯度点的局部变化的部分不变性,如仿射或三维投影,这种方法是基于哺乳动物的大脑皮层下的复合细胞行为的模型,生成的特征向量称为筛选键。在当前实现中,每幅图像按顺序产生1000个筛选键,第2页这个过程需要的计算时间小于1秒。SIFT键来自一幅图像,用于最近邻法索引,以确定候选对象模型。这些与可能的模型符合的键的集合,是首先通过霍夫变换哈希表确定,然后通过最小乘方拟合得到最后估计的模型参数。当至少3个键低残余地符合模型参数,就是存在对象的有力证据。由于可能有几十个SIFT键存在于典型对象的图像里,可能有相当程度的阻塞在图像中,但仍保留高水平的可靠性。当前对象模型代表SIFT键的二维位置,这些位置可以经受仿射变换。特征位置足够的变化允许远离相机高达60度旋转或三维物体高达20度旋转情况下识别平面形状的透视投影。2.相关研究目标识别被广泛用于机器视觉产业,达到检查登记和操纵的目的。然而,目前商业系统的目标识别几乎只能依靠基于相关模板匹配。在特定设计的环境,如目标位置和光照被轻微地控制,该方法是非常有效的。当目标旋转、尺度、光照和三维位置允许变化时,模板匹配在计算上将不可行,在处理部分可见和大模型数据库时显得更加突出。一种可供选择的方法来搜索图像中所有匹配点的位置,是从图像中提取至少对图像形成过程具有部分不变性的特征,且匹配只针对这些特征。很多候选特征类型已被提出和探索,包括线段[6],分组的边缘[11,14],区域[2]在很多其他的建议中。而这些特征对某些对象类很起作用,它们不常被检测出或者有足够的稳定性为可靠识别奠定基础。近来对开发更密集的图像特征采集已有研究,一种途径是利用一个角探测器(更精确地说,在局部图像变话中有峰值的探测器)来确定重复图像位置,在这些位置附近局部图像性质可以被测量出。Zhangetal.[23]用Harris角探测器来确定特征位置,这些位置来自不同视角的核线排列图像。相比尝试从一幅图像区域对另一幅图像中的所有可能的区域相关,通过只集中于每幅图像的角点来匹配区域,可以大大地减少计算时间。对于目标识别问题,Schmid&Mohr[19]同样利用Harris来确定兴趣点,然后在每一个兴趣点中产生一个局部图像描述符,兴趣点来自高斯导数图像中测量的一个方向不变向量。这些图像描述子用于稳定的目标识别,通过寻找满足基于对象方向和位置约束的多个匹配的描述符,这项工作对在大量数据集中的识别速度和处理混乱图像的能力是显著可观的。角探测器用于这些先前的方法中有一个很大的缺陷,那就是它们只在单一的尺度中检测图像。随着显著的尺度变化,这些探测器对不同的图像点反应。而且由于探测器不提供一个目标尺度的描述,有必要创造图像描述符和尝试在大量尺度中的匹配。本文提出一个有效的方法确定尺度空间中稳定键的位置,这意味着第3页不同尺度下的一幅图像对选定的键位置没有影响,而且每个点的尺度是明确的。这允许对那个点的图像描述向量在各自的图像中等价地被采集,在每个位置有一个依照规则的方向被确定,因此,可相对于一个一致的局部二维坐标系来进行匹配。这考虑到利用比SchmidandMohr所用的旋转不变性更独特的图像描述符,该描述符甚至可调整到提高对仿射变换和光照的稳定性。其他基于表面识别的方法包括特征空间匹配[13],颜色直方图[20]和接受域直方图[18]。这些方法已经在孤立的对象和初步分割的图像上成功演示,但由于它们的全局特征,很难将它们扩展到杂乱和部分闭塞的图像中。Ohba&Ikeuchi[15]通过利用很多小的局部eigen-windows将特征空间法成功用于杂乱图像。但是这需要在一幅新的图像中大量搜索窗口,和模板匹配一样。3.关键定位我们希望在尺度空间中找到点的位置,这些点对图像平移、缩放和旋转具有不变性,且受噪声和小的失真的影响是很小的。Lindeberg[8]已经指出在尺度不变时的一些相当一般的假设下,高斯核和它的导数对尺度空间分析是唯一可能的平滑核。为了满足旋转不变和高水平的效率,我们选择高斯差分函数在尺度空间中的极值点作为关键位置。通过建立一个图像金字塔且在相邻层重抽样可以有效地计算出这些位置。在区域和尺度大变化时确定关键点位置,让这些位置能很稳定地表征图像。Crowley&Parker[4]和琳达博格先前在尺度空间中用高斯差分于其他的目的。接下来,我们描述一个特别有效和稳定的方法来探究和表征这个函数的极大值和极小值。由于二维高斯函数是可分离的,它的输入的图像卷积可以通过水平和竖直方向的两个一维高斯函数有效地计算出来。2221()2xgxe对于关键定位,所有的平滑算子用的σ=2,它可用一维核和七个抽样点以足够的精度估计。输入图像首先和σ=2的高斯函数做卷积得到图像A,以σ=2重复第二遍进一步增加平滑得到图像B,现在相当于σ=2的平滑结果,高斯差分函数通过图像A减B获得,结果在两个高斯模型之间的比为2/2=2。为了产生下层金字塔,我们用像素间距为1.5在各方向上双线性插值对已平滑图像B进行重抽样。尽管看上去更自然以2的相对尺度重抽样,唯一的约束是第4页以足够的频次抽样来检测峰值。1.5的间距意味着每个新样本将是一个4近邻像素的常数线性组合,这样能够有效地计算和减少因改变重抽样系数导致的混叠结果。尺度空间函数的极大值和极小值由比较金字塔中相邻像素决定。首先,一个像素和同层金字塔的8个相邻像素比较,再对上层重复测试。由于大多数像素在较少的比较次数后被排除,相比建立金字塔,这种探测的代价将较低。如果金字塔的第一层与输入图像有同样的抽样率,则最高空间频率将被忽略。这都归因于初始平滑,它是为鲁棒探测提供峰值分离所需要的。因此,我们将输入图像扩展2倍,利用双向性插值优先建立金字塔。对于一幅典型的512×512图像可以给出1000个关键点,相比未对图像初始扩展的关键点数只有这个数值的四分之一。3.1SIFT关键点稳定性为了在关键位置描述图像,对每层金字塔的平滑图像A作提取图像梯度和方向的处理。对每个像素ijA,图像梯度大小ijM,方向ijR,可通过像素差计算出来:221,,1()()ijijijijijMAAAA1,,1arctan(,)ijijijijijRAAAA这个像素差能高效地计算,而且由于大量层数的先前平滑可提供足够的精确度。有效的半像素位置转换是对确定关键位置时的补偿。第5页图1:第二幅图像由第一幅通过旋转,尺度变化,伸缩,对比度变化和添加像素噪声产生。尽管有这些变化,78%第一幅图的关键点对第二幅图关键点有很近的匹配。这些实例显示只有一个关键点子集减小了复杂性。对于光照变化的鲁棒性,通过设置梯度大小阈值为最大可能梯度值的0.1使其得到增强,这降低了三维模型表面光照方向的改变造成的影响,因为光照的变化可能对梯度大小有很大改变,但是对梯度方向则影响更少。每个关键位置被赋予一个规范化的方向,因此图像描述符对旋转具有不变性。为了使其对抗光照和对比度变化尽可能的稳定,关键点方向由局部图像梯度方向直方图的峰值决定。方向直方图是用σ为当前平滑尺度的3倍的高斯权重窗产生的。这些权重乘以设置的梯度值再累加到对应方向ijR的直方图中。这个直方图有36各柱状图,涵盖360度的旋转范围,且在峰值选取前已被模糊。得到关键点的稳定性可通过让原图像在仿射变换、对比度光照强度变化和添加噪声情况下测试,在第一幅图像中探测到的每个关键点位置可由转换参数的知识在变换后的图像中预测到。这个结构用于选择给出的不同抽样和模糊参数,因此可获得最高的效率且对变化保持稳定。图像转换匹配%方向%A.增加对比度至1.289.086.6B.光强度下降0.288.585.9C.旋转20度85.481.0D.尺度变0.785.180.3E.伸缩1.283.576.1F.伸缩1.577.765.0G.添加10%的像素噪声90.388.4H.所有A,B,C,D,E,F,G78.671.8图2:对于不同图像变换应用于一个20幅图像的样本,该表给出了在匹配位置和尺度(匹配%)和方向匹配(方向%)的关键点百分比。图1表示了通过2组只有大尺度探测到的少量关键点(避免过于杂乱),每个关键点用方框表示,一条从中心到方框一边的线表示方向。在图的第二半部分,图像旋转了15度,尺度为原来的0.9,在水平方向以1.1倍扩展。像素强度从0到1,从光照值中减去0.1而对比度乘以0.9来降低。随机像素噪声叠加产生小第6页于5bit/像素的信号。尽管有这些变换,78%第一幅图像的关键点与第二幅图像中所预测的位置、尺度和方向的关键点有高度地匹配。关键点对图像变幻的整体稳定性可以从表2中判断,该表中的每一个条目是结合20个不同测试图像结果和总结大约15000个关键点匹配所产生的。表中每行表示一个特殊的图像变换。第一个图给出了在变换后的图像中位置处σ以内(相对那个关键点的尺度)和1.5倍的尺度有匹配关键点的关键点比率。第二列给出了满足这些条件且方向与预测的偏差在20度以内的比例。4.局部图像描述子每个关键点具备了稳定的位置、尺度和方向,现在有可能对这些变化具有不变性的局部图像区域进行描述。而且,对局部几何的小变化具有鲁棒性的这种表示是可取的,如来自仿射或3D投影。对此建议的一个方法是通过复杂的视觉皮层中的神经元的响应特性,在该处一个特征位置在小区域上允许改变,而方向和和空间频率的特征得到保留。Edelman,Intrator&Poggio[5]已经做了实验,模拟复杂神经元对不同的计算机图形的三维视图模型的反应,发现复杂细胞的输出比简单的基于相关的匹配提供更好的区分性。这是可视的,例如如果仿射投影相对另一个图像将一个图像沿一个方向伸展,这改变了相对位置的梯度特征而对它们的方向和空间频率有较小的影响。这种对局部几何失真的鲁棒性可以通过表示多图像局部图像区域的一系列方向(被称为方向平面)表示来获取。每一个方向平面只包含与该方向对应的梯度,用线性插值表示中间方向。每个方向被模糊和重抽样以允许梯度位置的更大变化。这种方法可以有效地实现,通过利用对用于方向选择的每层金字塔进行梯度和方向同样的预计