APP下载

基于SURF分割圆形区域的图像拼接

2021-11-30洪鹏程

电讯技术 2021年11期
关键词:描述符像素点圆形

洪鹏程,唐 垚,任 重

(西安邮电大学 通信与信息工程学院,西安 710121)

0 引 言

图像拼接技术是将两幅有部分重叠的图像拼接成一幅视角更广并且无拼接缝的图像,以获得更丰富、更精准的场景信息[1]。该技术通常被应用于监控安防、医疗图像诊断、图像识别与探测等区域,具有非常重要的研究意义与价值。

图像拼接过程中,配准的方法一般分为两种。一种是计算图像灰度值匹配的方法。这种图像拼接算法简单,直接计算待拼接图像的像素灰度值来进行匹配,实现较为容易,但是稳定性差,对光照度变化较敏感。另一种是基于特征的匹配方法[2-3],该方法具有较好的稳定性,能够更好地克服图像的光照度、旋转、尺度等变化的影响,是目前适用性较强的一种图像拼接方法[4-5]。

为了获得更好的配准结果,近年来的研究热点主要集中在SIFT(Scale-invariant Feature Transform)算法上,但是其算法匹配速度较慢。文献[6]在SIFT的基础上进行改进,提出了SURF(Speeded Up Robust Features)算法,替代了传统的SIFT运算来提取特征,再通过快速双向匹配进行图像配准。虽然改进的SURF算法在一定程度上提高了运行速度,但是视角变换角度过大时匹配精度较低。文献[7-8]对传统的 SURF算法进行改进,在拥有匹配速度的同时提高了匹配正确率,但是在一些极限场景下效果并不理想。近几年常用的配准方法中,SIFT算法对图像匹配正确率较高[9-10],但是由于该算法对大量特征点都进行计算,导致算法耗时过长。SURF算法比SIFT算法在匹配耗时上具有明显的提升[11-13],但是在匹配正确率方面较低,从而导致拼接效果不佳。

基于以上分析,本文提出了基于SURF描述符的图像拼接方法。通过改进SURF算法,提出分割圆形区域构建描述符,通过降低特征描述符整体的维度提高算法的运行速率,减少特征点匹配耗时。并使用区域归一化灰度均值和韦伯局部描述符得到新的扩展描述符,使其具有更多的灰度信息和边缘细节信息[14],提高了特征匹配的精确度,使其具有更好的稳定性和鲁棒性[15-16]。最后通过改进的RANSAC(Random Sample Consensus)算法[17],从不断增大的最佳对应点集合中进行采样,把每一个模块中的误匹配点剔除,提高精度,从而优化匹配效果[18]。

1 SURF算法

1.1 特征点定位

在SURF算法中,先计算海森(Hessian)矩阵行列式,求出其近似值,并构建高斯金字塔图像,得到尺度空间。 然后采用盒式滤波器技术来近似高斯函数的二阶微商,结合积分图像来提高构建尺度空间的速度,再对盒式滤波器的尺度进行改变,以构造高斯图像金字塔,使用海森(Hessian)矩阵行列式判别式进行特征点筛选,若其行列式的值大于设置的阈值,则该像素点被标定为备选特征点。最后在尺度空间和图像空间中使用差值法来精确定位特征点。

1.2 确定特征点主方向

以精确定位的特征点为中心、6尺度为半径的圆,计算该区域内的Haar小波响应,并根据距离给这些小波响应进行赋值高斯权重系数,在圆形邻域内做一个60°的扇形区域,统计其扇形区域内小波响应的总和,然后转动扇形区域,再统计小波特征总和,得到最大的方向即为特征点主方向。

1.3 构造特征描述子

在选取的特征点周围选取一个正方形,边长为20尺度,将其划分为16个区域(边长为5尺度),每个区域统计25个像素的垂直方向(垂直方向值之和、垂直方向绝对值之和)和水平方向(水平方向值之和、水平方向绝对值之和)的Haar小波特征,这样每一个区域有4个值,则每个正方形区域就有64维,即每一个特征描述子由64维特征矢量组成。

