基于特征匹配的全景图像生成方法研究与实现_第1页
基于特征匹配的全景图像生成方法研究与实现_第2页
基于特征匹配的全景图像生成方法研究与实现_第3页
基于特征匹配的全景图像生成方法研究与实现_第4页
基于特征匹配的全景图像生成方法研究与实现_第5页
已阅读5页,还剩48页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、校园微博系统的设计与实现 基于特征匹配的全景图像生成方法研究与实现III摘要全景图像是一种在某一确定的位置对一段场景进行多角度连续拍摄后,通过计算机技术识别出图像特征后,再进行后期拼接处理形成的一种广视角图像。随着应用需求的不断增加和图像处理技术的不断突破,图像拼接技术渐渐已成为计算机图形图像领域一个重要的研究课题。本文主要研究为基于SURF特征匹配的图像处理技术。首先,采集所需图片并其进行必要的预处理工作,同时系统的研究分析SURF特征点探测算法基本原理与过程,辅以实验进行实现并验证其特性;其次,在SURF算法的基础上设计并实现基于特征的图像匹配,并检测其速度和稳定性等性能。最后,利用特征匹

2、配的结果将原始采集图像进行拼接得到全景图像。本文最终在matlab平台上完成全景图像生成程序,并对核心算法和程序的稳定性进行相关测试。实验结果表明,通过SURF特征匹配算法,成功实现了基本全景图像的生成,并且有着良好的鲁棒性。关键词:特征匹配;SURF;图像拼接;全景图像ABSTRACTThe panoramic image is a king of wide-angle image using computer technology to indentify the features of a serious of images which is continuously photoed a

3、t a determined position in multi-angle. With the growing requirement of the implementation in science and public, the constantly breaking in image processing technology, Image Stitching technology has become gradually an important research in Computer Graphic Image.This thesis studies the Image proc

4、essing technology based on SURF(Speeded up Robust Feature) feature matching.first, analyzing systematically the basis theory and processing of SURF feature points detected algorithm after collecting the required image and making the necessary preprocessing,using experiment to verify its characterist

5、ic.Then, designing and implementation of the image matching by feature based on SURF algorithm,testing its speed and rubustness.finally, using the result of feature-matching stitchs the image from original iamge to panoramic image.This thesis accomplished the panoramic image generation program with

6、matlab, testing the core algorithm and stability of program. after acceptance testing and repeated use, the SURF feature matching algorithm can achieve the generation of panoramic image with the favorable robustness.Key words: feature matching; SURF; panoramic image; image stitching校园微博系统的设计与实现目录第1章

7、 绪论11.1课题的研究背景及意义11.2基于特征匹配的全景图像研究现状11.3研究内容及论文结构3第2章 基于SURF特征探测的全景图像生成方法研究42.1引言42.2全景图像生成算法42.3 SURF特征点探测算法42.3.1 尺度空间极值检测42.3.2 特征点位置确定72.3.3 特征点方向确定72.4 不变量技术特征配准算法82.5 本章小结10第3章 基于SURF特征匹配的全景图像生成系统设计113.1 引言113.2 总体设计113.3 各模块设计123.3.1 图像采集123.3.2 图像配准133.3.3 空白全景图像生成143.3.4 图像拼接153.4 界面接口设计153

8、.5 本章小结16第4章 全景图像生成系统实现及测试174.1 引言174.2 开发平台174.3 关键技术实现174.3.1 SURF特征点探测174.3.2对于特征变换矩阵的计算184.4 测试184.4.1 SURF特征点的稳定性184.4.2 EstimateGeometricTransform函数参数测试234.4.3程序正常运行流程及结果264.4.4不同条件的原始图像采集对程序的影响304.5 本章小结33结论35参考文献36攻读学士学位期间发表的论文和取得的科研成果38致谢39V第1章 绪论第1章 绪论1.1 课题的研究背景及意义图像是人类最直接的信息获取的来源,自从摄影技术诞

9、生以来,图像技术迅速席卷全球,同时对图像的研究也进入了新的时代,其中最基本的一个问题就是图像的视野,在计算机技术出现以前,人们主要的拓展图像视野的主要方法为手动拼接和广角镜头,然而手动拼接无法应对图像之间的一些扭曲变形,相位移动等人为因素带来的痕迹,而广角镜头总会使图像产生很大的扭曲变形,不能完整真实的反应图像特征。而随着计算机技术的普及与发展,数字图像处理方式渐渐取代传统图像处理方式。计算机的巨大计算能力使数字图像技术迅速发展壮大,让图像数字化并在此基础上进行对图像的各项操作成为了图像处理的主流。图像拼接亦得益于此。而随着计算能力的不断提高,将图像进行无缝拼接的技术越发成熟,速度也越来越快,

