基于柱面映射的均匀融合图像拼接方法

2022-09-30 05:29冀福全韦良芬汪先超
长春师范大学学报 2022年8期
关键词:像素点像素图像

冀福全,韦良芬,汪先超

(巢湖学院计算机与人工智能学院,安徽 合肥 238024)

0 引言

图像拼接是将同一场景中具有重叠视场的两幅或者多幅图像组合,以产生一幅无缝全景图或高分辨率图像的过程,经过拼接所获得的图像有较大的视场[1]。随着科学技术和计算机视觉的快速发展,图像拼接技术已成为研究热点,该技术广泛应用于安防监控、医学图像处理、图像识别与探测等领域,具有非常重要的研究意义和应用价值。

图像配准是图像拼接过程中的关键技术,国内外研究学者对基于特征点匹配的图像拼接算法进行了大量研究。常见特征匹配算法中,较为成熟的包括尺度不变的特征变换(Scale Invariant Feature Transform, SIFT算法)[2]、加速分割检测特征(Speeded Up Robust Features,SURF算法)[3]。陆柳杰等[4]针对SURF算法中特征点匹配精准度较低和拼接速度慢的问题,提出了一种优化的图像拼接方法。AHN CHANG-WOOK等在SURF算法基础上,使用具有方向性的BRIEF特征算子,提出了一种新的角点检测与特征描述算法,即ORB算法(Oriented FAST and Rotated BRIEF)[5]。EDWARD等提出了一种快速角点检测算法FAST(Features from Accelerated Segment Test)[6]算法,其最大的特点是具有高速性能,更适合应用于快速拼接[7]。

传统图像拼接过程中,待拼接图像经过单应性矩阵投影变换后,相对于基准图像有较大程度变形[8],在图像融合后,图像中会出现大面积无像素值的空洞区域,不仅导致大量数据冗余,同时也与常规矩阵式存储像素点的矩形图像显示格式相抵触,影响用户图像视觉体验效果。本文对传统图像拼接算法进行改进,将柱面映射引入图像拼接过程中,同时对融合后的图像进行边缘去噪,并结合双向线性插值算法对去噪图像可见区域进行双轴线性拉伸,消除图像中无效空洞像素点。相较于传统图像拼接效果,本文中拼接方法较大程度地降低了图像投影变换带来的变形程度,去除了冗余空洞区域,保留了图像可见区域完整信息,规范了图像展示格式。

1 传统的图像拼接方法

图1展示了传统的基于SURF算法的图像拼接流程,首先对输入的原始图像借助SURF算法进行特征点检测,在对图像进行高斯滤波处理后构建Hessian矩阵,通过改变高斯滤波窗口的大小来获得不同尺度的图像,并构造高斯金字塔尺寸空间,利用非极大值抑制初步确定特征点,设定Hessian行列式的阈值作为筛选依据,对特征点进行精确定位,计算特征点主方向,进一步构建特征描述子。在构建特征描述子时选取特征点周围一个方形框区域,划分为4×4个矩形区域,每个矩形区域有25个采样点,对每个区域求解水平方向和垂直方向的Haar小波特性,最终得到一个64维向量。然后对得到的特征点进行匹配,常用方法有K最近邻算法以及Brute-Force暴力匹配算法。上述方法得到的匹配点可能存在误匹配点,使用随机样本一致性方法RANSAC进行提纯,过滤掉误匹配点对,并计算出单应性矩阵。通过单应性矩阵,对待拼接图像进行投影变换,使得左右图像变换到同一坐标系,结合变换后图像像素点坐标进行图像融合,最终得到拼接图像,其中重叠区域像素点取值需结合像素点坐标综合考虑左右图像像素值所占权重。

图1 传统基于SURF算法的拼接流程

2 基于柱面映射图像拼接方法

图2为本文图像拼接方法的主要流程,与传统基于SURF算法的图像拼接方法相比,本文方法在对原始图像特征点检测前引入柱面映射变换,并且在图像融合后增加图像边缘去噪以及融合图像可见区域双轴线性拉伸处理,同时采用ORB算法进行特征点检测和描述,ORB算法采用FAST算法进行特征点检测,采用改进BRIEF算法生成特征向量描述子[9],其相对于SURF算法特征点提取速率更快。

