基于频谱和空域特征匹配的图像配准算法 下载: 1127次
1 引言
图像拼接[1]就是将部分内容相关的多幅图像进行拼接,构成一幅具有较大视场的图像。由于普通相机获取的图像视场有限,为了获得高分辨率的大视场图像,人们提出了利用多张图像之间的相关性进行大视场图像拼接的方法。目前,图像拼接技术已被广泛应用于医学影像分析、航空图像处理、虚拟现实技术、空间探测等领域。
图像拼接主要包括两个核心技术:图像配准[2]和图像融合[3]。图像配准是图像融合的基础,会直接影响图像拼接的质量,而且图像拼接的计算量主要取决于配准算法。图像拼接技术的发展很大程度上取决于对图像配准技术的不断创新,因此图像配准技术是当下非常流行的研究课题。图像配准技术可大致分为基于图像区域配准和基于图像特征配准两类,如SIFT(Scale Invariant Feature Transform)、SURF(Speeded Up Robust Features)[4-6]、块匹配法和网格匹配法等算法[7-9]。
基于区域的配准算法利用图像的灰度信息建立图像间的相似性,根据相似性度量值寻找两幅图像间的配准区域,从而建立两幅图像之间的变换关系。文献[ 9]中提出了基于块匹配的配准算法,取第1幅图像处于重叠部分中的图像块作为模板,在第2幅图像中搜索相似的对应图像块,从而确定配准矩阵。该算法的精度较高,但计算量较大。文献[ 7]中提出了一种基于网格匹配的配准算法,在第2幅图像的重叠区域取一个网格,然后将网格在第1幅图像上移动,计算网格对应点的RGB值之差的平方和,记录差值最小时对应的网格位置,即为两幅图像的配准位置。将该算法应用于有相对旋转和平移的两幅图像的配准时,在每次进行网格匹配之前,都需要先旋转一定角度或平移一定距离,这不仅增加了时间复杂度,还大大降低了配准速度。基于区域的配准算法利用图像的灰度信息进行配准,配准精度较高,稳健性较强,但计算量大,配准速度慢。
基于特征的配准算法是目前图像配准技术中最常用的方法,如文献[ 10-12]中的配准方法主要利用图像中的不变特征(特征点、轮廓等)作为图像间配准的依据,其优点是提取图像特征的数量远远小于图像像素点的数量,从而大大降低了算法的时间复杂度和空间复杂度。但是基于特征的配准算法需要建立一系列的计算规则对待配准图像中的特征点进行提取,而在实际的配准场景中会出现图像特征点不明显的情况,容易导致特征点误匹配,大大降低了配准精度。
针对特征点不明显的图像配准场景,在保证两幅图像重叠面积超过80%的前提下,本文提出了一种基于频谱和空域特征匹配的图像配准算法。基于傅里叶频谱图的旋转中心不变性,将空域中图像绕着任意点的旋转量变成频谱图绕着中心的旋转量,利用极坐标系和笛卡尔坐标系之间的坐标变换关系,将两幅频谱图的旋转量转化为一维平移量,利用SAD(Sum of Absolute Difference)算法求得角度量,再使用SAD算法求取平移量,最终得到两幅待配准图像之间的变换矩阵。
2 基本原理
2.1 图像变换
假设空间中的点A在两幅图像f1(x,y)和f2(x,y)中的像素坐标分别为(x1,y1)和(x2,y2),即有f2(x2,y2)=f1(x1,y1)。已知(x1,y1)与(x2,y2)之间的空间坐标变换采用刚体平面变换模型,则(x1,y1)和(x2,y2)的空间坐标变换为
式中:θ为两幅图像的旋转角;(tx,ty)为两幅图像的平移量。
2.2 图像配准
在实际应用中,两幅待配准图像常常会伴随着相对的旋转,进一步限制了基于区域的配准算法的应用,因此基于图像特征的配准算法便成为目前的主流算法。针对图像特征不明显的配准场景,基于图像特征的配准算法无法保证配准的精度。针对图像特征不明显的配准场景,需要利用图像内容进行配准。
本文提出的配准算法主要针对重叠区域足够大的配准场景(一般要求两幅待配准图像的重叠区域不低于80%),比如常见的视频流拼接场景(相邻两幅待配准图像的重叠面积能够得到保证,且相邻两幅待配准图像的亮度、对比度对图像配准的精度影响较小)。
假设两幅待配准图像f1(x,y)和f2(x,y)有相对旋转和平移,根据(1)式有
对(2)式进行傅里叶变换,得到两幅待配准图像的傅里叶频谱图表达式为
式中:F1(ξ,η)、F2(ξ,η)分别为图像f1(x,y)、f2(x,y)的傅里叶频谱图函数;(ξ,η)为频谱图坐标。
根据傅里叶频谱图的旋转中心不变性,可以将空域中两幅图像绕任意一点的旋转量变换到频域中两幅频谱图绕频谱图中心的旋转量。与利用图像灰度值直接进行计算的基于区域的配准算法不同,本文算法通过对空域中的两幅待配准图像进行傅里叶变换,将两幅灰度图像的图像变化信息转化成数值化频谱图的幅值。频谱图像素值的大小表示不同频率的幅值,即频谱函数的模。用函数M1、M2分别表示F1(ξ,η)、F2(ξ,η)的模,则有
根据直角坐标系和极坐标系的坐标变换关系,有
式中:x和y为直角坐标系下频谱图的坐标值;ρ为极坐标系下频谱图的极径;θ'为极坐标系下频谱图的极角。
结合(4)式和(5)式得到极坐标系下两幅频谱图的坐标变换关系为
式中:θ0为极坐标系下两幅频谱图绕中心的旋转角。
可以看到,极坐标系下两幅频谱图的模M1和M2只相差θ0的旋转量。
图 1. 两幅图像的频谱图。(a)(b)极坐标系下的频谱图;(c)(d)直角坐标系下的频谱图
Fig. 1. Spectrograms of two images. (a)(b) Spectrograms in polar coordinate system; (c)(d) spectrograms in rectangular coordinate syatem
利用SAD算法对
通过求得的旋转矩阵对两幅待配准图像进行变换,得到两幅只有相对平移的图像f'1(x,y)和f'2(x,y),对f'1(x,y)和f'2(x,y)使用SAD算法求得的平移矩阵为[tx,ty,1]T。
SAD是一种基于图像灰度的网格匹配算法,其基本思想就是取图像块中每个像素对应的像素值之差的平方均值,以此来评判两个图像块的匹配度。设函数S表示两幅图像重叠区域的灰度差均方根和,其表达式为
式中:(M,N)为图像f1(x,y)和f2(x,y)的大小;(m,n)为重叠区域的大小。
针对两幅大小为m×m的两幅待配准图像,已知图像f'1(x,y)和图像f'2(x,y)只有相对的平移,如
由于本文中两幅待配准图像的重叠区域超过了80%,因此在进行网格匹配时,可以通过建立相应的规则来避免无效的计算,从而提高运算速度。在保证图像重叠区域足够大的前提下,可以将网格匹配算法的查找起点进行更改,如
如
如
图 4. 函数S取值最小时两幅待配准图像的相对位置
Fig. 4. Relative position of two images to be registered when value of function S is the smallest
2.3 图像连续拼接
已知相邻两幅待配准图像之间的变换矩阵后,对图像序列进行连续配准就可以得到全景图像。本文以第一帧图像作为基准坐标系,则第n帧图像变换到基准坐标系下的变换矩阵可表示为
式中:RT为第k帧图像变换到第1帧图像坐标系的变换矩阵,RTk-1为第k帧图像变换到第k-1帧图像坐标系的变换矩阵;[xk,yk,1]T为第k帧图像的图像坐标系下的坐标;[x1,y1,1]T为基准坐标系下的坐标。
2.4 图像融合
通过对图像序列进行连续变换,可以将待配准的图像序列变换到基准坐标系下,对于基准坐标系下的每一个坐标,在每一帧图像的图像坐标系下都可以找到对应的坐标。所以基准坐标系下的每一个坐标的像素可能对应于k帧图像的对应像素集合{p1,…,pl-1,pl},其中,l的取值范围为[0,k]。如果基准坐标系下的点在第k帧图像的图像坐标系下的对应坐标超过了图像区域,则该点在第k帧图像所取得的像素值为pk=0。
对于基准坐标系下每一个坐标对应的像素集合{p1,…,pl-1,pl},取出所有不为0的像素值,并剔除最大值和最小值,对剩余的像素值求平均值,将平均值作为当前点的像素值。
3 实验结果
本实验的运行环境如下:处理器为Intel(R) Core i7-8750H CPU @2.20 GHz,显卡为NVIDA GeForce GTX1050 Ti,运行内存RAM为8 GB,编译平台为MATLAB 2018。本文针对的主要是视频流的连续配准,相邻两幅待配准图像之间的重叠区域都在80%以上,且相邻两幅待配准图像之间的亮度、对比度等因素对配准精度的影响较小。
对于因待配准图像特征点不明显而导致特征点提取和匹配精度难以保证的场景,SURF算法不再适用,而本文算法对于特征点不明显的待配准图像的配准效果如
图 5. 采用本文算法对两幅特征不明显的图像进行配准后的图像。(a)重叠区域灰度差均值为6.4564×10-4的图像; (b)重叠区域灰度差均值为8.0699×10-4的图像
Fig. 5. Registered images of two images with inconspicuous features. (a) Gray difference mean value of overlapped area is 6.4564×10-4; (b) gray difference mean value of overlapped area is 8.0699×10-4
如
对
根据上述讨论可知,只需要遍历(0°,15°]∪[-15°,0°]的区间,则SAD对应的搜索范围为(1,150]∪[3451,3600],得到的相似度曲线如
图 7. 两幅图像的频谱图。(a)(b)极坐标系下的频谱图;(c)(d)直角坐标系下的频谱图
Fig. 7. Spectrograms of two images. (a)(b) Spectrograms in polar coordinate system; (c)(d) spectrograms in rectangular coordinate system
图 8. 直角坐标系下两幅频谱图进行SAD后得到的相似度曲线
Fig. 8. Similarity curve of two spectrograms in rectangular coordinate system obtained by SAD
采用求得的旋转角对两幅图像进行变换,得到只有相对平移的两幅图像,再进行SAD查找求取平移矩阵。如
用上述求得的旋转量和平移量构造变换矩阵RT,对两幅图像进行坐标变换。从
依次求取图像序列相邻两幅图像之间的变换矩阵,并以第1幅图像的图像坐标系作为基准坐标系,将剩下的k-1帧图像分别变换到基准坐标系下,并对重叠区域进行像素均值融合,得到的连续拼接图如
图 9. 进行SAD粗匹配和精匹配得到的灰度差曲线。(a)粗匹配;(b)精匹配
Fig. 9. Gray level difference curves obtained by coarse matching and fine matching of SAD. (a) Coarse matching; (b) fine matching
图 10. 坐标变换后的图像。 (a)两幅图像进行配准后的图像;(b)多幅图像连续拼接得到的图像
Fig. 10. Images after coordinate transformation. (a) Image after registration of two images; (b) image after continuous mosaic of multiple images
4 结论
对于相邻两幅待配准图像重叠区域超过80%的图像配准场景,本文提出的配准算法既适用于常见的特征点不明显的配准场景,也适用于特征点明显的配准场景,拼接精度较高,配准速度较快,可以满足图像连续拼接的要求。与基于特征点的SURF算法相比,本文算法适用于特征点不明显的配准场景,而与基于区域匹配的SAD算法相比,本文算法的配准速度较快,能够满足连续拼接中对配准速度的要求。
[1] 徐正光, 田清, 张利欣. 图像拼接方法探讨[J]. 微计算机信息, 2006, 22(30): 255-256, 188.
Xu Z G, Tian Q, Zhang L X. Discussion of image mosaic methods[J]. Control & Automation, 2006, 22(30): 255-256, 188.
[2] 罗述谦, 吕维雪. 医学图像配准技术[J]. 国外医学生物医学工程分册, 1999, 22(1): 1-8.
Luo X Q, Lü W X. Medical image registration technology[J]. Foreign Medical Sciences Biomedical Engineering, 1999, 22(1): 1-8.
[3] 胡良梅, 高隽, 何柯峰. 图像融合质量评价方法的研究[J]. 电子学报, 2004, 32(z1): 218-221.
Hu L M, Gao J, He K F. Research on quality measures for image fusion[J]. Acta Electronica Sinica, 2004, 32(z1): 218-221.
[4] KeY, SukthankarR. PCA-SIFT: a more distinctive representation for local image descriptors[C]∥Proceedings of the 2004 IEEE Computer Society Conference on Computer Vision and Pattern Recognition, 2004. CVPR 2004., June 27-July 2, 2004, Washington, DC, USA. New York: IEEE, 2004: 8161522.
[5] BayH, Tuytelaars T, van Gool L. SURF: speeded up robust features[M] ∥Leonardis A, Bischof H, Pinz A. Computer vision-ECCV 2006. Lecture notes in computer science. Berlin, Heidelberg: Springer, 2006, 3951: 404- 417.
[6] 史露, 苏刚, 韩飞. 基于SIFT和SURF图像拼接算法的改进算法[J]. 计算机应用与软件, 2013, 30(6): 72-74, 78.
Shi L, Su G, Han F. An improved algorithm based on SIFT and SURF image stitching algorithm[J]. Computer Applications and Software, 2013, 30(6): 72-74, 78.
[7] 朱远平, 夏利民. 一种适用于图像拼接的自适应模板匹配算法[J]. 计算机工程与应用, 2003, 39(31): 109-111, 139.
Zhu Y P, Xia L M. A robust template matching algorithm for automatic image stitching[J]. Computer Engineering and Applications, 2003, 39(31): 109-111, 139.
[8] 李志刚, 纪玉波, 薛全. 边界重叠图象的一种快速拼接算法[J]. 计算机工程, 2000, 26(5): 37-38.
Li Z G, Ji Y B, Xue Q. A fast stitching algorithm for edge overlapping images[J]. Computer Engineering, 2000, 26(5): 37-38.
[9] 刘旭, 任寰, 杨一, 等. 适合表面疵病检测的图像拼接方法[J]. 中国激光, 2010, 37(S1): 234-238.
[10] 何建伟, 杨建峰, 薛彬, 等. 基于系统论匹配准则的尺度不变特征变换的图像自动拼接研究[J]. 光学学报, 2010, 30(4): 989-993.
[11] 徐鑫, 孙韶媛, 沙钰杰, 等. 一种基于改进RANSAC的红外图像拼接方法[J]. 激光与光电子学进展, 2014, 51(11): 111001.
[12] 王飘, 耿国华, 张雨禾. 基于表面纹理特征定义的碎片拼接方法[J]. 激光与光电子学进展, 2018, 55(8): 081012.
陈泽锋, 吴庆阳, 陈顺治, 李奇锋, 卢晓婷, 黄浩涛. 基于频谱和空域特征匹配的图像配准算法[J]. 激光与光电子学进展, 2020, 57(2): 021005. Chen Zefeng, Wu Qingyang, Chen Shunzhi, Li Qifeng, Lu Xiaoting, Huang Haotao. Image Registration Based on Spectral and Spatial Feature Matching[J]. Laser & Optoelectronics Progress, 2020, 57(2): 021005.