10、这为自动全景无缝图像的生成奠定了基础。全景图像是一种全方位的视图,它通过连续的变换视角获得一系列图片后,进行图像的拼接,以二维的方式展现三维,将多幅图像及图像之间的信息以单一图像的方式直观的表现出来。它最早的应用是军用遥感视图1。军方为了对整体进行全方位把握,需要将各个部分的遥感视图进行拼合,从而得到一幅信息量远大于单个图像的全方位视图。计算机的飞速发展使全景图像的拼接不再是军方的独有工具,借助不断发展的计算机技术,全景图像的生成门槛大大降低,一台智能手机就能轻松胜任。与此同时,正因为门槛的降低,图像拼接的应用领域大大拓宽。图像拼接技术,特别是全景图像技术被广泛应用于航空航天2、军事图像分析、

11、医学图像解析3、遥感图像处理4等多个方面,并且在计算机视觉、计算机图形学、虚拟现实等领域有着重要的课题研究。而今,除了这些专业领域方面的应用外,在我们的日常生活与工作中,它亦发挥着巨大的作用,最为浅显易见的应用就是普通移动智能客户端的图像拼接处理。由此可见,对于全景图像的技术的研究无论是对专业领域亦或民用领域,都有着巨大的科学价值和商业价值,因此对其的深入研究有着巨大的意义。1.2 基于特征匹配的全景图像研究现状上世纪八十年代,伴随着计算机的科技革命,数字图像处理技术已经开始了图像拼接技术的研究,经过了三十年的发展,将图像拼接技术应用到全景图像生成上已有成熟的流程,如图1.1所示,其中,最重要

12、的一部分就是图像的配准,这一步也是影响全景图像生成的关键一步。图1.1 全景图像生成流程在图像配准上面,目前,已有很多可以借鉴和研究的成果:1988年,CHarris提出了Harris角点检测算子,利用信号处理的自相关函数,在图片上找出一定量的对最小角度旋转、平移能保持不变的兴趣点5。但是此算法只具有一定的鲁棒性,对于图像处理预期效果而言,还有着不小的差距。因此,基于特征的匹配并没有引起更多的重视。1994年,Blaszka通过二维高斯模糊过滤得到了一些基本的特征模型6,使人们更多的开始关注基于特征的图像匹配方法。 1996年,微软研究院Richard Szeliski利用LM迭代算法在其提出

13、的八参数变换模型实现了图像的配准。这一算法亦成为图像拼接领域的经典算法7。同时由于其速度快,处理效果好,并且可以对抗一定程度的图像平移扭曲等多种变换,现在仍有很多人在研究该方法。2003年,Brown和Lowe等人提出了基于尺度不变特征变换(Scale-invariant feature transform)算法8,并成功利用此算法实现了图像拼接9。该算法的提出将对图像不变特征技术的研究推向了新的高潮。对于此算法,因为其展现出了良好的鲁棒性,能够对于光照,旋转,平移,噪声,缩放甚至仿射变换进行相当程度的对抗,并且能够自动出色的完成图像的配准工作,同时它又具有相比处理同类型的其他算法而言,拥有不

14、可比拟的速度优势,而受到了广泛的关注10。同时,今天的很多图像处理方法都要涉及到此算法的原理与方法,想当多的应用都基于本算法而实现的。2006年,在SIFT算法提出不久,Bay等人通过总结前人经验加上对SIFT算法的深入研究,又提出了一种基于不变量技术的特征检测算法, Speeded Up Robust Features算法(SURF特征检测算法)11。该算法利用了SIFT算法的过程,通过盒子滤波与快速积分的性质,大幅度加速了特征提取的过程,同时又不损失SIFT算法的鲁棒性和抗干扰性。目前为止,此算法具有SIFT算法的大部分优势,同时在速度方面又超越了SIFT算法,因而成为图像不变量技术领域的

15、国际领先算法。本文所涉及的图像拼接技术正是基于SURF算法而实现的。全景图像生成的另一主要部分就是图像的拼接。国外对于图像拼接技术研究相较国内而言要早很多,因此国内在此方面投入了巨大的研究力度,以中科院,国防科大,浙江大学,北航等为首的研究团队已经做出了相当的成果。然而对于科技公司来说,相较而言国内有着很大的差距。最典型的就是国外apple公司领导的QuickTimg VR系统12,Microsoft公司领导的surrounding video都是放眼全球比较实用经典的全景图像处理系统。在国内这方面几乎呈现空白态势。国内在此领域较为领先的为浙江大学所提出的一种基于检测重叠区域及边界模板匹配图像

16、配准算法13,本算法的优点在于易于实现,然而缺点亦同样明显,在鲁棒性和速度性方面依然有很大的改进空间。虽然本算法在国内填补了本领域的空白,然而由于和国外依然有不小的差距,因此还需要做更深一层的研究。由此可见,无论国内国外,对图像配准领域和图像的拼接都有着很高的热情,尤其是对于国内而言,如何快速稳定的进行高质量的图像的配准拼接工作有着很大的发展空间。另一方面,由于国内在这方面的应用机构依然多用于军方和少数科研机构,在普及化方面依然落后,因此在对于SURF特征点探测算法的研究上,依然有大量值得研究的问题,本文的主要工作就是结合SURF特征点探测完成一套全景图像生成程序。1.3 研究内容及论文结构本

