基于MATLAB的图像配准技术

2015-11-07 08:52刘生辉
中国科技信息 2015年24期
关键词:角点像素点算子

刘生辉 张 瑶

基于MATLAB的图像配准技术

刘生辉 张 瑶

图像配准技术在图像处理中的运用已经越来越受到相关领域研究人员及对此感兴趣的人的关注,作为其他图像处理的前提和基础,图像配准技术被广泛用于图像遥感、图像融合等多个相关领域。本文在目前应用比较广泛的三个图像配准技术中选择了基于特征点的图像配准,以MATLAB R2014a软件为工具,利用Harris角点算法进行像素点的提取并在GUI界面下实现图像的配准。经实验检验Harris算子算法简单、容易编程,使图像配准具有较高的稳定性和鲁棒性,在图像经过几何变换和灰度处理的情况下,仍能对特征点进行有效的提取,并且配准效率高。

作为其他图像处理的基础,图像配准技术一直被广大学者研究,图像配准所用的算法和原理,则是图像配准是否准确稳定的基础,目前图像配准所用的理论原理都是基于实际应用提出的。从目前主流的研究方向来看,图像配准技术可大致分为3大类:其中基于区域灰度的图像配准方法能够利用图像几乎全部的灰度信息,这样可以提高图像配准的精度和鲁棒性,但是基于区域灰度的图像配准方法对灰度变化比较敏感,这样会降低算法的性能。对于基于图像特征的图像配准方法,由于在图像中,图像的兴趣点要比图像的像素点要少很多,利用像素点进行依次比对的话其计算量是很大的,这样很耗费人力物力,而利用图像的兴趣点能大大减少匹配过程中的计算量。而基于理解和解释的图像配准技术目前还处在初步的发展阶段,没有得到广泛的应用。本文利用Harris角点检测算法在不同的两幅基准图片上找到兴趣点,然后利用已找到的兴趣点进行配准,在进行配准时利用兴趣点附近的8个像素点作为配准特征点向量进行配准,最后将结果利用图形用户界面展示。

算法原理

本系统利用Harris角点检测算法进行图像配准实验,因此原理部分主要将Harris算法的原理和图像配准原理进行说明。

Harris算子原理

基于Moravec的Moravec角点算子,Harris算子是Harris和Stephens在1988年提出的,它是对Moravec算法的缺陷进行改进后提出的算法。其原理受到信号处理自相关函数的启发:在给出一幅图像某一自相关矩阵时,给出与自相关函数相联系的矩阵M。M矩阵的特征值是自相关函数的一阶曲率,如果两个曲率值(分别在X,Y方向)都高,那么就认为该点是兴趣点。在认识到Moravec角点算子的缺陷以后,Harris和Stephens针对不同缺陷分别采取了以下方法改进。

(1) Harris算子用高斯函数代替了Moravec角点算子中的二值窗口函数,以减少噪声影响。

(2).Harris和Stephens用Taylor级数展开算法去近似选取任意方向,用来改进Moravec角点算子只考虑每隔45o方向的缺陷。

改写成矩阵的形式为:

说明:Ia为a方向的差分,Ib为b方向的差分,w(a,b)为高斯函数。

(3)Harris角点算法采用了一种新的兴趣点判定方法。矩阵M的两个特征向量la和lb与矩阵M的主曲率成正比,利用la,lb来表征变化最快和最慢的两个方向,则有三种情况,la,lb都比较快,la比 lb表征变化快,la比 lb表征变化慢。其中,若la, lb表征变化都很快则表明该点就是兴趣点,但是利用此方法来解特征向量需要很大的计算,并且要求两个特征值的和等于矩阵M的轨迹,两个特征值的积等于矩阵M的行列式。因此我们用式(5)来判定角点质量。(k常取0.04-0.06)

图像配准原理

图1 用矩阵M的特征向量分类图像像素点

图2 系统框架

图像配准是数字图像处理的一个重要步骤,为图像融合、图像遥感等提供支持。图像配准是利用两幅到多幅基准图像,对其中一幅或几幅图像作几何变换或灰度变换后,使得变换后的图像与另一幅基准图像的内容在拓扑上相对应。

由此我们可以得出如下结论:如果两幅或多幅图像能进行图像配准,那么这几幅图像各分量之间有一部分或者多个部分在逻辑上是相同的,或者至少是相似的,即相邻的图像之间有一部分是可以重合的,这就是实现图像配准的基本条件。基于此我们可以通过对两幅图像的所有像素点进行对比来找到重合的那一部分,但是确定图像所有像素之间的坐标关系是很复杂的,需要投入的工作量也是巨大的。所以研究者通常所使用的方法是确定一定数量的同名像素点(即两幅或多幅图像中代表相同特征的像素),根据所采用的图像之间的数学模型(在本文中我们使用了Harris角点检测算法),可以表示图像中其它所有像素之间的坐标关系,从而完成图像的配准。

