基于SIFT和SURF的岩石铸体薄片图像特征匹配
2017-04-26程国建赵媛强新建魏新善
程国建+赵媛+强新建+魏新善
摘要:利用SIFT(Scale-invariant feature transform尺度不变特征转换)和SURF(speed up robust features加速健壮特征)算法对岩石图像进行匹配研究。通过对选取的不同尺寸、不同分辨率的岩石图片进行对比试验,观察两种算法中的匹配点对数及匹配时间的变化,发现SURF算法在岩石图像匹配中更具有稳定性,这对进一步探讨和改进岩石图像匹配提供了研究基础。
关键词:SIFT;SURF;岩石图像;图像匹配
中图分类号:TP391 文献标识码:A 文章編号:1009-3044(2017)06-0202-02
1 概述
岩石是地质作用的产物,又是地质作用的对象,因此岩石是研究各种地质构造和地貌的物质基础;它记录了过去发生的地质事件,对研究地质演变有重大的意义;同时,岩石图像是目前矿物岩石类研究的主要来源,它对实现大幅度提高原油采收率、油气藏的宏观性质如渗透率等的研究很有意义,同时也有利于岩石的深度信息挖掘,随着岩石开采技术的进步和显微成像技术的不断发展,可利用的岩石铸体薄片图像也越来越多[1]。
基于特征点的配准算法是基于局部特征的岩石铸体薄片图像配准的基础,特征点的提取和描述又是进行图像匹配的基础和关键[2]。岩石铸体薄片图像的自动配准目前研究较少,尚未得到较好的解决。SIFT算法是由 David Lowe 于 1999 年提出的用于兴趣点的检测和描述的算法,该算法具有旋转、尺度缩放、亮度变化的不变性,同时对视角变化、仿射变换、噪声也保持一定程度的稳定性,但该算法复杂度较高,且受光照强度的变化影响较大。SURF算法是对SIFT算法的一种改进,继承了SIFT算法的大部分优点,不同之处在于它用Hessian矩阵代替高斯差分尺度空间检测特征值,具有比SIFT算法更快的速度,可以达到实时性要求。
2 特征检测与匹配
2.1 SIFT算法
SIFT算子是以尺度空间的构造为基础的局部特征描述子,在构建好的尺度空间的基础上搜索尺度空间中的极值点(特征点),然后确定极值点的尺度信息以及位置,再确定极值点的方向(其邻域梯度的主方向),最终得到具有鲁棒性的128维的特征描述子。整个SIFT算法可以分为以下几个部分:
2.1.1 尺度空间生成/特征点检测
首先通过尺度空间极值检测初步确定关键点位置和所在尺度,然后定位特征点位置。可分为以下三个步骤:
建立高斯金字塔:使用高斯滤波函数对图像进行高斯滤波。图像在尺度空间下的表示可由图像与高斯核卷积得到高斯图像:
根据尺度函数建立高斯金字塔,金字塔第一阶的第一层为原图像。
建立DOG高斯金字塔:利用高斯金字塔同一阶上两相邻层的尺度空间函数之差得到DOG高斯差分金字塔的一层,如图1(右)所示。表达式定义为:
极值点检测:将中间检测点与上下层及同层的共26个像素点进行对比,如果该点的值最大或者最小,则将该点作为图像在该尺度下的一个候选关键点。
2.1.2 精确定位关键点
计算所求极值点相对于关键点的偏移量,若任意一个偏移量超过0.5,则说明拟合关键点应该在原关键点的相邻位置,在该DoG层不断迭代拟合,确定新关键点位置,直至偏移量都小于0.5(即稳定的关键点)为止。极值检测得到的所有候选关键点,必须通过两步检验才能确定关键点:一是它必须与周围的像素有明显的差异,即低对比度的点不要;二是不能有边缘点。
2.1.3 特征描述
确定特征点主方向:计算特征点的邻域梯度,使用直方图将0°~360°分为36个柱,每10°一个柱,柱高为对应梯度方向的累加值[3]。使用梯度直方图的峰值代表该特征点处邻域梯度的主方向,即作为该特征点的方向。当有另一个相当于主峰值80%能量的峰值时,则将这个方向认为是该特征点的辅方向。
生成SIFT特征向量:为了使描述符具有旋转不变性,需要利用图像的局部特征为每一个关键点分配一个方向。以特征点为中心取8*8的窗口,中央黑点为当前特征点的位置,每个小格代表特征点邻域所在尺度空间的一个像素,箭头方向代表该像素的梯度方向,箭头长度代表梯度模值。在每个4*4的图像小块上计算8个方向的梯度方向直方图,绘制每个梯度方向的累加值,形成一个种子点。图像中一个特征点由4个种子点组成,每个种子点有8个方向向量信息,共产生32个数据。
一般情况下为了增强抗噪能力和匹配稳健性,通常将邻域范围设为16*16,产生4*4的种子点,此时每个关键点的信息就包含在128维特征向量里(4*4*8=128)。
2.1.4 SIFT特征向量的匹配
SIFT特征向量匹配的依据是相似性度量。采用优先k-d树查找各特征点的近似最近邻特征点[4]。两特征点中如果最近邻与次近邻的比值小于某个阈值则接受此点作为匹配点,当阈值降低时SIFT匹配点对数目较少,但匹配更加稳定。
2.2 SURF算法
SURF算子选取图像在尺度空间上的极值点作为候选特征点。SURF算子采用Hessian矩阵行列式近似值来构造金字塔。提取SURF特征点需要四个步骤:提取SURF特征、特征点定位、确定主方向、生成特征点描述符[5]。
2.2.1特征点检测
一般情况下通过三步来检测特征点:建立积分图像、使用箱式滤波器建立图像的尺度空间,然后在尺度空间上对特征点进行定位。
SURF采用的是Hessian矩阵行列式近似值图像,图像中每个像素点的Hessian矩阵如下:
在构造Hessian矩阵构造前为了保证特征点具有尺度不变性,先对其进行高斯滤波,滤波后再进行Hessian计算,公式如下:
求Hessian事先要进行高斯平滑,然后求二阶导数,针对离散的像素点它是由模板卷积形成的。
SURF不同于SIFT,SIFT中同层图片大小相同,不同层之间图片尺寸不同,所以进行高斯模糊时高斯模板大小是一直不变的。但SURF中图片大小一直处于不变状态,不同层得到的待检测图片是通过改变高斯模糊尺寸得到的。
当Hessian矩阵的行列式值大于某个给定的阈值时,将它作为下一步判定的点,取该点上下层及同层中的点进行对比,只有比26个响应值(同层8个点和上下两个尺度层的9个点)都大的点才能被选为特征点。
2.2.2 特征描述
特征描述从两点来进行:为了使算法具有旋转不变性,先计算得出特征点的主方向(统计特征点邻域内的Haar小波特征代替了直方图梯度统计),接下来将特征点的邻域旋转到主方向,对特征点进行描述。在特征点周围取4*4矩形区域(方向沿特征点主方向),统计每个子区域像素的水平方向和垂直方向的Haar小波特征,Haar小波特征分为:水平方向值之和、垂直方向值之和、水平方向绝对值之和垂直方向绝对值之和(,,,)。将这四个值作为每个子区域块的特征向量,所以总共会生成64(4*4*4=64)维向量作为SURF描述子。
2.2.3 特征匹配
特征点提取的准确程度将直接影响匹配结果。生成特征描述子后,先通过Hessian矩阵的迹来进行初始判断,加快匹配速度,然后采用欧氏距离来度量两个特征向量的匹配[6]。算法先计算最近邻的欧氏距离,然后计算次近邻欧氏距离,计算两者之间的比值,当比值处于某一给定的可接受的范围内时,该点才会被认为是在匹配点集中。
3 SURF和SIFT算法主要的不同之处
SIFT算法在使用时直接使用图像本身,而SURF算法是先计算出积分图像,然后对积分图像进行操作。我们知道,凡是使用过积分图像的算法在执行速度上都会有明显的提升,这是因为在一定区域内计算灰度值之和时,只需进行简单的加减运算即可完成,可以大大提高算法效率。
4 试验方法及结果分析
测试数据集来自“鄂尔多斯盆地致密砂岩岩石铸体薄片”显微图片,相邻图像两两建立匹配关系。采集图像时我们设置显微镜放大倍数为200X,图像重叠区域大小为52%,扫描位置和区域为15mm*15mm,聚焦方式为5-15次多点对焦。再根据采集需要设置相机分辨率。实验开发环境:Intel i7-4790 CPU 、8GB计算机、Windows7 64bit操作系统、MATLAB R2013
本實验用SIFT和SURF分别对同一组薄片的不同分辨率的图片进行测试,记录匹配点对数和匹配时间。
待匹配图像第一组岩石薄片的256*192/34KB的图像,SIFT算法匹配点对数为126,匹配时间为0.830785s;SURF算法匹配点对数为29,匹配时间为0.729542s。
待匹配图像第一组岩石薄片的512*384/142KB的图像,SIFT算法匹配点对数为615,匹配时间为4.871552s;SURF算法匹配点对数为30,匹配时间为2.590403s。
待匹配图像第二组岩石薄片的256*192/36KB的图像,SIFT算法匹配点对数为198,匹配时间为0.892777s;SURF算法匹配点对数为29,匹配时间为0.734661s。
待匹配图像第二组岩石薄片的512*384/136KB的图像,SIFT算法匹配点对数为908,匹配时间为3.018182s;SURF算法匹配点对数为28,匹配时间为2.74686s。
从实验结果来看,在图像质量相同的情况下,SIFT匹配点个数远远大于SURF,匹配时间较SURF来说也比较长。随着图像质量的变好,SIFT匹配点个数呈现骤增趋势,匹配时间也在增长,虽然SURF匹配时间也随图像质量变好而增长,但SURF匹配点对数基本保持平稳,误配率没有较明显的变化。我们发现,在图像质量很好占用空间较大时,SIFT匹配时间远远大于同等质量下的SURF匹配时间。我们所采集的岩石铸体薄片显微图像一般占用空间较大,而且都在高分辨率下采集,所以使用SURF对岩石图像进行拼接可能过是我们后期要继续进行的工作。
5 结论
本文采用岩石铸体薄片显微图像作为实验研究对象,分别采用SIFT和SURF算法自动提取特征点,对比两种算法在处理岩石显微图像时生成的特征点数量和算法运行时间,根据对比结果选择比较适合岩石图像自身特点的算法,为后期深入研究岩石图像配准与拼接提供更加坚实的基础数据和平台条件。
参考文献:
[1] 刘烨,程国建,马微,等.基于铸体薄片图像颜色空间与形态学梯度的岩石分类[J].中南大学学报,2016,47(7).
[2] 基于特征的图像匹配算法研究[D].郑刚.国防科技大学,2011.
[3] 杨世沛,陈杰,周莉,等.一种基于SIFT的图像特征匹配方法[J].电子测量技术,2014,37(6):50-53.
[4] 杨艳伟.基于SIFT特征点的图像拼接技术研究[D].西安电子科技大学,2009.
[5] 尧思远,王晓明,左帅.基于SURF的特征点快速匹配算法[J].激光与红外,2014,44(3).
[6] 刘桥,杨正坤,李晗.基于SURF算法的医学图像特征点匹配[J].电子科技,2014,27(5).