SIFT算法与Bresenham算法的结合

我也不知道这么改进为什么会加速,而且效果还好,只是当时想想一定要做出什么改变就结合课上学的算法随便这么一改,实在不清楚到底哪里出的问题就想了一个特征方差出来。改完之后随便写了一个小文,当然投出去谁也没要23333。下面就直接把部分原文贴了出来。

2.1 Bresenham直线算法概述
Bresenham直线算法是Bresenham提出的一种单步直线生成算法,是计算机图形学中为了在数字设备上高质量地快速绘制任意方向的直线而设计出来的算法,使得在求直线各点的过程中全部以整数来运算,因而大幅度提升计算速度。
图(2)展示了这样一组网格线,每个交点就代表点阵设备上的一个象素点,在栅格中给出直线的起点和终点坐标(本文仅分析直线斜率k>0的情况),设起点p1(x1,y1)和终点p2(x2,y2),具体计算过程如下:
(1)计算dx = x2–x1,dy = y2–y1,设置累计参数D,并初始化D = -dy;
(2)自起点至终点逐列扫描,以当前点判断下一列栅格点位置时,计算 D = D + 2*dx;
(3)若D > 0,则下一个点的行数加一,且计算 D = D–2*dy。否则,下一个点与当前点在同一行上,不对D进行任何计算;
(4)重复步骤(2)至(3),直至进行到终点即结束。

这里写图片描述
图6 生成Bresenham直线

2.2 SIFT改进
本文将Bresenham直线算法与提取特征邻域相结合,近似快速的扫描邻域像素。该方法可以直接降低特征描述的时间,并间接导致匹配耗时减少。
改进方法如下:
1)求出特征的主方向并确定邻域半径后,根据几何关系可以求出下图中的R点,并进一步求出落在第一象限的角点A;
这里写图片描述
图7求角点A

2)求出落在A角处最远端的像素坐标a。将A角坐标取整后得到的像素(图8中的交叉阴影像素)与当前行和下一行的最近邻的五个像素(除下一排)一起比较,最终获得落在邻域内部的最远端像素坐标a;
图8求角像素a
3)根据旋转对称原理可以求出下图中落在B处的像素b设起点为b,终点为a,根据Bresenham直线生成算法求出落在b-a直线上的边缘像素,为保证求出的像素始终在邻域内部,则将2.1节中步骤(3)提到的阈值条件设置为D > dy,其他边经过的像素均可由旋转对称原理求出。为减少后续扫描点的计算复杂度,在生成直线的过程中可直接记录行值变化时的第一个像素,即得到图8中每行的最左和最右像素(如图9中斜线方格);
这里写图片描述
图9 求边界像素

4)得到边界像素后便可直接扫描每个采样点、进行特征描述。改进前,邻域边界为下图中的外侧直线框,扫描得到的邻域像素为下图中的实方形和虚线方形;改进后,由步骤(3)可知,邻域边界已变为下图中的内侧直线框,邻域像素为下图中的实方形。
这里写图片描述
图10 改进前后对比

3 实验
本算法是基于Opencv 2.4.4版本SIFT算法的改进,开发平台选用Microsoft Visual Studio 2010。
计算机相关参数如下:
处理器 Intel Core 8-core i7-3700
3.40GHz
内存 8G
实验选用的数据为牛津大学视觉图形小组提供的仿射协变区域数据集(Affine Covariant Regions Datasets)[11],影像使用前均已无损转换为JPEG格式。
实验数据详细情况如下:
这里写图片描述

匹配时每组图片分别进行两种对照匹配并给出了特征描述和特征匹配的耗时及其对比:
(1) 第1幅分别与同组内1-6幅做单向匹配;
(2) 每项实验结果均为连续重复运行30次后,将耗时取平均值。
每次匹配结果给出了在相似性0.66情况下,并给出筛选后得到的正确匹配数目及其对比。
实验结果如下:
表1 Bark影像组匹配实验对比结果
Tab.1 The Matching Result of Bark Group
这里写图片描述
表2 Bikes影像组匹配实验对比结果
Tab.2 The Matching Result of Bikes Group
这里写图片描述
表3 Boat影像组匹配实验对比结果
Tab.3 The Matching Result of Boat Group
这里写图片描述
表4 Graffiti影像组匹配实验对比结果
Tab.4 The Matching Result of Graffiti Group
这里写图片描述
表5 Leuven影像组匹配实验对比结果
Tab.5 The Matching Result of Leuven Group
这里写图片描述
表6 Trees影像组匹配实验对比结果
Tab.6 The Matching Result of Trees Group
这里写图片描述
表7 UBC影像组匹配实验对比结果
Tab.7 The Matching Result of UBC Group
这里写图片描述
表8 Wall影像组匹配实验对比结果
Tab.8 The Matching Result of Wall Group
这里写图片描述
实验表明,本文所述的SIFT改进算法可以有效减少特征描述耗时(平均减少11%)和特征匹配耗时(平均减少45%),并保证正确匹配数目相似,该改进方法具有通用性。
3.3 计算特征方差
特征方差定义如下:
这里写图片描述
其中, 为每个特征点特征向量在各个维度上的特征值, 为各个维度上特征值的平均值。
计算改进前后的特征方差及其差值,已列入3.1和3.2节的实验数据表格中。从数据可知,改进后的特征方差均比改进前的小。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值