全景图像拼接技术_第1页
全景图像拼接技术_第2页
全景图像拼接技术_第3页
全景图像拼接技术_第4页
全景图像拼接技术_第5页
免费预览已结束,剩余18页可下载查看

付费下载

下载本文档

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

文档简介

1、第6章全景图像的拼接技术全景图像(全景图)的拼接是指利用摄像机的平移或旋转得到的部分重,登的图像样本,生成一个较大的甚至360°的全方位图像的场景绘制方法,换句话说,就是给定某个真实场景的一组局部图像,然后对这一组图像进行拼接,生成包含这组局部图像的新视图。目前全景图像基本可分为柱面、球面、立方体等形式,以柱面和球面全景图最易实现而普遍采用。本节主要介绍柱面和球面全景图像的拼接算法。全景图的拼接一般有以下几个步骤。(1)将从真实世界中拍摄的一组照片以一定方式投影到统一的空间面上,如立方体、圆柱体和球体表面等,这样这组照片就具有统一的参数空间坐标。(2)在这个统一的空间对相邻图像进行比

2、较,以确定可匹配的区域位置。(3)将图像重叠区域进行融合处理,拼接成全景图。在全景图的拼接中,一般都是根据图像序列中相邻两幅图像的重叠区域的相似性来实现的,有基于特征的方法和直接方法等。本章将主要从基于特征的方法和直接方法两方面介绍柱面和球面全景图像的拼接算法技术。6.1 柱面全景图像拼接技术本节分为两部分:第一部分是基于特征的拼接算法,这种算法主要从两幅图像中选择一系列特征,然后根据相似性原则进行图像间的特征匹配,这一部分介绍了基于特征点和特征块匹配的全景图像拼接算法;第二部分是基于相位相关拼接算法,这种方法是直接从图像的重叠区域对应像素灰度值出发考虑,利用所有可利用的数据实现很精准的匹配。

3、6.1.1 基于特征的拼接算法1 .基于特征点的拼接算法本节提出一种基于特征点匹配的柱面全景图像拼接算法。首先将360°环绕拍摄的序列图像投影到柱面坐标系下:然后提取各图像的尺寸不变特征变换(ScaleInvariantFeatureTransform,SIFT)特征点,通过特征点匹配完成两幅图像的配准:再根据配准结果计算出图像间的变换参数;最后采用加权平均的融合方法对两幅图像进行无缝拼接。1)柱面投影变换在进行柱面全景图的拼接过程中,为了保持实际场景中的空间约束关系和实际场景的视觉一致性,需将拍摄得到的反映各自投影平面的重登图像序列映射到一个标准的柱面坐标空间上,即柱面投影,得到柱

4、面图像序列,再进行拼接得到柱面全景图。柱面投影变换的核心是投影变换公式,如图6.1.1(a)所示为柱面投影空间,I表示原始图像,/'是I的柱面投影图像,坐标原点0选为圆柱中心(投影中心),假定摄像机的运动都发生在Oxz平面,而且图像中心点就是光轴与图像平面的交点,现在要得到。点观察到的原始图像I在柱面空间K上的柱面投影图像°设柱面半径r,投影角为氏图像宽度为W,图像高度为H,容易得到柱面图像的宽度为2rsin8/2,高度仍为H。图像的像素坐标均以图像平面中的最左上角像素为坐标原点。对于图像I上的任意一点P(x,y),在柱面图像上的对应点为P'(x',y'

5、;),对点P沿Oxz平面和O-xz的横截面分别如图6.1.1(b)和图6.1.1(c)所小,可得柱面投影变换公式J.0.(fx-W/2x=rsin+rsmaictan<2IIr)rHr(y-H/2)<k式中,k=7r2+(W/2-x)2,r=IV/2tan(8/2)。柱面投影变换示意图r为拍摄焦距,。为每张图像所占的弧度角,一副全景图像所占的角度为360°。假设相机拍摄时为等转角拍摄,相邻两幅图像重合度均为小拼接成一副全景图像需要待拼接图像总数为九,难么每一幅图像所占的弧度角就可以近似为27r10=n(1-77)2)图像配准在全景图的拼接中,图像的配准既是一个难点乂是一项

