一种改进的快速sift特征匹配算法

一种改进的快速sift特征匹配算法
一种改进的快速sift特征匹配算法

本页已使用福昕阅读器进行编辑。

福昕软件(C)2005-2007,版权所有,

仅供试用。

一种改进的快速SIFT特征匹配算法

Improved Fast Feature Matching Method Of SIFT

(1中国科学院沈阳自动化研究所2中国科学院研究生院北京100049)张羽1,2)朱丹1)王玉良1)

ZHANG YU1),2) ZHU DAN1) WANG YU LIANG 1)

摘要在原有经典SIFT(Scale Invariant Feature Transform即尺度不变特征变换)特征匹配算法的基础上,

运用积分图像和积分直方图检测和描述特征点,使算法的实时性得到明显提高,并针对该快速算法的特征

区域的分割方式提出改进,改进后的快速SIFT算法在实时性能提高的同时,特征匹配的能力也得到了改善。

运用Matlab语言仿真的结果表明,此方法是可行的,使得目标跟踪等实时应用成为可能。

关键词特征匹配;积分图像;积分直方图;实时性;稳定性;

中图分类号:TP391.41 文献标志码:A

Abstract : Based on the classical algorithm of SIFT ( Scale Invariant Feature Transform) for feature matching ,The

article introduced integral image and integral histogram to detect and describe the feature point. In this way the

algorithm can meet the real-time requirement, and then bring forward a new method of segmentation of the feature

region for the fast algorithm. The real-time performance of the fast algorithm which has been improved is

enhanced, while the matching capability has also been improved. The simulation results using Matlab language

indicate that the method is feasible and target tracking of such real-time application become possible.

Key words: feature matching;integral image;integral histogram;real time;stability

1.引言

图像特征点是图像中具有明显特性并能把图像中的物体标识出的点。由于其信息含量

高,可以对视觉处理提供足够的约束,数目相对于图像像素点总数来说很少,可以提高计算

速度,使得实时处理成为可能。关于角点的提取和匹配方法很多,例如SUSAN算法、MIC

算法,还有效果比较好的Harris算法。但是这些算法都存在不足,在图像发生平移、旋转、

缩放等多种变化因素时很难取得较好的效果。针对这些不足,尤其是在尺度方面的不足,

David G. Lowe在2004年总结了现有的基于不变量技术的特征检测方法,在此基础上提出了

一种基于尺度空间的特征匹配算法——SIFT(Scale Invariant Feature Transform即尺度不变特

征变换)算法[1]。SIFT算法检测的点特征是图像的局部特征,该特征对平移、旋转、尺度缩

放、亮度变化保持不变性,对视角变化、仿射变化、噪声也保持一定程度的稳定性。SIFT特

征匹配算法分三个阶段来实现:第1阶段是SIFT特征点检测;第2阶段是SIFT特征描述符的

生成;第3阶段是SIFT特征向量的匹配。SIFT虽强,但其计算量和

复杂度却相当可观,算法的实时应用受到了很大的限制。本文基于提高SIFT算法实时性的目

的,选择建立DoM(Difference of Mean)[2]尺度空间,并采用积分图像[2]和积分直方图[2]检

测特征点和生成特征描述符,使算法的实时性能得到较大的提高。同时针对这种特征检测和

匹配的特点,在参考了其他匹配方法[6]基础上提出在DoM尺度空间生成特征点主方向和特征

描述符,并对特征区域提出了新的分割方法使算法的匹配能力进一步提高。

2.DoM尺度空间

为了检测到尺度不变的特征点Lowe采用建立DoG[1](Difference of Gaussian即高斯差)

尺度空间检测特征点。原始图像和具有可变尺度的高斯差函数做卷积生成DoG尺度空间,并

在此尺度空间中进行极值检测得到特征点。为了提高算法的实时性,我们采用建立DoM尺

度空间。DoM尺度空间是用积分图像[3]来辅助生成的,图像坐标点(x, y)的积分图像值定义为

图像中其左上角的像素灰度值之和,如图1中阴影所示:

∑≤≤=

y y x x y x i y x ii ,,,,

,),(),( 其中ii (x , y )表示积分图像,i (x , y )表示原始图像。ii (x , y )通过下式迭代进行计算:

),()1,(),(y x i y x s y x s +?=

),(),1(),(y x s y x ii y x ii +?=

其中),(y x s 表示行的积分和,且0)1,(=?x s , 0),1(=?y ii 。求一幅图像的积分图像,只需遍历一次图像即可。 A

B C D 1234

(x,y)

图1 积分图像

使用积分图像可以快速方便的对图像进行均值滤波。如图1中:点“1”的积分图像值是矩形框A 中所有像素的灰度值的和。点“2”的积分图像值为A+B ,点“3”是A+C ,点“4”是A+B+C+D ,所以D 中所有像素的灰度值之和可以用4+1-(2+3)计算。一旦得到了积分图像,无论我们所选取的矩形区域有多大,我们都可以用3次加法求出矩形区域的图像灰度值之和,再用1次乘法就可以得到矩形区域的均值。不同大小的矩形区域的均值图像代表图像的不同尺度,相邻尺度的均值图像做差即得到DoM [2](Difference of Mean 即均值差)尺度空间,经过归一化处理后就可以在DoM 尺度空间中检测图像特征点。DoM 尺度空间建立如图2所示。

图2 DOM 尺度空间示意图

表1[2]是DoG 尺度空间和DoM 尺度空间的计算量对比,通过对比我们可以看出,随着尺度的增大,矩形区域的面积在不断增大,实验中已达到了23×23,然而由于我们采用积分图像来求矩形区域的像素灰度值之和,尽管尺度达到如此之大,我们仍只需5次加法(其中2次用于建立积分图像),1次乘法就可以得到这个尺度的均值图像,然而各种方式滤波建立的DoG 尺度空间的计算量都比建立DoM 尺度空间所需的计算量大得多,这就是我们采用DoM 尺度空间的突出优点。

表1各种滤波方式的计算量的对比(每个像素的计算量)

滤波方法加法乘法

2维高斯滤波2N1

2?

N

分离高斯滤波2

N

+

?N2

2?

循环滤波 6 14

FFT )

?

2+

W