17、论文共分为五章。旨在完成一部鲁棒性良好,速度优良,能够对抗一定图像失真的全景图像生成程序。其中主要研究、分析与归纳SURF特征探测算法,并在此基础上,将SURF嵌入程序当中,结合图像的像素级拼接,将一系列连续变换视角的图片拼成一副视觉效果良好的全景图像。本文首先对当下图像匹配领域最为流行的SURF特征点探测算法进行深入研究,并通过实验,完成图像的特征点提取,并查看实验与预期效果的差距,并在此基础上,设计实施全景图像拼接算法,将SURF特征点探测嵌入其中。因此,第1章主要介绍相关的背景资料,第2章主要是分析和研究SURF特征点探测算法及其相关理论。第3章为全景图像生成程序的算法设计与实现,第4章

18、为实验结果与预期效果对比,以及核心算法的实验结果分析。47第2章 基于SURF特征探测的全景图像生产方法研究第2章 基于SURF特征探测的全景图像生成方法研究2.1 引言全景图像生成最核心的步骤就是图像的配准,而图像的配准主要依靠的就是SURF特征点探测算法,在辅以不变量技术配准算法而成,因此对SURF算法的研究和实现是整个程序的核心。2.2 全景图像生成算法全景图像生成算法主要分为两大部分,第一部分是单幅图像的处理,第二部分是全景图像的处理。单幅图像处理是算法的核心,主要完成图像的变换矩阵的计算。全景图像的处理依托于单幅图像处理的结果,主要完成初始化全景图像范围以及单幅图像的变换拼接。具体情

19、况见图2.1。图2.1整体算法框架其中第一部分对应图中的前两个过程,让采集的图片集作为算法的输入,当图片载入成功后,开始逐一对图像进行SURF特征探测,之后对于探测的结果利用特征匹配算法进行匹配,并计算各个图像对于基准图像的变换矩阵。第二部分对应图中后两个过程,根据上一步计算出的变换矩阵,对每一幅图像进行预变换,以此找到全景图像的像素范围,当全景图像初始化完毕后,通过每幅图的变换矩阵将每一幅图拼接到全景图像当中。2.3 SURF特征点探测算法SURF特征探测算法是整个过程的核心所在,主要分为三个部分完成2.3.1 尺度空间极值检测在计算机视觉领域当中,最重要的一个环节就是让机器的视觉系统在未知

20、的前提下来分析现实中的物体场景,正是由于机器无法知晓物体的度量,在此领域中便提出了尺度空间理论来让机器获取图像的本质特征。此理论最核心的思想就是利用尺度参数使分析图像由静态变为动态,通过在不同尺度参数下的图像分析,找到图像在任何尺度下的不变点,以此作为尺度空间的极值9。在1984年,高斯卷积核被Koenderink成功证明是实现尺度变换的唯一线性核14。至此,可以将图像I(X,Y)的尺度空间函数定义为15:LX,Y,=GX,Y,*IX,Y (2-1)GX,Y,=122e-(X2+Y2)22 (2-2)其中,*代表对图像的卷积运算,为尺度因子,式(2-2)为二维可变高斯函数。SIFT算法正是基于

21、此来实现尺度空间的建立,然而在SURF算法当中,采用的是盒子滤波。虽然盒子滤波16不能百分之百等同于二阶高斯函数,然而却能够非常近似的逼近其值,与此同时,通过盒子滤波却大大简化了由卷积带来的计算,这是SURF与SIFT一个本质的区别11。图2.2给出了盒子滤波的示意图。图2.2 盒子滤波示意图由图可见,盒子的不同区域被赋予了不同的权值。在原始的尺度空间构造上,每层图像都依赖于前一层图像,然后再进行高斯迭代卷积。而在SURF算法当中,通过对盒子滤波的大小改变,然后再同原始图像进行卷积来形成新的尺度空间函数Dxx,Dyy,Dxy。卷积时,借助积分的特性,对原始图像同盒子滤波的过程进行加速。积分特性

22、的具体加速过程如下:首先,灰度图像的积分性质如下公式所示:IX=i=0xj=0yIi,j (2-3)其中I(i,j)为图像像素i,j处的灰度值。其次,对于图2.3内的ABCD矩形而言,其大小不影响区域内的灰度和,只与矩形四个端点处的灰度值有关。那么在一个矩形区域内的灰度和便可以表示为=A-B-C+D (2-4)具体矩形区域见图2.3。图2.3 积分图形示意图其中,A,B,C,D为矩形的四个端点,式(2-4)中的A,B,C,D为四个对应端点处的灰度值。在SURF算法中构建的尺度空间的最底层由99的盒子滤波得到,其对应的二阶高斯滤波=1.2。再观察图2.2,如果盒子滤波的结构保持不变,那么第二层盒