2 SURF分割圆形区域算法

2.1 分割圆形区域构建描述符

由上节可以看出,由于经典的SURF算法采用矩形特征区域进行特征描述符的计算,其缺点是,当特征点主方向确定时计算过程会出现误差,如图1(a)所示。假设需要图像旋转到(x1,y1)的位置,但是由于主方向角度产生误差的原因,实际图像只能旋转到(x2,y2)的位置,这样就会有一部分区域不重叠,原本需要统计的区域就会被忽略掉,而不需要统计的区域就会被统计到,以至于产生较大的误差。相对比之下,采用圆形区域可以很好地解决这类问题,当主方向存在误差时,圆形区域旋转前后所覆盖的像素点是一致的,如图1(b)所示。本文把圆形的直径选作正方形的边长,就相当于去除掉正方形外围受干扰的区域,使得其旋转后的整体相似性增强。

图1 方形和圆形区域比较

由于圆形区域具有严格的旋转不变性,本文提出了一种分割圆形区域,把圆形区域分割成扇形区域,这样可以把各个扇形内的采样点,从中心向四周各个方向进行覆盖操作。然后,在分割出的扇形区域构建特征点,作为局部匹配特征。这样,在进行旋转操作时能有效避免复杂的计算量,从而提高算法的速度。具体做法如下:

(1)建立直角坐标系,以特征点为原点,分别对圆形区域进行8尺度、16尺度、32尺度划分。由于划分尺度增加,重叠的区域增加,算法运算速度逐渐降低,为了使算法具有更好的速率,所以取8尺度为半径的圆形区域,根据像素点和原点主方向的夹角,可以均匀地划分为8个扇形模块,如图2所示。

图2 基于圆形分割的描述符

(2)计算这8个扇形模块主方向x方向和y方向的Haar小波响应x′和y′,并进行小波变换,将所有变换之后的值进行累加,得到一个新的数值。每一个扇形模块可以构成4维向量,以1号扇形模块形成8个向量编号为1~8号向量,2号扇形模块形成9~16号向量,3号扇形模块形成17~24号向量,4号扇形模块形成25~32号向量,形成32维描述符。

(3)对每个扇形模块像素的梯度进行高斯加权,这样能得到每一个像素点周边像素的平均值,以降低外围点的噪声对边缘特征值的影响。高斯加权系数为

(1)

式中:(x,y)和(x0,y0)为所求图像区域中像素点和中心点在待描述图像区域中的坐标,θ0为选定的常数。这样,每一个像素特征点都被赋予高斯加权系数。

2.2 区域归一化的灰度均值描述符

在SURF算法中,由于特征点的构造是Haar小波响应的值,导致两幅需要配准的图像灰度信息差异较大,匹配效果不佳,而本文在描述符的基础上进行扩展,采用区域归一化灰度均值算法,这种方法可以有效克服光照对配准的影响。具体做法如下:

首先,计算出分割之后的8个扇形区域的灰度值,统计出每一个像素点的最大灰度值Gmax和最小灰度Gmin,再使用式(2)计算出区域归一化的值:

(2)

式中:G为原始灰度值。

同时,在图像区域中,对每一个兴趣点分配高斯加权系数,计算其与特征点的距离,若距离越远,则加权系数越小,相应贡献就越小,反之对描述符的贡献越大。

最后,分别计算8个扇区内的区域归一化后的灰度值的均值,组成特征向量,作为本文特征描述符的扩展。

2.3 韦伯局部描述符

为了更好地利用图像的细节信息,以增强算法的稳健性和鲁棒性,本文提出了将韦伯局部描述符用于特征描述符的扩展的方法。韦伯局部描述符能有效地描述图像局部细节信息,更好地提升算法的稳定性。韦伯局部描述符包含差分激励算子和方向算子。计算除边缘像素点外的每个像素点的差分激励算子和方向算子,并以其二维分布直方图来共同表征图像的纹理细节信息。

(1)差分激励算子