log(

?H

?1

log(

)

2H

W?

均值滤波2+3 1

3.特征描述符

经典SIFT算法利用特征点邻域像素的梯度信息获取特征点的主方向和特征描述符。特征描述符的生成是特征匹配的关键,它的稳定与否直接关系到特征匹配的效果。经典SIFT 算法把求取特征点主方向和特征描述符的区域(我们称为特征区域)分成16个矩形小块,然后求取每个矩形小块的梯度直方图[1],直方图的幅值形成一个8维的矢量,所有矩形小块的矢量连在一起形成一个128维的特征矢量即为特征描述符。在求取主方向时把整个特征区域看成一个大的矩形小块,生成这个矩形小块的梯度直方图,将直方图的峰值方向作为特征主方向。为了提高特征描述符和主方向的准确性,Lowe对形成主方向和特征描述符的特征区域都进行了高斯加权,如图4,图中圆表示高斯加权的范围,高斯加权使距离特征点越近的像素的梯度信息贡献越大。

在经典SIFT算法中,Lowe采用泰勒展开的方式对特征点的位置信息和尺度信息进行修正来精确定位特征点,对每个检测到的特征点需要21次乘法、23次加法,计算量是相当可观的。然而位置信息修正在一个像素的范围内,这对目标跟踪等实时性应用影响不大。对尺度信息的修正可以判断出由生成高斯差图像的两个相邻尺度的高斯图像中的哪一层来描述特征点,为了提高算法的实时性,针对这种特征点检测方式我们提出在检测到特征点的均值差尺度空间上而不是均值尺度空间来描述特征点,因为DoM尺度空间同样具有图像的尺度信息,这样就可以避免精确定位,既提高了算法的实时性,又减少了图像的存储空间。

为了提高求取主方向和特征描述符的实时性,我们也采用积分直方图[2]的方法, 积分直方图是借用积分图像的思想,首先求整幅图像的积分直方图,即每个像素的积分直方图都是其左上角所有像素的梯度直方图的和,那么任何位置和大小矩形区域的梯度直方图的和可以用类似图1 的方法通过3次加法计算得来,极大地方便了特征描述符的计算。

然而这种方法也有缺点,首先DoM尺度空间没有DoG尺度空间的尺度信息表达能力强,再者主方向和特征描述符的求取也没有进行高斯加权,因此精确性和稳定性就下降了很多。为了弥补此缺点,可以采用加密梯度直方图的方式,即增加矩形小块生成的梯度直方图的柱数,然而这样会导致每个矩形小块生成的向量的维数就会增加,整个特征向量更会大幅度增加。如果特征描述符的每个矩形小块形成梯度直方图的柱数增加到16个[2],那么特征向量将达到256维,后续的特征匹配的速度将下降很多。为了提高特征描述符和主方向的精确性和稳定性,我们对特征区域的分割采用新的方式,如图4 所示。

改进后的特征区域分割

图4图征区域分割示意图

我们知道高斯加权使越靠近特征点的像素的梯度信息贡献越大。从图4中可以看到,我们所选的区域分割方式使大的矩形小块覆盖了小的矩形小块所在的区域,使靠近特征点的像素的梯度信息得到了重复利用,这样越靠近特征点的像素的梯度信息对形成特征描述符的贡献越大,起到了近似高斯加权的效果。在新的分割方式下,每个矩形小块生成的特征向量可以取为8维,特征向量即为128维,特征向量维数的大幅下降可以使后续的特征匹配的速度明显增加,而匹配的效果却无明显下降。我们对经典SIFT算法、加速算法和改进的算法进行了仿真,如图5所示。实验中,我们将目标进行了放大1.2倍和旋转50比较,比较结果如表2所示。

表2 实验结果比较

算法(正配/误配)旋转50度放大1.2倍

经典SIFT 50/2 36/1

加速后33/2 61/5

改进后45/3 78/5

使用积分直方图可以灵活改变矩形区域的位置和大小,但计算量不变。我们所用的特征向量的维数减少了一半即128维,而特征匹配的数目有所增加,误匹配的比例只有很小比例提升,这可以采用经典的去外点技术——RANSAC(RANdom Sample Consensus即随机抽样一致性算法)[5]方法去除,对匹配结果不会造成较严重影响,然而实时性却提高很多。大量的实的特征区域分割方式是有效的。

图5 实验结果

4.结论

本文作者创新点:

本文对基于特征的匹配算法做了较深入的研究,采用积分图像和积分直方图使算法的实时性能得到提高,使得实时目标跟踪应用成为可能,另外新的特征区域的分割方式使算法的特征匹配能力得到增强。算法实现过程中由于需要8层均值差图像和9层积分图像的信息,需要很大的存储空间来存储信息。在今后的研究中,希望能够在图像的尺度空间上做出改进,减少图像的存储空间,为算法的硬件实现做准备。

参考文献:

[1] David G Lowe. Distinctive Image Features from Scale - Invariant Interest Points[ J ]. International Journal of

Computer Vision, 2004, 60 (2), 91-110.

[2] Michael Grabner, Helmut Grabner, and Horst Bischof. Fast approximated SIFT. Asian Conference on

Computer Vision[C],Hyderabad ,India, 2006, 918-927.

[3]Paul Viola , Michael Jones. Rapid object detection using a boosted cascade of simple features. Computer Vision

and Pattern Recognition[J]. 2001, Volume I, 511–518.

[4] Fatih Porikli. Integral histogram: A fast way to extract histograms in cartesian spaces. Computer Vision and

Pattern Recognition[J], 2005, V olume 1, 829-836.

[5] Martin A.Fishchler,Robert C.Bolles. Random Sample Consensus: a paradigm for model fitting with application

to image analysis and automated cartography[J].Communication Association Machine,1981,24(6),381-395 [6] 宰小涛,赵宇明,基于SIFT特征描述子的立体匹配算法[J]微计算机信息,2007,8-3:285-288。

作者简介:张羽(1982-1) ,女,满,辽宁人,中科院沈阳自动化所在读硕士生,计算机应用技术专业,主要研究方向:实时图像处理。朱丹(导师)(1962-)男,汉,现任中科院沈阳自动化研究所,研究员,研究主要研究方向:实时图像处理,模式识别等。王玉良(1982-),男,蒙古族,辽宁人,硕士生,中科院沈阳自动化研究所,主要研究方向:实时图像处理,模式识别等。

通讯地址:辽宁省沈阳市东陵区南塔街114号光电信息研究室,张羽,邮编:10016

Biography: Zhang Yu(1982-1),Liao Ning province ,female, master, computer application, Shenyang Institute of Automation, Chinese Academy of Sciences, Main research field: Real-time image processing. Zhu

Dan(1962-),male, Liao Ning province,researcher of Shenyang Institute of Automation, Main research field: Real-time image processing, pattern recognition etc. Wang Yu-liang (1962-),male, Liao Ning province, master, Shenyang Institute of Automation ,Main research field: Real-time image processing, pattern recognition etc.

Shenyang Institute of Automation, Chinese Academy of Sciences, Shenyang china 110016,Graduate School of the Chinese Academy of Sciences, Beijing china 100049

SIFT算法原理

3.1.1尺度空间极值检测 尺度空间理论最早出现于计算机视觉领域,当时其目的是模拟图像数据的多尺度特征。随后Koendetink 利用扩散方程来描述尺度空间滤波过程,并由此证明高斯核是实现尺度变换的唯一变换核。Lindeberg ,Babaud 等人通过不同的推导进一步证明高斯核是唯一的线性核。因此,尺度空间理论的主要思想是利用高斯核对原始图像进行尺度变换,获得图像多尺度下的尺度空间表示序列,对这些序列进行尺度空间特征提取。二维高斯函数定义如下: 222()/221 (,,)2x y G x y e σσπσ-+= (5) 一幅二维图像,在不同尺度下的尺度空间表示可由图像与高斯核卷积得到: (,,(,,)*(,)L x y G x y I x y σσ)= (6) 其中(x,y )为图像点的像素坐标,I(x,y )为图像数据, L 代表了图像的尺度空间。σ称为尺度空间因子,它也是高斯正态分布的方差,其反映了图像被平滑的程度,其值越小表征图像被平滑程度越小,相应尺度越小。大尺度对应于图像的概貌特征,小尺度对应于图像的细节特征。因此,选择合适的尺度因子平滑是建立尺度空间的关键。 在这一步里面,主要是建立高斯金字塔和DOG(Difference of Gaussian)金字塔,然后在DOG 金字塔里面进行极值检测,以初步确定特征点的位置和所在尺度。 (1)建立高斯金字塔 为了得到在不同尺度空间下的稳定特征点,将图像(,)I x y 与不同尺度因子下的高斯核(,,)G x y σ进行卷积操作,构成高斯金字塔。 高斯金字塔有o 阶,一般选择4阶,每一阶有s 层尺度图像,s 一般选择5层。在高斯金字塔的构成中要注意,第1阶的第l 层是放大2倍的原始图像,其目的是为了得到更多的特征点;在同一阶中相邻两层的尺度因子比例系数是k ,则第1阶第2层的尺度因子是k σ,然后其它层以此类推则可;第2阶的第l 层由第一阶的中间层尺度图像进行子抽样获得,其尺度因子是2k σ,然后第2阶的第2层的尺度因子是第1层的k 倍即3 k σ。第3阶的第1层由第2阶的中间层尺度图像进行子抽样获得。其它阶的构成以此类推。 (2)建立DOG 金字塔 DOG 即相邻两尺度空间函数之差,用(,,)D x y σ来表示,如公式(3)所示: (,,)((,,)(,,))*(,)(,,)(,,)D x y G x y k G x y I x y L x y k L x y σσσσσ=-=- (7) DOG 金字塔通过高斯金字塔中相邻尺度空间函数相减即可,如图1所示。在图中,DOG 金字塔的第l 层的尺度因子与高斯金字塔的第l 层是一致的,其它阶也一样。

SIFT算法实现及代码详解

经典算法SIFT实现即代码解释: 以下便是sift源码库编译后的效果图:

为了给有兴趣实现sift算法的朋友提供个参考,特整理此文如下。要了解什么是sift算法,请参考:九、图像特征提取与匹配之SIFT算法。ok,咱们下面,就来利用Rob Hess维护的sift 库来实现sift算法: 首先,请下载Rob Hess维护的sift 库: https://www.360docs.net/doc/7010185190.html,/hess/code/sift/ 下载Rob Hess的这个压缩包后,如果直接解压缩,直接编译,那么会出现下面的错误提示: 编译提示:error C1083: Cannot open include file: 'cxcore.h': No such file or directory,找不到这个头文件。 这个错误,是因为你还没有安装opencv,因为:cxcore.h和cv.h是开源的OPEN CV头文件,不是VC++的默认安装文件,所以你还得下载OpenCV并进行安装。然后,可以在OpenCV文件夹下找到你所需要的头文件了。 据网友称,截止2010年4月4日,还没有在VC6.0下成功使用opencv2.0的案例。所以,如果你是VC6.0的用户请下载opencv1.0版本。vs的话,opencv2.0,1.0任意下载。 以下,咱们就以vc6.0为平台举例,下载并安装opencv1.0版本、gsl等。当然,你也可以用vs编译,同样下载opencv(具体版本不受限制)、gsl等。 请按以下步骤操作: 一、下载opencv1.0 https://www.360docs.net/doc/7010185190.html,/projects/opencvlibrary/files/opencv-win/1.0/OpenCV_1.0.exe

SIFT算法英文详解

SIFT: Scale Invariant Feature Transform The algorithm SIFT is quite an involved algorithm. It has a lot going on and can be come confusing, So I’ve split up the entire algorithm into multiple parts. Here’s an outline of what happens in SIFT. Constructing a scale space This is the initial preparation. You create internal representations of the original image to ensure scale invariance. This is done by generating a “scale space”. LoG Approximation The Laplacian of Gaussian is great for finding interesting points (or key points) in an image. But it’s computationally expensive. So we cheat and approximate it using the representation created earlier. Finding keypoints With the super fast approximation, we now try to find key points. These are maxima and minima in the Difference of Gaussian image we calculate in step 2 Get rid of bad key points Edges and low contrast regions are bad keypoints. Eliminating these makes the algorithm efficient and robust. A technique similar to the Harris Corner Detector is used here. Assigning an orientation to the keypoints An orientation is calculated for each key point. Any further calculations are done relative to this orientation. This effectively cancels out the effect of orientation, making it rotation invariant. Generate SIFT features Finally, with scale and rotation invariance in place, one more representation is generated. This helps uniquely identify features. Lets say you have 50,000 features. With this representation, you can easily identify the feature you’re looking for (sa y, a particular eye, or a sign board). That was an overview of the entire algorithm. Over the next few days, I’ll go through each step in detail. Finally, I’ll show you how to implement SIFT in OpenCV! What do I do with SIFT features? After you run through the algorithm, you’ll have SIFT features for your image. Once you have these, you can do whatever you want. Track images, detect and identify objects (which can be partly hidden as well), or whatever you can think of. We’ll get into this later as well. But the catch is, this algorithm is patented. >.< So, it’s good enough for academic purposes. But if you’re looking to make something commercial, look for something else! [Thanks to aLu for pointing out SURF is patented too] 1. Constructing a scale space Real world objects are meaningful only at a certain scale. You might see a sugar cube perfectly on a table. But if looking at the entire milky way, then it simply does not exist. This multi-scale nature of objects is quite common in nature. And a scale space attempts to replicate this concept

SIFT特征点提取与匹配算法

SIFT 特征点匹配算法 基于SIFT 方法的图像特征匹配可分为特征提取和特征匹配两个部分,可细化分为五个部分: ① 尺度空间极值检测(Scale-space extrema detection ); ② 精确关键点定位(Keypoint localization ) ③ 关键点主方向分配(Orientation assignment ) ④ 关键点描述子生成(Keypoint descriptor generation ) ⑤ 比较描述子间欧氏距离进行匹配(Comparing the Euclidean distance of the descriptors for matching ) 1.1 尺度空间极值检测 特征关键点的性质之一就是对于尺度的变化保持不变性。因此我们所要寻找的特征点必须具备的性质之一,就是在不同尺度下都能被检测出来。要达到这个目的,我们可以在尺度空间内寻找某种稳定不变的特性。 Koenderink 和Lindeberg 已经证明,变换到尺度空间唯一的核函数是高斯函数。因此一个图像的尺度空间定义为:(,,)L x y σ,是由可变尺度的高斯函数(,,)G x y σ与输入图像(,)I x y 卷积得到,即: ),(),,(),,(y x I y x G y x L *=σσ (1.1) 其中:2222/)(221 ),,(σπσσy x e y x G +-= 在实际应用中,为了能相对高效地计算出关键点的位置,建议使用的是差分高斯函数(difference of Gaussian )(,,)D x y σ。其定义如下: ) ,,(),,() ,()),,(),,((),,(σσσσσy x L k y x L y x I y x G k y x G y x D -=*-= (1.2) 如上式,D 即是两个相邻的尺度的差(两个相邻的尺度在尺度上相差一个相乘系数k )。

SIFT 特征提取算法详解

SIFT 特征提取算法总结 主要步骤 1)、尺度空间的生成; 2)、检测尺度空间极值点; 3)、精确定位极值点; 4)、为每个关键点指定方向参数; 5)、关键点描述子的生成。 L(x,y,σ), σ= 1.6 a good tradeoff