图2 基于柱面映射图像拼接方法

检测得到特征点后通过KNN算法或者Brute-Force算法进行特征点匹配,使用RANSAC算法对匹配点对进行精匹配,进一步得到单应性变换矩阵,传统SURF图像拼接方法中待拼接图像经过投影变换后,其相对于原始图像具有较大程度变形,横纵尺寸拉长,与基准图像融合后会存在大片无效空洞区域,导致数据冗余和视觉体验降低,本文方法通过柱面映射变换预处理降低待拼接图像和基准图像间的坐标系空间差值,从而降低投影变换图像变形程度。在图像融合后,增加边缘去噪处理,消除上下边缘无效像素值,并对可见区域进行双轴线性拉伸,填充四周空洞区域。

2.1 图像柱面映射

对待拼接图像进行柱面映射处理,将原始图像通过中心投影映射到圆柱体侧面上,图3为柱面映射模型,其中映射中心为圆柱体几何中心O。原始图像的宽和高分别为w和h,以图像左上角为坐标原点,沿上边缘作为x轴,沿下边缘作为y轴,其上任意一像素点A′(x′,y′)在柱面上的映射点为A(x,y),x′和y′分别为原始图像A′点的横纵坐标,x和y为柱面映射图展开图A点的横纵坐标。θ为点A(x,y)到原图像左边缘在圆柱面映射位置的角度,θ′为原图像左右边缘在圆柱面映射位置对应角度的一半,f为映射圆柱体底面半径。

(a)立体几何图

(b)俯视图

(c)原始图像

(d)柱面映射展开图图3 柱面映射模型

根据以上几何关系有如下数学公式:

(1)

(2)

(3)

(4)

通过映射关系可计算映射图中某一点在原始图像中的坐标,由于映射图像素点坐标为整数,而计算得到原始图像对应的坐标为浮点数,本实验借助双线插值算法利用原图映射点周边4个整数坐标点对应像素点加权平均值作为映射点对应像素值,图4为双线插值模型。

图4中P为原图中映射点坐标,P1~P4为其邻近周边4个整数坐标点,其中,x1与x3相等,x2与x4相等,y1与y2相等,y3与y4相等,每个点对应的像素值为W,则双线插值算法P点对应像素值如下:

图4 双线插值模型图

W(x,y)=(1-r1)(1-u1)W1(x1,y1)+r1(1-u1)w2(x2,y2)+(1-r1)u1w3(x3,y3)+r1u1w4(x4,y4),

(5)

(6)

(7)

图5为原始图像经过柱面映射后得到的柱面映射图。

图5 原始图像经柱面映射后的效果

2.2 柱面邻接图像配准与融合

2.2.1 特征点检测和描述

特征点提取使用ORB算法,该算法具有尺度不变性和旋转不变性,并且具有较快的提取速度。图6为ORB算法过程,为了满足尺寸不变性,通过设置缩放比例因子和金字塔的层数n,将原始图像按比例因子缩小成n副图,从而构建不同分辨率的图像金字塔。对图像金字塔不同层图像,计算以关键点为中心的方框中的像素点灰度强度形心。

图6 ORB算法过程

强度形心为给定patch中平均像素的位置,特征点坐标与强度形心形成的向量为该特征点的方向。对图像中任意特征点P,强度形心计算公式为(8)~(9),其中,mpq为特征点P的patch邻域像素距,I(x,y)为像素灰度值,R为patch邻域半径,C为强度形心。C和特征点P的夹角即为FAST特征点的主方向。

(8)

(9)

BRIEF算法采用二进制码串作为特征点的特征描述子,在每一个特征点邻域内通过高斯分布选择n对像素点,比较每个点对的灰度值的大小,并根据其大小关系生成长度为n的二进制码串。为增加特征点描述旋转不变性,对BRIEF算法进行改进,将特征点方向引入特征点BRIEF特征描述子计算中,对特征点邻域n个点对组成的特征矩阵用旋转矩阵进行旋转变换,进一步计算得到特征点描述子。

