APP下载

基于改进最佳缝合线的图像拼接方法

2018-07-19翔,王伟,肖

计算机工程与设计 2018年7期
关键词:鬼影缝合线灰度

张 翔,王 伟,肖 迪+

(1.南京工业大学 电气工程与控制科学学院,江苏 南京 211800;2.海军医学研究所 航空医学研究室,上海 200433)

0 引 言

图像拼接技术[1-3]主要包括图像预处理、图像配准和图像融合。在图像配准中特征提取是关键的步骤,常用的特征提取算法有SIFT(scale invariant feature transform)、SURF(speed-up robust features)、ORB(oriented fast and rotated brief)[4-6]等。图像融合中常用的方法有基于加权平均融合法、基于多分辨率融合法、基于最佳缝合线融合法等,其中最佳缝合线方法是Duplaquet提出的[7],在图像拼接中可以有效解决鬼影、错位现象,有学者对此进行了相关研究,党建武等改进了Duplaquet算法的搜索准则来扩大搜索范围,将最佳缝合线和多分辨率样条法相结合来融合图像,有效降低了出现鬼影的概率,但鲁棒性较差,对某些场景拼接效果不好[8];孙培双等将纹理结构引入能量函数来改进Duplaquet算法,但仍然没有很好地解决缝合线与运动物体接近而造成的鬼影现象[9];邹丽晖等基于几何缝合距离很好地解决了单个运动物体鬼影的问题,但不适合具有多运动物体的复杂图像拼接[10]。

本文针对图像融合中运动物体过于靠近缝合线而产生鬼影的问题,提出改进的最佳缝合线融合方法。首先用SURF和ORB算法对特征点提取描述,用PROSAC算法筛选匹配并求出两张图像的变换矩阵H,进行图像空间变换。然后,对待拼接图像进行曝光差异矫正,最后,对能量函数进行形态学操作并引入S颜色饱和度差异,从而隔离运动物体,在最佳缝合线搜索策略中加入局部信息权重提高搜索灵活度,结合缝合线融合带和加权融合法融合图像。实验结果表明,该方法可以较好地消除拼接缝隙和运动物体产生的鬼影现象,提高了拼接质量。

1 图像配准

ORB算法本质上是由FAST(features from accelerated segment test)特征检测和BRIEF(binary robust indepen-dent elementary features)描述子组成,主要是将BRIEF描述子改进为具有旋转不变性的BRIEF描述子,即rBRIEF,但是ORB算法不具备尺度不变性,原因是因为FAST特征检测不具备尺度不变性,而且在角点密集的图像用FAST算法检测特征,往往会发现特征过于汇集于一块区域,这对后面求取变换矩阵是不利的。SURF特征检测不仅具有尺度不变性,而且继承了SIFT多量性的特点,在图像物体不丰富的情况下也可以检测相当多的特征,将SURF和ORB结合起来同时可以满足特征点检测匹配速度与质量上的要求。

1.1 SURF特征检测

在SURF算法中,使用Hessian矩阵行列式可以表示图像任意一点处的斑点响应值,设图像中的点(x,y)在点x处,尺度为σ的Hessian矩阵定义为

(1)

式中:Lxx(x,σ),Lxy(x,σ),Lyy(x,σ)是点x处高斯二阶微分与图像的卷积。

对高斯二阶微分模板进行简化,可以将高斯微分模板和图像卷积转化成盒子滤波,将上式的Lxx,Lxy,Lyy简化为Dxx,Dxy,Dyy。则Hessian矩阵判别式简化为

Det(H)=LxxLyy-LxyLxy=DxxDyy-(0.9Dxy)2

(2)

该判别式可以判定点(x,y)是否为极值点,若Det(H) 大于0,则该点为极值点。为了快速求取Dxx,Dxy,Dyy的值,SURF算法通过积分图像的方法,对Dxx,Dxy,Dyy进行简单的加减运算。取一幅灰度图像G,任意一点(i,j)到图像左上角所构成的方框内灰度值总和,即积分图像为IΣ(x,y), 则

(3)

按照上式,只需对图像像素扫描一遍,便可得到所求窗口内灰度值的总和,如果模板尺寸是9×9,通过上式积分图像的概念,Dxx和Dyy需12次加减计算和4次乘法计算,Dxy需16次加减计算和5次乘法计算,大大缩短计算时间。