D(x,y,σ), σ= 1.6 a good tradeoff

关于尺度空间的理解说明:图中的2是必须的,尺度空间是连续的。在 Lowe 的论文中, 将第0层的初始尺度定为1.6,图片的初始尺度定为0.5. 在检测极值点前对原始图像的高斯平滑以致图像丢失高频信息,所以Lowe 建议在建立尺度空间前首先对原始图像长宽扩展一倍,以保留原始图像信息,增加特征点数量。尺度越大图像越模糊。 next octave 是由first octave 降采样得到(如2) , 尺度空间的所有取值,s为每组层数,一般为3~5 在DOG尺度空间下的极值点 同一组中的相邻尺度(由于k的取值关系,肯定是上下层)之间进行寻找

在极值比较的过程中,每一组图像的首末两层是无法进行极值比较的,为了满足尺度 变化的连续性,我们在每一组图像的顶层继续用高斯模糊生成了 3 幅图像, 高斯金字塔有每组S+3层图像。DOG金字塔每组有S+2层图像.

If ratio > (r+1)2/(r), throw it out (SIFT uses r=10) 表示DOG金字塔中某一尺度的图像x方向求导两次 通过拟和三维二次函数以精确确定关键点的位置和尺度(达到亚像素精度)?

直方图中的峰值就是主方向,其他的达到最大值80%的方向可作为辅助方向 Identify peak and assign orientation and sum of magnitude to key point The user may choose a threshold to exclude key points based on their assigned sum of magnitudes. 利用关键点邻域像素的梯度方向分布特性为每个关键点指定方向参数,使算子具备 旋转不变性。以关键点为中心的邻域窗口内采样,并用直方图统计邻域像素的梯度 方向。梯度直方图的范围是0~360度,其中每10度一个柱,总共36个柱。随着距中心点越远的领域其对直方图的贡献也响应减小.Lowe论文中还提到要使用高斯函 数对直方图进行平滑,减少突变的影响。