6、核心工作,它宜接影响图像拼接的效果。基于图像特征的配准方法,首先要尽可能准确地提取出图像的特征,所以选择高精度的提取方法至关重要。为了克服由于照相机的运动而存在的视角和尺度上的噪声,采用2004年Low改进的SIFT算法完成图像序列特征点的提取。(1)特征点的提取。SIFT特征提取算法步骤如下。检测尺度空间极值.首先对原始图像进行一系列的高斯滤波得到图像的高斯空间;然后对高斯图像进行差分,形成高斯差分图像空间DOG图像(DiffeienceofGaussian);最后,取这些特征点不受噪声影响,DOG图像保证特征点不受亮度差的影响,在高斯差分图像空间提取极值点保证尺度不变性。精确定位特征点。首

7、先获取候选特征点处的拟合函数,、dDT1Td2Dd(x)=d+衩X+/T诉X求导得到极值点X=dX2dX对应极值D(X)=D+ldDT2dX不断修正X求取局部最优点,剔除出(石|V0.03的弱特征点,同时获取候选特征点的精确位置、尺度。然后获取特征点的Hessian矩阵_/DxxDxyDxyDyy)的特征值a、B别代表x、y方向的梯度,剔除仅对一个方向梯度大的特征点。确定特征点的主方向。这一步骤的目的是用于特征点的匹配,找出主方向后,在进行匹配时就可以把图像旋转到主方向,以保证图像的旋转不变性。(x,y)处的梯度值和方向值分别为lfy)-L(x-lfy)24-L(x,y+1)-L(x,y-l)

8、20(x,y)=tan-1L(3+1)-1)i(x+l,y)-L(x-l,y)在以特征点为中心的邻域窗口内采样,采用梯度方向直方图来统计邻域像素的梯度方向,直方图的最高峰值点对应的方向即为主方向。生成特征点描述符。特征点的匹配就是进行特征点描述符的比较,所以特征点的描述非常重要。以特征点为中心取16x16的窗口,然后在图像的4x4小块上计算8个方向的梯度方向直方图,绘制每个梯度方向的累加值,形成一个种子点。则一个特征点就用4x4=16个种子点来描述,而每个种子点有个8个方向向量信息,所以每个特征点就可以产生4x4x8=128个数据,即128维的SIFT特征向量或特征描述符。对特征向量的长度归一

9、化即可去除光照变化的影响。通过以上四步计算得到的SIFT特征点己经比较稳定了,下面就进行特征点的匹配,以完成图像的配准。(2)特征点的匹配。以两个特征点描述符之间的欧氏距离作为特征点匹配的相似度准则。假设特征点对p和q的特征描述符分别为Desp和Desq,则其欧氏距离定义为d=Z(Desp(i)-Desq(i)211=0,.127首先采用优先kd树进行优先搜索来查找每个特征点的两个近似最近邻特征点,例如,找出特征点p欧氏距离最近和次近的两个相邻特征点q'和q,然后计算p与q'以及p与q两组描述符之间欧氏距离的比值3如果t小于规定阈值T,则视为匹配成功,接受点对(p,q'

10、)为图像序列中的一对匹配点,否则匹配失败。然后采用RANSAC(RandomSampleConsensus)算法通过不断地在所有特征点对中抽取4对特征点计算透视变换模型,同时统计符合模型的内点,获取最多内点的模型即为图像转换模型,此时错误匹配的点对也被删除。3)图像融合图像配准后,根据图像间变换模型确定图像间的重叠区域,今儿拼接图像序列形成一幅完整的、宽视角的全景图像,但是由于普通的手持照相机在拍摄照片时会自动选取曝光参数,这会使输入图像间存在亮度差异,导致拼接后的图像缝合线两端出现明显的明暗变化,因此,为了使融合后的图像具有视觉一致性而没有明显的接缝,采用加权平均的融合方法进行图像平滑过渡。

11、假设元和心是两幅待拼接的图像,f是融合后的图像,则九(。)f(zy)=piAtey)+刈心(x,y)O,y)e(An人)、似匕刃式中,n、电表示权重值,与重桎区域的宽度有关,且盛+d2=1,0<dltd2<1,在重叠区域,dI由1渐变至0,d2由0渐变至1,由此实现了在重叠区域由人慢慢平滑过渡到力。2 .基于特征块的拼接算法本节提出一种基于特征块匹配的柱面全景图像拼接算法。首先将360。环绕拍摄的序列图像投影到柱而坐标系下:然后以一幅图像为基准图像,选择基准图像中边缘信息丰富的块作为基准块,利用特征块匹配法在待配图像中找出与基准块匹配的配准块,进而实现两幅图像的配准:再根据配准结果