SURF算法不断增大盒子滤波模板尺寸,通过盒子滤波模板与积分图像获取不同尺寸的响应图像,然后响应图像的极值点中心3×3×3的区域里进行非极大值抑制,如果这点是周围3×3×3区域内所有像素中最大或最小,将此点作为候选特征点,然后用线性插值法得到特征点的具体位置。

1.2 ORB描述子

ORB描述子是通过BRIEF描述子加上求取的特征点主方向形成的,是二进制形式的特征描述子,ORB描述子为了减少噪声的干扰,在特征点周围31×31窗口内按一定模式选择5×5的子窗口,在子窗口内所有像素用积分加速计算灰度总和,比较图像块灰度值,则有二值测试准则τ定义为

(4)

式中:p(x)为x领域内的灰度值。

选择n个测试点(x,y),n一般选取64,128,256等,通过二进制测试准则生成二进制描述子,维度为n。准则如下式所示

(5)

但此时得到的二进制描述子是没有方向的,接下来用特质点质心方向作为描述子的主方向,使描述子具备旋转不变性。但是加入主方向后,描述子的判别性能下降,文献[6]用贪婪学习算法选出相关性最低的描述子作为最终的ORB描述子。

1.3 特征匹配与精确配准

通过ORB生成的描述子是二进制码串形式,用Hamming距离法进行快速特征点匹配,匹配结束后,常见的去除误匹配的算法是RANSAC(random sample consensus)算法[11],但是穷举搜索得到的匹配在特征点接近时容易产生误匹配,影响匹配精度,而且RANSAC算法是随机取出特征匹配对进行筛选,当误匹配数量过多时,会使匹配对筛选质量下降。为此,本文采用PROSAC算法进行提纯。

PROSAC(progressive sample consensus)算法[12]是对RANSAC的改进,在RANSAC算法之前,先对无序的匹配对按匹配质量优劣进行排列,选取质量较好的匹配对作为初始匹配点集,在模型参数拟合时对初始匹配集反复迭代,得到最大内点数,即筛选后的正确匹配点。

通过正确的匹配点,可以计算获得量图像之间的映射关系即单应性矩阵H为

(6)

按照本节思路,记录图1提取特征点的时间,结果见表1。

图1 原始图像

尺寸算法特征匹配对数匹配时间/ms960×720SURF35655070SURF-ORB34051391680×480SURF18722245SURF-ORB1687661480×360SURF10101228SURF-ORB902358

SURF和SURF-ORB的特征提取算法是一样的,所以重点关注经过PROSAC算法后的特征匹配对,从表1可以看出,SURF-ORB算法在特征点成功匹配对数略低于SURF算法,但在时间上要小于SURF所耗的时间,可以说明,该方法减少了特征点匹配时间同时保证了匹配质量。

2 图像融合

图像融合中,当待融合图像存在运动物体时,直接用加权平均融合法会产生鬼影现象,最佳缝合线法直接拼接可以有效地避开运动物体,但如果在运动物体部分过于靠近最佳缝合线的情况下,融合图像仍然会有鬼影现象,本文提出构建沿缝合线融合带避开运动物体的策略进行拼接,融合带拼接宽度窄,一方面减少了融合区域运动物体存在的几率,另一方面在曝光差异过大的情况下,易造成拼接图像不自然,故在融合之前,先对图像进行曝光差异矫正,之后求取最佳缝合线。

2.1 曝光差异矫正

相机在拍摄时光照强度的变化会影响图像的曝光程度,为了减少融合难度,提高质量,要先对图像进行曝光矫正。本文采用对应像素之间关系来进行矫正。方法如下:

(1)设两张待拼接图像为I1,I2,取出上节PROSAC算法计算出的内点的像素值,记为p1i,p2i,其中i=1,2…m,m代表内点有m组。

(2)对I1,I2进行高斯模糊来去除噪点,分别取出P1i,P2i的RGB三通道的像素值,记为pr1i,pg1i,pb1i和pr2i,pg2i,pb2i。

(3)假设两图像之间曝光差异可以用线性模型来表示,为

pr1i=α1×pr2i+β1
pg1i=α2×pg2i+β2
pb1i=α3×pb2i+β3

(7)

对3个式子分别用最小二乘法求出α1,α2,α3和β1,β2,β3。