2.2.2 特征点匹配

采用近似最近邻快速搜索库(Fast Library for Approximate Nearest Neighbors,FLANN)[10]及K最近邻算法(K-Nearest Neighbor,KNN)算法进行特征匹配[11],具体过程如下:

步骤1 以第一幅图像的特征点为训练集,以第二幅图像的特征点为查询集,计算训练集所有特征点与查询集中特征点的汉明指标[12]作为两特征点之间的标准欧几里得距离相似性,结合阈值τ判定是否匹配。

步骤2 通过K最近邻算法筛选匹配点,保留每个训练集中特征点与查询集中欧式距离最近和次近的匹配点对,计算最近和次近欧式距离比值,并根据设定阈值过滤匹配点对。

步骤3 通过随机抽样一致算法(Random Sample Consensus,RANSAC)对匹配点对进行精匹配[13],并根据匹配点对状态筛选,去除其中的误匹配点对,获取内点匹配对。

步骤4 计算内点匹配对的单应性矩阵,即最优透射变换矩阵。

2.2.3 图像单应性变换

单应性矩阵保存图形变换的相关数据,能够对图形间的几何变换关系进行描述,根据单应性变换(Homography)算法[14-15],利用单应性矩阵H对待拼接图像进行变换,即将两幅图变换到同一坐标系。

(10)

其中,x和y为原始的横纵坐标,x′和y′对应变换后点的横纵坐标,单应性矩阵H中α1和α2为旋转变换参数,α4和α5为尺寸变换参数,α3和α6为平移参数,α7和α8为透视变换参数,α9为1。

2.2.4 图像融合

图像融合将基准图像和待拼接图像拼接为一张图像,需要综合考虑左右图像各自像素点对融合图像像素值的影响,降低图像融合后可能出现的重影、拼接裂缝、亮度色调跳跃等现象[16]。本文实验采用线性加权平滑融合算法生成融合图像中像素点的像素值,图7为左右图像线性加权融合模型,其中,S1和S3分别为左右图中非重叠区域,S2为重叠区域,D为重叠区域的宽度,xl和xr分别为重叠区域最左侧和最右侧像素点横坐标。

图7 左右图像融合模型

融合图像中像素点像素值计算公式如(11)~(13),其中,V1(x,y)和V2(x,y)为P点在左右图中的像素值,R1和R2分别为左右图中该像素点在融合中所占权重。

(11)

(12)

(13)

2.3 边缘去噪及可见区域双轴线性拉伸

2.3.1 边缘去噪

图像单应性变换会使待拼接图像发生旋转、尺寸放缩、平移等变形,在与基准图像融合后,融合图像上下边缘会出现一定区域的无效噪声区,检测并获取可见区域上边界临界点高度h1和下边界临界点高度h2,保留图像纵向h1~h2间图像,并去除0~h1以及h2~h间无效噪声区域,其中,h为融合图像高度。在检测临界点过程中,为保证检测点准确性,防止个别特殊点的干扰,通过比对以检测点为中心、邻近方形区域3×3个点的像素灰度值,仅当区域内所有像素点均有效时,才可断定该检测点为可见像素点。

2.3.2 可见区双轴线性拉伸

去噪后的融合图像四周仍存在一定比例无效空洞区域,其中左侧边缘会出现不同程度的倾斜,上下弧线边缘和图像边界间无像素点。无效区域的存储占据大量数据,导致图像数据冗余,同时也影响视觉体验,本文采用双轴线性拉伸算法对图像可见区域进行变换,填充空洞区域。图8为x轴线性拉伸变换模型,通过x轴线性拉伸校正左边缘倾斜。

(a)x轴方向校正前图像 (b)x轴方向校正后图像图8 x轴线性拉伸变换模型

S区域和S′区域分别为图像变换前后的可见区域,对原图中任意一点P(x,y)在变换后图像中映射位置为P′(x′,y′),变换公式为(14)~(15),其中,w为图像宽度,h为图像高度,θ为融合图像可见区域左侧边界与y轴方向的夹角,其正切值可以通过单应性矩阵求得,Il和Ir分别表示θ位于y方向左侧和右侧的角度集合。