12、计算出图像间的变换参数:最后采用平滑因子对两幅图像的重,登区域进行图像无缝拼接。1)柱面坐标映射柱面投影就是将图像投影到柱面上,以获得从投影中心(视点)观察图像在柱面上的成像,从而满足人类的视觉一致性。如图6.1.2(a)所示,。为观测点,Cylinder为投影柱面,/为待投(a)影图像,r为I的柱面投影图像。将图6.1.2(a)分别向观测点所在水平面和OMN面投影,得到的截面图为图6.1.2(b)和图6.1.2(c),其中N(x,y)为/中的一点,N'(/,V)为其对应的投即点。图像的像素坐标均以图像平面中的左上角像素为坐标原点。设柱面半径为r,摄影宽度角为。,图像宽度为W,高度为H

13、。容易得到,柱面图像的宽度为2rsin(。/2),高度仍为H。由图6.1.2(b)和图6.1.2(c)可得柱面投影公式为,0x9-W/2图6,1.2柱而坐标映射示意图=r-4-rarctan2r,Hr(H/2-y)其反投影公式为Wxf-rO/2%=+rtan2Hk(H/2-/)y=2式中,J为每张图像所占的弧度角"为拍摄焦距,r="/2tan(6/2),k=y/r2(x-W/2)2.一幅全景图像的角度为2n°假设照相机拍摄时为等转角拍摄,相邻两幅图像的重合度均为I拼接成一幅全景图像需要的待拼接图像总数为n,那么每一幅图像所占的弧度角就可以近似为2)图像配准(1)基

14、准特征块的选取。利用特征块匹配进行图像拼接的关键一步就是选取基准特征块,基准块选取不当往往会造成拼接算法不能适应待拼接图像的变化。因此,本节基于边缘信息进行基准特征块的选取。采用Sobel算子对待拼接图像进行边缘检测,获得原图像的边缘图以图像中每个像素点的邻域边缘量(NE/1)来定义此位置的边缘信息大小为NEA(ij)=yye(i+m,j+n)式中,A为在点E(iJ)处所取邻域边长的1/2o找出NE4(i,j)最大值所对应的点(ij)作为基准点,然后以此点n为中心点选择大小适中的块就可以找到基准特征块。基准特征块的.t|trinput行数乙和列数7;分别取Tr=rinput/8Tc=cinpu

15、t/8如图6.1.3所示,图中input为待拼接图像,input为图像的行图6.1.3特征块选取力数,cinput为图像的列数,T(图中阴影部分)为所选的基准特征块。(2)配准准则图像配准就是通过一定的配准准则找出两幅待拼接图像的重登区域,它是整个图像拼接算法的核心部分。本书以两幅图像重叠部分灰度差的平方和为标准来衡量此区域是否配准,设两幅待拼接的图像分别为A(iJ)和办。/),模版为T,则配准公式如下D(i,j)=£闻(")一T(”)式中,T是图像,28力中的基准特征块(模版图像块):模版T登放在图像上平移,模版下覆盖的搜索块叫做子图(ij)是子图左上角在图像A(iJ)中

16、的坐标。最佳匹配块为D取最小值时所对应的A(i,j)中的搜索块。将式(6.1.15)展开得D(iJ)=WW酩&y)一2$ja,y)T(x,y)+T2(x,y)xy式中,中括号内的第一项是模版T覆盖下图像Zi(iJ)子图S»j的能量,它的值与T无关;第三项是基准特征块T的总能量,当模版T选定后它就是个常数:第二项可以看成衡量Sj与T相似度的量,由不等式的性质可以知道,当Sj与T完全匹配时,此项的绝对值最大,因此,可以选取以下配准式准则R(i,j)=WWSjG,y)T(x-i,y-i)ky对式(6.1.17)归一化得A(iJ)=ZxZy(,;Uy)-)(n%-Cy-7)-T-s)

17、2ZxSy(r(x-ify-j)-r)2式中,S为图像A(iJ)中对应搜索块Su的灰度平均值;T为基准特征块的灰度平均值。计算对应重叠区先与t的黄),其最大值所对应的位置(i。,j。)即为最佳匹配位置3)图像融合将两幅图像配准之后,接着就可以进行融合了。图像融合就是指将图像进行空间叠加从而增加信息量的过程。为了能够使融合后的图像具有视觉一致性而且没有明显的接缝,本书采用渐入渐出加权平均的方法实现图像平滑过渡。设两幅待拼接图像分别为A(i,j)和,2。,力,融合后的图像像素/(ij)可表示为(1J)(iJ)e人I(iJ)=叫(ij)+(1-a)I2(itj)(ij)GZin/2也切)aJ)el2