(4)得到两张图像像素值之间的线性关系,对其中一张图像进行曝光矫正,使两张图像曝光接近于一致。

效果如图2所示,图2(a)和图2(b)在重叠部分能看出明显的曝光差异,经过曝光差异矫正后,图2(c)的曝光更趋向与图2(b)。

图2 曝光矫正示例图

2.2 改进最佳缝合线能量函数

最佳缝合线可以有效隔开运动物体部分,理想的最佳缝合线必须满足颜色和结构强度差值最小[13],为了得到更好的效果,本文引入HSV空间的颜色饱和度S作为新的强度。最佳缝合线的能量函数改进如下式所示

E(x,y)=
αEcolor(x,y)+βEgeometry(x,y)+γES(x,y)

(8)

式中:Ecolor(x,y)——颜色差异,Egeometry(x,y)——结构差异,ES(x,y)——颜色饱和度差异,α,β,γ表示各强度权重,α+β+γ=1。

图3(a)是图1经过形变后切割出来的相同大小的重叠图像,切割方法是通过选取最优匹配点作为重叠区域边界点。用灰度差图像近似颜色差异强度,设IM1,IM2为I1,I2重叠区域的灰度图像,则灰度差图像δ计算公式为

δxy=abs(IM1xy-IM2xy)

(9)

对灰度差图像δ像素值求取平均值mc,然后对δ进行阈值化操作得到灰度二值化图Ic,设阈值为1.5×mc,则

(10)

对Ic图像进行腐蚀操作一次,目的为了过滤一些因噪声产生的点,再对Ic进行膨胀操作一次,如图3(b)所示,目的是为了扩大运动物体部分的覆盖面积,有利于后面最佳缝合线的求取。

记录Ic中像素值为1的坐标,将δxy相应坐标中的点的值进行增强处理,设权重weight(本文weight=10),则

(11)

结构强度差异可以用图像间梯度差来表示,考虑像素点的相关性,x方向和y方向的梯度用SOBEL算子进行计算,模板为

(12)

设Lx,Rx为两图像在x方向的梯度图,Ly,Ry为两图像在y方向的梯度图,λ为近似梯度图像,则

(13)

得到的梯度图如图3(c)所示,改进的方法与灰度差类似,求取Egeometry(x,y)值的平均值mg,令4×mg作为阈值,对Egeometry(x,y)进行阈值化处理,设Ig为梯度二值化图像,得到

(14)

直接对Ig进行膨胀操作一次,标记Ig像素值为1的坐标,将λ相应坐标中的点的值进行增强处理,则

(15)

求取颜色饱和度差异首先把图像从RGB空间转换到HSV空间的S图像,转换公式如下

(16)

式中:max和min分别为R、G、B的最大值和最小值。

设IS1,IS2为I1,I2重叠区域的S图像,则

ES(x,y)=abs(IS1xy-IS2xy)

(17)

权重α,β,γ的设定,要从综合角度上选定,本文经过实验,α=0.3,β=0.4,γ=0.3效果较好。

2.3 改进最佳缝合线搜索准则

得到能量函数之后,根据准则,用动态规划的方式寻找一条最佳缝合线,传统的最佳缝合线法在搜索时灵活度不够,对局部信息反映较差,本文将局部信息按一定权重加入强度值,对最佳缝合线的搜索进行改进,主要步骤如下:

(1)每一列的第一个像素代表了一条缝合线的初始强度值,若有n列,则有n条缝合线。

(2)设第一个像素点为当前点,像素值为强度值,则有该点下行紧邻的3个像素值,将每个像素点正下方3×3方框内求取像素平均值,称为局部信息值。

(3)将当前点下3个像素值分别加上其局部信息值与权重(本文为0.5)的乘积,得到的3个值进行比较,最小值的像素点更新为当前点,该像素值为新的强度值。依次更新当前点直到最后一行,则所有当前点连成的线为缝合线。

(4)求出所有n条缝合线,最小强度值的缝合线为最佳缝合线,如图3(d)所示。

图3 最佳缝合线过程

2.4 融合带加权平均融合

在两幅图像的重叠区域搜索出最佳缝合线后,在缝合线两端各取一幅原图部分直接进行拼接,这样处理后消除了重影问题,可是明显有拼接的痕迹,前面虽然经过了曝光差异矫正,但缝合线两端的颜色差异无法达到完全一致,为了得到更加自然的拼接图像,需对缝合线两端进行处理,如图所示,在缝合线两端各划出p个像素长度(按重叠区域长度来判断,本文p=10)的区域为融合带[14]。