SIFT特征点提取与匹配算法

二 特征点提取算法 1、基于SIFT (Scale Invariant Feature Transform )方法的图像特征匹配 参看David G. Lowe 的“Distinctive Image Features from Scale-Invariant Keypoints ” 基于SIFT 方法的图像特征匹配可分为特征提取和特征匹配两个部分,可细化分为五个部分: ① 尺度空间极值检测(Scale-space extrema detection ); ② 精确关键点定位(Keypoint localization ) ③ 关键点主方向分配(Orientation assignment ) ④ 关键点描述子生成(Keypoint descriptor generation ) ⑤ 比较描述子间欧氏距离进行匹配(Comparing the Euclidean distance of the descriptors for matching ) 1.1 尺度空间极值检测 特征关键点的性质之一就是对于尺度的变化保持不变性。因此我们所要寻找的特征点必须具备的性质之一,就是在不同尺度下都能被检测出来。要达到这个目的,我们可以在尺度空间内寻找某种稳定不变的特性。 Koenderink 和Lindeberg 已经证明,变换到尺度空间唯一的核函数是高斯函数。因此一个图像的尺度空间定义为:(,,)L x y σ,是由可变尺度的高斯函数(,,)G x y σ与输入图像(,)I x y 卷积得到,即: ),(),,(),,(y x I y x G y x L *=σσ (1.1) 其中:2222/)(221 ),,(σπσσy x e y x G +-= 在实际应用中,为了能计算的相对高效,所真正使用的是差分高斯尺度空间(difference of Gaussian )(,,)D x y σ。其定义如下: ) ,,(),,() ,()),,(),,((),,(σσσσσy x L k y x L y x I y x G k y x G y x D -=*-= (1.2) 如上式,D 即是由两个相邻的尺度的差(两个相邻的尺度在尺度上相差一个相乘系数k )。

SIFT算法分析

SIFT算法分析 1 SIFT 主要思想 SIFT算法是一种提取局部特征的算法,在尺度空间寻找极值点,提取位置,尺度,旋转不变量。 2 SIFT 算法的主要特点: a)SIFT特征是图像的局部特征,其对旋转、尺度缩放、亮度变化保持不变性,对视角变化、仿射变换、噪声也保持一定程度的稳定性。 b)独特性(Distinctiveness)好,信息量丰富,适用于在海量特征数据库中进 行快速、准确的匹配。 c)多量性,即使少数的几个物体也可以产生大量SIFT特征向量。 d)高速性,经优化的SIFT匹配算法甚至可以达到实时的要求。 e)可扩展性,可以很方便的与其他形式的特征向量进行联合。 3 SIFT 算法流程图:

