街景动态图像虚拟拼接仿真方法研究
2021-12-10常奇志王志琼翁小辉
常奇志,王志琼,兰 华,翁小辉
(吉林大学,吉林 长春 130025)
1 引言
动态图像虚拟拼接技术即把多幅存在重叠区域的动态图像融合为一幅图像。该技术最初被应用在卫星照片的后期处理上,当前在医学图像分析、虚拟场景漫游、数字化风景展示等方面都得到了广泛应用[1]。
动态图像虚拟拼接是图像后期处理中较为关键的一个环节[2]。目前技术较为成熟的动态图像拼接方法分别是基于特征与基于区域的动态图像虚拟拼接方法。基于区域的图像拼接方法是对比区域中所有的像素点,构建两幅图像的最佳转换矩阵,进而完成图像拼接。但是这种拼接方法是对两幅图像内的所有像素点进行操作,导致其运算量较大,同时图像收集条件存在一定的局限,图像的旋转、光照差异都会对基础配准造成干扰。而基于特征的动态图像拼接方法主要是搜索图像之间的相应特征点,通过融合特征点来完成图像拼接,虽然这种方法计算量较小,但很容易被图像内含有的噪声所干扰,导致拼接后的图像较为模糊。
街景动态图像虚拟拼接受噪声影响,特征点向量提取不准确,此次研究以解决上述问题为研究目标,采用邻域平均法增加图像的平滑效果,运用SIFT算法准确提取图像特征点向量,最后利用特征点向量与基准图像的匹配完成街景动态图像的虚拟拼接。
2 街景动态图像虚拟拼接
2.1 预处理与平滑去噪
街景动态图像虚拟拼接预处理的主要目的是为了提高后续图像配准的精准度,对初始图像进行坐标转换与折叠变化,搜索大致的重叠区域,减少匹配的范围,提高后期的拼接速度。
拟定动态图像受到高斯噪声的干扰,设x(i,j)代表受到噪声干扰的动态图像,g(i,j)代表初始无噪声动态图像,n(i,j)代表高斯白噪声,其与g(i,j)互相独立。因此得到如下关系式
x(i,j)=g(i,j)+n(i,j)
(1)
设y(i,j)代表对噪声干扰x(i,j)进行平滑之后输出的动态图像,Vi代表以点(i,j)为中心的邻域,这个邻域内存在N种像点。平滑前邻域为V,则动态图像内N种像点的灰度平均值m为
(2)
邻域平均法对噪声具有较强的平滑处理效果,但是会使图像的边缘出现模糊。为了改变该方法对图像边缘的影响,在邻域灰度均值m的计算中添加一个修正项。修正项的尺寸会随着动态图像局部细节的变化而改变。如果没有边缘通过邻域Vi,其值应趋近于0,进而提高邻域平均法的平滑效果。
在邻域Vi内,还可以通过上偏差与下偏差来获取动态图像的局部信息。上偏差表示为mup,其定义是灰度级超过邻域灰度平均值m的每种像点的灰度平均值与m的差值。假如分别以Ni,Nj,Nl表示邻域中灰度级大于、等于或小于灰度平均值m的像点数,那么灰度的上偏差就可以表示为
(3)
灰度的下偏差以mdown来表示,其定义是邻域灰度平均值m与灰度级小于m的各像点的灰度平均值的差,计算公式为
(4)
并有
Ni+Nj+Nl=N1
(5)
设αmup与αmdown代表修正项,其中α代表修正系数,取值的范围是(0,1)之间。拟定影响动态图像拼接的噪声服从高斯分布[3],因此在灰度平均值的区域中N近似等于Ni。假如存在一边缘通过邻域Vi,那么N和Ni之间的差值就会较大。因此,N与Ni的取值可以直接映射出Vi,则修正系数α的计算公式为
(6)
式中,y≥0代表指数。所以,修正的邻域平均法可以通过下式计算出
(7)
把式(6)代入式(7),可以得到
(8)
通过上述公式可以看出,在灰度平均值的区域中[4],因为N和Ni之间相差较小,因此y(i,j)近似等于m。假如存在边缘通过邻域V[5],那么式(8)就会表示为加权平均,因此就会存在mup-mdown 指数y可以评定修正值的尺寸。通过上式能够看出,假如y=0,那么修正值是零,上式就简化成简单的邻域平均法。假如y趋近于正无穷大,那么修正值是mup或是mdown。凭借像点的灰度级等于、大于或小于邻域均值,把它们分为三部分。利用像点最多的那一部分的灰度平均值当做点(i,j)的灰度估计值。通过分析结果能够看出: 1)无论y是何值,式(8)都不会让动态图像的平均灰度出现偏移。 2)y越小那么其对噪声的平滑效果就越高。 3)式(8)可以锐化模糊的图像边缘,同时y越大,锐化的效果就越明显[6]。 y=σs/σn (9) 通过式(9)就可以根据不同的动态图像与噪声自行调整式(8)的锐化与平滑作用。把式(9)融入式(8)就能够获得修正的邻域平均法的估算公式。 (10) 根据上述完成平滑去噪处理后的动态图像y(i,j),通过极坐标(r,θ)来进行代替,完成图像的对数极坐标映射。在图像y(i,j)中选定坐标原点(x0,y0),它们之间满足下列关联 r=(x1-x0)2+(y1-y0)2 (11) 这里取坐标原点(x0,y0)为(0,0),其通过复数z可以表示为 z=r(cosθ+isinθ)reiθ (12) 令ω=1nz=p(z)+iq(z)=1nr+iθ,那么笛卡尔坐标转换成对数极坐标的映射方程为 p(r,θ)=1nr,q(r,θ) (13) 通过上式可以看出,在笛卡尔空间内动态图像相对于坐标原点发生了旋转与缩放的变化:动态图像放大r0倍,旋转θ0角度,即变化之后新的对应极坐标是(r0r,θ+θ0),因此取对数极坐标映射之后存在 ω=1nz=1nr0rei(θ+θ0) (14) 即:p(r,θ)=1nr+1nr0,q(r,θ)=θ+θ0。 在完成对数极坐标映射处理后,使用SIFT算法提取动态图像特征点向量。SIFT算法是一种基于尺度空间的算法[9],该方法使用广泛,在动态图像旋转、平移、缩放等状况下仍然能够保持不变性。特征点向量的提取的流程如下所示: 1)构建动态图像金字塔 多种尺度空间代表动态图像存在多尺度特征,已有事实证明,高斯核即完成尺度转换的唯一线性核[10]。基于此,动态图像的金字塔尺寸空间为 L(x1,y1,σ)=G(x1,y1,σ)*q(r,θ) (15) 式中,G(x1,y1,σ)代表尺寸可变的高斯函数,σ代表尺寸。所以σ能够评定动态图像的细节清晰度,在其较大时,动态图像的细节会出现模糊;反之,动态图像的细节较为清晰。 2)检测尺寸空间极值点 如果想获取尺寸空间的极值点[11],在DOG尺寸空间内使用以下步骤:1种采样点需要与27种点进行对比,随后才可以获得极值点。这28种点在同尺寸动态图像中临近点有9种,还有临近尺寸上的临近点19种。 3)确定极值点 这一步骤的重点在于通过三维二次函数的拟合方法,剔除低对比度点与不稳定的边缘点,同时确定关键点的尺寸与坐标。首先对空间尺寸函数进行求导,同时使其为零,计算出精准的坐标,随后剔除不满足要求的点。 4)确定关键点和方向 凭借与关键点(x1,y1)临近的四种点尺寸L来确准梯度的方向,其能够通过公式表示为 (16) 通过式(16)能够得到关键点方向信息。 5)特征点向量提取 以关键点代表中心,分布4*4窗口,在窗口中估算9种方向的梯度信息,最后获得129维的特征点向量。 街景动态图像的拼接流程如图1所示。 图1 动态图像拼接流程 想要完成动态图像拼接需要把预拼接的动态图像转换至与基准图像相同的平面上,利用预拼接图像在基准图像平面上的映射图像进行匹配[12],使用映射转换模型来完成动态图像的空间转换。 在进行空间转换的过程中,使用对齐坐标以矩阵的形式对配准图像和基准图像之间的关联进行表达,能够用公式表示为 (17) 在矩阵转换的过程内,n2代表动态图像的水平方向位移,n5代表垂直方向的位移,n0,n1,n3与n4代表水平与竖直方向的旋转量与尺寸,n6与n7分别代表垂直方向与水平方向的变形量。 在完成动态图像的空间转换后,使用权重函数完成对动态图像的融合。 拟定ω(x1,y1,k)代表权重分布函数,则有 (18) 式中,widthk与heightk分别代表第k种局部图像的长与宽,通过权重分布函数采用加权平均算法,计算动态图像拼接函数。拟定d(x1,y1)代表融合算法内估算的尺寸映射,以块尺寸与欧式距离作为依据,对到最近尺寸的映射点与边进行估算,则得到图像拼接函数为 (19) 其中,Ik(x1,y1)代表单调函数,代表第k幅动态图像的光强函数。通过此函数完成动态街景图像的拼接。 仿真环境为Intel Celeron Tulatin1GHz CPU和384MB SD内存的硬件环境,MATLAB6.1的软件环境。 对分辨率是900*700的街景动态图像进行拼接实验,选取之前匹配点对的总量是241对,选取之后是201对。使用所提出的拼接方法,以图像修正前后的效果进行对比,其结果如图2所示。 图2 街景动态图像的拼接效果 通过图2可以看出,在没有进行修正之前,虽然特征点邻近的区域拼接效果较好,但远离重叠区域的误差就会较大,而使用所提方法进行修正之后,整体的拼接效果较为理想,不会出现重叠区域细节信息丢失的现象。 为了能够更进一步证明所提方法的拼接效果,随机选取一幅街景图像对其整体进行均分的分割,然后使用所提方法、基于特征的方法与基于区域的方法对分割后的图像进行拼接,拼接的结果如图3所示。 图3 三种方法拼接图像的效果 观察图3可以得出,使用所提方法对街景的图像进行拼接后,街景动态图像不会出现图像阴影重叠和原图像细节丢失的问题,而两种对比方法存在明显的拼接重叠现象。这就表明,提出拼接方法精准度较高,纹理细节处理较好。 为了验证所提方法的拼接效率,选取30张动态街景图片,对比三种拼接方法的时间消耗情况,对比结果如图4所示。 图4 拼接效率对比结果 分析图4可知,所提方法的拼接耗时最低,在5次拼接时,所提方法出现最高用时为5.9s,而9次拼接后,所提方法的拼接用时一直稳定在4s左右。所提方法的最高耗时与基于区域方法、基于特征方法相比,分别下降了46.36%、62.89%。因此,充分说明所提方法具有较高的拼接效率。 为了提高街景动态图像的拼接精准度,提出一种新的街景动态图像虚拟拼接方法,预处理街景动态图像,保证图像配准的精准度,同时提升后期拼接的效率。利用SIFT算法提取街景动态图像的特征点向量,进而完成对街景动态图像的虚拟拼接。仿真结果表明: 1)采用所提方法完成街景动态图像拼接后,图像清晰度较高。 2)所提方法的拼接图像不存在拼接裂缝,具有较高的应用价值。 3)所提方法的拼接耗时基本保持在4s左右,具有较高的拼接效率。 上述实验结果验证了与传统方法相比,所提方法的拼接图像清晰度更高、拼接用时更短,可以实现街景动态图像的精准拼接。2.2 对数极坐标映射
2.3 特征点向量提取
2.4 图像虚拟拼接
3 仿真研究
3.1 修正效果
3.2 拼接效果对比
3.3 拼接效率对比
4 结束语