基于ORB特征的高分辨率图像拼接改进算法 下载: 832次
1 引言
图像拼接技术一直是计算机视觉领域与数字图像处理技术中非常重要且热门的一个研究方向,其目的是获取更大的视野与更高的分辨率图像。通过将两张或多张从不同视角、不同传感器获得的具有相同区域的数字图像进行一系列的图形几何变换,就可以拼接得到单张具有更大视野、更高质量的图像。目前,图像拼接技术在虚拟现实技术、遥感遥测图像、医学图像分析、视频监控等场景中得到了广泛的关注与应用[1-4]。随着拍摄设备的快速发展,高分辨率图像的获取越来越容易,也更加普遍,因此对高分辨率图像快速拼接技术进行更深入的研究,具有重要的意义。
图像拼接一般有三个过程,分别是对图像进行预处理,完成对多张图像的配准,以及采用图像融合技术去除痕迹,其中最重要的过程就是图像配准。图像配准是先选取一张参考图像,再通过空间单应性变换,使其余图像与参考图像相同的部分实现重叠。目前,最常用的图像配准方法是基于图像特征点匹配法。由于图像特征点匹配法能够克服图像灰度、尺度、拍摄角度等因素的干扰,具有可靠性高、鲁棒性强的特点,是图像配准的主要研究方向。2004年,Lowe等[5]总结并发表了尺度不变特征转换(SIFT)算法,具有里程碑意义,仍能够在图像大小和角度发生变化时保持良好的性能,拼接效果优异,已得到快速的推广与应用。但SIFT算法运算时间较长,匹配速度不够快[6]。针对SIFT算法特征描述向量维度高、算法复杂度高、运算耗时较长等缺点,已有学者进行了大量的研究。2006年,Bay等[7]提出了SIFT算法的改进版——SURF (Speeded Up Robust Features)算法,大幅度提高了算法的计算速度,降低了特征描述向量的维数,但匹配精度不够高。2011年,Rublee等[8]提出了ORB(Oriented FAST and Rotated BRIEF)算法,该算法结合并改进了FAST特征点检测和BRIEF特征描述,在处理速度上得到了显著的提升。2015年,佘建国等[9]通过改进的随机抽样一致性(RANSAC)算法对ORB算法进行优化,缩短了匹配时间,但处理图像的分辨率只有540 pixel×380 pixel,且匹配准确率有一定下降。2017年,张莹等[10]通过利用SIFT算法来提取图像特征点,并结合ORB算法描述子进行改进,其匹配速度较SIFT算法提升较大。但降低了匹配精度,图像分辨率最高只有648 pixel×486 pixel。2018年,王健等[11]采用双向匹配与RANSAC算法对ORB算法进行匹配优化,对分辨率为850 pixel×680 pixel的图像进行拼接,其均方根误差平均降低10.06%,但匹配时间增加。
本文针对现有图片拼接方法处理速度慢、准确率低、无法快速拼接高分辨率图像的不足,提出了一种高分辨率图像拼接改进算法。首先利用ORB特征点检测速度快的优势,对图像进行特征点提取,然后对特征点对使用汉明距离实现快速粗匹配,再采用基于渐进采样一致性(PROSAC)进行优化,剔除误匹配点对之后,求解单应性变换矩阵。采用渐入渐出加权融合算法对重叠区域进行融合处理,去除拼接痕迹。通过对两组高分辨率图像进行拼接实验,表明本文算法能够对高分辨率图像进行快速准确的拼接。
2 改进的ORB算法
2.1 ORB特征点提取
ORB是一种快速特征点提取和描述的算法,它采用FAST算法对图像进行特征点检测,然后将检测出的特征点进行BRIEF算法描述,结合两者的优势,改掉缺点,解决了图像噪声对BRIEF算法的干扰问题,并使其具有良好的旋转不变性,最终实现数字图像快速准确的特征点提取。
FAST算法能够快速地检测特征点,在数字图像中,一般以某一像素点为中心,选取其圆形邻域区域,对比区域内其他像素点灰度值与该像素的灰度值的大小,当区域内有足够多像素点的灰度值与该像素点的灰度值差值大于阈值时,则判断该像素点为特征点。如
对图像中检测到的FAST特征点,进行rBRIEF (rotated BRIEF)描述子描述,解决了其不具备旋转不变性的严重缺陷。BRIEF描述子占用的存储空间较小,运算比较简单,且处理速度快,一般选取强度比较小的图像邻域进行表达。
定义N×N大小的矩形为图像邻域P,则τ测试(图像块上定义二元测试)为
其中,p(x)为平滑后的图像矩形区域P在(u,v)处的灰度值。
选取n个(x,y)位置的像素点,用二进制字符串对该像素点进行唯一描述,其生成的n维二进制BRIEF描述子字符串为
式中,n一般设置为128、256或512。根据处理速度、存储效率与识别率等不同条件的需要,选取不同的数值。
ORB算法对每一个特征点,采取31 pixel×31 pixel的矩形窗口,并在该矩形窗口内随机选取满足高斯分布的5 pixel×5 pixel子窗口,通过数字图像灰度积分的计算方法,解决单个像素点容易受图像噪声干扰的问题。ORB算法综合考虑速度、效率等因素,采用n为256的BRIEF描述子,针对BRIEF无法应对图像旋转变换的缺点,利用仿射与旋转变换来设定足够多的BRIEF特征描述子。同时,由于FAST算法的速度是非常惊人的,ORB采用改进的FAST解决了尺度不变性,为高分辨率图像快速处理提供了基础。
2.2 特征点匹配与优化
传统ORB算法采用最近邻匹配特征点对表示正确匹配,该算法会引入大量的特征匹配对,其中存在很多错误匹配,匹配准确度低。为解决这一问题,本研究使用汉明距离(Hamming distance)判别描述子之间相似度(XOR运算),将关键点匹配变为二值分类问题,计算出两个描述串按位与运算后的累和,作为汉明距离D(X,Y),表达式为
式中:⊕表示与运算。汉明距离的值越小,说明两描述串相关性越高,否则两描述串差异较大。最后利用模式匹配器对所有特征点进行粗匹配。
在特征点进行粗匹配之后,对匹配点对进行提纯与优化,以获得最优的图像变换矩阵。传统算法一般采用基于RANSAC算法进行提纯,RANSAC算法[12]是一种随机参数随机采样估计算法,其选取的样本点是随机的,需要不断地迭代才能选取出尽量多的内点,且没有考虑特征点之间的差异性,因此算法的迭代次数较多,运算时间较长,误差较大。
本文采用PROSAC算法对特征点对进行提纯与优化,PROSAC算法是一种补偿RANSAC算法随机性的算法,从Chum等[13]所做的实验中可知,PROSAC算法相比RANSAC算法具有更高的稳健性和计算效率。采用PROSAC算法对图像匹配特征点对进行优化,其将样本集中的点对按照匹配质量进行排序,选择其中靠前位置的样本作为假设集,生成一个较高匹配概率的子集,即在质量高的粗匹配子集中进行采样计算,这样就避免了初始假设集选择的盲目性,很大成程度上提高了算法运行效率。相较于RANSAC算法,较大地减少了迭代次数,加快计算速度的同时,匹配准确率也得到提高[14]。PROSAC算法步骤如下:
1) 初始化相关参数,输入最大迭代次数Nmax,判断内点的误差极限Elim,设定内点数目阈值Tnum。
2) 将粗匹配点对中最近邻和次近邻距离的比值结果作为匹配质量,进行降序排列,选取匹配质量排列前m个匹配点对,从中随机选取至少4组点对,计算2.3节的单应性变换矩阵,再计算其余匹配点与投影点的误差,比较误差与Elim的大小,若误差小于Elim,则该点为内点,反之,则为外点。遍历所有匹配点对,计算出内点数量。
3) 判断迭代次数是否小于等于最大迭代次数Nmax,满足条件,则继续执行;若迭代次数大于最大迭代次数Nmax,则输出统计中内点最多的一组匹配点对集合。
4) 比较内点数量与阈值Tnum的大小,若内点数量小于阈值Tnum,则迭代次数加1,重复执行步骤2)。反之,输出当前内点集合,完成匹配点对的优化。
2.3 变换矩阵求解
在去除误匹配点对后,得到两幅图像的最优匹配特征点集合fa(x,y),fb(x,y),两幅图像特征点存在的空间单应性变换关系,可以用齐次方程表示为
式中:h0、h1、h3和h4共同表示图形旋转角度和缩放尺度;h2和h5分别表示图形在x方向与y方向上的平移量;h6和h7分别表示图形在x方向和y方向上的变形量。
为了确定齐次方程单应性变换矩阵H,需要求解出式中的8个待定参数。从两幅图像的最优匹配特征点集合中,至少选取4组匹配特征点对,通过齐次方程(4)式进行计算,求解出8个参数,也可通过选取多组匹配特征点对,计算最优解,得到变换矩阵H。将变换矩阵H与待拼接图像相乘,使其结果图像与参考图像两者进行线性相加,即可得到拼接图像。
3 图像融合
由于采集的数字图像可能是经不同时间或不同图像传感器获取而来,且其拍摄角度与积分时间设置也可能存在差异,故图像在像素灰度上存在差异。这些图像拼接之后,图像重叠区域会出现模糊鬼影现象,这就需要通过一定的图像融合算法来消除拼接痕迹。通过综合考察运算速度与成像质量,本研究采用渐入渐出加权融合方法来去除影响。对两幅图像f1(x,y), f2(x,y)进行计算,表达式为
式中,加权权值w1=
通过渐入渐出加权融合之后,重叠区域的灰度值按相应权重进行计算,减少了灰度差异,能有效地消除拼接痕迹,使拼接图像更加平滑、自然,成像质量更好。
4 实验结果与分析
本文实验硬件平台为台式计算机,64位Windows10操作系统,系统配置为主频2.8 GHz的Intel Core i7-7700HQ处理器,8 GB运行内存。本文算法实现采用C++编程语言,在Microsoft Visual Studio 2013软件环境下进行编程,数据库使用基于开源机器视觉库OpenCV2. 4. 9。实验采用2组不同高分辨率测试图像数据,图像分辨率分别为1280 pixel×720 pixel[(a)组, 720p]和1920 pixel×1080 pixel[(b)组, 1080p],图像格式是JPG,如
4.1 图像拼接速度对比实验
为了验证本文算法的有效性,对2组高分辨率图像,分别采用本文算法、SIFT算法、SURF算法以及ORB算法进行图像拼接实验,并对得到实验结果统一进行比较与分析。在算法的图像配准速度方面,本文通过测量不同算法的特征点提取时间与特征点匹配时间进行比较。
4种算法的处理时间都与图像分辨率呈正相关关系。其中:特征点提取时间最短的算法为ORB算法,本文算法特征点提取时间稍长于ORB算法,但本文算法计算速度远高于SIFT算法和SURF算法;在提取时间上,本文算法平均约为SIFT算法的8.08%,约为SURF算法的25.88%。
由于本文算法使用汉明距离进行快速粗匹配,采用PROSAC算法对图像特征点匹配进行优化,相对RANSAC减少了迭代次数,运算效率更高,因此特征点匹配时间是最短的,平均时间仅为62.5 ms,仅为ORB算法提取时间的65.10%。相比于SIFT算法和SURF算法,本文算法在速度上分别提高了约24倍和8倍,见
表 1. 不同算法图像拼接速度对比
Table 1. Comparison of image stitching speed of different algorithms
|
4.2 图像拼接准确度对比实验
对图像拼接的准确度,采用匹配正确率(CMR,RCM)与均方根误差(RMSE,RMSE)进行分析与评价[17]。
CMR作为一种相对客观的评价算法匹配性能的衡量指标,其得到的数值越高,表明算法的匹配性能越优秀,相应的图像配准的准确度也就更好。匹配正确率的计算方法为
式中,Nc为正确匹配点对数量,NR为优化后所有匹配点对数量。
RMSE是另一种评价图像拼接配准精度的定量指标。RMSE数值越小表明配准算法精度越高,意味着图像拼接的结果越好。对于特征匹配点对(xa,ya)和(xb,yb),其RMSE的计算方法为
式中,函数F(·)表示空间单应性变换模型。
由
表 2. 不同算法图像拼接准确度对比
Table 2. Comparison of image stitching accuracy of different algorithms
|
其次,本文算法的RMSE均低于其余算法,平均值仅为0.568。由于传统ORB算法使用FAST算法检测特征点,稳健性较低,所以RMSE最大,均值为0.713。而本文采用PROSAC算法进行了优化,具有更高的稳健性,匹配准确度也较高。本文算法的RMSE相对于SIFT算法减少了3.65%,相对于SURF算法减少了11.80%,相对于ORB算法减少了20.28%,可知本文算法的配准准确度相对较高。
4.3 图像拼接结果质量对比实验
对图像拼接结果的质量,采用图像信息熵(IE,EI)进行分析与评价。IE作为评价图像清晰度的一个量化标准,用来描述图像的平均信息量,衡量图像信息的丰富程度。图像信息熵越大,说明图像包含的信息量越大,图像的纹理细节越清晰。
式中,L为图像灰度级总数,P(i)表示灰度值i的像素数与图像总像素数的比值。
由
表 3. 不同算法图像拼接质量对比
Table 3. Comparison of image stitching quality for different algorithms
|
将ORB算法与本文算法图像拼接结果进行对比,如
图 3. 图像拼接结果对比。(a)ORB算法;(b)对应的框图放大图;(c)本文算法
Fig. 3. Comparison of image stitching results. (a) ORB algorithm; (b) corresponding enlarged view of marked rectangular graph; (c) our algorithm
综上可知,在高分辨率图像拼接上,本文算法相比于其他3种算法,其运行速度具有很大的提升,同时匹配准确度也有一定的提高,图像拼接质量好,能够满足对高分辨率图像进行快速准确拼接的需要。
5 结论
提出一种可用于高分辨率图像拼接的基于ORB特征的改进算法,在ORB算法特征点提取的基础上,对特征点对先使用汉明距离实现快速粗匹配,再采用基于PROSAC进行优化,并与传统算法进行拼接实验比较。结果表明,相较于传统算法,本文算法不仅在拼接时间上有大幅度减少,而且在匹配准确度上有所提高。本文算法在拼接快速性与拼接准确性两方面,具有显著的优越性,能够对高分辨率图像快速拼接的同时保证拼接准确性。在以后的研究工作中,可以对图像变换矩阵的计算、重叠区域的图像融合方法等进一步优化,以减少高分辨率图像拼接算法的处理时间,提高整体运算效率。
[1] 刘婷婷, 张惊雷. 基于ORB特征的无人机遥感图像拼接改进算法[J]. 计算机工程与应用, 2018, 54(2): 193-197.
[2] 韩敏, 闫阔, 秦国帅. 基于改进KAZE的无人机航拍图像拼接算法[J]. 自动化学报, 2019, 45(2): 305-314.
[3] 赵婷, 康海林, 张正平. 结合区域分块的快速BRISK图像拼接算法[J]. 激光与光电子学进展, 2018, 55(3): 031005.
[4] 王一博, 刘云猛. 基于微相机阵列成像系统的图像拼接研究[J]. 红外技术, 2019, 41(4): 317-322.
[5] Lowe D G. Distinctive image features from scale-invariant keypoints[J]. International Journal of Computer Vision, 2004, 60(2): 91-110.
[7] BayH, TuytelaarsT, GoolL. SURF: speeded up robust features BT-computer vision-ECCV 2006[C] //Leonardis A, Bischof H, Pinz A. Computer Vision-ECCV 2006. Berlin, Heidelberg: Springer, 2006, 3951: 404- 417.
[8] RubleeE, RabaudV, KonoligeK, et al.ORB: an efficient alternative to SIFT or SURF[C] //IEEE International Conference on Computer Vision, November 6-13, 2011, Barcelona, Spain. New York: IEEE Press, 2012: 2564- 2571.
[9] 佘建国, 徐仁桐, 陈宁. 基于ORB和改进RANSAC算法的图像拼接技术[J]. 江苏科技大学学报(自然科学版), 2015, 29(2): 164-169.
[10] 张莹, 闫璠, 高赢, 等. 基于ORB算法和OECF模型的快速图像拼接研究[J]. 计算机工程与应用, 2017, 53(1): 183-189.
[11] 王健, 于鸣, 任洪娥. 一种用于图像拼接的改进ORB算法[J]. 液晶与显示, 2018, 33(6): 520-527.
[12] 景军锋, 谢佳, 李鹏飞. 基于SURB结合随机抽样一致算法在鞋面匹配中的应用[J]. 激光与光电子学进展, 2018, 55(1): 011005.
[13] ChumO, MatasJ. Matching with PROSAC-progressive sample consensus[C] //2005 IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR'05), June 20-25, 2005, San Diego, CA, USA.New York: IEEE Press, 2005: 220- 226.
[14] Jeon HK, Jeong JM, Lee KY. An implementation of the real-time panoramic image stitching using ORB and PROSAC[C] //2015 International SoC Design Conference (ISOCC), November 2-5, 2015, Gyungju, South Korea.New York: IEEE Press, 2015: 91- 92.
[15] 唐泽恬, 丁召, 曾瑞敏, 等. 基于改进的Harris和二次归一化互相关的量子图像拼接算法[J]. 激光与光电子学进展, 2020, 57(10): 101005.
[16] 王宇, 杨金晓, 刘乐, 等. 基于元素图像拼接的集成成像计算重构[J]. 光学学报, 2019, 39(11): 1110001.
[17] 陈方杰, 韩军, 王祖武, 等. 基于改进GMS和加权投影变换的图像配准算法[J]. 激光与光电子学进展, 2018, 55(11): 111006.
Article Outline
刘天赐, 宋延嵩, 李金旺, 赵馨. 基于ORB特征的高分辨率图像拼接改进算法[J]. 激光与光电子学进展, 2021, 58(8): 0810004. Tianci Liu, Yansong Song, Jinwang Li, Xin Zhao. Improved Algorithm for High-Resolution Image Stitching Based on ORB Features[J]. Laser & Optoelectronics Progress, 2021, 58(8): 0810004.