4 SIFT 算法详细 1)尺度空间的生成 尺度空间理论目的是模拟图像数据的多尺度特征。 高斯卷积核是实现尺度变换的唯一线性核,于是一副二维图像的尺度空间定义为: L( x, y, ) G( x, y, ) I (x, y) 其中G(x, y, ) 是尺度可变高斯函数,G( x, y, ) 2 1 2 y2 (x ) 2 e / 2 2 (x,y)是空间坐标,是尺度坐标。大小决定图像的平滑程度,大尺度对应图像的概貌特征,小尺度对应图像的细节特征。大的值对应粗糙尺度(低分辨率),反之,对应精细尺度(高分辨率)。 为了有效的在尺度空间检测到稳定的关键点,提出了高斯差分尺度空间(DOG scale-space)。利用不同尺度的高斯差分核与图像卷积生成。 D( x, y, ) (G( x, y,k ) G( x, y, )) I ( x, y) L( x, y,k ) L( x, y, ) DOG算子计算简单,是尺度归一化的LoG算子的近似。图像金字塔的构建:图像金字塔共O组,每组有S层,下一组的图像由上一 组图像降采样得到。 图1由两组高斯尺度空间图像示例金字塔的构建,第二组的第一副图像由第一组的第一副到最后一副图像由一个因子2降采样得到。图2 DoG算子的构建: 图1 Two octaves of a Gaussian scale-space image pyramid with s =2 intervals. The first image in the second octave is created by down sampling to last image in the previous

基于SIFT特征的图像匹配

毕业设计(论文)题目基于SIFT特征的图像匹配 姓名张建华 学号0811111101 所在学院理学院 专业班级08信计 指导教师吴颖丹 日期2012 年 6 月 2 日

摘要 当今社会已经进入信息时代,随着计算机技术、通信技术和数学的发展,图像信息处理能力和水平也不断提高,相应的也得到更多关注、研究和更加广泛的应用。图像匹配是处理和解决各种图像信息的基础,已经成为虚拟现实和计算机可视化领域的研究热点。一直以来,研究人员对图像匹配技术进行了大量的研究,推出了许多匹配算法,其中特征匹配算法有着较高的精确度和稳定性。SIFT (Scale Invariant Feature Transform)特征匹配算法是Lowe提出来的用于图像特征匹配的算法,是目前特征匹配领域的热点,对图像的旋转,尺度缩放和亮度变换保持不变,对视角变换,仿射变换保持一定程度的稳定。SIFT特征点是图像的一种尺度不变局部特征点,具有独特性好,信息量丰富,多量性,高速性,可扩展性等特点。正是借助于这些特点,使得传统图像配准中的许多诸如前面提到的共性问题得到了很大程度的改善。该算法首先给出了尺度空间的生成方法,检测出极值点;接下来给出了SIFT特征点的提取步骤和精确定位极值点的方法;然后基于特征点邻域像素的梯度和方向生成了关键点的描述向量;最后根据特征向量给出了匹配方法,提取了SIFT的特征点,并其应用于图像匹配。 本文首先简要介绍了图像匹配所需的基础知识,然后详细介绍了SIFT算法的具体流程。通过大量的实验证明SIFT算法具有较强的匹配能力和鲁棒性,是一种较好的图像匹配算法。 关键字:SIFT; 图像匹配; 尺度空间; 极值点; 特征向量

SIFT算法与RANSAC算法分析

概率论问题征解报告: (算法分析类) SIFT算法与RANSAC算法分析 班级:自23 姓名:黄青虬 学号:2012011438 作业号:146

SIFT 算法是用于图像匹配的一个经典算法,RANSAC 算法是用于消除噪声的算法,这两者经常被放在一起使用,从而达到较好的图像匹配效果。 以下对这两个算法进行分析,由于sift 算法较为复杂,只重点介绍其中用到的概率统计概念与方法——高斯卷积及梯度直方图,其余部分只做简单介绍。 一. SIFT 1. 出处:David G. Lowe, The Proceedings of the Seventh IEEE International Conference on (Volume:2, Pages 1150 – 1157), 1999 2. 算法目的:提出图像特征,并且能够保持旋转、缩放、亮度变化保持不变性,从而 实现图像的匹配 3. 算法流程图: 原图像 4. 算法思想简介: (1) 特征点检测相关概念: ◆ 特征点:Sift 中的特征点指十分突出、不会因亮度而改变的点,比如角点、边 缘点、亮区域中的暗点等。特征点有三个特征:尺度、空间和大小 ◆ 尺度空间:我们要精确表示的物体都是通过一定的尺度来反映的。现实世界的 物体也总是通过不同尺度的观察而得到不同的变化。尺度空间理论最早在1962年提出,其主要思想是通过对原始图像进行尺度变换,获得图像多尺度下的尺度空间表示序列,对这些序列进行尺度空间主轮廓的提取,并以该主轮廓作为一种特征向量,实现边缘、角点检测和不同分辨率上的特征提取等。尺度空间中各尺度图像的模糊程度逐渐变大,能够模拟人在距离目标由近到远时目标在视网膜上的形成过程。尺度越大图像越模糊。 ◆ 高斯模糊:高斯核是唯一可以产生多尺度空间的核,一个图像的尺度空间,L (x,y,σ) ,定义为原始图像I(x,y)与一个可变尺度的2维高斯函数G(x,y,σ) 卷积运算 高斯函数: 高斯卷积的尺度空间: 不难看到,高斯函数与正态分布函数有点类似,所以在计算时,我们也是 ()()() ,,,,*,L x y G x y I x y σσ=()22221 ()(),,exp 22i i i i x x y y G x y σπσσ??-+-=- ? ??