差分激励反应局部窗内灰度变化的强度信息。通过计算局部窗内邻域像素点的灰度差值和中心像素点灰度值的比值U(xc),再使用反正切变换将分布在[-P,+∞]范围内U(xc)映射到区间(-π/2,π/2)内,差分激励ξ(xc)的计算式为

(3)

式中:xc和xi(i=0,1,…,P-1)分别表示中心像素点和邻域像素点的灰度值,P表示邻域像素点个数。

(2)方向算子

方向算子反映了局部窗内灰度变化的空间分布信息,通过局部窗内水平方向与垂直方向上邻域像素点的灰度值比值的反正切变换来描述。其公式为

(4)

式中:DV和DH分别表垂直方向和水平方向中心像素点和邻域像素点的灰度差异。

(3)韦伯局部描述符直方图

韦伯局部描述符采用均匀量化技术,将方向γ(xc)均匀量化为T个方向,将差分激励均匀地划分为M个频段,分别把图像中的高频、中频和低频信息做变换,再将划分的每个频段上差分激励均匀地量化为N格,形成一个T×C=T×(M×N)的二维直方图,并通过量化编码将二维转化成一维向量,用于表示图像的纹理细节信息。

2.4 特征点匹配

采用以上方法能够得到一个新的描述符,该描述符既能有效克服光照度变化,也能精准地利用边缘细节信息,使得本文的图像拼接更具稳健性。最后在进行特征点匹配阶段,取待配准图像的特征点,并找到其与参考图像中欧式距离最近的前两个特征点,在这两个特征点中,如果最近距离除以次近距离得到的比率小于阈值T=0.7(一般采用0.6~0.8),则认为两点为正确匹配点对,遍历所有特征点,得到全部匹配点对。再使用改进的RANSAC算法消除误匹配点对,以获得精确的匹配点对。

2.5 图像拼接及融合

两幅图像拼接时,通常会有明显位移、旋转和光照度变化等情况。为实现图像无缝拼接,本文采用投影变换的方法,在得到两幅图像变换关系之后,通过图像特征点匹配和改进的RANSAC算法,找到至少4对匹配点,反算出3×3的单应矩阵H。将待配准图像I′通过单应矩阵H进行变换后与待参考图像I进行叠加,即将两幅图像变换到同一个坐标系上,这样就可以把两幅图像拼接起来。

(5)

式中:(x′,y′)和(x,y)分别为待配准图像I′和参考图像I的匹配点对。

考虑到拼接之后的图像具有明显的拼接缝,需要利用渐入渐出加权平均法对拼接缝进行均匀过渡,达到无缝拼接的图像。设I1(x,y)和I2(x,y)分别为参考图像和待配准图像的像素灰度值,I(x,y)为融合后的像素灰度值,则渐入渐出加权平均法的公式如下:

(6)

式中:k1、k2为权值,且k1+k2=1。通常k1=i/w,i∈(0,w),w为重叠区域的宽度。

综上所述,图像拼接算法流程如图3所示。

图3 算法流程

3 实验结果与分析

为了验证本文方法的有效性和可靠性,选择了3组图像来进行试验。针对这3组图像,分别使用经典的SURF算法、改进的SURF算法和本文算法进行拼接。

3.1 实验环境

本文算法运行环境如下:CPU为Intel core i5-3450,主频为3.3 GHz,内存为4 GB的PC机,64位Win7操作系统,在Visual Studio 2015上采用VC++编程软件实现。

3.2 算法验证及分析

3.2.1 运算时间

使用分割圆形区域构建描述符算法,减少特征匹配耗时,提高运行速度。对图4所示图像进行测试。

图4 不同场景下拍摄

本文算法与经典的SURF算法和改进的SURF算法(文献[8]的方法)在匹配耗时情况下进行了比较,结果如表1所示。

表1 运算时间

