图像拼接方法及其应用研究(7)

2019-03-29 17:54

内蒙古科技大学毕业设计说明书(毕业论文)

第四章 基于Harris算法的图像拼接研究

在前文的讨论中,图像的特征提取和匹配是图像拼接的核心内容,在特征提取中有一种重要的特征点就是角点,对于角点的定义可以这么形容,就是两个或者是两个以上的边缘区域形成的点。关于角点的研究历史也是很悠久的,在1988年哈里斯提出Harris兴趣点检测,这种方法是依赖于自相关函数来确定二维变化的位置,后来被证明它具有平移,旋转等不变性。而且有很高的精度。同时角点在噪声的处理和光照影响上也有很好的鲁棒性,所以成了研究的重要课题。

4.1 角点提取算子

关于角点的研究,现在基本好多的算法已经被完善,在研究角点提取上,可以从资料上查到很多的算法,例如:Harris算法,莫拉维克算法,普莱西算法等等,下面讨论一下几种算法的区别和优劣。首先Harris算法,对于角点的检测是计算方便,而且是稳定性比较高,所以受到广泛应用,但是它也有很多的缺点,在上文中的多尺度空间中,Harris算法的精度就不是很高,而且还会存在一些伪角点和冗余信息,然后是Moravec算法,它是对每一个角点都进行测量,然后在灰度变化上取一个最小的值,然后在对每一个像素进行映射,这种算法也是比较简单,处理的速度也是比较快,但是Moravce算法对边缘区域比较敏感,而且在对边缘的处理不好,对噪声的敏感也比较大,所以Moravce算法在一定的场合中才会使用它。还有pleesey算法,它是突破了Moravce算法的局限性,是一个比较好的角点检测算法,唯独不好是计算量很大。这也没有影响到人们对他的热爱,在目前的研究应用上pleesey还是有很广泛的引用。虽然说pleesey算法在Moravce上有很大的突破,但是它对于角点的定位不是很准确,会检测到很多错误的角点。虽然算法都有优劣性,但是在实际应用还是能克服。

4.2 Harris角点检测原理

Harris角点是根据自相关函数来确定二维数据变化的位置的,它在应用上基本上都是对处理的图像进行平滑去噪,然后构造响应函数,最后在得到局部最大点,而这个点就被认为是角点,在这种处理的规则上会降低它的精度,所以在这个问题上本文以后还要做改进。在具体的操作之间,首先要明确一个问题,柱面投影的生成,这个在后续的

26

内蒙古科技大学毕业设计说明书(毕业论文)

融合过程中有着重要的意义。 4.2.1 柱面投影生成

在图像采集过程中,可能会因为角度的不同,在一个平面上可能会出现旋转,这也是数据采集上一个重要问题,这个问题会导致出现重叠的区域过大,会给以后的匹配带来麻烦,所以我们可以假想一下平面图像映射到柱面图像的情况,我们所要讨论的是一种特殊情况,当在边缘位置是,图片上所呈现的是一个柱面,这种我们可以采用柱面的投影生成的问题解决办法,也是方便以后计算方便。下面讨论一下平面图像和柱面图像之间对应。

图4-1 柱面投影示意图

设为r是柱面的半径,W是生成图像的宽度,通过一些数学的建模和柱面的性质,最后我们可以得到平面图像到柱面图像的投影公式:

y'? x'?r4.2.2 Harris角点提取

有前文中的论述,我们在提取Harris角点的时候,引入到自相关函数中,在这里我们借助于自相关函数来构建一个M矩阵,矩阵的特征值可以认为是自相关函数的曲率值,若他们两个的曲率值都比较高,就认为是特征点,矩阵M为:

ry (4-1) 22r?(w/2?x)ww/2?x?r*arctan (4-2) 2r?IxIxIy? M?W(S)?? 2?IyIxIy??在这里I是x方向上梯度的平方,同理Iy2是y上的梯度平方。W(s)是高斯滤波函数。

22xM矩阵的引入是角点检测的重要的一步,它可以映射二维的特征点。高斯滤波函数作用

27

内蒙古科技大学毕业设计说明书(毕业论文)

就是滤波。构建完成的M矩阵在响应Harris角点的时候有一个数学式:

I?det(M)-ktr2(M),0.04?k?0.06 (4-3) 在这个式子中det(M)是M矩阵的一个行列式,T是矩阵的迹,这样可以通过上述式子中的I值作为特征点的参考值。在I函数中计算的极大值大于一个阈值的时候,就可以认为是这个点就是特征点。