23、子滤波至少增长6个单位像素,由此,得到每一层的盒子滤波大小。图2.4 四层空间滤波器递增示意图假若构建的为4度4层空间,最底层的盒子滤波器大小为99,则每层滤波器的大小如图2.4所示。每一层所对应的高斯尺度值利用以下公式计算:approx=1.29N (2-5)其中N为当前盒子尺寸。所求出的为式(2-2)中的尺度因子。2.3.2 特征点位置确定当尺度空间构建完毕后,就要进行特定尺度下的局部极值求取,对于局部极值的求取,便需要检验Hessian矩阵行列式det(H)的值。但是在SURF算法中,Bay等人找到了另一个近似逼近det(H)的量7,如下公式所示:H=DxxDyy-0.9Dxy2 (2-

24、6)在此式中,只要确定H的值为正,便能够确定该点为极值,从而确定某一特定的局部极值。局部极值使每一个像素都会相邻26个像素,如图2.5,现在只需要将每一个像素与周围所有相邻像素进行对比,将其中的极大值或者极小值列为候选极值点,并记录相应的位置与尺寸。图2.5 尺度极值检测2.3.3 特征点方向确定Haar函数是一种正交归一化函数,是一种典型的小波,它能够计算出水平和垂直方向上的梯度。如图2.6所示,它和盒子滤波有相似之处,都是经过赋权重的滤波器。图2.6 haar小波示意图在SURF算法当中,通过对特征点构造主方向来确保其能够对抗图像旋转17,具体做法为:以每一个候选特征点在图像上的位置为圆心

25、,构造半径为6的圆域,通过Haar小波计算出x,y方向上的响应量,在对这些响应量进行赋值处理,离圆心越近,权值越高。之后用60度扇形将圆分为6个区域,以此让每一个特征点获得6个方向特征方向,并选择其方向矢量最大的方向作为特征点的主方向。如图2.7所示。图2.7 SURF特征点主方向2.4 不变量技术特征配准算法在图像特征点探测完毕后,便可以开始进行图像特征点的配准工作,其具体流程又分为三个部分。具体步骤如下:(1) 对于提取出的图像SURF特征点采用最近邻方法(Nearst-Neighbor快速匹配)进行粗匹配。(2) 在粗匹配的基础上采用随机抽样一致性算法(RANSAC算法) 18对结果进行

26、进一步提纯以此剔除粗匹配结构中的错误结果来提高整体算法的鲁棒性。最终获得估计仿射变换矩阵。(3) 对获得的数据点对利用最小二乘法19进行拟合优化,提高上一步获得的变换矩阵的精度,获取最终的仿射变换矩阵。总体流程如图2.8所示。图2.8 不变量技术特征匹配流程其中:(1). NN快速匹配算法:首先获取图像的特征点,开始寻找与其相距最近和次近的图像特征点,之后计算最近距离和次近距离之间的比值,以这个比值作每一个特征点的标志。之后筛选比值小于设定阀值的特征点为匹配特征点,反之不匹配。公式如下:T=最近距离次近距离 (2-7)当T小于设定值时,认为特征点匹配。(2). RANSAC算法:首先从上一步的

27、结果中可得至少三对特征点对,之后从中抽取三对不共线的特征点对,并将其仿射变换矩阵求出,记F1,接着计算剩余点对到F1的距离,并记录在预设范围内的点对个数F2。然后重复上述工作,以大量的随机生成数据记录出F2的最大值并发现F2不在改变时得到估计仿射变换矩阵。(3). 最小二乘法优化:在上一步的结果结构中,是对特征点对的线性拟合而得。本步所涉及的最小二乘法本质是数学的曲线拟合,因此它所处理的对象为根据RANSAC算法所得的估计仿射矩阵。图形学中,仿射变换可以表示为:xy1=a1a3a2txa4ty001xy1 (2-8)其中,tx,ty表示平移量,ai表示图像缩放、旋转等。由此可得放射变换矩阵方程

28、:X=a1x+a2y+TxY=a3x+a4y+Ty (2-9)设:E=i=1NXi-a1xi+a2yi+Tx2+Yi-a3xi+a4yi+Ty2 (2-10)其中,N为互相匹配的点对数。当E为最小值时,参数a1a2a3a4TxTy便是基于最小二乘法的优化结果。要求得参数的值,就分别对a1a2a3a4TxTy求偏导,结果如下:a1=i=1NxiXi-a2i=1Nxiyi-Txi=1Nyii=1Nxi2 a2=i=1NyiXi-a1i=1Nxiyi-Txi=1Nyii=1Nyi2 a3=i=1NxiYi-a4i=1Nxiyi-Tyi=1Nxii=1Nxi2 a4=i=1NyiYi-a3i=1Nxi

29、yi-Tyi=1Nyii=1Nyi2 (2-11)Tx=i=1NXi-a1i=1Nxi-a2i=1NyiN Ty=i=1NYi-a3i=1Nxi-a4i=1NyiN 联立方程组,求得全部参数a1a2a3a4TxTy的值,代入式(2-8)最终的放射变换矩阵便可得到。2.5 本章小结本章对全景图像生成程序的主要算法进行分析与研究,对于涉及的理论背景知识进行了扼要的阐述,并对核心算法SURF特征点探测算法进行了深入的学习,并在此基础上,设计了整体算法的流程框架,为之后的具体设计与实施打下坚实的基础。第3章 基于SURF特征匹配的全景图像生成系统设计第3章 基于SURF特征匹配的全景图像生成系统设计3

30、.1 引言全景图像生成程序要达到的效果为将一系列连续变换视角拍摄的图像按照一定顺序进行拼接,最终生成一副视角宽广的全景图像。本章就程序的各个模块的详细设计结合程序输入和要达到的预期目标展开,以此完成主体程序的设计。3.2 总体设计本程序的总体算法流程在之前的章节已经讲过,本小节就基于总体算法流程进行展开。程序总体分为四个模块,每个模块包含三个部分。详细见图3.1。图3.1 系统结构图第一部分为图像采集,主要完成原始图像的采集,图像的预处理,以及程序接口的设计。本步所输出的是所要处理的图像。第二部分为图像配准,此部分为整个程序的核心步骤,通过对第一模块所传输的图像进行SURF特征提取,图像排序,

31、特征点匹配,计算变换矩阵。本部分所输出的是各个图像的仿射变换矩阵。第三部分为空白全景图像的生成,此步承上启下,将第二部分所得的变换矩阵结合第一部分所得图像计算出最终全景图像的大小。本部分输出的是空白全景图像的框架边界框架。第四部分为图像拼接,本部分首先利用第三步结果初始化全景图像,再根据第二步结果和第一步结果将图像拼在空白全景图像上,本部分所输出的结果为最终全景图像。3.3 各模块设计3.3.1 图像采集图像采集是整个程序的第一步,不同的采集方式与采集条件都会直接影响图像生成的最终效果。此部分的工作是主要完成两个任务,第一个是原始图像的获取,第二个是图像的初步处理。详细处理流程如图3.2所示。

32、图3.2 图像采集流程在第一个任务当中,利用移动设备进行一系列图片的获取工作,主要采用两种方式,原地旋转连续拍摄与平行物体平移拍摄。在原地旋转拍摄过程中,保持光轴在同一水平面上,并尽量保证相机不饶光轴有旋转,每次原地旋转时角度不宜过大,保持连续拍摄的图片重叠率在百分之四十以上。对于此种方式,由于采集的图像不在一个平面内,因此重叠比率是影响拼接成功的重要因素。在平行物体拍摄时,同样保持光轴在同一水平面上,并且不产生绕光轴的旋转,移动时保持焦距一致且与摄像物体距离一致,保持连续拍摄的图像重叠率在百分之三十以上。对于此种方式,因为所处同一个平面,可以保证焦距不会大幅度改变,因此重叠比率的影响被削弱,

33、与摄像物体的平行成为此种方式的关键。两种方式都采用手持方式拍摄,这种方式优点是易于实现,但是在实际采集过程中,摄像头或多或少都会产生平行或者垂直于光轴的偏移,同时所得图像也会有一定的缩放,旋转,色差等多种变化。在第二个任务当中,为了更好的配合之后程序的顺利执行,主要是利用电脑对图片参数作进一步修正。在这部分主要是修正图片的大小以及对图片的存储进行归一化。将一系列图片放在一个文件夹当中,并保持同一系列的图片大小相同,格式相同,不同系列的图片分别不同的文件夹。之后通过程序的接口将图片导入程序当中,为下一步做准备。3.3.2 图像配准本模块为程序的核心,也是SURF特征点探测与匹配算法的实现模块,详

34、细流程如图3.3所示。图3.3 图像配准流程图像的配准主要分为以下几步:(1) 待配准图片特征的提取:将上一步所获得的待配准图像逐一进行图像特征点探测。(2) 将探测的SURF特征点制作为特征点描述符,并根据生成的特征点描述符制作每幅图变的特征点集以识别不同图片。(3) 按照特征点集进行SURF特征点的NN快速匹配,用以获得粗匹配结果。(4) 将获得的粗匹配结果利用RANSAC算法进行提纯。(5) 对上一步提纯结果进行最小二乘法曲线拟合。(6) 根据曲线拟合结果,计算图片的变换矩阵。在本部分当中,因为存在着随机抽样思想的存在,对于每一次获得的结果,可以看做不可逆过程,而且由于随机性的存在,再加

35、上RANSAC算法当中的多次迭代,使计算量骤增,但是由于本部分是整个程序的核心所在,一旦错误,结果将差异巨大,整个程序就会崩溃,因此,在计算完变换矩阵后对计算结果进行一次真假判别,当出现错误匹配结果时,重新进行图像配准步骤,虽然此步降低了程序的整体运行速度,但是可以极大的提升程序的成功率。然而对于变换矩阵的判断比较复杂,不易看出其是否匹配错误,因此将计算结果的真假判断放在下一部分当中。3.3.3 空白全景图像生成空白全景图像的生成主要起到承上启下的作用,在图片的拼接过程中,需要对多幅图片进行操作,为了准确快速的得到结果,就需要对所有图片放置一个共同的基准参照物,这样每幅图片就可以依据参照物进行

