全景图像拼接

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验目的:

图像拼接的目的是将有衔接重叠的图像拼成一张高分辨率全景图像,它是计

算机视觉、图像处理和计算机图形学等多学科的综合应用技术。图像拼接技术是指将对同一场景、不同角度之间存在相互重叠的图像序列进行图像配准,然后再把图像融合成一张包含各图像信息的高清图像的技术。本实验是根据输入的只有旋转的一系列图像序列,经过匹配,融合后生成一张360度的全景图像。 实验步骤:

下图是实验的流程图,实验大体上分为以下几个步骤:

①特征点提取和sift 描述: 角点检测,即通过查看一个小窗口,即可简单的识别角点在角点上,向任何一个方向移动窗口,都会产生灰度的较大变化,

2

1212()R k λλλλ=-+,通过R 的值的大小来判断是否为角点。H=22x x y y x y I I I I I I ⎡⎤⎢⎥⎢⎥⎣⎦,1λ,

输入图像序列 特征点检测 Sift 描述

RANSAC 特征匹配

根据两两匹配求出焦距f

投影到圆柱表面

图像融合

输出图像

为矩阵的两个特征值。实验中的SIFT描述子是对每个角点周围进行4个区域2

进行描述,分别是上下左右四个区域,每个方块大小为5*5,然后对每个方块的每个点求其梯度方向。SIFT方向共有8个方向,将每个点的梯度方向做统计,最后归为8个方向中的一个,得到分别得到sift(k,0),sift(k,1)···sift(k,8),k为方块序列,0-8为方向,共有四个方块,所以生成32维的向量,然后按幅值大小对这32维向量进行排序,并找出最大的作为主方向。

图为角点检测和sift描述后的图

②.如果直接根据描述子32维向量进行匹配的话,因为噪声的影响,角点检测的

不准确,会导致找出一些错误的匹配对,如何去掉这些错误的匹配呢?RANSAC

算法是基于特征的图像配准算法中的典型算法,其优点是:可靠、稳定、精度高,

对图像噪声和特征点提取不准确,有强健的承受能力,鲁棒性强,并且具有较好

的剔出误匹配点的能力,经常被使用在图像特征匹配中。RANSAC的基础是大多

数的点是正确的,然后在这些正确的点的基础上找出模型,算出其他点和这模型

的误差,以此来判断此点是不是正确点。实验具体做法:因为实验图像只有水平偏移,所以不需要考虑其他方向,在参考图像中的角点中随机选取一点,然后找到待匹配图像中和它SIFT 描述子相近的一点,找到这两点后,求出两点的水平坐标之差。然后依此坐标之差为模型,将其他角点根据此模型找到待匹配图像中的相应点,然后算出角点和此点的SSD 值,如果距离小于某个阈值内满足的点数很多,那么这个模型就是对的。然后就以此模型找出匹配对,并在图像中标出匹配

点。

上图为RANSAC 匹配后的结果

③.因为后面得投影到圆柱平面上,所以得先求出焦距。实验的基础是在旋转的过

程中,焦距不变。根据实验中的18副图像序列两两匹配

上图为图像I 经过角度θ旋转后得到的图像I+1,在图像I 中的中心点经过旋转

Pi+1 Oi+1 Oi θ

光心

后在图像I+1为点Pi+1,三角形光心O Pi+1 Oi+1为直角三角形,光心到Oi+1的距离即为焦距f ,所以

11

tan i i P O f θ++=

又因为摄像机旋转一周,所以得到:12arctan 0

N

i i i PO f π=-=∑,此方程可以用

牛顿迭代法进行逼近求其解,本实验中采用的是近似,arctan

θθ=,即

arctan i i

i i

PO PO f f =。i i PO 的值可以通过图像两两匹配求的。具体为:先选取第

一幅图像为参考图像,然后用第二幅图像和其匹配,知道了第一幅的图像中心映射到第二幅图像中的具体点,然后求其和第二幅图像中心点的水平坐标差,此差

即为值i i PO ,同理依次求出第二幅和第三幅,第三幅和第四幅····直到第17和

第18。然后将这些距离值相加,得到总的偏移量i i

PO ∑

,然后

2i

i

PO

π

∑即得到焦

距值f 。

11arctan

i i P O f θ++=

④将坐标投影到圆柱平面上,由上面的求焦距图中,可以得知,当角度旋转后,同一物体在一幅图像和另一幅图像中离光心点的距离会不一样,因此在不同图像中对应的尺度就会不一样。因此,如果不进行坐标投影的话,两幅图中的同一物体即使匹配点找到了,但由于两幅图中物体尺度不一样,拼出来的图也会产生缝隙或者扭曲变形,所以全景拼接之前得先进行投影变换。

(s i n ,,c o s )(,

h x y z θθ=

(,)(,)(,)c c x y s sh x y θ=+

X ,Y ,Z 为投影前的坐标, ,c c x y

为中心偏移量 , θ为图像上的点投影到圆柱平面后,在ZOX 平面内投影线和Z 轴夹角,s 为圆柱半径。

上图为投影后的一个园平面上,x 为X 相对于参考点O 的偏移量,θ即为投影到圆柱后投影线和Z 轴夹角,f 为圆柱半径,此处也为焦距。所以有*tan x f θ=,即x=f*θ,

x f

θ

X

Y

Z (X,Y ,Z)

(sinq,h,cosq)

22

Y y X Z =

+

实验中采用的投影公式为:

2a r c t a n

2W x W

u f f

-⎢⎥=+⎢⎥⎢⎥⎣⎦

2

2()

22

()

2

H f y H v W f x -=

++-

W ,H 分别为图像的宽度和高度,f 为相机的焦距,x ,y 为图像的原来坐标,u ,v 为投影后的坐标。由上面的两个式子可以看出,当x 坐标相同时,u 坐标也相同,所以竖直直线投影后仍然是竖直直线,但是y 坐标相同,由于x 坐标不同,所以得到的v 坐标不会相同,也就是水平直线投影后得到的不是水平直线而是一

段弧线。所以最后得到的投影图像为上下为弧线段,两边为直线段。

投影前的图像 投影后的图像

相关文档
最新文档