在上述中检测到的特征点的位置是不准确的,而且它的精度也不是很高,所以在这里我们要上述的办法进行改进。在大多数的研究中所用到的X方向上的算子是

Ix?(?1,0,1),在这里我们改为Ix'?(?4,?2,0,2,4),至于为什么这样改,网上有公式推导。

Y方向上的梯度也要相同的进行修改。所以这样构造出来的矩阵M就是:

IxIy??Ix M?W(S)??'' 2??IyIxIy?相同的是角点相应函数也要改变,在上述中采用的k值对特征点的提取有很大的影响,

'2''在这里就采用一种新的方法进行提取,选取的角点函数为:

R?Det(M) (4-4) 'Tr(M)??在这个式子中我们去掉了k。引入了?,?是一个很小的取值,在影响上要远小于k,所以在原来的基础上的改进降低了冗余的数据。

前面我们做了很多的准备工作,现在我们用MATLAB对实验进行仿真,看看具体的结果分析。

图4-2 Harris算法提取结果

28

内蒙古科技大学毕业设计说明书(毕业论文)

对于上面的讨论,我们总结一下Harris算法的一些特点,首先Harris算法的计算简便,这个可以从上面的公式看到,然后从实验的结果上可以看出提取的特征点比较均匀,最后Harris算法在提取特征点的时候比较稳定。然而缺点也是很明显的就是提取的精度不够,准确定也不是那么的好,但是Harris算法提取到的这些特征点都是计算出来的最优的特征点。

4.3 RANSAC算法的原理

刚才讨论了Harris算法的特征点提取,并没有实现我们的目的,本文研究的是图像的拼接,特征点的提取只是一个关键的步骤,在这里我们还要引入另一种RANSAC算法,刚才讨论了Harris算法的优点和缺点,现在结合RANSAC算法的特点,在最后融合的时候能有更好的效果。

RANSAC算法可以说是一种迭代算法的数学模型,他的主要的原理是寻找一些特征点,然后根据这些特征点构成的一条直线,在这条直线中,在一定的误差范围内统计这条直线上的点,然后重复这个步骤,最后在选择点数最多的点作为最终的结果。这种思想也是他常用于图像匹配中的原因。从前人的经验中可以得到RANSAC算法的矩阵的形式:

'?x??h1h2h3??x??y'???h4h5h6??y? ????????1????h7h8h9????1??在确定一条直线的时候,根据数学知识,需要两个点,在这里我们要寻找到两个匹配点,要是确定上述的矩阵的9个参数,则要8个匹配点。

在这个算法中,还有一个关键性参数就是阈值的设置,在求解这个阈值的时候,还要引入几个概念和函数,首先我们假设误差是符合高斯分布的,距离误差平方符合自由度为m的x平方的分布。所以就可以得到下列的函数式: Fm(k)??Xm2(?)d??k220k2 (4-5)

由上式中我们得到阈值的计算方法: t2?Fm?1(?)?2

数学函数表达式中?是表示先验概率,所以在计算阈值的时候,确定?是计算的第一步,然后就能根据上述的式子确定阈值。在确定完阈值之后,下一步就是对内部点的判断,

29

内蒙古科技大学毕业设计说明书(毕业论文)

可以根据下列函数式作为判断的依据:s?H*i?i。

'2上述函数表达式中i表示的是与矩阵相乘后得到的匹配点的坐标,由这个坐标于选择的匹配点i'进行求模得到误差s,根据误差的大小和阈值的大小对特征点进行判断,若是小于阈值,则是内部点,不然就不是。

在上述的算法中明确了匹配的各种做法,但是这种做法在实际操作上有一定的局限性,首先就是不能处理数据量较大的图片,因为在复杂度比较高,在确定矩阵H的时候会一个一个的计算,在效率上就降低了,无意中增大了时间上的复杂程度。所以在实际应用上我们可以这样做,在初始匹配点的时候,采用8个点确定矩阵H,额外选取4个点进行判断,在确定矩阵的时候就进行判断,如果不是内部点就直接舍弃,这样就大大的减少计算的时间。这种方法的应用在较高质量、信息量较大的高清图片上,需要匹配点也就越多,但是节约的时间很随之增大。

4.4 拼接算法的实例分析

在前文中进行了传统方法的论述和改进方法的介绍,下面我们对上述的算法进行实际的实验,在这里我们采用的是Harris算法和RANSAC算法的结合。 原始的图像如下:

图4-3左图像 图4-4 右图片

30


图像拼接方法及其应用研究(7).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:《安徽省建设工程质量检测规程》

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: