ASIFT

来源:互联网 发布:大数据技术之企业发展 编辑:程序博客网 时间:2024/05/19 06:39

ASIFT算法的基本原理

2.1 算法概述

由于相机正面拍摄物体时,相机的光轴方向可能发生变化,带来扭曲,所以第一步是对每张图片进行变换,模拟所有可能的仿射扭曲。这些扭曲由两个参量决定:水平角度φ 和垂直角度θ 。将图像旋转φ 度由倾斜度参数 t 完成:t  = 1 cosθ。设原始图像为 u( x , y ),原始图像在 X 轴上倾斜度为 t 的变换由 u ( x , y ) → u (t x ,y)得到。对数字图像来说,倾斜图像由具有方向性的 t 倍二次采样(t-subsampling)得到。它要求之前在 X 轴上有一次抗走样处理(antialiasing filter),最大限度的减少图像失真。该滤波由标准差为c的高斯卷积完成。在文献[1]中 Lowe 建议该值取c = 0.8。文献[15]中证明了该取值图像失真度较小。

对图像进行旋转变换和倾斜变换可以模拟有限的一些不同水平角度,垂直角

度拍摄图像。对这些参数进行采样能保证模拟图像在不同的φ 和θ 引起的视角变换下保持近似。所有模拟倾斜后的图像将由 SIFT 算法进行匹配比较。

2.2 水平和垂直采样

   ASIFT 算法中水平角度和垂直角度的采样方式规定如下:

   垂直角度θ 的抽样:垂直倾斜程度依次取几何级数:1,a, ,,…..,,(a>1)

。在文献[12]中,Morel 指出 a = 2时,匹配的精确度和稀疏度达到较好的折衷。n 值可以是 5 或者更大。在随之发生的斜率转换中,倾斜度 t 可以达到 32 或者更大。

水平角度φ所对应的每个倾斜度是一组等差数列:0, b / t ,...k b / t ,当 b  72度时取得较好的折衷,k 为当 kb / t <180度时的最大整数。

   图 3-5 显示了 ASIFT 算法概貌:正方形 A,B 分别代表被比较的图像 u 和 v。ASIFT 算法模拟了所有相机视轴坐标方向变化引起的扭曲。图中的平行四边形代表模拟扭曲后的图像,该图像将运用 SIFT 进行后续的匹配计算。

2.3  采样范围

     倾斜度参数 t 的采样范围非常关键。只有当目标是一个完美的二维平面,或者是个反射光强弱完全相同的物体时,才有可能在任何倾斜视角下做到目标识别。现实中找不到这样的物体。因此,需要通过实验比较室内外拍摄的图片对,并找出可行的 t 的上界。每对图片由正面视角拍摄的图片和倾斜角度拍摄的图片组成。文 献[12]给 出 倾 斜 度 t 的 上 限 是≈4, 对 应 的 视 角 最 大 值 为=arccos≈80度。=4的最大采样范围意味着 ASIFT 算法可以在= 32的范围内保持倾斜尺度不变性。

2.4  采样步骤:

     为使 ASIFT 算法对任何仿射变换具有不变性,倾斜度t和角度φ 必须具有较高精度。采样间隔由自然图像的多次实验得到。

     在较大的θ 下,较小的Δθ改变便能使图像产生较大的扭曲。对t 进行几何级数的采样可满足这一需求。一般来说,采样比率    Δt=应与角度φ无关。文献[12]中提出,倾斜度最佳采样间隔应是 Δt =。

     同样的,对水平采样来说,当 θ = arccos1/t增加时,水平采样的精度必须增加。在较大的垂直角度θ下,图像水平角度 Δφ 较小的变化即能使图像产生较大扭曲。文献[12]中提出,水平最佳采样间隔应是 Δφ =。

     经过采样间隔 Δt=和 Δφ =生成的模拟倾斜图像将放入SIFT算法进行匹配。图 3-6 说明了不规则采样参数 θ = arccos1/t和φ 在半球体上的显示情况。采样点集中在赤道区域。

     图 3-6 按照参数 θ = arccos1/t和φ 进行抽样。黑色为采样点。左图为半球体沿Y 轴半球体透视图。右图为沿 Z 轴的半球体透视图。θ 值如图所示。

2.5 针对不同图像分辨率的计算

    在实际应用中,可能会存在不同分辨率下的图像匹配问题。ASIFT 遇到不同分辨率的图像时可归结到低分辨率下去实现。首先,程序选择低分辨率搜索下会产生匹配对的仿射变换,然后在原始查询图像以及搜索图库中模拟所选的仿射变换,最后运用 SIFT 算法比较模拟仿射变换后的图片。两种不同分辨率下的解决办法如下所述:

   (1)、采用系数 K × K二次采样查询图片 u 和待搜索图片 v。u =