SIFT算法实现原理步骤

SIFT 算法实现步骤 :1 关键点检测、2 关键点描述、3 关键点匹配、4 消除错配点 1关键点检测 1.1 建立尺度空间 根据文献《Scale-space theory: A basic tool for analysing structures at different scales 》我们可知,高斯核是唯一可以产生多尺度空间的核,一个图像的尺度空间,L (x,y,σ) ,定义为原始图像I(x,y)与一个可变尺度的2维高斯函数G(x,y,σ) 卷积运算。 高斯函数 高斯金字塔 高斯金子塔的构建过程可分为两步: (1)对图像做高斯平滑; (2)对图像做降采样。 为了让尺度体现其连续性,在简单 下采样的基础上加上了高斯滤波。 一幅图像可以产生几组(octave ) 图像,一组图像包括几层 (interval )图像。 高斯图像金字塔共o 组、s 层, 则有: σ——尺度空间坐标;s ——sub-level 层坐标;σ0——初始尺度;S ——每组层数(一般为3~5)。 当图像通过相机拍摄时,相机的镜头已经对图像进行了一次初始的模糊,所以根据高斯模糊的性质: -第0层尺度 --被相机镜头模糊后的尺度 高斯金字塔的组数: M 、N 分别为图像的行数和列数 高斯金字塔的组内尺度与组间尺度: 组内尺度是指同一组(octave )内的尺度关系,组内相邻层尺度化简为: 组间尺度是指不同组直接的尺度关系,相邻组的尺度可化为: 最后可将组内和组间尺度归为: ()22221 ()(),,exp 22i i i i x x y y G x y σπσσ??-+-=- ? ??()()(),,,,*,L x y G x y I x y σσ=Octave 1 Octave 2 Octave 3 Octave 4 Octave 5σ2σ 4σ8 σ 0()2s S s σσ= g 0σ=init σpre σ()() 2log min ,3O M N ??=-?? 1 12S s s σσ+=g 1()2s S S o o s σσ++=g 222s S s S S o o σσ+=g g 121 2(,,,) i n k k k σσσσ--L 1 2 S k =

sift算法详解

尺度不变特征变换匹配算法详解 Scale Invariant Feature Transform(SIFT) Just For Fun 张东东zddmail@https://www.360docs.net/doc/7010185190.html, 对于初学者,从David G.Lowe的论文到实现,有许多鸿沟,本文帮你跨越。 1、SIFT综述 尺度不变特征转换(Scale-invariant feature transform或SIFT)是一种电脑视觉的算法用来侦测与描述影像中的局部性特征,它在空间尺度中寻找极值点,并提取出其位置、尺度、旋转不变量,此算法由David Lowe在1999年所发表,2004年完善总结。 其应用范围包含物体辨识、机器人地图感知与导航、影像缝合、3D模型建立、手势辨识、影像追踪和动作比对。 此算法有其专利,专利拥有者为英属哥伦比亚大学。 局部影像特征的描述与侦测可以帮助辨识物体,SIFT特征是基于物体上的一些局部外观的兴趣点而与影像的大小和旋转无关。对于光线、噪声、些微视角改变的容忍度也相当高。基于这些特性,它们是高度显著而且相对容易撷取,在母数庞大的特征数据库中,很容易辨识物体而且鲜有误认。使用SIFT特征描述对于部分物体遮蔽的侦测率也相当高,甚至只需要3个以上的SIFT物体特征就足以计算出位置与方位。在现今的电脑硬件速度下和小型的特征数据库条件下,辨识速度可接近即时运算。SIFT特征的信息量大,适合在海量数据库中快速准确匹配。 SIFT算法的特点有: 1.SIFT特征是图像的局部特征,其对旋转、尺度缩放、亮度变化保持不变性,对视角变化、仿射变换、噪声也保持一定程度的稳定性; 2.独特性(Distinctiveness)好,信息量丰富,适用于在海量特征数据库中进行快速、准确的匹配; 3.多量性,即使少数的几个物体也可以产生大量的SIFT特征向量; 4.高速性,经优化的SIFT匹配算法甚至可以达到实时的要求;

基于ransac算法的sift特征匹配研究(OpenCV+VS2010)____朱万革(最终版)

SHANGHAI JIAO TONG UNIVERSITY 学士学位论文 THESIS OF BACHELOR 基于ransac算法的sift特征匹配研究(OpenCV+VS2010)

上海交通大学 毕业设计(论文)学术诚信声明 本人郑重声明:所呈交的毕业设计(论文),是本人在导师的指导下,独立进行研究工作所取得的成果。除文中已经注明引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写过的作品成果。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律结果由本人承担。 作者签名: 日期:年月日

上海交通大学 毕业设计(论文)版权使用授权书 本毕业设计(论文)作者同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权上海交通大学可以将本毕业设计(论文)的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本毕业设计(论文)。 保密□,在年解密后适用本授权书。 本论文属于 不保密□。 (请在以上方框内打“√”) 作者签名:指导教师签名: 日期:年月日日期:年月日

视频图像跟踪系统 摘要 图像(Image)--是客观世界的景物通过光学系统作用后产生的影像。图像直观地反映了场景中物体的颜色、亮度等特征,从而使我们能清晰分辨他们的形状、大小和空间位置。近30年来人们试图研究基于计算机的视觉系统,并且试图利用其系统来代替工业农业上的有害劳动。这样的视觉系统渐渐地进入我们的生活,让我们的生活变得很丰富,并且我们现在享受着图像处理这学问的成果。在世界上的先进的国家都设立了图像处理研究所,研究解决国防部门所要的问题。 本文将介绍基于OpenCV(Open Source Computer Vision Library)的视频图像匹配、拼接、融合和目标跟踪的算法以及方法。说到图像拼接,本文中所用的图像拼接算法是高效的SIFT特征算法。首先,用两个通用的USB摄像头来实时地进行采集图像,并对这两幅图像提取SIFT特征点。然后,进行粗匹配。最后用RANSAC算法对所提取出来的SIFT特征点匹配对进行提纯以及估计模型参数。最后把两幅图像拼接成一幅完整的图像,并且用加权平均算法进行无缝拼接。再进行摄像头标定,求出两个通用摄像头的内外参数,最后进行测距以及跟踪。最终取得了令人满意的结果。 关键词:SIFT,匹配,拼接,配准,RANSAC