从表1可以看出,本文算法比经典的SURF算法和改进的SURF算法耗时更少,其中经典的SURF算法则降低了提取特征点的数量,提高了匹配速率,而改进的SURF算法采集的特征点相对较多,导致匹配耗时较长。本文算法在提取特征点上对改进的SURF算法进行优化,在此基础上使用分割圆形区域构建描述符进行降维,很大程度上减少了特征描述符提取和匹配时间,因此本文算法具有速度优势。

3.2.2 匹配正确率

为了在匹配速率的优势上,确保匹配正确率,本文使用区域归一化的灰度均值,克服光照对配准点的影响,得到精度更高的特征点。然后使用韦伯局部描述符算法,增加图像的细节信息,使两幅图像的特征点配准更精确,并提高整体算法的稳定性。对图4所示图像进行特征点匹配测试,由于特征点匹配较多,为了能直观地反应匹配效果,只显示50对匹配点,结果如图5所示,可以看出两幅图之间的匹配点对是非常精准的。

图5 不同场景的匹配

对本文算法与经典的SURF算法和改进的SURF算法的匹配正确率进行比较,结果如表2所示。

表2 匹配正确率(正确匹配点对/匹配点对)

从表2可以看出,经典的SURF算法在旋转、视角变化、光照方面性能较差,提取出的特征点较少并且匹配正确率低,匹配效果较差。改进的SURF算法相对提高了匹配正确率,但是效果不太突出。而本文算法由于加入区域归一化的灰度均值与韦伯局部描述的细节纹理信息,得到新的描述符更具稳健性,所以匹配正确率要高于改进的SURF算法,对旋转、视角变换、光照变化均有显著提高,所以匹配效果更好。

综合表1和表2可以得出,传统的SURF算法在匹配效果上较差,但是匹配速率较高,能满足一些需求,而改进的SURF在经典的SURF基础上虽然提高的匹配正确率,进而提高了匹配效果,但是在匹配速率上有明显滑落。本文算法兼顾了以上两种算法的优点,既提高了匹配正确率,也相应提高了匹配速率。

3.3 拼接实验结果对比

利用SURF算法、改进的SURF算法和本文算法,分别对图4中的图像进行拼接和融合,拼接效果如图6~8所示。为了保证更好的视觉效果,拼接图均为裁剪边缘之后的图像,裁剪掉的部分不影响算法之间的对比。

图6 对图4(a) 的拼接算法结果对比

图7 对图4(b) 的拼接算法结果对比

图8 对图4(c) 的拼接算法结果对比

从图6~8可以看出,改进的SURF算法出现了明显的拼接缝,亮度不均匀,而采用本文算法,实现了亮度变化均匀、无明显拼接缝、保真度高的图像拼接。由图8可以看出,改进的SURF算法对旋转的图像进行拼接,出现了图像扭曲的现象,而本文算法可以把旋转的两幅图像矫正成无扭曲的拼接图像。

4 结 论

本文提出了一种基于SURF分割圆形区域的图像拼接方法,采用圆形区域的特征描述符提取方法提高了算法的运行速度和匹配效率。针对经典的SURF和改进的SURF算法存在旋转及光照变化配准效果差的问题,提出了区域归一化的灰度均值和韦伯局部描述符算法,更充分地利用图像的细节信息,使该算法具有更高的效率。本文算法兼顾了经典SURF算法和改进的SURF算法的优点,既提升了图像的匹配准确性,也提高了图像匹配的速率。

实验结果表明,本文的图像拼接方法相较于改进的SURF算法的拼接技术更具适用性,是一种既能满足实时性要求又具备匹配精确度高的图像拼接新方法。

猜你喜欢

描述符像素点圆形
基于结构信息的异源遥感图像局部特征描述符研究
基于局部相似性的特征匹配筛选算法
基于AKAZE的BOLD掩码描述符的匹配算法的研究
基于5×5邻域像素点相关性的划痕修复算法
Linux单线程并发服务器探索
基于canvas的前端数据加密
为什么窨井盖大多都是圆形的
利用CNN的无人机遥感影像特征描述符学习
基于逐像素点深度卷积网络分割模型的上皮和间质组织分割
肥皂泡为什么是圆形?