36、相应的操作而不必一步一步等待每一步结果出现后在进行之后的操作。详细流程如图3.4所示。图3.4 空白全景图像模块流程图首先,对于第一模块所输出的一系列图片按照第二模块所得的变换矩阵进行数值上的变换,每幅图片变换完毕后计算出其变换的位置,找到四个边界的位置并记录,用此来获取全景图像的长度和宽度。之后对图像长度进行判断,由于在上一步的基础上得到的变换矩阵,若出错,图像大小将严重错误,因此在此进行匹配错误的判定,若计算出的全景图像长度大于单幅图像长度的图像总张数倍,那么可以确定匹配失败,将此次结果抛弃,重新进入第二步。若计算出符合长度的全景图像,便可以开始进行空白全景图像的生成。3.3.4 图像拼接

37、最后一步主要任务是将前三模块的成果结合起来并展示。首先,读取第一步所得的一系列图片,之后按照第二步所得的变换矩阵对应每一幅图片进行变换,最后按照从左至右的顺序将变换后的图片嵌入空白全景当中。本模块是程序的最后一步,所得结果为一副完整的全景图像,但由于在第二部中的随机性,生成的图片不可重复,所生成的图像并非完理想,因此只需要从第二模块重新执行即可获得新的全景图像。3.4 界面接口设计一套完整的程序不仅需要完备的技术细节而且需要方便的接口界面以供用户方便使用,图形化的界面既可以隐藏技术细节又符合传统的用户操作模式,既不妨碍开发人员进行程序调试,又贯彻了以用户体验为核心的程序设计原则。具体实现流程图

38、如图3.5所示。图3.5 程序实施流程图首先在程序中设置一块面板让其在程序进行的不同阶段显示相应的结果。在程序开始阶段用以显示欢迎界面。程序的输入时多幅JPG格式、大小在10001000以内的图像所组成的单一文件夹,当程序输入完成后在之前的面板上显示所输入的图像用以确认需要合成的图片是否正确。当确认完毕开始进行图像的合成工作,在此阶段通过设置进度条来提示合成的进度,并在合成的拼接阶段用面板配合进度条来显示最终合成的过程。拼接完成之后面板显示拼接成功的全景图像并可以将其进行选择路径保存。在程序的运行过程中,设有不断翻滚更新的文字条以供使用者熟悉操作流程。同时在程序中设置有帮助可以查阅。界面布局如

39、图3.6所示。图3.6 界面布局示意图3.5 本章小结本章在对SURF特征点探测算法、特征点匹配算法的研究基础之上,完成了全景图像生成程序的设计工作,通过对其整体流程的规划以及对各个模块的详细设计,为之后的程序实现打下坚实基础。第4章 全景图像生成系统实现与测试第4章 全景图像生成系统实现及测试4.1 引言通过前面对SURF核心算法的研究和对整体算法流程的详细设计,全景图像生成程序便可顺利的展开。而在实施的过程中,关键技术的成功实践是整个程序成功的成败点,同时在实现的过程中遇到的技术细节的问题亦是影响程序各项指标的重要因素。4.2 开发平台本文所选的开发平台为MATLAB v.R2014b,开

40、发系统为WINDOWS 7,内存大小6GB,CPU为Core i5 2.5GHZ。图像采集设备为iphone5。在实施过程中,由于MATLAB提供了强大的库函数及方便的运算方式,为核心算法SURF算法的实现节省很多时间和空间上的复杂性。但是说明一点,经测试发现在实施的过程中6GB内存使用量为500MB,但为了能够让程序流畅的运行,建议预留1GB内存。4.3 关键技术实现4.3.1 SURF特征点探测MATLAB平台提供了强大的图形处理函数,利用库函数detectSURFFeature完成图像的尺度空间建立,特征点描述符生成以及特征点位置确定,从而将图形的SURF特征点提出,在提出前需要将RGB

41、图像转换为灰度图像。当完成探测特征点探测之后,利用extractFeature函数将探测出的特征点进行提取存储。其中所涉及的库函数形式如下:detectSURFFeaturegrayimage extractFeature(grayimage,points)其中,grayimage为待探测SURF特征点的灰度图像,points为提取的特征点类型。在本程序中points为SURFPoints。处理结果如图4.1。其中,图(a)显示的是对图像进行SURF特征点探测后所提取出的图像特征点,图(b)为在所提取出的特征点当中提取出识别性最强的200个特征点,绿色圆圈的圆心为特征点的在图像上的位置,圆圈大

