280031 董磊translation.docx
《280031 董磊translation.docx》由会员分享,可在线阅读,更多相关《280031 董磊translation.docx(12页珍藏版)》请在冰豆网上搜索。
280031董磊translation
基于局部尺度不变性特征的目标识别
大卫·罗伊
英属哥伦比亚大学计算机科学系
摘要
一类利用新型的局部图像特征的目标识别系统已经得到发展,该特征对图像缩放、平移和旋转,特别是对光照变化和仿射或3D投射具有不变性。
这些特征和用于识别目标的灵长类动物视觉颞皮层神经元具有相似性质。
通过一种分级滤波法确定尺度空间中的稳定点,从而能够有效地找到特征。
图像键允许局部几何变形,在多方位面和多尺度中,通过模糊图像梯度表示。
该键被用作最近邻检索法的输入,识别候选对象匹配。
每一个匹配的最终验证是通过寻找低残留的最小二乘法来获得未知的模型参数。
实验结果显示,鲁棒性强的目标识别在杂乱和部分闭塞图像中的计算时间不超过2秒。
1.介绍
在杂乱的现实世界场景的目标识别中,需要有对周边的杂乱和部分闭塞不受影响的局部图像特征。
该特征必须至少对光照变化、3D射影变换和一般的物体变化具有部分不变性。
另一方面,这个特征必须同样足够独特,能在众多选择中识别出特定目标。
目标识别的困难,其很大程度上归因于寻找这样的图像特征时缺乏成功。
然而,近期对于密集局部特征的应用研究(如Schmid&Mohr[19])表明,通过利用从大量可重复位置采样的局部图像描述子,我们经常可以达到有效地识别。
本文提出一种产生图像特征的新方法,称为尺度不变特征变换(SIFT)。
该方法将图像变换为大量的局部特征向量,每一个向量对图像平移、缩放和旋转具有不变性,对光照变化和仿射或者3D投影有部分不变性。
之前产生局部特征的方法对尺度缺乏不变性,且对射影失真和光照变化更加敏感。
SIFT特征与灵长类动物视觉颞皮层神经元的反应有一些共通的性质,本文描述了索引和模型验证的改进方法。
尺度不变的特征能通过采用分阶段滤波的方法有效地确定,第一阶段识别关键点在尺度空间的位置可通过寻找高斯差分函数的极值的位置确定。
每个点用来产生一个特征向量,该向量描述了从和它有关联的尺度空间坐标中采样的局部图像区域。
这个功能实现了模糊图像梯度点的局部变化的部分不变性,如仿射或三维投影,这种方法是基于哺乳动物的大脑皮层下的复合细胞行为的模型,生成的特征向量称为筛选键。
在当前实现中,每幅图像按顺序产生1000个筛选键,
这个过程需要的计算时间小于1秒。
SIFT键来自一幅图像,用于最近邻法索引,以确定候选对象模型。
这些与可能的模型符合的键的集合,是首先通过霍夫变换哈希表确定,然后通过最小乘方拟合得到最后估计的模型参数。
当至少3个键低残余地符合模型参数,就是存在对象的有力证据。
由于可能有几十个SIFT键存在于典型对象的图像里,可能有相当程度的阻塞在图像中,但仍保留高水平的可靠性。
当前对象模型代表SIFT键的二维位置,这些位置可以经受仿射变换。
特征位置足够的变化允许远离相机高达60度旋转或三维物体高达20度旋转情况下识别平面形状的透视投影。
2.相关研究
目标识别被广泛用于机器视觉产业,达到检查登记和操纵的目的。
然而,目前商业系统的目标识别几乎只能依靠基于相关模板匹配。
在特定设计的环境,如目标位置和光照被轻微地控制,该方法是非常有效的。
当目标旋转、尺度、光照和三维位置允许变化时,模板匹配在计算上将不可行,在处理部分可见和大模型数据库时显得更加突出。
一种可供选择的方法来搜索图像中所有匹配点的位置,是从图像中提取至少对图像形成过程具有部分不变性的特征,且匹配只针对这些特征。
很多候选特征类型已被提出和探索,包括线段[6],分组的边缘[11,14],区域[2]在很多其他的建议中。
而这些特征对某些对象类很起作用,它们不常被检测出或者有足够的稳定性为可靠识别奠定基础。
近来对开发更密集的图像特征采集已有研究,一种途径是利用一个角探测器(更精确地说,在局部图像变话中有峰值的探测器)来确定重复图像位置,在这些位置附近局部图像性质可以被测量出。
Zhangetal.[23]用Harris角探测器来确定特征位置,这些位置来自不同视角的核线排列图像。
相比尝试从一幅图像区域对另一幅图像中的所有可能的区域相关,通过只集中于每幅图像的角点来匹配区域,可以大大地减少计算时间。
对于目标识别问题,Schmid&Mohr[19]同样利用Harris来确定兴趣点,然后在每一个兴趣点中产生一个局部图像描述符,兴趣点来自高斯导数图像中测量的一个方向不变向量。
这些图像描述子用于稳定的目标识别,通过寻找满足基于对象方向和位置约束的多个匹配的描述符,这项工作对在大量数据集中的识别速度和处理混乱图像的能力是显著可观的。
角探测器用于这些先前的方法中有一个很大的缺陷,那就是它们只在单一的尺度中检测图像。
随着显著的尺度变化,这些探测器对不同的图像点反应。
而且由于探测器不提供一个目标尺度的描述,有必要创造图像描述符和尝试在大量尺度中的匹配。
本文提出一个有效的方法确定尺度空间中稳定键的位置,这意味着不同尺度下的一幅图像对选定的键位置没有影响,而且每个点的尺度是明确的。
这允许对那个点的图像描述向量在各自的图像中等价地被采集,在每个位置有一个依照规则的方向被确定,因此,可相对于一个一致的局部二维坐标系来进行匹配。
这考虑到利用比SchmidandMohr所用的旋转不变性更独特的图像描述符,该描述符甚至可调整到提高对仿射变换和光照的稳定性。
其他基于表面识别的方法包括特征空间匹配[13],颜色直方图[20]和接受域直方图[18]。
这些方法已经在孤立的对象和初步分割的图像上成功演示,但由于它们的全局特征,很难将它们扩展到杂乱和部分闭塞的图像中。
Ohba&Ikeuchi[15]通过利用很多小的局部eigen-windows将特征空间法成功用于杂乱图像。
但是这需要在一幅新的图像中大量搜索窗口,和模板匹配一样。
3.关键定位
我们希望在尺度空间中找到点的位置,这些点对图像平移、缩放和旋转具有不变性,且受噪声和小的失真的影响是很小的。
Lindeberg[8]已经指出在尺度不变时的一些相当一般的假设下,高斯核和它的导数对尺度空间分析是唯一可能的平滑核。
为了满足旋转不变和高水平的效率,我们选择高斯差分函数在尺度空间中的极值点作为关键位置。
通过建立一个图像金字塔且在相邻层重抽样可以有效地计算出这些位置。
在区域和尺度大变化时确定关键点位置,让这些位置能很稳定地表征图像。
Crowley&Parker[4]和琳达博格先前在尺度空间中用高斯差分于其他的目的。
接下来,我们描述一个特别有效和稳定的方法来探究和表征这个函数的极大值和极小值。
由于二维高斯函数是可分离的,它的输入的图像卷积可以通过水平和竖直方向的两个一维高斯函数有效地计算出来。
对于关键定位,所有的平滑算子用的σ=
,它可用一维核和七个抽样点以足够的精度估计。
输入图像首先和σ=
的高斯函数做卷积得到图像A,以σ=
重复第二遍进一步增加平滑得到图像B,现在相当于σ=2的平滑结果,高斯差分函数通过图像A减B获得,结果在两个高斯模型之间的比为2/
=
。
为了产生下层金字塔,我们用像素间距为1.5在各方向上双线性插值对已平滑图像B进行重抽样。
尽管看上去更自然以
的相对尺度重抽样,唯一的约束是以足够的频次抽样来检测峰值。
1.5的间距意味着每个新样本将是一个4近邻像素的常数线性组合,这样能够有效地计算和减少因改变重抽样系数导致的混叠结果。
尺度空间函数的极大值和极小值由比较金字塔中相邻像素决定。
首先,一个像素和同层金字塔的8个相邻像素比较,再对上层重复测试。
由于大多数像素在较少的比较次数后被排除,相比建立金字塔,这种探测的代价将较低。
如果金字塔的第一层与输入图像有同样的抽样率,则最高空间频率将被忽略。
这都归因于初始平滑,它是为鲁棒探测提供峰值分离所需要的。
因此,我们将输入图像扩展2倍,利用双向性插值优先建立金字塔。
对于一幅典型的512×512图像可以给出1000个关键点,相比未对图像初始扩展的关键点数只有这个数值的四分之一。
3.1SIFT关键点稳定性
为了在关键位置描述图像,对每层金字塔的平滑图像A作提取图像梯度和方向的处理。
对每个像素
图像梯度大小
,方向
,可通过像素差计算出来:
这个像素差能高效地计算,而且由于大量层数的先前平滑可提供足够的精确度。
有效的半像素位置转换是对确定关键位置时的补偿。
图1:
第二幅图像由第一幅通过旋转,尺度变化,伸缩,对比度变化和添加像素噪声产生。
尽管有这些变化,78%第一幅图的关键点对第二幅图关键点有很近的匹配。
这些实例显示只有一个关键点子集减小了复杂性。
对于光照变化的鲁棒性,通过设置梯度大小阈值为最大可能梯度值的0.1使其得到增强,这降低了三维模型表面光照方向的改变造成的影响,因为光照的变化可能对梯度大小有很大改变,但是对梯度方向则影响更少。
每个关键位置被赋予一个规范化的方向,因此图像描述符对旋转具有不变性。
为了使其对抗光照和对比度变化尽可能的稳定,关键点方向由局部图像梯度方向直方图的峰值决定。
方向直方图是用σ为当前平滑尺度的3倍的高斯权重窗产生的。
这些权重乘以设置的梯度值再累加到对应方向
的直方图中。
这个直方图有36各柱状图,涵盖360度的旋转范围,且在峰值选取前已被模糊。
得到关键点的稳定性可通过让原图像在仿射变换、对比度光照强度变化和添加噪声情况下测试,在第一幅图像中探测到的每个关键点位置可由转换参数的知识在变换后的图像中预测到。
这个结构用于选择给出的不同抽样和模糊参数,因此可获得最高的效率且对变化保持稳定。
图像转换
匹配%
方向%
A.增加对比度至1.2
89.0
86.6
B.光强度下降0.2
88.5
85.9
C.旋转20度
85.4
81.0
D.尺度变0.7
85.1
80.3
E.伸缩1.2
83.5
76.1
F.伸缩1.5
77.7
65.0
G.添加10%的像素噪声
90.3
88.4
H.所有A,B,C,D,E,F,G
78.6
71.8
图2:
对于不同图像变换应用于一个20幅图像的样本,该表给出了在匹配位置和尺度(匹配%)和方向匹配(方向%)的关键点百分比。
图1表示了通过2组只有大尺度探测到的少量关键点(避免过于杂乱),每个关键点用方框表示,一条从中心到方框一边的线表示方向。
在图的第二半部分,图像旋转了15度,尺度为原来的0.9,在水平方向以1.1倍扩展。
像素强度从0到1,从光照值中减去0.1而对比度乘以0.9来降低。
随机像素噪声叠加产生小于5bit/像素的信号。
尽管有这些变换,78%第一幅图像的关键点与第二幅图像中所预测的位置、尺度和方向的关键点有高度地匹配。
关键点对图像变幻的整体稳定性可以从表2中判断,该表中的每一个条目是结合20个不同测试图像结果和总结大约15000个关键点匹配所产生的。
表中每行表示一个特殊的图像变换。
第一个图给出了在变换后的图像中位置处σ以内(相对那个关键点的尺度)和1.5倍的尺度有匹配关键点的关键点比率。
第二列给出了满足这些条件且方向与预测的偏差在20度以内的比例。
4.局部图像描述子
每个关键点具备了稳定的位置、尺度和方向,现在有可能对这些变化具有不变性的局部图像区域进行描述。
而且,对局部几何的小变化具有鲁棒性的这种表示是可取的,如来自仿射或3D投影。
对此建议的一个方法是通过复杂的视觉皮层中的神经元的响应特性,在该处一个特征位置在小区域上允许改变,而方向和和空间频率的特征得到保留。
Edelman,Intrator&Poggio[5]已经做了实验,模拟复杂神经元对不同的计算机图形的三维视图模型的反应,发现复杂细胞的输出比简单的基于相关的匹配提供更好的区分性。
这是可视的,例如如果仿射投影相对另一个图像将一个图像沿一个方向伸展,这改变了相对位置的梯度特征而对它们的方向和空间频率有较小的影响。
这种对局部几何失真的鲁棒性可以通过表示多图像局部图像区域的一系列方向(被称为方向平面)表示来获取。
每一个方向平面只包含与该方向对应的梯度,用线性插值表示中间方向。
每个方向被模糊和重抽样以允许梯度位置的更大变化。
这种方法可以有效地实现,通过利用对用于方向选择的每层金字塔进行梯度和方向同样的预计算。
对每个关键点,我们利用从探测到关键点的金字塔层抽样得来的像素。
落入到以关键位置为中心的半径为8像素的圆内的像素算入到方向平面。
相对关键点的方向的测量通过减去关键点的方向确定。
在我们的实验中利用了8方向平面,每个从
的网格位置中抽样,与样本间隔4倍的像素间距用于梯度检测。
模糊是通过分配样本网格中8最近邻的像素的梯度来完成的,在方向和两个空间维度使用线性插值。
这个实现比直接模糊和重抽样更加有效,但结果却几乎相同。
为了在更大尺度上抽样,同样的操作将在一组更高的金字塔的第二层重复。
但是,这里是利用
区域而非
区域。
这意味着近似相同的图像区域将在多个尺度检测,以致于任何附近的遮挡对一个尺度的影响将不会超过其他尺度。
因此,在所有尺度的SIFT关键向量中样本总数是
或160个元素,给与足够的测量高特异性。
5.索引和匹配
对于索引,我们需要对样本图像的关键点进行存储,然后从新的图像中识别匹配的关键点。
如果需要一个具体的方案,对高维向量识别最相似的关键点的识别问题是高复杂性。
然而,一种改进的k-d树算法被称为best-bin-first搜索方法(Beis&Lowe[3])可以尽可能只用有限数量的运算确定最近邻。
为了更进一步提高best-bin-first算法的效率,SIFT关键点样本的产生在大尺度的权重是小尺度的两倍。
这意味着大尺度比小尺度实际上能够可能滤过邻近点。
通过赋予最小噪声尺度更多权重同样可以提高识别性能。
在我们的实验中,相比于找到一个确切的方案,有可能最多检测界限为200个近邻点在best-bin-first搜索30000个关键点向量而几乎没有性能损失。
一个有效地方法来集群可靠模型假设,是利用霍夫变换[1]来搜索与特定模型姿态一致的关键点。
在数据库中的每个模型关键点包含与模型坐标系相关的参数的一个记录。
因此,我们可以在哈希表中创建一个条目,从匹配假设来预测模型的位置,方向和尺度。
我们给方向用一个大小为30度的柱体,2倍的尺度,和0.25倍的最大模型尺寸来定位。
这些相当宽泛的柱体尺寸允许集群甚至存在大量的几何畸变,例如由于三维视角的改变。
为了避免在散列中的边界效应问题,每个假设在每个维度上散列到2个最近邻的柱体内,对每个假设给出总计16个哈希表条目。
6.仿射参数的确定
搜索哈希表二进制文件中3个条目以识别所有群集,这些二进制文件以尺寸大小的降序排序。
每一个这样的集群之后受支配于一个验证过程,这个过程中最小二乘方法将求出与图像的模型相关的仿射投影参数。
一个模型中的点
到一个图像点
的仿射变换可以写为
其中模型的转换为
,仿射旋转,尺度和伸展用
参数表示。
图3:
在第一行显示了平面物体的模型图像。
下面的识别结果显示了模型概述和用于匹配的图像关键点
我们希望解决转换参数问题,因此以上的方程可以写成
这个方程表示了一个单个的匹配,但是可以添加任意数量的进一步匹配,每个匹配对第一个和最后一个矩阵占有两至多行。
至少需要3个匹配来得出一个模型。
图4:
第一行显示模型找到的三维物体由背景分割得到的轮廓。
底部的图像显示了对三维物体模型轮廓和用于匹配的图像特征点的识别结果。
我们可以把这个线性系统写成
对参数x的最小二乘解可以由解相应的标准方程确定,
这样最小化了从预测模型位置与相应图像位置的距离的次方和。
最小二乘法可以容易地扩展到解三维姿态和清晰灵活对象的内部参数[12]。
外点可以通过检测每个特征点和模型的相似性来移除,给出参数解。
每个匹配必须满足15度方向以内偏差,
的尺度尺度变化,和0.2倍最大模型尺寸的位置。
如果移除外点后保留小于3个点,则拒绝这样的匹配。
如果所有外点被消除,最小二乘解将由剩下的点求得。
图5:
三维物体有遮挡的识别示例
7.实验
仿射方案提供了一个好的平面物体的近似透视投影,因此二维模型为该方法提供一个好的初始测试。
图3的第一行显示了三个矩形物体平面的模型图像。
表中还显示了一个包含这些平面物体的聚集图像,同样的图像的模型识别显示在最顶层。
显示的模型关键点是用于识别和最终最小二乘解的点。
由于对鲁棒识别只需3个关键点,可以看到这个方案是高度冗余的,将解决大量阻塞。
也显示了模型图像的矩形边界,利用从最小二乘的仿射变换投影。
这与图像中二维区域的真实边界相近一致,除了由透视投影产生的小误差。
相似的实验已经在很多二维的物体图像中完成,识别结果证明对物体从任何方向远离摄像机旋转60度都具有鲁棒性。
尽管模型图像和仿射参数并不对深入三维物体的旋转作解释,它们仍然对三维物体在远离每个模型视角大约20度的旋转的鲁棒识别很有效。
图4的第一行显示了一个三个模型图像的例子。
这些模型在一个黑色背景下拍摄,通过分离背景区域提取物体轮廓。
一个识别的例子在同一图像中显示,又显示了SIFT关键点用于识别。
物体轮廓用仿射参数方式来投影,但是这次的一致性并不那么相近,因为这个方案不对旋转做深入解释。
图5显示的例子中有更多显著的部分阻塞。
这些例子中的图像尺寸为384×512像素。
在每幅图像中所有物体的识别计算时间在一个SunSparc10处理器上大约为1.5秒,需要0.9秒建立尺度空间金字塔和定义SIFT关键点,大约用0.6秒执行索引和最小二乘验证。
这不包括预处理每个模型图像的时间,这对每个图像大约需要一秒,但是对初始化条目进入模型数据库仅需要做一次。
图6:
图像关键点在不同关照下的稳定性测试。
第一个图像光照来自左上角而第二幅图来自右边的中心。
在底部图像显示的是用于第二幅图与第一幅图匹配的关键点。
图6展示了SIFT关键点的光照不变性。
这两个图像拥有同一场景的相同视角,除了第一幅图从左上角照亮而第二幅图从右中心。
整个识别系统利用第一个图像为模型运行识别第二幅图像,当匹配上第一个图像时第二个图像可正确地被识别出。
只有部分识别的SIFT关键点显示出。
有273个关键点被验证为最终匹配的一部分,这意味着每种情况不仅在同样位置探测到同样的关键点,也是在第二幅图像中与正确对应关键点最近匹配。
这些关键点的任意3个足够识别。
而在高光或阴影变化的一些区域找不到匹配关键点(例如在摄像机的高光顶部)通常这些关键点对光照变化表现良好的不变性。
8.连接生物视觉
人类视觉的性能明显远远由于当前的计算机视觉系统,因此通过模拟生物过程有可能获得很多。
幸运的是,过去一些年里在理解物体识别如何在动物和人类中完成已经有了长足的进展。
近期在神经科学的研究已经表明灵长类目标识别利用中间复杂性的几乎对尺度、尺寸和光照变化不变的特征(Tanaka[21],Perrett&Oram[16]),在一些样本中这样的中间特征在下颞皮质找到,它是对暗色五边星形反应的神经,一个圆薄突出的成分或者是一个三角形边界内的水平突出区域。
这些神经元对形状特征维持非常特定的反应,这些特征出现在视野的大部分和几组范围的尺度内(Itoet.al[7])。
很多这些特征的复杂性似乎与当前的SIFT特征相似,尽管同样有一些对更复杂形状响应的神经,比如脸。
很多神经元除了形状外对颜色和纹理特性做出反应。
这些特征响应已经表明其依赖于先前暴露于包含特征的特定物体的视觉学习(Logothetis,Paul&Poggio[10])。
这些特征似乎通过高度并行计算密集型过程在大脑中派生出来,这与文中给出的滤波方法大相径庭。
然而,结果是一样的:
一个图像被转化为大量局部特征,每个匹配一小部分潜在的对象仍对通常的视角转换具有很大的不变性。
可以知道在大脑中的目标识别依赖于一系列关注于绑定特征到对象解释,确定构成和从杂乱背景分离物体的过程上[22]。
这个过程在验证的作用大致与文中参数解决和孤立点检测作用相同,由于解释的准确性常依赖于执行一个单视点约束。
9.结论和评论
SIFT特征较于先前方法的改进在于对尺度变化,光照和局部仿射失真的较大的不变性。
一个典型图像中的大量特征允许在杂乱图像中部分遮挡的鲁棒性识别。
在最后阶段解决仿射模型参数,能够使相对只依赖于索引的方法在验证和形态确定上更加精确。
对进一步研究的重要领域是从表示物体三维伸展的多视角建立模型。
这将有更大的优势,多角度的关键点条件可以组合为一个单一模型,从而增加了在新视点中找到匹配的可能性。
这个模型基于动作的结构方案进行真实的三维呈现,或者可以代表自动聚类和插值的表面空间(Pope&Lowe[17])。
后一种方法的优势是它可以模拟非刚性形变。
通过添加新的SIFT特征类型,结合颜色、纹理和边缘分组,以及不同特征尺寸和补偿可以使识别性能可以进一步提高。
尺度不变边缘分组在背景复杂干扰其他特征的物体边界时分辨局部图像和背景特别有用。
索引和验证框架允许所有尺度和旋转不变特征类型被合并到一个单一模型表示。
最强的鲁棒性可以通过检测很多不同特征类型和依赖索引和聚类,选择那些在一个特定图像上最有用的特征来达到。