SIFT算法分析

SIFT算法分析 1 SI F T主要思想 S IF T算法就是一种提取局部特征得算法,在尺度空间寻找极值点,提取位置,尺度,旋转不变量。 2 SI FT算法得主要特点 a)SIFT特征就是图像得局部特征,其对旋转、尺度缩放、亮度变化保持不变性,对视角变化、仿射变换、噪声也保持一定程度得稳定性。 b )独特性(Dis t in c t iv e n es s)好,信息量丰富,适用于在海量特征数据库中进行快速、准确得匹配? c) 多量性,即使少数得几个物体也可以产生大量S IFT特征向量。 d) 高速性,经优化得SIF T匹配算法甚至可以达到实时得要求。 e) 可扩展性,可以很方便得与其她形式得特征向量进行联合。 3 SI F T算法流程图: 爹尺度空间扱值点检测 特征点的精确定位 I*

特征点的主方向计算 描述子的构造 特征向童I*

4 SIFT 算法详细 1)尺度空间得生成 尺度空间理论目得就是模拟图像数据得多尺度特征 . 高斯卷积核就是实现尺度变换得唯一线性核,于就是一副二维图像得尺度 空间定义为: 其中就是尺度可变高斯函数, (x ,y )就是空间坐标,就是尺度坐标.大小决定图像得平滑程度,大尺度对 应图像得概貌特征,小尺度对应图像得细节特征。大得值对应粗糙尺度 (低分辨 率),反之,对应精细尺度(高分辨率)。 为了有效得在尺度空间检测到稳定得关键点,提出了高斯差分尺度空间 (D O G seal e — s p ace ).利用不同尺度得高斯差分核与图像卷积生成。 D(x,y, ) (G(x, y,k ) G(x, y, )) I(x,y) L(x, y,k ) L(x, y,) D OG 算子计算简单,就是尺度归一化得L o G 算子得近似。 图像金字塔得构建:图像金字塔共O 组,每组有S 层,下一组得图像由上一组图 像降采样得到。 图1由两组高斯尺度空间图像示例金字塔得构建, 第二组得第一副图像由第 一组得第一副到最后一副图像由一个因子 2降采样得到。图2 DoG 算子得构建: t o last image in t h e p revio us 图 1 Tw o o ct a ves of a G aus sia n s cale-spac e i ma g e pyr amid with s = 2 inte r vals 、Th e fir s t image i n t h e sec o nd o e t a ve is created b y dow n sa m p l ing Oj-taw J Octave 聖

SIFT算法分析报告

SIFT算法分析 1 SIFT主要思想 SIFT算法是一种提取局部特征的算法,在尺度空间寻找极值点,提取位置,尺度,旋转不变量。 2 SIFT算法的主要特点: a) SIFT特征是图像的局部特征,其对旋转、尺度缩放、亮度变化保持不变性,对视角变化、仿射变换、噪声也保持一定程度的稳定性。 b) 独特性(Distinctiveness)好,信息量丰富,适用于在海量特征数据库中进行快速、准确的匹配。 c) 多量性,即使少数的几个物体也可以产生大量SIFT特征向量。 d) 高速性,经优化的SIFT匹配算法甚至可以达到实时的要求。 e) 可扩展性,可以很方便的与其他形式的特征向量进行联合。 3 SIFT算法流程图:

