在图像中找到的通常指图像匹配的对应特征是几乎任何视频应用的基本成 分,这些应用试图从多于一个图像中提取信息。图像匹配的早期研究分成两部 分一基于特征的方法和直接方法。基于特征的方法尝试提取诸如边和角的显著 特征,然后使用少量局部信息(例如:小图像片段相关性)建立匹配[8]。相比 仅使用少量有效图像数据的基于特征的方法而言,直接方法尝试使用所有像素 值以迭代排列图像[1,9]。其他匹配和确定方法已经不变地用于特征化对象,有 时建立典型帧的方法用于此目的[14,15]。
这些方法的交集是不变的特征,该特征使用显著特征周围的大量局部图像 数据以形成用于索引和匹配的不变描述符。首先研究该领域的是Schmid和 Mohr[16],他们使用一组高斯公差以形成Harris角周围的循环不变的描述符。 Lowe扩展这方法以结合尺度恒定性[10,11]。其他研究已经开发了几何学变换 下不变的特征[3,20,5]。感兴趣点检测器从诸如Harris角或高斯差分(DOG)最 大值的标准特征检测器变化到诸如最大稳定区域[12]和稳定局部阶段结构[7]的 更详细方法。
通常,认为感兴趣点提取和描述符匹配是两个基本步骤,并且已经关于感 兴趣点可重复性[17]和描述符性能[13]的各种技术进行评价。这己迫使应用程序 对来自运动[19]和全景成像[6]的结构环境进行多视角匹配。然而,目前为此,没 有一个这样的过程提供快速提取特征并找到场景中大量部分重叠图像的对应特 征的能力。
参照下述说明、附加
权利要求和附图,本发明的特定特征、方面和优点将 变得更好理解。
图1是描述构成用于实施本发明的示例性系统的通用计算设备的图。
图2是图解根据本发明确定相同场景的多图像中对应点的整个过程的流程 图。
图3是比较调和平均值感兴趣点检测功能和Harris与Shi-Tomasi功能的等 轮廓(isocontour)图。
图4是演示具有子象素位置和没有子象素位置的感兴趣点重复性的图。
图5A-5C是图示根据本发明产生描述符矢量的过程的
流程图。
图6是山脉场景的图,其中峰值上的感兴趣点相关的描述符区域示出为白 框子,和感兴趣点的位置示出作为框子中心的白点以及包括从感兴趣点延伸的 线以指示分配给该点的取向方向。
图7是示出从图6的描述符区域形成的8×8描述的图像。
图8(a)和8(b)示出具有公共部分的山脉场景的两个图像,其中任何异 常排除处理前确定的两个图像间的相应位置示出为白点。
图9(a)和9(b)分别示出在使用异常距离约束的异常排除技术应用后的 图8(a)和8(b)的相同图像。
图10(a)和10(b)分别示出在应用几何
基础的异常排除技术后的图9(a) 和9(b)的相同图像。
图11是使用根据图5A-5C产生的描述符矢量在场景的图像间发现对应点的 过程的流程图。
优选实施例
在下述本发明的优选实施例中,参照构成此部分的附图,并且其中通过示 出本发明可以实施的特定实施例示出。可以理解,在不脱离本发明范围情况下, 可以利用其他实施例并且可以有结构的变化。
1.0计算环境
在提供本发明的优选实施例的描述前,将描述本发明可以实施的合适计算 环境的简短、通用描述。图1示出合适计算系统环境100的实例。该计算系统 环境100仅是合适计算环境的一个实例而不试图建议限制本发明功能或使用范 围。计算环境100既不解释为具有一些任何一个有关的依赖或要求也不解释为 本示例性操作环境100中示出的组件的组合。
本发明以大量其他通用或专用的计算系统环境或配置运作。公知的适合用 于本发明的计算系统、环境、和/或配置的实例包括但不限制:个人计算机、服 务器计算机、手持式或膝上型设备、多处理器系统、基于多处理器的系统、机 顶盒、可编程消费
电子装置、网络PC、小型计算机、大型计算机、任何包括上 述系统或设备的分布式计算环境等等。
本发明可以在诸如计算机执行的程序模
块的计算机可执行指令的常规环境 描述。通常,程序模块包括例程、程序、对象、组件、数据结构等等,它们完 成特定任务或执行特定抽象数据类型。本发明也可以在分布式计算环境方面实 践,其中任务由通过通信网络连接的远程处理设备实施。在分布式计算环境中, 程序模块可以位于局部和包括内
存储器设备的远程计算机存储介质。
参照图1,用于执行本发明的示例性系统包括计算机110形式的通用计算设 备。计算机110的组件包括但不限制:处理单元120、系统存储器130和连接若 干包括系统存储器的系统组件到处理器单元120的
系统总线121。系统总线121 可以是任何若干种类的总线结构,包括:存储器总线或存储器
控制器、外围总 线和使用各种总线结构的任何一种的局部总线。以实例方式而不是限制,这样 的体系结构包括工业标准体系结构(ISA)总线,微通道体系结构(MCA)总线、 增强的ISA(EISA)总线、视频电子标准协会(VESA)局部总线和外围组件互 连(PCI)总线也公知为多层构架总线。
计算机110一般地包括各种计算机可读介质。计算机可读介质是计算机110 可以
访问的任何可用介质并包括易失性和非易失性介质,可移动和不可移动介 质。通过实例而不是限制,计算机可读介质可以包括计算机存储介质和通信介 质。计算机存储介质包括在任何方法或技术中实施用于存储诸如计算机可读指 令、数据结构、程序模块或其他数据的信息的易失性和非易失性、可移动性和 不可移动性介质。计算机存储介质包括但不限制于RAM、ROM、EEPROM、 快速闪存或其他存储技术、CD-ROM、数字多功能光盘(DVD)或其他光盘存 储、磁卡、磁带、磁盘存储器或其他磁存储设备,或任何其他可用于存储想要 的信息并可以被计算机110访问的介质。通信介质典型地包括计算机可读指令、 数据结构、程序模块或者调制数据
信号中的诸如载波或其他传输机制的其他数 据并包括任何信息传递介质。术语″已调数据信号″指的是具有一个或多个其特征 设置或以这种方式变化以便
编码信号中信息的信号。通过实例而不是限制,通 信介质包括诸如有线网络或直接有线连接的有线介质,和诸如声学、RF、红外 和其他无线介质的无线介质。上述任何的组合也应当包括在计算机可读介质的 范围内。
系统存储器130包括诸如
只读存储器(ROM)131和
随机存取存储器(RAM) 132的易失性和/或非易失性存储形式的计算机存储介质。包含有助于在计算机 110中的元件间传输信息的基本例程的基本输入/输出系统133(BIOS),例如 在开启期间,通常存储在ROM 131。RAM 132通常包含数据和/或程序模块, 它们立即易于访问处理器单元120和/或很快由处理器单元操作。通过实例而不 是限制,图1示出
操作系统134、应用程序135、其他程序模块136和程序数据 137。
计算机110也可包括其他可移动/不可移动、易失性/非易失性计算机存储介 质。仅实例,图1示出
硬盘驱动141,它读取来自或写入到不可移动性、非易失 性磁介质;磁盘驱动151,它读取来自或写入到可移动、非易失性磁盘152;和 光盘驱动155,它读取来自或写入到诸如CD-ROM或其他光介质可移动、非易 失性光盘156。其他可用于示例性操作环境的可移动/不可移动的,易失性/非易 失性计算机存储介质包括但不限制:磁带框、快闪存卡、数字多功能盘,数字录 像带、固态RAM,固态ROM等等。硬盘驱动141通常通过诸如
接口140的不 可移动存储器接口连接到系统总线121,而磁盘
驱动器151和光盘驱动器155 由诸如接口150的可移动存储器接口连接到系统总线121。
上面描述的以及在图1示出的驱动器和它们相关的计算机存储介质提供计 算机110的计算机可读指令、数据结构、程序模块和其他数据的存储。在图1 中,例如,硬盘驱动141作为存储操作系统144、应用程序145、其他程序模块 146和程序数据147示出。注意,这些组件可以同于或异于操作系统134、应用 程序135、其他程序模块136和程序数据137。操作系统144、应用程序145、 其他程序模块146和程序数据147在这给定不同编号以示出在最小值上,它们 是不同副本。用户可以通过诸如
键盘162和指示设备161输入命令和信息到计 算机110,通常指的是
鼠标、
跟踪球或
接触垫。其他输入装置(没有示出)可包 括话筒、操纵杆、游戏杆、卫星天线、扫描器等等。这些和其他输入设备通常 通过连接到系统总线121的用户输入接口160连接到处理单元120,但也可通过 其他接口和总线结构连接,例如:并行端口、游戏口或通用串口(USB)。监 视器191或其他类型显示装置也通过诸如视频接口190的接口连接到系统总线 121。除监视器以外,计算机可包括诸如扬声器197和
打印机196的其他外围输 出设备,它们可通过输出外围接口195连接。关于本发明特别有效的,能够捕 获一系列图像193的相机192(例如数字/电子静态或摄像机,或图片/相片扫描 仪)也可包括作为个人计算机110的输入设备。此外,尽管仅描述了一台相机, 多个相机可作为个人计算机110的输入设备。从一台相机或多台相机中的图像 193通过适当的相机接口194输入到计算机110。这接口194连接到系统总线 121,从而允许图像路由到并存储在RAM132或与计算机110相关的其他数据 存储设备的其中一个中。然而,注意的是,图像数据不需要使用相机192可从 上述的计算机可读介质的任何一种输入到计算机110中。
计算机110使用逻辑连接到一个或多个诸如远程计算机180的远程计算机 在网络环境中运行。远程计算机180可以是个人计算机、
服务器、路由器、网 络PC、对等设备或其他通用网络
节点,并且通常包括上述与计算机110相关的 许多或所有的元件,虽然在图1中仅表示出存储器设备181。图1描述的逻辑连 接包括局域网(LAN)171和广域网(WAN)173,但也可包括其他网络。这样 的网络环境是办公室公共地方、企业
计算机网络、内部网和因特网。
当在LAN网络环境中使用时,计算机110通过网络接口或适配器170连接 到LAN 171。当用于WAN网络环境时,计算机110通常包括
调制解调器172 或其他用于在WAN 173上建立通信的装置,例如:因特网。内置的或外置的调 制解调器172可以通过用户输入接口160或其他适当机制连接到系统总线121。 在网络环境中,描述的与计算机110有关的或其中部分的程序模块可以存储在 远程存储设备中。通过实例而不是限制,图1示出作为驻留在存储设备181上 的远程应用程序185。可以理解,示出的网络连接是示例性的并可以使用其他在 计算机间建立通信连接的装置。
2.0多图像特征匹配系统和过程
现在讨论示例性操作环境,说明书部分的余下部分将用于使用本发明的程 序模块的描述。通常,根据本发明的系统和过程包括在场景的多图像中确定对 应点。通常,这是经由图2的高级流程图中示出的下述过程操作完成。首先, 在变化分辨率的每个图像中,确定感兴趣点(过程操作200)。感兴趣点在图像 中的位置是由至少一个属于该点周围预定大小的象素邻域的象素的属性值定义 的点。此外,每个感兴趣点是可以根据该点周围的象素邻域的至少一个属性值 给象素分配唯一取向的点(它可以是使用相同属性和特征以定义另一属性和特 征的点位置)。第二邻域可以是与用于定义点位置的邻域相同预定大小或不同 大小邻域。
一旦在过程操作202中已经确定感兴趣点,对于每个感兴趣点,建立描述 符。该描述符以实际不改变图像位置、取向和尺度,也不改变用于定义该点周 围区域的象素强度的方式描述每个点。接下来,在图像中确定实际匹配描述符 集合(过程操作204)。最后,在过程操作206,指定在不同图像中出现的每个 匹配描述符集合有关的感兴趣点作为对应点(即描述场景相同部分的点)。
首先在下面部分将描述特征描述符表示的不变特征的前述新类型,该特征描 述符通常是强度值的偏差/增益规格化的片段,接着描述特征匹配方案。
2.1多尺度取向特征
多尺度取向特征特点为四个几何参数和两个光度参数。几何参数是t1,t2,θ, ι,即图像中区域或片段中心的x,y位置、取向和尺度。光度参数是α,β,即 片段增益和偏差。假定这种表示,使用用于片段匹配的简单6参数模型,以及 分析用来正确和错误匹配的噪声统计。这导致根据每个特征异常距离的简单匹 配验证过程。更具体地,相应图像片段间的变换是:
I′(x′)=αI(x)+β+e (1)
其中x′=Ax+t和
误差e表示图像噪声和模式错误。
特征中心的x,y位置认为是与各点一致,其中该变换是最佳定义-即其中I (x)自相关是峰值。这些点的备选将称为感兴趣点。为了比较特征,可以在原 则上计算一对图像位置间的变换参数的最大似然估计。假定高斯噪声,这可通 过解决非线性最小均方问题来迭代完成。然而,为了效率,每个特征可由前述 模型下的不变式描述,以及可以使用对于特征对间模型参数的闭式近似。误差e 的统计可以用来验证匹配是否正确与否。
2.1.1感兴趣点
尽管在图像中有许多可以描述具有位置和取向的点[17],但选择用于本发明 系统和过程的测试实施例的感兴趣点是与称为Harris的角相关。发现如下与这 些Harris角一致的感兴趣点。对于每个输入图像I(x,y),通过平滑和子抽样操 作形成最低层P0(x,y)=I(x,y)和相关较高层的图像金字塔,即:
Pl+1(x,y)=P′l(sx,sy) (2)
其中ι表示金字塔层和gσ(x,y)表示标准偏差σ的高斯核心。s=2的子取样 率和σp=1.0的金字塔平滑,在该金字塔形成过程的测试实施例中成功使用。然 后,通常,大约1.1到3.0范围值可用于s,并且大约0.55到1.5范围值可用于σp。 从金字塔每层中
抽取感兴趣点。层ι和位置(x,y)的Harris矩阵是梯度平滑异 常乘积
其中σ表示在尺度σ的空间公差,即
σf(x,y)f(x,y)*gσ(x,y) (4)
在测试实施例中,综合尺度设置为σi=1.5而公差尺度设置为σd=1.0。然后使 用角检测函数
该函数是H的特征值(λ1,λ2)的调和平均值。在测试实施例中,认为感 兴趣点是定位于其中角强度fHM(x,y)是邻域内周围局部最大值并超过阈值10.0。 然而,注意的是,大约0.5到2.5范围的常规值可以用于σi,大于0,5到2.5 范围的值可用于σd,并且阈值可能是任何可降到零的值。上述邻域周围的大小 将简要描述。
感兴趣点检测函数的前述选择理由可根据H和局部自相关函数间的关系来 理解。对于图像I(x),第一序泰勒展开对于局部自相关给于表述:
感兴趣点位于自相关函数的峰值。这意味着e(u)对于所有单元矢量u是 较大的,它是等同于要求H的两个特征值是较大的。
注意的是,除了调和平均值函数外,角检测函数也可用于找到感兴趣点位 置。例如,称为Harris(即fH=λ1λ2-0.04(λ1+λ2)2=detH-0.04(trH)2)和 Shi-Tomasi(即fST=min(λ1,λ2))函数可用于替代。图3比较调和平均值感兴 趣点检测函数和这些其他函数的等轮廓线(isocontours)。注意所有检测器需要 更大特征值。初步实验建议这些检测器的每个大概给定相同性能,因此可交替 使用。
2.1.1.1自适应非最大压缩
由于计算上的考虑,期望对于每个图像产生固定数目的感兴趣点。为了选 择很好空间分布在图像中的感兴趣点,可以使用自适应非最大压缩策略。更具 体地说,感兴趣点基于角强度fHM压缩和仅象素半径r邻域内最大值的这些象素 剩余。为了从每个图像提取感兴趣点的大约常定数nip,它可能搜索非最大压缩 半径r。在测试实施例中,使用r=rinit=4.0的初始值,尽管这通常从1扩展到15。 然后,在连续整数值中搜索r的最大值以便只从每个图像中提取nip感兴趣点。 然而,在测试实施例中,nip=500,这通常根据图像大小和特征从最低的大约10 变化到多达几千。发现:以上述方法空间分布的感兴趣点,相比根据最大角强 度选择的感兴趣点,可导致图像匹配的较小降低。
2.1.1.2子象素
精度通过将二维二次方程式应用到局部邻域内(按检测尺度)角强度函数定位 感兴趣点到子象素精度并找到它的最大值可以获得更好结果。更具体地,
其中x表示位置(x,y),和f(x)=fHM(x)是角强度计量。在测试实施例中, 使用3×3邻域。使用象素差值从3×3邻域内计算公差。即:
子象素位置的x和y分量这样给定:
重复性可定义为其变换的位置修正到少许公差的感兴趣点的片段。图4示 出使用前述过程的具有和不具有子象素定位的感兴趣点的重复性。注意,子象 素定位给定重复性大约5%改进。
2.1.2取向
每个感兴趣点具有取向θ,其中取向矢量
来自平滑的 局部梯度
ul(x,y)=σ0Pl(x,y) (10)。
测试实施例中用于取向的综合尺度是σ0=4.5。期望更大公差尺度以便运动 域uι(x,y)平滑地从图像中变化,使得取向估计稳定感兴趣点位置的错误。然 而,通常,取向的综合尺度在大约2.0到7.0间变动。
注意,尽管在本系统和过程的测试实施例中使用模糊局部梯度方法以建立 每个感兴趣点的取向,也可使用其他方法。例如,取向测量方法的另外实例包 括使用梯度直方图或H矩阵的
特征向量的最大值。
2.1.3描述符矢量
对于每个取向的感兴趣点(x,y,ι,θ),描述符区域是检测尺度象素的p×p 大小的片段。该片段在(x,y)中心并定位于角度θ。从p×p描述符区域,形 成d×d大小的描述符矢量。在测试实施例,p=40和d=8,然而,通常p可以 在以d尺度值在图像大小的大约0.1%和10%间变化。图6示出山脉场景图像, 其中峰值上感兴趣点有关的描述符区域示出为白框。注意,感兴趣点的位置示 出为白点并包括从感兴趣点扩展的线以分配给该点的取向趋势。图7示出从图6 示出的描述符区域中形成的8×8描述符。注意,感兴趣点和定位线在图中也 示出为白色。
为了避免取样时偏差/模糊,在导致每个象素概略取样的金字塔级取样描述 箝。实现这的一种方式是从检测尺度层上的ιs层取样描述符。其中
描述符矢量使用内插
采样。
例如,在测试实施例中,其中p=40,d=8,和s=2,描述符将在检测尺度 上的ιs=2层取样。然而,假定在层ι检测感兴趣点。这建议从
取样描述符。然而,已经发现通过使用替换过程获得更好结 果,其中替换的描述从P′l+1(x,y)采样,其中,
即 模糊但不
下采样。此外,通过从
取样获得尽管更小 增益。
2.1.3.1规格化
接下来规格化描述符矢量以便平均值是0和标准偏差是1,即
di=(d′i-μ)/σ (12)
其中d′i,iε{1..d2}描述符矢量的元素,具有
和
这使得特征不变以仿射强度变化(偏差和增益)。
2.1.3.2 Haar
小波变换最后,Haar小波变换在d×d描述符矢量di上完成以形成包含子波系数ci的 d2空间描述符矢量。由于Haar子波的
正交属性,保留各个距离,即:
因此,差平方和检测中的最近邻未变。然而,将简要描述在索引策略中使 用前个三个非零子波系数c1,c2,c3。
2.1.4描述符产生过程概要
用于根据使用Harris角特征以定义感兴趣点和模糊局部梯度方法以建立每 个特征的取向的本系统和过程的实施例对于每个感兴趣点产生描述符的技术的 先前描述在图5A-C的流程过程中概要。该过程通过确定图像中感兴趣点开始。 更具体地,对于每个图像,形成图像分辨率金字塔(过程操作500)。然后,选 择先前未选的金字塔级(过程操作502),确定选择级中每个Harris角位置(过 程操作504)。接下来选择其中一个先前未选的Harris角(过程操作506),然 后确定是否选择角的角强度是表示角位置的感兴趣点中心的预定最小邻域半径 内的邻近象素的局部最大值(过程操作508)。如果选择角的角强度是局部最大 值,则它也确定是否角强度超过预定最小强度阈值(过程操作510)。如果是这 样,选择的角指定作为备选角(过程操作512)并测试其他角(如果有)。然而, 如果确定角强度不是局部最大值或确定角强度不超过最小阈值,则从考虑中删 除该选择的角并测试其他角(如果有)。这样,任何一种方式,接下来的操作 负责确定是否有一些先前未选择的角仍然可以考虑(过程操作514)。如果仍有 剩余的角要考虑,则前述过程从过程操作506开始重复。否则,过程从过程操 作516继续,其中最近使用的邻域半径增加预定整数值(例如:1)。然后,前 述呈现的过程对于每个备选角重复。具体地,选择先前未选择的备选角(过程 操作518),然后确定它的角强度是否是当前邻域半径值定义的象素附近的局部 最大值(过程操作520)。如果选择的备选角的角强度是局部最大值,则确定它 是否也超过最小强度阈值(过程操作522)。如果是这样,选择的角保持它的备 选角分配(过程操作524),可以考虑其他备选角(如果有的话)。然而,如果 确定角强度不是局部最大值或确定它不超过最小阈值,则考虑中删除选择的备 选角并测试其他备选角(如果有的话)。这样,在任一种情况中,下一操作确 定是否有一些先前未选的备选角仍然可以考虑(过程操作526)。如果还有角可 以考虑,则开始于过程操作518的过程部分重复。如果没有剩余的备选角测试, 接下来确定是否仍然指定作为备选角的角数目超过预定最大允许数(过程操作 528)。如果备选角的最大允许数超过,则过程操作516到528适当重复直到备 选角数目不再超过最大允许数。
一旦剩余可接受备选角数目,继续与指定定义每个剩余备选角的位置的点 作为要考虑图像的感兴趣点(过程操作530)。接下来,选择先前未选择感兴趣 点(过程操作532),并提取它的位置。更具体地,在过程操作534,显示感兴 趣点位置指定作为预定大小的局部附近合适的二维二次方程式表面的最大强度 的位置,该位置是在选择点的中心。
一旦建立选择的感兴趣点的提取位置,给该点分配取向(过程操作536)。 如前所示,这使用模糊梯度方法在本发明的测试实施例中完成。选择感兴趣点 的位置和取向接下来用于产生该点的描述符矢量。这通过首先建立预定p×p大 小的描述符区域(片段)来完成,它是位于感兴趣点位置的中心并根据感兴趣 点的取向进行取向(过程操作538)。如前所述,使用双线性内插取样强度值从 描述符区域形成预定大小d×d的更小描述符矢量(过程操作540)。接下来规 格化这描述符矢量(过程操作542)并受Haar小波变换(过程操作544)。变 换的描述符矢量表示选择的感兴趣点描述符。然后该过程通过首先确定是否有 任何未选的感兴趣点存在而在其他感兴趣点上实施(过程操作546)。如果这样, 过程操作532-546适当重复直到所有感兴趣点具有与它们相关的变换描述符矢 量。
最后,通过首先确定是否存在任何先前未选择的金字塔级,对于图像金字 塔的所有其他分辨率级完成描述符产生过程(过程操作548)。如果有,则过程 操作502-548适当重复。一旦完成,在图像金字塔每个级存在发现的感兴趣点 相关的变换的描述符矢量。注意,取代如上面描述符的确定的计算取向和产生 每个感兴趣点的变换描述符矢量,它也可能确定所有感兴趣点,然后确定它们 的取向并产生以作为可选方法的批量方式产生描述符矢量。
2.2特征匹配
假定多尺度定位片段从场景的图像集合中的所有n图像中提取,特征匹配 的目标是在所有图像中几何地找到合适的匹配。为了完成这个任务,首先开发 用于特征匹配的似然模型。这导致对于特征匹配验证的简单约束,它称为“异 常距离约束”。此外,几何约束可应用到抵制异常并找到图像匹配,或者除了 应用异常距离约束或它的空间内。
2.2.1特征匹配的似然模型
理想地,可以对于正确和错误匹配从测试的数据中计算误差p(e图像)分布, 并使用它似然确定是否给定的特征匹配 是正确或错误。然而,已经发现基于 图像的误差
e图像=|I′(x′)-(αI(x)+β)| (14)
是用于确定是否特征匹配是正确/错误的仅有尺度。实际上,发现用于 正确和错误匹配的|e图像|值通常不能区别,并且阈值|e图像|选择正确/错误匹配是 不可能的。
对于片段的最近邻有关的误差随着变化差异也成为关注。已经发现尽管正 确和错误匹配的误差间总存在明显的差距,但误差尺度变化很大。具体地说, 误差对于高对比的片段更大,而低对比的片段更小。当包括低对比的片段时, 这使得在正确和错误匹配间很难区分。
一种可能的解决是规格化片段的
对比度,它等同于计算特征空间的误差, 即:
e特征对于正确和错误匹配的区分是很好分开的,但没有明显的阈值。因此, 认为匹配误差的大小不仅是对比度问题。相信高
频率容量也重要,例如高梯度 特征对于任何重合失调具有大误差。
然而,已经发现,在特征基础上的特征,存在对应正确和错误匹配的特征 距离的双峰分布。实际上,认为查询的错误匹配的距离几乎是常量。相信该现 象是与称为壳(shell)属性的高尺度空间的属性有关。
在高尺度中,超球面体积的大部分是集中在
外壳。这意味着,对于诸如高 斯分布的普通分布,概率集中的大多数位于外壳。认为统一分布点集合在d维 超立方体中。离中心距离r中的点数目以rd增长,直到到达空间的边界,在此 它迅速下落。由于d变得更大,这意味着几乎所有点具有从给定查询点的相同 距离,即,它们位于查询的常量距离的小壳中。然而,注意,距离值依靠空间 查询点的位置。例如,靠边的点具有从中心点的更大距离。
Lowe[11]已经建议,尽管根据第一最近邻(1-NN)距离的阈值是不可靠, 第一和第二最近邻间的距离比e1-NN/e2-NN是用于确定匹配是否正确的很好尺度。 在多图像匹配情况中,可能有多于一个的正确匹配,所以检测替代比ei/e异常,其 中ei是考虑的匹配距离,e异常是“异常距离”。假定这是在每个特征iε{1..k}的大 多数k匹配和异常距离计算作为最近邻k+1到k+n0的平均距离。使用Bayes判 决规则,可以分类匹配如下:
P正确(e/e异常)>P错误(e/e异常) (16)
这等于将特征匹配分为正确,如果:
e<0.65×e异常 (17)
这指的是“异常距离约束”。仍然保留对于怎样最佳计算的问题。
注意,由于异常距离相关的距离σ′×e特征=e图像在特征空间与对于基于图像的 距离相同。这具有优势,可以简单比较特征空间图像距离并不用给每一对α, β计算就可以应用异常距离。
2.2.2使用异常排除的特征匹配
特征匹配过程开始于对于先前计算的描述符矢量中每个快速估计最近邻。 这些最近邻失量表示图像间的备选匹配点。接下来,在本特征匹配技术的测试 实施例中,两阶段方法用于删除错误匹配。特别是使用非几何异常排除技术, 它采用上述异常距离约束来删除错误匹配点。最后,标准的几何异常排除技术 用于进一步删除任何剩余的错误匹配点。然而,如前所示,一个或其他排除技 术可以根据需要的精度和使用本特征匹配技术的系统的过程限制而旁路。
2.2.2.1使用子波索引的快速近似最近邻
从所有图像中提取特征和每个匹配特征空间中k近似最近邻。快速近似最 近邻计算通过使用散列表索引特征完成。散列表是三维的并且维数对应前个三 个非零子波系数c1,c2,c3,它是片段上 估计。在测试实施例中,k=4, 以及散列表每一维具有b=10结点(bin)(它涵盖尺寸平均值的±nσ=3标准方 差)。该结点(bin)一半重叠,以便确保 结点(bin)宽度
中的数据匹配。如果实际最近邻位于其中一个三维外 可能的话(但低概率), 这是近似最近邻。每个描述符矢量匹配相同结点(bin)中的所有特征,并选择 k近似最近邻。然后使用异常距离约束以验证正确匹配和删除异常,这在下面描 述。注意,特征间距离用于确定最近邻。在测试实施例中,这些距离计算作为 64维特征矢量的方形差异的总数。
2.2.2.2使用异常距离约束的异常排除。
由于几乎大多数错误匹配都具有从查询点大约相同距离(即异常距离), 而正确匹配仅由于图像和检测噪声而不同,因此上述壳(shell)属性可以用作 异常排除策略的基础。异常距离可以估计的一种方式是使它等于每个图像的 2-NN距离的平均值或最小值。在计算的异常距离下,异常距离约束可用于减少 错误匹配数量。更具体地,如果发现的在考虑中矢量的最近邻的其中一个矢量 与在异常距离65%内的矢量有距离,则认为该矢量与匹配点相关。如果矢量距 离不在异常距离的65%内时,则与该点相关的点不认为是匹配的点。
2.2.2.3使用几何约束的异常排除
一旦使用异常距离约束提取备选的匹配,可通过使用几何匹配约束进一步 提取匹配。本质上,这包括使用标准方法以确定剩余的匹配点实际上对应场景 的图像。如果该图像从点获取并且场景是静态,全景运动模型(homography) 是合适的。如果图像用移动相机获取和静态场景,全三维运动模型(基本矩阵) 是合适的。对于多个或移动对象设计更精细的运动模型也是可能的。对于自动 全景拼接,匹配的全景运动模型和[6]中的概率性模型是合适的选择。发现不实 际匹配描述该场景相同部分的另一图像的点的任何点将从匹配点集合中删除。
2.2.3特征匹配处理概要
在图11的流程图中归纳了根据本系统和方法的实施例确定一个场景的一系 列图像中各对应点的特征匹配技术的前述描述,其中该系统和方法使用三维散 列表并且至少部分依据异常距离约束的异常排除。该方法开始于通过匹配每个 变换描述符矢量到特征空间的其最近邻的预定数。更具体地,三维散列表从每 个变换描述符矢量的前个三个非零子波系数产生(过程操作1100)。如前所示, 在本特征匹配技术的测试实施例中,散列表的每维有10个结点(bin)并且每个 结点(bin)具有一半重叠区域。然后计算散列表的每个结点(bin)的每个三系 数间的距离(过程操作1102)。这些距离接下来用来对于每个描述符矢量确定 相同结点(bin)中的其最近邻的预定数,它是不来自于考虑矢量的相同图像(过 程操作1104a)。注意,在特征匹配的可选实施例中,下面操作1104b替代过程 操作1104a。即,对于每个描述符矢量,来自其他每个图像的相同结点(bin) 中的其最近邻确定到预定最大数。通过使用点线框在图11示出操作1104a和 1104b的可选特征。
一旦已经确定每个描述符矢量的最近邻,选择先前未选择的矢量(过程操 作1106)。从考虑中删除选择的其相关感兴趣点实际上不对应与选择的矢量相 关的感兴趣点的矢量的最近邻描述符矢量。更具体地,在本特征匹配技术的测 试实施例中,如前所述,它在两阶段完成。第一阶段(过程操作1108),指的 是使用异常距离约束的异常排除,是比删除许多可能不对应点更快的过程。第 二阶段(过程操作1110),指的是使用几何约束的异常排除,使用如前所述的 更精确的几何基础的比较,虽然以更高的计算成本。然而,由于许多错误匹配 已经在第一阶段删除,第二阶段过程需要减少。实质上,第二阶段几何基础上 的异常排除过程包括找到最好匹配两图像间所有点的变换和排除当变换时特定 尺度内不对应的点。图8(a)和8(b)示例说明异常排除过程的值。这些图示 出两图像间的对应位置部分相同的山脉图像,任何异常排除过程前确定示出为 白点(587匹配)。图9(a)和9(b)分别示出在使用异常距离约束的异常排 除技术应用后的图8(a)和8(b)的相同图像。这里,242异常已经删除,留 下345匹配。图10(a)和10(b)分别示出在应用基于几何的异常排除技术后 的图9(a)和9(b)的相同图像。确定另一个34异常并删除,在图像间保留 311对应点的最后的总数。
注意,如果第一阶段的异常排除过程充分对于本特征匹配技术的特定应用 产生正确结果,则如果希望,第二阶段可以跳过。相反,如果不计较过程成本, 则第二阶段几何基础的异常排除过程可用在其上使用而第一阶段可以跳过。
关于第一异常排除技术,在测试实施例中,这包括首先对于选择描述符矢 量计算异常距离和其最近邻,然后确定是否选择矢量和它最近邻的任何一个角 的距离等于或大于异常距离的65%。只要发现最近邻矢量具有对于选择的矢量 等于或大于异常距离的65%的距离,它从考虑中删除作为表示对应与选择矢量 相关的感兴趣点的点。
一旦异常排除过程完成,与描述确定作为选择矢量的最近邻的矢量有关的 每个和还没有从考虑中删除的点,都指定作为对应与选择的矢量相关的感兴趣 点的点(过程操作1112)。对于每个其他描述符矢量,前述过程接下来实施以通 过首先确定任何未选择的矢量剩余来确定其他图像中的它们的对应点(过程操 作1114)。如果这样,过程1106-1114适当重复直到已经处理所有矢量。当已 经选择所有矢量并处理,过程结束。