蒋 欢 蒋宜勤 周基贤 袁 媛 滕奇志
利用铸体薄片图像处理软件进行孔隙特征分析已成为石油地质实验室的常规手段[1]。在作铸体薄片分析时,由于显微镜视域范围有限,按行业标准需要选取3~5个视域进行分析,但对于一些非均质性较强的薄片,人为选取造成的差异较大,如果选取的视域不合适,得到的分析数据可能无法代表整个薄片的孔喉分布现象[2],保存的图像也不能反映全薄片的实际情况。因此,有必要采集全部视域图像,再拼接为一幅全薄片的图像。图像配准和图像融合是图像拼接算法中的关键技术[3],多幅高分辨率图像的配准和融合常常需要花费大量的时间,为了提高速度,适应生产实际的需求,本文主要讨论图像配准和图像融合的并行处理算法。
图像配准是指同一场景在两个不同视点下的图像之间的对应关系,它是计算机视觉研究领域的一个基本问题[4]。常见的分类准则将图像配准划分为两类:基于图像灰度[5]的方法和基于图像特征[6]的方法。由于岩石薄片颜色亮度等信息差异较大,本文主要采用的是SIFT算法进行图像配准,SIFT算法是David G.Lowe在2004年提出[7],其主要是通过在尺度空间寻找极值点,提取位置、尺度、旋转不变特征量,并根据两幅图像特征量的距离实现图像配准。
SIFT算法主要分为6个步骤:
对于一幅M×N的二维图像I(x,y),用高斯函数G(x,y)作为卷积核[8],构建图像的尺度空间函数如式(1)所示:
其中:
用L(x,y,σ)表示在不同尺度下的高斯图像,σ为尺度因子,为有效检测出尺度空间中的稳定特征点,引入高斯差分函数[9]:
将相邻图像相减构造高斯差分金字塔,在高斯金字塔结构中,样本像素点要与其同尺度相邻的8个像素点,以及上下相邻的金字塔层中的18个像素点共26个像素点进行比较,如图1,提取出图像中的极值点作为候选特征点。
图1 尺度空间极值检测
得到候选特征点后,为提高关键点的稳定性和抗噪声能力,还必须通过两步检验才能确定它是关键点:一是该点需要与周围的像素有明显的差异,将低对比度的候选特征点剔除。二是它不能是边缘点(因为DOG算子产生较强的边缘响应)。对尺度空间的DOG函数进行三维二次曲线拟合精确确定关键点的位置和尺度。
对于在DOG金字塔中检测出的关键点,采集其所在高斯金字塔图像邻域窗口内像素的梯度和方向分布特征作为关键点的基准方向,使描述符具有旋转不变性[10]。点(x,y)梯度的模值m( )x,y和方向θ(x ,y )的计算方法如式(4)和式(5)所示。
其中,L为关键点所在的尺度空间值。完成关键点梯度计算后,使用直方图统计邻域内像素的梯度方向,将0°~360°的方向范围分为36个柱,每10°一个柱,以直方图中峰值方向作为该关键点的主方向,为增强匹配的鲁棒性,保留主方向峰值80%的方向作为该关键点的辅方向。
每一个关键点有三个信息:位置、尺度和方向。用一组向量将这个关键点描述出来,使其不随各种变化而改变。如图2所示,以特征点为中心取8×8的窗口,中间黑点为当前特征点的位置,每个小格代表了特征点邻域所在的尺度空间的一个像素,箭头代表了该像素点的梯度信息,圆圈代表了高斯加权的范围。然后将整个窗口分成2×2共4个区域,每个区域由4×4的图像小块构成,计算8个方向的梯度方向直方图,绘制每个方向的累加值,形成一个种子点。一个特征点由2×2共4个种子点组成,每个种子点有8个方向向量信息,可产生2×2×8=32维SIFT特征向量,即特征点描述符[11]。
而在实际计算过程中,为了增强匹配的稳健性,建议每个特征点使用4×4共16个种子点,这样一个特征点需要4×4×8=128维SIFT特征向量。
图2 图像梯度及其旋转描述符
在进行图像拼接时,需要对图像逐个查找特征点,当图像较大或待拼接图像数目较多时需要花费大量时间,而由上述查找特征点过程我们可以发现,多幅图像之间查找SIFT特征点过程是互不相干的,可以同时进行。因此,为了提高拼接速度,我们可以利用CPU多线程技术并行查找SIFT特征点,形成相应的SIFT特征向量。首先,主线程根据当前CPU可开辟线程数获得最大线程数N,然后获取所需拼接的图像数量M,若N>M,则开辟M-1个新的线程,每个线程分配一张图像查找其关键点,形成相应的特征描述符。若N<M,则开辟N-1个新的线程,先为每个线程分配一张图像查找关键点,由于不同图像的关键点个数不同,其查找时间也不同,因此先查找完特征点的线程再重新读取新的图像进行查找。对于正在进行的查找图像特征点的线程加入互斥体,避免多个线程同时访问同一张图像。其流程图如图3所示。
图3 多线程查找关键点流程图
查找完SIFT特征点后,需要从待配准图像中选择正确的点。采用优先K-D树[12]从基准图像中查寻与该点欧氏距离最近的前两个特征点,获得距离最近的与次近的比值,若比值小于给定的阈值,则认为距离最近的点为匹配点。
实现了特征点粗匹配后,需要算出单应矩阵,使两幅图像之间满足射影变换关系。由于SIFT得到的粗匹配中可能存在着误匹配,因此采用鲁棒估计RANSAC算法[13]。
采用RANSAC算法,从筛选后的匹配点对中随机抽取4对,作为初始内点计算单应矩阵,剩下的点对拟合初始单应矩阵,并计算他们之间的几何距离之和,如果这个距离大于选取的阈值,则作为外点舍弃,若小于阈值,则作为内点集中。反复迭代,直至内点不再扩充。最后,选取内点集最大的一组作为正确的匹配点对,此时模型估计结果就是图像间的单应矩阵H。
根据拼接图像间的单应矩阵H,可以计算出两图像间的重叠区域。由于岩石采集的区域跨度比较大,同时曝光、场景、环境等不定因素,得到的图像之间可能会有亮度不一致的区域,经过传统拼接融合算法处理后,得到的结果图会出现明显的融合缝,影响图像视觉效果。因此,本文采用多分辨率融合算法[14]。
多分辨率融合是对两边图像重合区域分别进行高斯降采样滤波,进而得到频带不同的带通图像,构成拉普拉斯金字塔,然后对两边图像重叠区域分层融合,最后用各频率带上的图像合成新的图像。其过程如图4所示。
图4
传统的单线程融合方式,大都采用两张图像之间逐个进行融合,在拼接图像数量较多的情况下,非常耗时,本文采用CPU多线程技术[15]来提升图像融合速度。在多线程融合中,必须要保证更新结果图的有效性,以防一个线程在进行第一张图像与其右边图像的融合处理时,另一个线程在进行第一张图像和其下方图像的融合处理,这样得到的结果图将会出现错误,有可能会丢失某些线程的处理结果。本文采用的方式是对所有图像建立标志位,标定每张图像当前的状态,是否处于参与融合的线程中。保证同一张图像不会在不同的线程中同时处理,保证结果的正确性。并且加入互斥体避免进行临界区访问。
为了验证本算法的有效性和实用性,对多组岩石薄片图像进行拼接实验。实验环境如表1所示。用于拼接的图像信息如表2所示。
表1 实验环境
表2 拼接图像信息
采用流程并行快速拼接算法,利用多线程技术查找SIFT特征点,同时在图像融合时也利用多线程技术快速融合。对表2中的每个图组进行实验。图5(a)是图组2的154张待拼接的序列图像,通过上述算法进行图像配准和图像融合后得到图5(b)拼接结果图。
不同图组采多线程算法所需时间如表3所示。其中T1代表了图像配准阶段所需时间,T2代表了总体拼接所需时间。
表3 采用不同算法拼接所需时间
通过观察表3我们可以发现,在同一计算机上对比使用单线程和多线程的拼接时间,采用流程并行多线程技术可以将图像配准时间节约近一半以上,大大提高了拼接速度。而通过对比图组1和图组2我们可以发现,虽然图组1的图像张数明显多于图组2,但是由于图组2的图像分辨率较高,含有的特征点信息较多,因此在查找特征点环节即使采用了多线程技术,仍然要花费更多的图像配准时间。
图5
而图组1和图组4,5相比,其尺寸大小差不多,但是其图像质量要低一些,图像的特征点少一些,所以在图像配准阶段所需时间更少一些。因此,图像配准的速度也与图像分辨率以及图像质量有关。
本文针对岩石薄片图像拼接速度较慢的问题,提出了采用多线程并行处理查找SIFT特征点的方法,提高了传统图像配准的速度,大幅减少了图像配准的时间,同时使用RANSAC估计法筛选出匹配结果,减少误匹配的影响,接着采用多线程多分辨率融合算法,提高图像融合速度,实现图像快速融合,消除拼接缝。实验结果表明,本文所提出的算法能够大幅度提高岩石薄片图像传统拼接算法的速度,并且保持原有的拼接图像视觉,有利于实际生产需要。
[1]赵明,郭志强,卿华,等.岩石铸体薄片鉴定与显微图像分析鉴定与显微图像分析技术的应用[J].西部探矿工程,2009,21(3):66-68.
ZHAO Ming,GUO Zhiqiong,QIN Hua,et al.Identification and identification of microscopic image of rock casting and application of microscopic image analysis technique[J].West-china Exploration Engineering,2009,21(3):66-68.
[2]刘颜,谢锐杰,柴小颖,等.基于铸体薄片的致密砂岩储层孔隙微观参数定量提取技术[J].河南科学,2017,35(1):134-138.
LIU Yan,XIE Ruijie,CHAI Xiaoying,et al.Quantitative Extraction Technology of Micro Pore Structure Parameters Based on Thin Section for Tight Sand Reservoir[J].Henan Science,2017,35(1):134-138.
[3]王娟,师军,吴宪祥.图像拼接技术综述[J].计算机应用研究,2008,25(7):1941-1947.
WANG Juan,SHI Jun,WU Xianxiang.Survey of image mosaics technique[J].ApplicationResearchofComputers,2008,25(7):1941-1947.
[4]倪国强,刘琼.多源图像配准技术分析与展望[J].光电工程,2004,31(9):1-6.
NI Guoqiang,LIU Qiong.Analysis and prospect of multi-source image registration techniques[J].Opto-Electronic Engineering,2004,31(9):1-6.
[5]张红源,陈自力.图像匹配经典算法及其改进方法研究[J].兵工自动化,2008,27(9):91-94.
ZHANGHongyuan,CHEN Zili.Research on Classical Image Matching Algorithm and Its Improved Method[J].Exploitation and Application of Softwar,2008,27(9):91-94.
[6]戚世贵,戚素娟.一种基于图像特征点的图像匹配算法[J].国外电子测量技术,2008,27(1):3-4.
QI Shigui,QI Sujua.Image registration on image feature.Foreign[J].Electronic Measurement Technology,2008,27(1):3-4.
[7]Lowe D G.Distinctive I;mage features from scale-invariant keypoints[J].International Journal of Computer Vision,2004,60(2):91-110.
[8]刘立,彭复员,田岩,等.基于高斯尺度空间的尺度参数自适应算法研究[J].高技术通讯,2009,19(1):50-55.
LIU Li,PENGFuyuan,TIAN Yan,et al.An adaptive algorithm of scale parameter based on Gaussian scale-space[J].High Technology Letters,2009,19(1):50-55.
[9]茅正冲,王丹,唐雨玉.改进的尺度不变特征转换匹配算法[J].计算机工程与设计,2015,36(8):2129-2132.
MAO Zhengchong,WANG Dan,TANG Yuyu.Improved scale invariant feature transform matching algorithm[J].Computer Engineering and Design,2015,36(8) :2129-2132.
[10]周理,毕笃彦,何林远,等.SIFT与核局部不变映射结合的特征描述算法[J].系统工程与电子技术,2014,36(2):382-389.
ZHOU Li,BI Duyan,HE Linyuan,et al.Novel feature-describing algorithm based on combination of SIFT and kernel locality preserving projection[J].Systems Engineering and Electronics,2014,36(2):382-389.
[11]刘丽晖.基于不变量理论的遥感图像特征匹配技术[J].知识经济,2010(18):110-112.
LIU Lihui.Feature Matching Technique of Remote Sensing Image Based on Invariant Theory[J].Knowledge economy,2010(18):110-112.
[12]纪利娥,杨风暴,王志社,等.可见光和红外反相图像的SURF特征双向匹配[J].光电工程,2014,41(5):77-82.
JI Li'e,YANGFengbao,WANG Zhishe,et al.Bi-directional Matching Algorithm Based on SURF Features for Visible and Negative Image of Infrared Image[J].Opto-Electronic Engineering,2014,41(5):77-82.
[13]周剑军,欧阳宁,张彤,等.基于RANSAC的图像拼接方 法[J].计 算 机 工 程 与 设 计 ,2009,30(24):2692-2694.
ZHOU Jianjun,OUYANGNing,ZHANGTong,et al.Image mosaic method based on RANSAC[J].Computer Engineering and Design,2009,30(24):2692-2694.
[14]刘跃,吴晓红,王正勇,等.基于多分辨率图像融合算法的岩心图像拼接[J].太赫兹科学与电子信息学报,2014,12(2):290-294.
LIU Yue,WU Xiaohong,WANG Zhengyong,et al.Core images stitching based on multi-resolution image fusion algorithm[J].Journal of Terahertz Science and Electronic Information Technology,2014,12(2):290-294.
[15]谢永胜,余正生.利用多线程及改进SSDA算法加快拼接速度[J].杭州电子科技大学学报,2010,30(2):65-68.
XIE Yongsheng,YU Zhengsheng.Use Multi-threaded Technology and Improved SSDA Algorithm to Speed up the Image Mosaic Speed[J].Journal of Hangzhou Dianzi University,2010,30(2):65-68.