V=。且是反走样高斯离散滤波器,为 K×K二次采样。

   (2)、低分辨率下的 ASIFT 算法:对查询图片u 和搜索图片v 应用 3.3.1节所述的 ASIFT 算法;

   (3)、确定u 和v 中可能产生最多匹配对的 M 种仿射变换;

   (4)、高分辨率下的 ASIFT:在原始图像 u 和 v 上使用 ASIFT 算法,但是模拟倾斜时只使用这 M 种仿射变换。

    图 3-7 显示了两种不同分辨率下的 ASIFT 算法。左图为低分辨率的 ASIFT 算法,采用了3 × 3次二次采样。找到 19 个匹配点。右图为高分辨率 ASIFT 算法,找到 51 个点。

2.6 ASIFT 算法复杂度

    ASIFT 算法的复杂度计算基于最大极端的情况:倾斜度及角度范围

[]=[1,4]且[ ]=[0度,180度],采样间隔为 Δt =, Δφ = 。由原图同一方向上的 t 次二次采样模拟倾斜率为 t 的图像,再将查询图片和搜索图片进行低分辨率下的 ASIFT 算法,做 K × K= 3 × 3次双线性插值。确定 M 值后,在M 个最佳仿射变换下模拟高分辨率的 ASIFT 算法,寻找有无足够多的匹配点。在实际应用中,当查询图片在海量数据库中进行匹配搜索时,大多数低分辨率步骤下的 ASIFT 匹配会不成立。高分辨率 ASIFT 只计算低分辨率下匹配的图片。

    评估 ASIFT 复杂度归结起来是计算低分辨率下被模拟的图像区域。图像局部特征的计算量与输入图像面积成比例。ASIFT 模拟的全部图像区域与模拟的倾斜度 t 成正比。最复杂情况下模拟倾斜次数为==6。当二次采样因子 K × K= 3 × 3时,ASIFT 算法进行计算的图像区域为原始图像的 1.5 倍。如下式所示。

    在此情况下的ASIFT 算法的倾斜度不变范围为 32。更大倾斜尺度不变范围可以通过更大的实现。和倾斜变换不变性(transition tilt invariance)的指数增长相比,复杂度则为线性增长。

   低分辨率 ASIFT 算法模拟了原始图像 1.5 倍的区域,并因此在查询图像及搜索图像上产生了 1.5 倍的更多特征点。因此低分辨率下的 ASIFT 算法特征匹配的复杂度是 SIFT 算法的= 2.25倍。

    SIFT 的优化方式可以应用于 ASIFT 算法。目前有许多研究机构在致力于 SIFT算法速度的提高[15-17]。SIFT 算法曾在 FPGA[18]和 GPU[19]上被实现,但 ASIFT 算法目前尚无机构放入 DSP 中实现。

 

3.实验

为验证本文所述asift算法的图像匹配方法的可行性与可靠性,本文最后将对自行手机拍摄的图像进行ASIFT算法的图像匹配实验测试。本文图像匹配实验的软件实现条件是vc2010和opencv2.2。实验图像匹配的步骤如下:

(1) 查找图像A和B的特征点;

(2) 特征点匹配。

(3) 特征点匹配图解:

实验测试图像和实验匹配结果如下图所示:

 

      

匹配结果:

图像匹配坐标点共有442个,此处只举例列出个别匹配点:
164.307  260.589  118.654  262.953
179.136  80.9082  133.056  81.9846
118.836  129.792  91.2172  138.501
117.983  130.06  89.6702  138.892
187.622  107.185  139.424  107.32
145.348  214.321  107.376  217.706
43.5071  100.739  44.2185  120.834
131.153  138.872  98.3331  145.883
146.643  257.581  107.014  259.551
190.384  96.7718  141.975  96.1417
106.882  73.141  82.9933  87.0162
106.055  175.642  82.004  182.547
169.152  96.8202  126.89  99.6282
207.588  95.4045  154.304  91.8537
164.74  94.1928  121.845  97.8747
129.501  138.537  97.7932  145.725
155.304  80.6872  116.519  85.9208
118.118  131.11  90.0714  139.839
164.477  253.942  119.167  256.449
135.59  254.042  99.8283  255.912
166.707  111.546  124.111  114.795
42.6098  98.7902  43.7896  119.218
146.048  107.495  110.119  113.659
127.82  222.562  95.5762  225.859
126.947  140.983  97.1969  148.239
142.367  110.089  107.323  116.763
实验算法程序结果如下:
 

在计算两个图像关键点…

14189 ASIFT 关键点被找到.

6900 ASIFT关键点被找到.

关键点计算完成了3秒.