(14)

y=y′.

(15)

x轴方向校正后,对图像进行y轴方向线性拉伸,将S′区域像素点填充整个图像区域,图8(b)中A(x′,y1)和B(x′,y2)分别为点P′所在y方向上可见区域边界点,对于其上任意一点P′(x′,y′),若其映射到最终结果图像中点P0(x0,y0),则存在如下变换公式:

x′=x0,

(16)

(17)

3 实验设置及结果分析

为了验证本文拼接方法的有效性,对本文图像拼接方法和传统基于SURF算法的图像拼接方法进行比对实验,为了保证比较结果的公平性和准确性,两种方法采用相同的图像样本,在相同的测试环境下进行实验。实验环境为CPU 11th Gen Intel®CoreTMi7-11370H@3.30GHz,8G内存,操作系统Windows10,64位,编译环境为Visual Studio 2013。本文选取多组图像进行实验,图像分辨率为1080×1440像素,不同组图像在亮度、视野开阔度、场景内容多样性等方面存在差异,相邻图像视角差为30°~60°,重叠区域约50%。表1为从实验中选取的6组实验的实验数据,其中,a方法表示传统基于SURF算法的拼接方法,b方法表示本文方法。

表1 两种拼接方法实验数据比较

从表1可以看出,相对于传统基于SURF算法的图像拼接方法,本文方法的特征点提取时间大大降低,提取速率提升了10倍左右,拼接图像宽度和高度都有较大程度的缩减,整体图像尺寸缩减约60%,拼接图像存储大小降低了一半左右。同时,采用传统基于SURF算法的图像拼接方法拼接得到的图像具有一定比例的无效区域,无效像素点占比为20%~30%,本文方法得到的拼接图像消除了无效区域,无效像素点数变为0。以下选取两组实验结果进行展示,图9和图10分别为表1中第1组和第2组图像拼接结果,其中(a)图和(b)图分别为待拼接的左右相邻图像,可以看出,采用传统基于SURF算法的拼接方法得到的图像变形程度较大,左右侧图像尺寸不一致,图像具有较大比例的无效区域,本文方法拼接得到的图像整体效果良好,图像各部分尺寸相对均衡,变形程度低,重叠区域过渡自然,同时保留了原始图像全部信息。

(a)原始图(左) (b)原始图(右) (c)传统拼接方法 (d)本文方法图9 第1组图像拼接实验结果

(a)原始图(左) (b)原始图(右) (c)传统拼接方法 (d)本文方法图10 第2组图像拼接实验结果

4 结论

针对传统图像拼接中变形程度大、冗余度高的问题,本文提出了一种基于柱面映射的无损式均匀融合拼接方法,该方法对原始图像进行柱面映射处理,采用ORB算法进行特征点提取,并对融合后图像进行双轴线性拉伸填补空洞区域。实验数据表明,本文基于柱面映射的图像拼接方法能够得到视野无损失的融合图像,降低图像变形程度的同时保留了原图像全部信息,消除了传统基于SURF算法的拼接方法的无效区域,较大程度上降低了图像数据冗余度。相对于传统SURF算法,本文算法特征点提取速率更快,同时图像拼接质量良好,有效提升了融合图像的视觉效果。

本文提出的基于柱面映射的均匀融合图像拼接方法能够有效解决传统图像拼接变形程度大以及空洞区域多的问题,图像拼接效率较高,拼接得到图像整体效果较好。与此同时,本文方法也存在着一些不足,对原始左右图像视角重叠度有一定要求,在拼接图像融合区域的边界处会出现一定程度的裂痕现象,针对较为复杂的内容场景,由拼接方法得到的图像效果欠佳,这些还需在后续工作中进一步研究、改进。

猜你喜欢
像素点像素图像
“像素”仙人掌
A、B两点漂流记
一种X射线图像白点噪声去除算法
基于灰度直方图的单一图像噪声类型识别研究
基于canvas的前端数据加密
图像采集过程中基于肤色理论的采集框自动定位
高像素不是全部
名人语录的极简图像表达
一次函数图像与性质的重难点讲析
神回复