18、式中,aw(0,1),由式(6.L19)可以看出,当a由1渐变到0时,图像从A(i,力平滑过渡到了心(ij),这样就可以消除拼接的痕迹。4)算法步骤总结前面的论述,该柱面全景图像拼接算法步骤如下。(1)读取两幅待拼接的图像4(iJ)和以刑),将原始图像4GJ)和以订)按照式CLIO)分别进行柱面投影,得到柱面图像/ci(Lj)和2(仃)。(2)取L(iJ)为基准图像,对图像/c2(。)进行边缘检测,并对其边缘图计算NEA(i,j)的值,找出NEA(i,j)的最大值,并以此点作为特征块的中心点选取基准特征块。(3)对图像H(iJ)和LOJ)和按照配准准则进行搜索,找出最佳匹配块。(4)根据两个匹

19、配块的位置计算两幅图像之间的位移,采用融合算法对拼接结果图像进行融合显示。(5)重复步骤(1)步骤(5),完成所有图像序列的拼接。6.1.2基于相位相关拼接算法本算法采用基于傅氏功率谱的频域相关技术来寻找相邻图像的重叠部分,首先将相机拍摄的实景照片投影到圆柱面上,以柱面图像的形式存储;然后精确定位相邻两张照片间的重叠位置并融合相邻图像的亮度,通过图像拼接形成完整的360。环境视景:最后采用互动率谱中的相位信息进行图像配准。其对图像间的亮度变化不敏感,这样可以有效避免局部最优的现象。简而言之,本算法使用的拼接柱面全景图方法可分为三部分。(1)利用频域相位相关性构造函数,该函数对两幅输入图像分别进

20、行二维傅里叶变换,返回相邻两幅图像之间偏移位置。(2)计算一组360°实景图片的相机焦距,对图像序列分别进行柱面投影。(3)逐次调用第一部分中函数对投影后图像进行拼接,并对光照进行处理,完成柱面全景图的生成。1 .投影变换及焦距估计在进行柱而投影时,只要找到柱面坐标和直角坐标直接的对应关系,就可以进行投影变换。柱面投影原理图如图6.1.4所示。图6.1.4柱面投影原理图设投影前图像h宽为W,高为H,令W_0=round(学)H_0=roundg)则投影后图像的坐标(y)同Ii的坐标3,九)有如下对应关系X=r°um篇2噜2+忆。)y=r°und(泮p+比°

21、;)式中,3=1/W,h=1/H,应用柱面投影公式对于图像进行投影变换时,焦距f是重要参数。将投影前的照片序列两两之间的平移量分别设为Ci,C2,,C12,其中Ck表示第k幅照片与第k+1幅照片之间的水平位移,则可计算出焦距的初始值fo为12八,。立各k=l为了尽可能地逼近实际拍摄焦距,也可以采用迭代算法来减小误差,算法具体步骤如下。(1)据式(6.1.22)初步计算出焦距/o,令f=卜(2)以/作为柱面投影参数,将该组照片投影到统一圆柱面上。(3)对投影后的图片kbJ12进行处理后再次使用相位相关法得出相对位移,据此重新计算焦距/o。(4)如果|/一为|>£,即精度不满足要求

22、,则令f=/o,程序转入步骤(3)。(5)直至|f一%|V£,得到较精确的f值。2 .基于相位相关的图像配准图像拼接是根据相邻两幅图像重叠区域的相似性来确定的,包括图像配准和图像融合两个关键环节。图像配准有基于区域、基于特征和基于相位的方法。基于区域的方法通过比较两幅图像亮度(或颜色)差异,并使之最小化来寻找最佳匹配点,只要时间足够长,就可以拼接得足够精确。基于特征的拼接方法采用寻找局部对应和抽取图像之间的对应特征点的方法进行匹配,如Hanis角点算法和SUSAN角点算法,该算法的优点是计算量比较小,计算速度快,但是不一定能找到合适的图像特征,结果也可能是局部最优解。本节采取的是一种