4 SIFT 算法详细 1)尺度空间的生成 尺度空间理论目的是模拟图像数据的多尺度特征。 高斯卷积核是实现尺度变换的唯一线性核,于是一副二维图像的尺度空间定义为: ),(),,(),,(y x I y x G y x L *=σσ 其中 ),,(σy x G 是尺度可变高斯函数,2)(2 2/21),,(22σπσσy x e y x G +-= (x ,y )是空间坐标,σ是尺度坐标。σ大小决定图像的平滑程度,大尺度对应图像的概貌特征,小尺度对应图像的细节特征。大的σ值对应粗糙尺度(低分辨率),反之,对应精细尺度(高分辨率)。 为了有效的在尺度空间检测到稳定的关键点,提出了高斯差分尺度空间(DOG scale-space )。利用不同尺度的高斯差分核与图像卷积生成。 ),,(),,(),()),,(),,((),,(σσσσσy x L k y x L y x I y x G k y x G y x D -=*-= DOG 算子计算简单,是尺度归一化的LoG 算子的近似。 图像金字塔的构建:图像金字塔共O 组,每组有S 层,下一组的图像由上一组图像降采样得到。 图1由两组高斯尺度空间图像示例金字塔的构建, 第二组的第一副图像由第一组的第一副到最后一副图像由一个因子2降采样得到。图2 DoG 算子的构建: 图1 Two octaves of a Gaussian scale-space image pyramid with s =2 intervals. The first image in the second octave is created by down sampling to last image in the previous

(完整版)SIFT算法原理.doc

3.1.1 尺度空间极值检测 尺度空间理论最早出现于计算机视觉领域,当时其目的是模拟图像数据的多尺度特征。 随后 Koendetink利用扩散方程来描述尺度空间滤波过程,并由此证明高斯核是实现尺度变 换的唯一变换核。Lindeberg, Babaud 等人通过不同的推导进一步证明高斯核是唯一的线性 核。因此,尺度空间理论的主要思想是利用高斯核对原始图像进行尺度变换,获得图像多尺度下的尺度空间表示序列,对这些序列进行尺度空间特征提取。二维高斯函数定义如下: G ( x, y, ) 1 2e( x2y2)/2 2 ( 5) 2 一幅二维图像,在不同尺度下的尺度空间表示可由图像与高斯核卷积得到: L( x, y, G( x, y, )* I ( x, y) ( 6)其中 (x,y)为图像点的像素坐标, I(x,y)为图像数据 , L 代表了图像的尺度空间。σ称为尺度空间因子,它也是高斯正态分布的方差,其反映了图像被平滑的程度,其值越小表征图像被平滑 程度越小,相应尺度越小。大尺度对应于图像的概貌特征,小尺度对应于图像的细节特征。 因此,选择合适的尺度因子平滑是建立尺度空间的关键。 在这一步里面,主要是建立高斯金字塔和DOG(Difference of Gaussian) 金字塔,然后在DOG 金字塔里面进行极值检测,以初步确定特征点的位置和所在尺度。 (1)建立高斯金字塔 为了得到在不同尺度空间下的稳定特征点,将图像I (x, y) 与不同尺度因子下的高斯核 G ( x, y,) 进行卷积操作,构成高斯金字塔。 高斯金字塔有o 阶,一般选择 4 阶,每一阶有s 层尺度图像,s 一般选择 5 层。在高斯金字塔的构成中要注意,第 1 阶的第l 层是放大 2 倍的原始图像,其目的是为了得到更多的 特征点;在同一阶中相邻两层的尺度因子比例系数是k ,则第 1 阶第 2 层的尺度因子是k ,然后其它层以此类推则可;第 2 阶的第l 层由第一阶的中间层尺度图像进行子抽样获得,其尺度因子是k 2 ,然后第 2 阶的第 2 层的尺度因子是第 1 层的k 倍即k 3 。第 3 阶的第 1 层由第 2 阶的中间层尺度图像进行子抽样获得。其它阶的构成以此类推。 (2) 建立DOG 金字塔 DOG 即相邻两尺度空间函数之差,用 D (x, y, ) 来表示,如公式(3)所示: D (x, y, ) (G( x, y, k ) G (x, y, ))* I (x, y) L( x, y, k ) L (x, y, ) (7) DOG 金字塔通过高斯金字塔中相邻尺度空间函数相减即可,如图 1 所示。在图中,DOG 金字塔的第l 层的尺度因子与高斯金字塔的第l 层是一致的,其它阶也一样。

尺度空间理论和SIFT算法小结

尺度空间理论 尺度空间(scalesPace)思想最早由Iijima 于1962年提出([l]),但当时并未引起算机视觉领域研究者们的足够注意,直到上世纪八十年代,witkin([2])Koenderink([3])等人的奠基性工作使得尺度空间方法逐渐得到关注和发展。此后,随着非线性扩散方程、变分法和数学形态学等方法在计算机视觉领域中的广泛应用,尺度空间方法进入了快速发展阶段。尺度空间方法本质上是偏微分方程对图像的作用。 尺度空间方法的基本思想是:在视觉信息(图像信息)处理模型中引入一个被视为尺度的参数,通过连续变化尺度参数获得不同尺度下的视觉处理信息,然后综合这些信息以深入地挖掘图像的本质特征。尺度空间方法将传统的单尺度视觉信息处理技术纳入尺度不断变化的动态分析框架中,因此更容易获得图像的本质特征。尺度空间的生成目的是模拟图像数据的多尺度特征。高斯卷积核是实现尺度变换的唯一线性核。 尺度空间是一个用来控制观察尺度或表征图像数据多尺度自然特性的框架;信号的尺度空间表征是信号的特征结构集合并包含有一个连续的尺度参量(即观察尺度)。尺度空间理论[8]是通过对原始图像进行尺度变换,获得图像多尺度下的尺度空间表示序列,对这些序列进行尺度空间主轮廓的提取,并以该主轮廓作为一种特征向量,实现边缘、角点检测和不同分辨率上的特征提取等。尺度空间表示是一种基于区域而不是基于边缘的表达,它无需关于图像的先验知识。与通过减小图像尺寸而提高计算效率的其他多尺度或多分辨率表达相比,尺度空间表示由平滑获得,在多由尺度上都保持了不变的空间取样,但对同一特征而言,它在粗糙尺度上对应更多的像素点,这样就使得对这些数据的计算任务得到连续的简化。尺度空间表示的另一个重要特征,就是基于尺度的结构特性能以一种简单的方式解析的表达,不同尺度上的特征可以一种精确的方式联系起来。作为尺度空间理论中的一个重要概念,尺度空间核被定义为:in out f K f *= (1) 对于所有的信号in f ,若它与变换核K 卷积后得到的信号out f 中的极值(一阶微分过零点数)不超过原图像的极值,则称K 为尺度空间核,所进行的卷积变换称为尺度变换。尺度空间表示通过平滑获得,可描述为),(σx 空间(?y 呢?),x 和σ分别为位置参数和尺度参数。当采用不同尺度的平滑函数对同一图像进行滤波时,得到的一簇图像就是原始图像相对于该平滑函数的尺度空间,σ为尺度空间坐标。 在高斯尺度空间,同一类型特征点和边缘在不同的尺度上具有因果性,即当尺度变化时,新的特征点可能出现,而老的特征点可能移位或消失。这种因果性带来的含糊性是固有的,不可避免的,不能企求消除,但可以减小。然而,由于高斯核[9] 具有线性、平移不变性、旋转不变性和子集特性等特性,可以证明,

SIFT算法源码

close all; clear all; RGB=imread('peppers.png'); I=rgb2gray(RGB); I=im2double(I); LEN=25; THETA=20; PSF=fspecial('motion',LEN,THETA); J=imfilter(I,PSF,'conv','circular'); NSR1=0; noise_mean=0; noise_var=0.0001; K=imnoise(J,'gaussian',noise_mean,noise_var); NSR2=noise_var/var(I(:)); L1=deconvwnr(J,PSF,NSR1); L2=deconvwnr(K,PSF,NSR2); figure, subplot(221),imshow(RGB),title('原图'); subplot(222),imshow(I),title('灰度图像'); subplot(223),imshow(L1),title('不加噪复原图'); subplot(224),imshow(L2),title('加噪复原图') 原 图 灰度图 像不加噪复原 图 加噪复原图

1. close all; clear all; RGB=imread('peppers.png'); I=rgb2gray(RGB); I=im2double(I); F=imnoise(I,'gaussian',0.05); PSF=fspecial('average',3); J=imfilter(F,PSF); K=exp(imfilter(log(F),PSF)); figure, subplot(231),imshow(RGB),title('原彩图像'); subplot(232),imshow(I),title('灰度图像'); subplot(233),imshow(F),title('添加高斯噪声'); subplot(234),imshow(J),title('算术平均滤波复原'); subplot(236),imshow(K),title('几何均值对图形进行滤波复原'); 原彩图 像灰度图 像添加高斯噪 声算术平均滤波复 原几何均值对图形进行滤波复原

相关文档
最新文档