42、小代表特征点的识别性强弱,每个圆圈中显示出的一条半径为对应特征点的方向。 (a) (b)图4.1 原始图像的SURF特征点探测结果由于全景图像的生成需要图像视角的变换,因此需要对SURF进行抗扭曲仿射效果测试。同时因为采用的是手持方式进行的图像采集工作,对于图像出现的噪点,光强等不定因素的影响也需要实验验证。4.3.2 对于特征变换矩阵的计算当对SURF特征点对匹配完毕后,需要进行计算图像的投影变换矩阵并用于之后的空白全景图像的生成和全景图像的拼接,MATLAB对此步进行了优秀的封装,通过estimateGeometricTransform函数即可求出两幅图之间的变换矩阵。其函数形式如下:es

43、timateGeometricTransform(matchedpoint1,matchedpoint2,type,con,num)其中matchedpoint1为第一幅图像的匹配的SURF特征点矩阵;matchedpoint2为第二幅图匹配的特征点矩阵;type为选择计算出的变换矩阵类型,其中有三种不同的矩阵类型,similarity(相似)、affine(仿射)、projective(投影);con为设定阀值;num为迭代次数。在本方法中因为最终的结果是将图像投影至空白全景图像上,因此type设置为projective。对于con和num都是用以提高算法的鲁棒性,本程序设定con为99.9

44、,num为2000,此设定根据测试数据得来,具体测试内容见下文。4.4 测试4.4.1 SURF特征点的稳定性SURF特征点是本程序的核心与根本,它的稳定性直接影响程序的稳定性,对于使用移动手机进行图像采集的方式而言,其最主要的影响因素为图像的旋转,平移,缩放,噪点以及光强,因此本节主要针对这五个条件进行测试,分析SURF特征点的鲁棒性。实验一:SURF特征点对抗平移、缩放、旋转能力本实验选取五组实验进行验证。第一组为当图像产生平移并顺时针旋转27时SURF特征点变化和匹配情况,实验结果如图4.2所示。 图4.2顺时针旋转27与原图的匹配图4.2为图像顺时针旋转27时与原始图像的匹配程度,其中

45、红圈表示原图中所匹配的点,绿十字表示旋转后匹配的点,黄线代表两幅图像间的匹配对应关系。图中选取了匹配程度最强的200个SURF特征点进行展示。第二组为当图像进行逆时针旋转30并按百分之三十的比例进行缩放后的结果,具体成果如图4.3所示。图4.3逆时针旋转30并缩放30%匹配结果本组实验对原图进行了大尺度的缩放,处理后的图片探测出的SURF特征点急剧减少,同时匹配的特征点对数同样急剧减少,具体情况见表4.1。第三组为图像进行翻转后SURF特征点探测情况和匹配情况,具体如图4.4所示。图4.4 图像翻转时的匹配本组实验对原图进行了极端测试,利用完全翻转的图像进行匹配,结果表明可探测到的SURF特征

46、点数并未发生大的改变,而且匹配的SURF特征点数值为除参照组外所有小组的最高值。 第四组为对原始图像的2度旋转加上百分之五的放缩,用以模仿实际手持上的图像微小偏转。具体情况如图4.5所示。图4.5 模拟手持拍摄场景时的匹配第五组为参照对比组,使用原图与原图进行匹配,结果如图4.6所示。表4.1 不同程度平移、放缩、旋转情况下SURF特征点探测与匹配结果组数第一组第二组第三组第四组第五组SURF特征点数(个)1123496918838924匹配对数(对)326116706503924图像尺寸450800528612450800454774450800利用率(%)29.0223.3876.9060

47、.02100.00图4.6 原图与原图的匹配结果观察图4.6发现,正确的匹配结果相互之间的线条呈现非常有序的状态。对比图4.2至图4.5,可明显发现,当图像发生平移、缩放、旋转变换时,SURF特征点的匹配开始出现错误匹配,但大多数特征点能够正确匹配。表4.1前三组数据表明,当图像发生较大的平移、缩放、旋转变换时,图像所探测到的SURT特征点会发生较大的变化,同时所匹配的特征点对数数急剧下降。第四组数据表明,当图像发生微小的旋转,平移、缩放变换时,同样会对SURF特征点数目和特征点匹配对数产生一定的影响,但根据SURF特征点为64维的向量,理论上讲100组正确的匹配对数足以进行对图像的配准工作,

48、因此对于微小变化所产生的SURF特征点及匹配对数的影响认为是在正常值以内。此次实验表明SURF特征点足以对抗由手持设备所带来的图像平移、旋转、缩放的影响。实验二:SURF特征点抗噪点、光强能力本实验总共分为五组。第一组将原图像的光强增加百分之五十,第二组将原图像的光强减少百分之五十,第三组对图像添加50分贝的噪声,第四组对图像添加100分贝的噪声,第五组对图像添加百分之三十的光强和30分贝的噪声,第六组将图像的光强减少百分之三十同时添加30分贝的噪声。最终的特征点探测结果及匹配结果如表4.2所示。表4.2 不同光强、噪声情况下SURF特征点探测与匹配结果组数第一组第二组第三组第四组第五组第六组