关键点匹配中...

两幅图像匹配! 442 匹配点确定. log(nfa)=-740.035.

关键点匹配3秒完成.

 

实验结论:在pc上采用C++实验ASIFT算法的运行速度较慢。但还是验证了ASIFT算法的图像匹配功能。

4.致谢    

本文的研究和编写得到了多方面的支持,非常感谢涂老师的指导和帮助。

感谢物理与电子信息学院老师对我的培养,是你们给了我这个再教育再学习的机会,你们的广博知识和严谨的教学态度使我受益匪浅。

最后对评审论文的各位专家、老师表示衷心的感谢,祝大家身体健康,一生幸福!

 

参考文献

[1] D.G Lowe. Distinctive image features fromscale-invariant key points. IJCV, 60(2):91–110,2004.

[2] Young R A.The Gaussian derivative theory ofspatial vision:Analysis of cortical cell receptive field line-weightingprofiles. Technical Report GMR-4920,Computer Science Department, General MotorsResearch Lab.,Warren Michigan,1985

[3] T. Lindeberg. Scale-space theory: a basic tool foranalyzing structures at different scales.Journal of Applied Statistics,21(1):225–270, 1994.

[4] Lowe D G.Object recognition from localscale-invariant features.In International Conference on Computer Vision,Corfu,Greece,1999

[5] Mikolajczyk K,Schmid C. An affine invariantinterest point detector.In Proceedings of the International Conference onComputer Vision,Vancouver,Canda,2002

[6] Lindeberg T.Shape from texture from a multi-scaleperspective.In Proc. International Conference on Computer Vision,Germany,1993

[7] Beis J,Lowe D G.Shape indexing using approximatenearest-neighbour search in high dimensional spaces. In Conference on computerVision anf Pattern Recognition,Puerto Rico.1996

[8] J.M. Morel and G.Yu, Is SIFT Scale Invariant?,Inverse Problems and Imaging, vol 5, no. 1, Feb., 2011

[9] Harris C G,StePhens M J.A Combined Cornerand EdgeDeteetor[c].Proceedings Fourth Alvey  VisionConference,Manehest78ef,147-151. 1988

[10] Schmid, C., andMohr, R. Local grayvalueinvariants for image retrieval. IEEE Trans. on Pattern Analysis and MachineIntelligence, 19(5):530-534. 1997

[11] Edelman, S., Intrator, N. and Poggio, T. Complexcells and object recognition. Unpublished manuscript.1997.http://kybele.psych.cornell.edu/~edelman/archive.html

[12] G. Yu and J.M. Morel, A Fully Affine InvariantImage Comparison Method, Proc. IEEE International Conference on Acoustics,Speech, and Signal Processing (ICASSP), Taipei,2009.

[13] J.M. Morel and G.Yu, ASIFT: A New Framework forFully Affine Invariant Image Comparison, SIAM Journal on Imaging Sciences, vol.2, issue 2, pp. 438-469, 2009.

是一种检测与描述图像局部特征的方法。为了识别和描述图像中的目标,

需要从图像中提取出与目标相联系的特征。

利用这些特征可以从众多背景目标中识别

出所需目标。为了确保准确无误地识别出目标,要求在各种视角、光照、距离以及噪

声条件下仍然可以准确地进行匹配。

SIFT

使用不同的技术解决以上问题。对物体距

离远近,

大小和噪声条件的适应由高斯尺度空间来完成,

而视角、

光照等条件则对应

于特征描述符。

SIFT

并不是一开始就以解决上述问题为设计目标,而是先提出一种

算法,而后发现它有诸多优良的性质。在

SIFT

算法提出以前,若干技术已经趋于成

熟,而

SIFT

则成功地把它们整合为一个整体,并包括一些创新点。

SIFT

的两个主要

组成部分是尺度空间检测和特征描述符。

SIFT

是一种检测与描述图像局部特征的方法。为了识别和描述图像中的目标,

需要从图像中提取出与目标相联系的特征。

利用这些特征可以从众多背景目标中识别

出所需目标。为了确保准确无误地识别出目标,要求在各种视角、光照、距离以及噪

声条件下仍然可以准确地进行匹配。

SIFT

使用不同的技术解决以上问题。对物体距

离远近,

大小和噪声条件的适应由高斯尺度空间来完成,

而视角、

光照等条件则对应

于特征描述符。

SIFT

并不是一开始就以解决上述问题为设计目标,而是先提出一种

算法,而后发现它有诸多优良的性质。在

SIFT

算法提出以前,若干技术已经趋于成

熟,而

SIFT

则成功地把它们整合为一个整体,并包括一些创新点。

SIFT

的两个主要

组成部分是尺度空间检测和特征描述符。

0 0