系统框架设计

本系统有三个基本模块,即Harris角点检测、角点匹配和基于角点检测的图像配准,系统框架如图2所示。Harris角点检测是图像配准的基础,为图像配准提供依据。角点匹配为图像配准做基础,将图像中所有的角点用红色点标记出来,最后图像配准体现算法正确性和显示实验结果。

系统实现

Harris角点检测

Harris角点检测取目标像素点为中心的一个小部分,计算该部分沿任何方向移动后的灰度变化,并用解析形式表达。当两个特征值均较小时,表明目标点附近区域为“平坦区域”。当特征值一大一小时,表明在“边缘”两个值都比较大时为角点。Harris角点响应函数(CRF)表达式得到:CRF(x,y)=det(M)-k*(trace(M))2,其中,det(M)表示矩阵M 的行列式,trace(M)表示矩阵的轨迹,当目标像素点的CRF值大于给的阈值时,该像素点即为角点。Harris角点检测流程图如图3所示。

其中关键的函数有:

[Points]=kp_harris(im)

输入参数:img1 = rgb2gray(img11); 将彩色图像转化后的灰度图像1。

img2 = rgb2gray(img21); 将彩色图像转化后的灰度图像2。

输出参数:points 输出图像的Harris角点。

函数功能:检测图像的Harris角点。

图3 

图像配准

当Harris角点检测完成后,就要进行图像配准,即匹配过程。匹配过程是先得到角点对于该图像的位置坐标,然后以该坐标为中心,分别取附近的8个像素值,然后与另一幅图像进行匹配,找出距离最小的点作为匹配点。之后将图一中的角点与图二中的所有角点相减求最小误差值,之后重复该操作,可得到两幅图像的最佳匹配点,图像配准流程图如图4所示。

其中关键的函数有:

[draw2(img1,img2,pt1,pt2,result)]

输入参数:img11 读入第一幅图像。

img21 读入第二幅图像。

输出参数:match 角点匹配子程序。

draw2 显示匹配到的特征点。

函数功能:通过角点匹配子程序匹配两幅图的特征点,并利用draw2函数在图像上表示出来。

图4 

系统结果

系统介绍

本实验使用MATLAB2014a软件实现,利用MATLAB下的GUI界面对结果进行展示,有助于交互式使用,在图像配准的过程中,先提取图像的灰度图像并且将图像中所有符合要求的角点展示以图框的形式分别显示出来,再将配准结果在GUI界面显示,有助于理解和验证。在实现本实验的同时对客户端添加了一些图像处理的其他基本功能,方便大家的学习。本次实验所用的图片均来源于千图网(http://www.58pic.com/),只用于实验结果的展示,不作为他用。

图5 

图6 

图7 

图8 

实验结果

实验主界面如图5所示。

首先我们利用角点检测算法单独提取实验图中的所有Harris角点,首先是将图像转化为灰度图像,再利用Harris角点算法找出所有角点并将其用红色的点标识在图像上,实验结果显示出了图像中符合条件的特征点,如图6、图7和图8所示。

为了便于匹配和研究的方便,在图9和图10中,对于每个成功配准的兴趣点以数字代号进行标识,从图中可以很清楚的看到两幅图片中以相同代号标识的兴趣点进行了配准,并将实验结果利用MATLAB图形用户界面进行展示,实验结果表明利用Harris角点算法进行图像配准可以提高配准的稳定性和准确度。

图9 

图10 

图11 

为了使实验更具准确性,我们另外选取了两幅已知匹配角点较少的图像进行实验验证,验证结果如图11,实验结果表明,虽然图中依然有很多被检测到的角点,但是两幅图像匹配到的点只有两个,说明Harris角点算法准确性较强。

结束语

利用Harris角点算法进行图像配准,降低了检测

失误的机率,配准位置准确,检测的兴趣点合理有效。MATLAB R2014a软件作为实现实验的平台,操作方便、代码清晰、交互性强,对实验的顺利完成提供了有效的保障。

致谢

本文由北京市教委面上项目“基于嵌入式多核处理器的图像自动标注”(KM201510009006)和北京市大学生科学研究与创业行动计划项目(15006)“数字图像处理双语教学仿真平台”资助,在此表示感谢!

10.3969/j.issn.1001-8972.2015.24.017

猜你喜欢
角点像素点算子
与由分数阶Laplace算子生成的热半群相关的微分变换算子的有界性
斜对角算子矩阵的Weyl谱
多支撑区域模式化融合角点检测算法仿真
拟微分算子在Hp(ω)上的有界性
基于局部相似性的特征匹配筛选算法
Domestication or Foreignization:A Cultural Choice
角点检测技术综述①
基于像素点筛选的舰船湍流尾迹检测算法
基于FAST角点检测算法上对Y型与X型角点的检测
基于canvas的前端数据加密