49、第七组SURF特征点数(个)1294216102417161326498924匹配对数(对)600181614253606303924利用率(%)46.3683.7959.9614.7445.7060.84100.00测试图像为图4.1(a) ,大小为450800。前两组实验虽然SURF特征点的个数随着光照强度的呈现正相关线性变化,但是利用率却呈现出负相关性变化,光照强度的减弱能够过滤掉很多的不稳定SURF特征点而留下标示性强点,由此可知适当的降低图像的光强可以加速对SURF特征点的选取过程为整个算法提速,但此方法不适用于本身探测出的SURF特征点较少的情况。第三组与第四组表明随着噪声的不断增

50、加,探测出的SURF特征点同样表现出正相关关系,但是利用率的持续降低表明增加的特征点为无效特征点,而在特征点个数不断增高的同时,匹配对数的急剧降低则表明,随着噪声的不断增加SURF特征点的探测准确性在逐渐下降。第五组与第六组在30分贝的噪声环境下,光强的影响依然不变并且适当的减弱光强依然对SURF特征点起到过滤的作用。总体来说,图像光强的适当改变与噪声的微弱增加不会大幅度影响SURF特征点的探测。因此SURF特征点足以对抗手持设备拍摄所带来的光强与噪声影响。实验三:综合影响本组实验主要用于模拟实际场景,将图像进行微小的刚体变换和仿射变换在加上微弱的光强、噪声差异后来进行图像的匹配工作。同时设置

51、不同的图像以检测此算法的普适性。第一组图像为图4.1(a),大小450800,加上二度逆时针旋转,百分之二十光强,二十分贝噪声用以考察综合影响。匹配程度如图4.7所示。SURF特征点匹配结果如表4.3所示。图4.7微小变化平移、缩放、旋转、光强、噪声下SURF的匹配结果显示对于微小综合变化后的图像,SURF特征点在探测几乎没有收到任何影响,在匹配过程中依然能够找到足够多的SURF特征点进行配对,这表明对于微小的综合变换来说有着高的抗干扰性。第二组原始图像如图4.8左半边所示,大小为500888,加上二度逆时针旋转,百分之二十光强增强,二十分贝噪声。匹配程度如图4.8所示.图4 - 8 微小变化

52、平移、缩放、旋转、光强、噪声下SURF的匹配第二组SURF特征点探测数及匹配对数如表4.3所示,由于所选图像简洁直观,所探测出的SURF个数较为稀少,然而在为数不多的SURF特征点当中,经过微小综合变换,其匹配率依然能够达到50%以上。表4.3 微小变化平移、缩放、旋转、光强、噪声下SURF的探测与匹配组数原SURF点数(个)现SURF点数(个)特征点匹配数(对)匹配率(%)第一组924117458649.91第二组871166253.44综合表4.3中两组数据,可以发现对于图像的微小综合变化几乎不影响SURF特征点的探测,也不能大幅度影响特征点的匹配结果。综合三个实验表明,SURF特征点探测

53、及匹配算法具有良好的鲁棒性。手持设备所获取的图像能够利用SURF特征点探测和匹配算法进行处理。4.4.2 EstimateGeometricTransform函数参数测试在本次测试中由于计算结果为变换矩阵,不方便进行比较,因此在计算出变换矩阵后对其应用到图像上,让其进行图像的全景合成步骤,之后利用空白全景图像生成模块计算出根据部分图像生成的空白全景图像边界,当投影变换计算错误将会造成极大的投影误差,使得空白全景的图像大小急剧变大,因此对空白全景图像的宽与高进行判定即可得知矩阵结果是否正确。本次实验分为九组,前四组在num一定的情况下测试con对于结果的影响。后四组在con一定的情况下对num进

54、行测试观察其对结果的影响。最后一组为极端测试,利用最小参数进行测试。实验为三张图片的部分全景生成,成功效果图与失败效果图如图4.9所示。成功效果图的宽高为12321077,失败效果图的宽高为20381605,正确估计投影矩阵后所计算出来的全景图像宽边界不会超过图像幅数与图像宽度的乘积,高度不会大于图像高度的2倍,对于失败效果图而言,其宽和高明显异常。因此用此条件作为判定来判断是否计算成功是可行的的。图4.9 成功失败效果对比当num设定为2000时,前三组各重复100次并记录其所用总时间,con第一组为1,第二组为10,第三组为50,第四组为99。当con设定为99.9时,后三组各重复100次

55、并记录其所用总时间,num第五组设定为1,第六组为100,第七组为1000,第八组为2000。表4.4 不同函数参数设置对比结果组数宽正确数高正确数共同正确数比率用时(s)第一组77907777%43.44第二组85928585%43.81第三组971009696%50.74第四组100100100100%53.61第五组71644%46.48第六组991009898%51.83第七组100100100100%50.20第八组100100100100%55.49第九组61733%46.3第十组100100100100%55.08第九组设定con为1,num为1。第十组设定con为99.9,num为10000。结果记录如

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论