23、基于频域的方法,通过求得图像在频域上的相位相关特点来找到特征位置,从而进行图像拼合。假设*xy)表示尺寸为MXN的图像,该函数的二维离散傅里叶变换为F(U,V)WWW/(%,ye-2rtj(ux/M+vy/N)x=0y=o式中,F(u,v)是复变函数:ii、v是频率变量,u=O,l,Nl;x、y是空间或图像变量。二维离散傅里叶逆变换为MTNT/(x,y)=yYF(u,v)e-2nj(ux/M+vy/N)x=0y=o式中,x=y=0,l/*,N-lo设两幅图像h、I2的重叠位置为(xo,yo),则图像L、b的互动率谱为=_2町of+y亮)比延川)X2,七)1式中,*为共辗符号,对式(6.1.25

24、)两边进行傅里叶逆变换将在的坟)处产生一个5函数,因此,只要检测式(6.1.25)傅里叶逆变换结果最大值的位置,就可以获得两幅图像间的平移量(xo,y。)。具体算法步骤和函数如下。(1)读入两幅照片h、k(函数输入),并转换为灰度图像。(2)分别对h、b作二维傅里叶变换,即A=fft2(/i),B=fft2(/2)则通过对A、B进行简单的矩阵运算得到另一矩阵Q,即3*conj(4)3norm(B*conj(4),1)(3)由式(6.1.27)可知,q的二维傅里叶逆变换矩阵。在Go,y。)处取得最大值,通过遍历比较C(i,j)大小即可找到该位置,并作为函数返回值。3.图像拼接对于重,登区域的图像

25、,如果仅进行简单平均加权求和,会在拼接的图像中存在明显的拼接痕带,主要原因是相邻图像间存在亮度的差异和普通相机的拍摄会在采集到的图像中出现边缘失真的现象,而拼接使用的恰恰是图像的边缘区。本节采用函数加权法来处理重福区域的图像,确保图像的无缝过度。设A(x,9)、i2(戈,y)分别为待融合图像区域点(xy)的像素值,则融合后该点的像素值I(x,y)为/(x,y)=+%(3),2式中,匕(X,丁)、w2(x,y)分别为重叠像素点对应A、,2的加权值。为使拼接后的图像在两个方向上都能平滑过渡,达到更好的融合效果,本书的加权系数Wi(X,y)、IV2(x,y)采用三角函数W12=4sin(wx,+3)

26、+T式中,xz=i/Wo本节对柱而全景图像的几种常见拼接算法作了详细论述,阐述了基于特征点、特征块和相关相位三种拼接方法,都是从投影变换、图像配准和图像融合三方面进行叙述。6.2基于球面的全景图像拼接本节分为两部分:第一部分介绍球面全景图像的基础知识,包括球面投影模型、球面全景图的投影变换、参数模型和图像变形问题的解决等:第二部分介绍基于球面的全景图像拼接算法,一种是基于特征点的方法,另一种是基于像素点对应关系的方法。6. 2.1球面全景图像基础知识球面全景图可以实现参与者在照相机的视点以任意角度、任意方向的观察,将所有拍摄的图像都投影到球面模型上进行合成,以便得到球而全景图。球而全景图符合人

27、眼的构造并最适应人们的观察习惯,且满足各向异性,真实感会更逼真。由于球面全景图在计算机里存储结构的限制,一般对球面全景图在俯仰角和方位角上进行采样处理,再展开球面图像成宽高比为2:1的平面图象。球面投影模型避免了空间不足的缺点,它不仅可以完整的表现全景空间,能够搜索和反应空间中所有方向的场景,而且它在独立的球坐标系下能够仅用方位角和俯仰角来表示图像上的任意一点,可以很好地完成图像的存储和漫游时的截取工作,这是利用球面投影模型最大的好处。尽管球而全景图比较复杂,但它符合人眼的结构,是观看视点空间最理想的方式。因此,随着科技的不断发展和人们要求的不断提高,球面全景图必将成为最重要的研究对象。1 .

28、球面全景图的投影变换基于图像拼接的全景图生成技术需要解决的问题是显示的模型和产生模型上的图像。球面全景图不仅能够描述大范围场景,而且最符合人们的观察习惯。球面模型尽管比较复杂,但垂直方向视角广,可实现真正意义上的全景浏览,虚拟场景是经过图像处理生成全景图进行空间关联,再建立起具有交互性的虚拟环境。1)图像参数模型为了从图像中提取球面每个位置的色彩信息,需要知道图像中像素对应的球面位置,其中某一幅图像拍摄时的方向为基准,从而得出图像中像素在球面上的对应位置。(1)拍摄方向参数模型。定义一个原点为视点的基准坐标系,其中空间任意一点P(XYZ)在相机坐标系中(原点也为视点)的对应点设为它们的对应关系

29、可以先用下面的变换来表示Yfz.X=RYz.式中,K为三角单位正交矩阵,K有多种表示方法,常见的有方向角、四元组。相机的方向角包括俯仰角、偏转角、绕摄像机光轴的旋转角,分别用/、/表示。旋转变换使用方向角的表示方法为将R表示为cosysiny0R=sinycosy0001cos/?sinasin/?cosacosp0cosasinasin/?sinacos/?cosacosa这种方式表现较为直观,且没有增加参数的个数,同时表征的相机坐标系的绝对方向。(2)焦距的计算。实景图像统一的基本度量单位一般为像素。为获得球体的半径,首先要估计相机的焦距,这里利用等距离匹配算法的方法实现。其原理如图621

30、所示,A和/2是拍摄的相邻的两张水平层系列图片;0为相机旋转一次光轴的夹角,也是拍摄人和12时相机的转角,山为相邻照片的交点到照片的位移。设/是相机的焦距,则有4(P=2arctan若相机旋转一周拍摄得到n幅序列图像,则有Zdt2arctani=l/根据序列图像的4值求得f值后,就得到了球面模型的半径,接着把各层的图像投影到半径为f的球面模型上。(3)投影模型。设相机的焦距为f,投影中心在图像中的位置为(小,与),在尤拍摄方向确定的相机坐标系中,空间中的一点(XX,Z')在图像平面中的对应点(x.y)之间有如下关系X'Yfz'.f0Cx0fCy10011此时图像数据矩阵

31、中的第一列表示图像最底下的那一列。如果数据的排列形式不同,则还要做进一步变换。如果第一行表示图像最顶上一列,则存在如下关系(4)坐标变换矩阵。在不同的参数模型下,图像的变换矩阵有不同的形式,在这些表示形式中,图像的投影模型是相同的,不同的只是旋转变换参数。用/、/2表示两幅图像,方、心表示他们的焦距,投影中心位于图像中心(q,Cy)。用表示人到12的坐标变换矩阵,则2121Jrxyl旷LZZJ1勺=11rxylyi111X1=Myi.1.产1=k2r2rk%11JIf0cxK=0fCy(i=1,2)001.对于方向角参数模型而言,设两幅图像A和12的相机参数分别是31邛1,丫1)和(。2,02

32、,丫2),则坐标变换矩阵为M=K2R2RilKi1式中,入为第i幅图像的旋转变换矩阵。2)球面投影算法摄像机获取的反应360°全景的序列图像是在不同角度下拍摄的,直接拼接时视觉一致性受到严重破坏,因为在重合区域会产生局部变形扭曲。视觉一致性要求首先把图像统一投影到球面上,完成球面正投影后再进行拼接才能得到无变形和无畸变的全景图像。(1)投影图平面展开图。图622所示投影到球面后展开的平面图。(a)为原始照片;(b)为平视层的球面展开图;(c)为仰视层的球面展开面图照片平面上有一像素点设为P(x,y),在球面展开图上对应的点为%),在球面半径一定时,球面展开平面图像的形状只与仰角有关。

33、(0,0)(a)原始图像1111P"乂).I(0,0)一X(b)平视层的球面展开图L-(0,0)J仰视层的球面展开图(2)正投影算法。球而正投影算法是将所有的实景图像分别投影到一个球面上,这样做不仅消除了直接拼接时产生的局部扭曲与变形情况,而且消除了不必要的重复信息,同时还得到了像素点在视觉空间的方位信息。由拍摄所得实景图像经球面正投影算法得到球面图像。设摄像机坐标系为Oc-、c%Zc,世界坐标系为。卬-Xw%vZw,照相机的拍摄方向为(%B)3任意一个实景像素点P(x,y)在球面全景图像上的对应点为P'(£,y');点P(x,y)在摄像机坐标系中的坐标为(

34、x,y,f),其在世界坐标系。w-wWZw下的坐标为(Xp,yp,Zp),则有0sin0l1000cos/?JLo0cosasina0-sinacosa根据式(6211)可以推导出球面全景图像上尸'(xy)与P(x,y)之间的函数对应关系。这里P(x,y)是球面空间中视线方向(a、。)的图像上一点。三维球面方程的表示。过点O与点P的直线的参数方程(t是参数)可以表示为(Xp=tXpyp=tyPzp=tzp球面方程表示为42+%2+Zfp2=f2联立式(6.2.12)和式(6.2.13)可得出参数t为-_f+yp+zp三维球面方程转变为二位图像坐标。像素点P(%y)在球面上投影点P的参数

35、左边为年。由于三维左边不便于储存,必须转化为二维坐标,即把球面展开成平面,所以有以下情况。当4>o时(x'pX,=/arccosI=I卜+用a,yf=/arccos=、+靖)当多<0时推导出P(x,y)和P'(£,y')的关系,记A=ysinacos/?xsin/?/cosacos/?由以上各式得到以下结论。当AN0时x'=/arccosxcos0+ysinasin0+fsin0cosax?+(ysinq+fcosq)2当AV0时/=/(+arctanycosa-fsina+(ysina+fcosa)2n+arctanyjx2+(ysina

36、+/cosa)2(xcos0+ysinasin0+fsin0cosa2narccosycosa-fsina+(ysina+/cosa)2(3)反第投影法。球面反投影是正投影的逆过程,即把球面全景图像生成供观察到的视图,经推导得出=fsin(y7f)cos-0)IXsin(yz/)cosasin(y,/4-/?)cos(y,/f)sina|,fsin(y7f)sin(£/)+0)-cos(y7f)cosaVsin(yV/)cosasin(%V/+0)cos(yz/)sina这就是球面反投影变换公式。对于输入图像中的一点,坐标经过一些计算后,输出图像上的坐标变换,其结果一般会是小数值,这

37、些结果的映射在非整数位置,所以在投影变换过程中,数据不具有连续性,出现锯齿现象导致变形。2 .球面投影变形问题的解决采用双线性插值算法可以解决球面投影过程中的变形。双线性插值就是根据输出图像宽度和高度,将输入图像的宽度和高度均分,来确定输出图像的灰度值的方法。双线性插值乂称为一阶插值算法,可以把它描述成:已知单位正方形的四个顶点值,求正方形内任一点/(x,y)的值。如图6.2.3所示,其中,设插值点为其相邻的四个点分别为Zi、z2为、z"它就是用四个邻近点的灰度值的线性组合得到插值点z(/,y')的灰度值z=z1+(z2-z2)(%z-%i)+(z3-Zi)(y'-%

38、)+(z4-z3-z2-z。'-%)利用二维双线性函数具有的可分离性分为两步一维线性插值来计算,即对水平方向作一次一维线性插值,再对垂直方向作一次一维线性插值,从而得到T'的光强值。要获得投影图上某像素点的灰度值,必须首先知道它在原始图中相应的实数坐标点,进一步由该实数坐标可以判断出该实数坐标点所在整数坐标网格的四点的坐标,然后根据这四点的灰度值进行双线性插值的计算。也就是说,在投影算法的实现中,采用反向计算的方法,利用反投影公式计算投影后图像的所有像素值,之后根据每一个投影后的像素在投影图像中的位置计算出它在源图像中对应的位置,再通过双线性插值求出实际的像素值。6. 2.2球

39、面全景图像拼接图像拼接是全景图生成中最重要的步骤。图像拼接可以分为两类,分别是基于特征的算法和基于像素点对应关系的算法。1 .基于像素点对应关系的困像拼接方法1)基于像素点对应关系的算法原理算法假设两幅图像上的对应点表示场景中同一方向的光线,对应点的像素值应尽量接近。算法的目标是使所有对应点像素值的差异总和最小。所以,对于两幅重碎八、;2,优化算法的目标函数为E=名历,:/)一(%y)wel2x.y假设优化的参数»=口打,给定产的初值,算法根据尸变化时E的变化来决定下一个优化的尸值。对于每一对对应点,误差变化与参数的变化近似为线性关系E(A»)=£exy+.(&q

40、uot;)+。工42x,y1xty式中,%y=/2(x',y')-/1(芍、)为亮度误差,9:%,=W2(x',y')为图像亮度场在(x',y)处的梯度。是/%),=0(£,y')/而关于万的Jacobian矩阵。A"可以通过正则方程求解HAp=-G式中,H=人3gx3魔力其力,,G=exyJx>y>gxiy».2)球面图像的拼接理想情况下。确定了所有重叠图像对之间的位置关系即可确定所有图像之间的位置关系,但由于误差影响,所有图像之间的位置关系可能互相矛盾。为此,算法以所有图像之间的误差能量最小作为准则对

41、所有图像参数进行优化,从而确定它们之间的位置关系。设所有需要定位的图像为匕/力,4,则算法的目标函数就是E=W”式中,是两幅重叠图像4、4的无常能量,1wi=/W几,此时正则方程为HAp=-G式中,P=(P1,P2,,Pn)T。将”写成(“5),”为4X4阶矩阵,将G写成(GJnxi,G1为4X1阶向量,则yixzi仇=Wexyxy式中,为人上的点与今上对应点的亮度误差。对应于每两幅重福图像人和与有式中,冬沙为人上的点与4上对应点的亮度误差。3)算法实现为了克服上述算法收敛速度较慢、计算时间较长的问题,提出了相应的解决办法,首先是构造图像金字塔,用多分辨率的方法由粗到精进行参数最优值的搜索,其

42、次在匹配的图像中选择一部分点进行计算,在保证算法可靠性的前提下减少计算量。(1)图像金字塔的构造。图像金字塔将源图像保存成多个降低分辨率的图像,拼接时首先对低分辨率的图像进行拼接,拼接的结果作为下一步较高分辨率图像拼接的初值,有多种构造方法,最常用的是Gauss金字塔,即首先对图像进行Gauss滤波,五阶Gauss滤波器有如下形式G=W'W然后对图像采样得到低分辨率图像。另一种常用的金字塔是Laplacian金字塔,它是由Gauss金字塔中相应层次图像减去较低分辨率图像插值得到的同分辨率图像得到的,这样金字塔中的每一层只保留相应分辨率层次的信息。其优点在于除了最低分辨率的那一层之外,其

43、他层次对图像间整体亮度的差别不敏感,从而提高了计算速度。(2)计算点的选择。在算法的处理过程中,主要的计算时间花费在计算对应点的坐标、图像的梯度及参数变化时坐标的变化上。在处理大分辨率图像的时候,如果对每一个像素点都进行计算,计算量会非常大。根据本算法采用的参数模型,对于两幅图像事实上只需四对对应点即可确定相互之间的对应关系,考虑到精度和稳定性,可适当增加计算点。所以本书算法采用在图像中抽取一部分店进行计算的方法来降低计算量。具体的方法是根据要选取的点的树木将图像等分为若干区域,由于大部分区域图像的梯度都为零,而梯度为零的点对于计算没有任何影响,所以选取每个区域内梯度最大的图像点进行计算既保证

44、了计算的精度,同时大大提高了计算的速度。根据上述算法,球面全景图像拼接算法的流程如下。(1)读取每一幅场景图像,对每幅图像进行处理,使图像中只包含亮度信息,这样每一幅图像就可以用一个矩阵来表示。(2)为每一幅图像建立图像金字塔,金字塔的层数以及每一层的分辨率由场景图像的分辨率确定。(3)为每一幅图像确定初始参数,判断任意两幅图像之间的重叠关系,对重盘区域大于某个值得图像计算变换参数。(4)计算每幅图像的梯度图像。(5)使用优化算法计算下一个较优的图像参数。(6)判断优化的结果,如果满足收敛条件,则停止优化,否则返回步骤(5)重新计算。2 .基于特征点的图像拼接方法图6.2.4所示为基于特征点的

45、球面全景图拼接总体框架。基于特征点的拼接方法是目前应用最广泛的一类方法,该方法通过计算特征点之间的最大相似度量,建立匹配点对之间的对应关系进行配准,再对重登区域采样融合,形成一幅宽视角场景的,完整的并且包括图像所有序列信息的新图像技术。1)相邻两幅图像特征点的匹配选取角点作为待提取的特征点。角点检测算法很多,常见的算法包括Moravec角点检测算法、SUSAN角点检测算法和Harris角点检测算法。Hanis角点检测算法是Harris和Stephens提出的一种对信号有效的点特征提取算法,这种算法亮取的特征均匀合理,比较稳定,而且计算简单。本节选用Harris角点检测算子提取特征点。Harris角点检测算法实现步骤如下:图624博于特征点6的球面

温馨提示

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

评论

0/150

提交评论