在融合带中,用加权平均融合法对x方向平滑过渡,融合如式所示

(18)

式中:f为融合后图像,f1,f2为最佳缝合线在融合带中左右原图,w1和w2为融合带中对应像素的权重,关系为w1+w2=1。 一般按照渐入渐出法,w1和w2的计算如下

(19)

式中:xi为当前像素横坐标,xl和xr为重叠区域左右边界横坐标。本文中,因为是在融合带中进行融合,w1和w2的计算略有改动

(20)

式中:p为融合带边界点到缝合线点的距离。

3 实验结果与分析

为验证本文提出方法的效果,将Duplaquet算法和本文方法进行比较。实验对多组图片进行仿真实验,实验图片均为手机直接拍摄,尺寸为640×480,实验硬件平台为Intel Core(TM) i7-5700HQ,2.7 GHz CPU,内存为8 GB,软件平台为visual studio 2013+opencv2.4.13。实验结果如图4和图5所示。

最佳缝合线通常可以较好地分离运动物体,但是也存在一种情况,就是运动物体过于靠近缝合线造成融合效果不佳的情况,图4(a)和图5(a)是实验原图,传统最佳缝合线可以很好地分离运动物体,可以从图4(b)和图5(b) 看出,缝合线很好地绕过了运动物体,但与运动物体的距离非常近,建立融合带时,图4(c)和图5(c)的融合带都覆盖了部分运动物体,拼接的效果如图4(f)和图5(f)所示,不仅可以明显看出因曝光差异而造成的拼接缝,而且可以看出明显的鬼影和重影。本文方法通过改进最佳缝合线的能量函数和搜索策略,重新搜索出新的最佳缝合线,如图4(d),图4(e),图5(d),图5(e)所示,最佳缝合线离运动物体具有一定的距离,所以建立融合带时,融合带也不存在运动物体。拼接效果如图4(g)和图5(g)所示,由于融合之前先进行了曝光差异矫正,融合带周围的图像过渡的也比较自然,整体的拼接效果要好于图4(f)和图5(f),视觉效果也较好。细节方面,图4(h) 左图和右图,图5(h)左图和右图分别为图4(f),图4(g),图5(f),图5(g)方框部分,图4(h)左图和图5(h)左图能看出较明显的鬼影,图4(h)右图和图5(h)右图则较为清晰,并无鬼影现象,实验结果表明,本文方法可以有效地解决最佳缝合线和运动物体过于接近造成的鬼影现象,提高了图片拼接质量。

图4 第一组拼接效果

图5 第二组拼接效果

实验没有通过任何GPU和CPU加速,算法所耗时间见表2。在特征提取方面,SURF算法所耗时间远大于SURF-ORB算法所耗时间,图像融合方面,Duplaquet算法结合加权平均融合算法在时间上小于本文方法图像融合时间,但本文算法在图像拼接质量上有所提高,消耗时间也在允许范围内,总体时间上,本文方法速度上还是略有优势。

表2 消耗时间对比

4 结束语

针对图像融合过程中易产生鬼影的现象,本文首先将SURF和ORB算法相结合,缩短特征点提取与匹配的时间,然后采用改进的最佳缝合线方法进行图像拼接,实验结果表明,本文方法不仅提高了图像拼接效率,而且有效地消除了图像拼接过程中产生的鬼影现象。同时,本文工作仍有许多不足,针对图像拼接实时性不足的问题,下一步将考虑引入CUDA GPU加速和CPU加速的方法优化图像拼接算法。

猜你喜欢

鬼影缝合线灰度
采用改进导重法的拓扑结构灰度单元过滤技术
基于灰度拉伸的图像水位识别方法研究
医用倒刺缝合线的研究进展
塔北哈拉哈塘地区奥陶系石灰岩缝合线发育特征及石油地质意义
基于最大加权投影求解的彩色图像灰度化对比度保留算法
如何消除胶印“鬼影”?
基于灰度线性建模的亚像素图像抖动量计算
基于单应性矩阵的图像拼接方法的对比分析
实时的静止目标与鬼影检测及判别方法
缝合线构造与油气地质意义