基于MATLAB GUI的指纹图像增强技术研究
2018-12-20曹妍,陈伟
曹 妍,陈 伟
基于MATLAB GUI的指纹图像增强技术研究
曹 妍1,陈 伟2
(1. 盐城工学院 信息工程学院,江苏 盐城 224051;2. 盐城市第一人民医院 信息科,江苏 盐城 224005)
指纹识别作为生物识别技术中最可靠最常用的识别技术,广泛应用在经济、安全等领域。本文介绍了利用高斯-拉普拉斯算子进行指纹图像增强的方法,重点阐述了利用MATLABA GUI进行指纹图像增强的设计方法和实现过程,对于开发基于图形用户界面的图像处理软件以及相关的图像处理问题有一定的借鉴意义。
MATLAB GUI;指纹图像;高斯-拉普拉斯算子;图像增强
0 引言
MATLAB是世界流行的科学计算与数学应用软件,具有高质量、强大的数值计算能力,功能丰富的图像处理工具箱,还提供了GUI开发环境——GUIDE,便于设计者创建图形用户界面,大大简化了GUI设计和生成的过程[1]。
目前,指纹识别技术是数字图像处理研究的热点问题之一,由于指纹的唯一性、终生不变性、方便性等特点,指纹作为一种生物识别特征已经运用到了门禁系统、银行身份验证系统、考勤机等系统中[2]。而在指纹识别系统中,首先就是要获得高质量的指纹图像。但是在实际获取的过程中,总是由于各种原因,使得指纹图像的质量不高,需要对指纹图像进行预处理,增强指纹图像的质量,保证指纹的识别率。
1 指纹识别过程
指纹识别系统包括指纹图像采集、图像预处理、特征提取、特征匹配等步骤[3]。首先采用指纹采集专用设备采集指纹图像,而获得的指纹图像在采集过程中不可避免地会夹杂着一些噪声,这些噪声会严重影响指纹图像的质量,不利于后续指纹的识别,所以在图像获取之后要进行图像的预处理,然后进行全局特征和细节特征的提取,通过特征匹配,也就是将输入的指纹特征与特征库中的指纹进行比对,来检验指纹图像是不是来源于同一个手指[2]。
图像预处理是指纹图像识别系统中非常重要的一个步骤。通过采集设备获得的指纹图像有不同程度的噪声[4],会影响指纹的识别,图像预处理就是把图像中的噪声去掉,获得更加清晰地指纹纹路图像,保证特征提取、特征匹配等后续指纹识别的进行[5]。而图像增强在图像预处理中起着举足轻重的作用。
2 指纹图像增强
图像增强技术分为空间域图像增强和频率域图像增强两类[6,10,11]。空间域图像增强在空间域直接对像素灰度值进行运算。频率域图像增强先通过某种变换T将图像f变换到频率域,然后利用高通或低通滤波函数对图像进行滤波,得到新的频谱G,对G进行逆变换T-1得到增强以后的图像g[1]。
传统的图像增强的方法有灰度修正、同态增晰、平滑、锐化等。通过采集设备获得的不同的指纹图像具有不同的噪声,目前没有通用的图像增强算法对指纹图像进行处理。文中以高斯-拉普拉斯算子为例,讨论MATLAB GUI设计和实现的一般过程。
拉普拉斯算子是具有各向同性的二阶微分算子[1]。在数字图像处理中,主要用来对图像进行锐化,加强图像中景物的边缘和轮廓,使模糊图像变得更加清晰。图像模糊的实质是图像执行了平均或积分运算,对其进行逆运算,也就是差分运算,就可以对模糊的图像进行增晰,质量得到提高。
一个连续二元函数f(x,y)的拉普拉斯运算定义为:
由于拉普拉斯算子对噪声具有不可接受的敏感性,可能丢失部分边缘的方向信息,幅值容易产生双边缘,因此拉普拉斯算子一般不直接对原始图像进行边缘检测[7]。通常先用高斯函数对图像进行平滑去噪,然后再应用拉普拉斯算子。高斯函数的表达式如下:
整理各项后得出如下最终表达式:
该表达式称为高斯-拉普拉斯算子(LoG)。
MATLAB图像处理工具箱中利用fspecial函数可以生成LoG算子,调用形式如下:
3 MATLAB GUI设计的一般步骤
图像用户界面是由菜单控件、按钮控件、坐标轴控件、滚动条控件、面板控件等对象控件构建的[9]。利用MATLAB提供的图形用户界面的软件开发环境GUIDE进行图形用户界面的设计,可以让开发者快速上手,减少编程工作量,提高开发效率。
利用GUIDE进行图形用户界面设计的步骤如下:
(1)明确设计任务,根据设计功能绘制设计草图;
(2)对GUI对象进行布局,设计者直接通过鼠标将对象选择区中所需的对象拖拽到目标位置;
(3)打开对象的属性查看器,设置对象的相关属性,其中Tag属性是非常重要的属性,是每一个控件的唯一标识值,通过此标识值对控件进行控制;
(4)编写操作对象的回调函数,函数名为控件Tag + Callback类型名,GUIDE只给出了函数框架,开发者需要补充实现回调函数相关功能的语句[1]。
(5)运行测试,如有问题反复进行上述过程。
4 MATLAB GUI实现过程
在MATLAB命令窗口中输入命令guide即可启动GUIDE,选择“Blank GUI”创建空白GUI,进入GUIDE编辑界面。根据功能设计草图完成GUI对象的布局,设置对象的属性,运行并保存在FIG文件中,系统同时自动生成了相同文件名的M文件,M文件中需要补充GUI回调函数的相关功能的语句[9]。
“打开图像文件”按钮的回调函数代码如下:
function OpenImagebutton_Callback(hObject, eventdata, handles)
[file path]=uigetfile('*.bmp;*.jpg;*.png','请选择一幅图像');
if file==0 warndlg('您得输入一幅图像');
else I=imread(fullfile(path,file));
axes(handles.axes1);
imshow(I);
handles.I=I;
end
guidata(hObject,handles);
“LoG算子增强”按钮的回调函数的主要代码如下:
function LoGEnhancebutton_Callback(hObject, eventdata, handles)
I=handles.I;
H1=fspecial('log',[5 5],0.2);
G1=imfilter(I,H1);
axes(handles.axes2);
imshow(G1);
%依次将高斯函数的标准差赋值为0.2,0.5,0.8,模板大小为5*5,对选择的图像进行LoG算子%增强,并将处理的结果显示在坐标轴中。
模板的大小和标准差的取值在程序中已经设置好,用户无法修改,如果将标准差的取值以及模板的大小由用户设定,在图像处理的过程中能够实现用户交互功能,辅以菜单、下拉列表等控件,一定能够使MATLAB GUI的指纹图像增强系统功能更加强大。
5 结束语
文中阐述了用高斯-拉普拉斯算子对指纹图像进行增强的方法,重点介绍了基于MATLAB GUI的图形用户界面的设计实现过程,结合MATLAB图像处理箱中丰富的图像处理函数,以及MATLAB强大的数值处理功能,一定能够开发出更加优秀的图像处理软件。
图1 图像增强效果
[1] 胡学龙. 数字图像处理(第3版)[M]. 北京: 电子工业大学出版社, 2014, 8.
[2] 郭依正, 焦蓬蓬. Matlab GUI在低质量指纹图像增强中的应用[J]. 计算机技术与发展, 2013, 27(7): 230-232.
[3] 陈园, 侯赞, 刘军华, 等. 基于改进 K-Means 聚类医学图像配准[J]. 软件, 2018, 39(01): 75-82.
[4] 曹妍, 陈伟, 徐森. 图像去噪方法研究与仿真[J]. 软件, 2015, 36(4): 33-36.
[5] 郭璇, 郑菲, 赵若晗, 等. 基于阈值的医学图像分割技术的计算机模拟及应用[J]. 软件, 2018, 39(3): 12-15.
[6] 姚楠, 耿奇. 基于MATLAB GUI 的车牌自动识别系统设计[J]. 软件, 2016, 37(3): 44-46.
[7] 朱静, 闵芳, 陈腊梅, 等. 基于指纹识别的支付系统的设计与实现[J]. 软件, 2015, 36(5): 129-132.
[8] 刘必罡, 杨永红. Laplace-Gaussian滤波算子在指纹增强中的应用[J]. 电子设计工程, 2016, 24(23).
[9] 钱超. 基于MATLAB GUI的指纹图像采集及预处理研究[D]. 太原: 中北大学, 2013.
[10] 陈洁, 雷萌. 基于脉冲耦合神经网络的乳鼠心肌细胞图像增强[J]. 软件, 2018, 39(2): 41-43.
[11] 郭雷. 手势识别中手分割算法综述[J]. 软件, 2015, 36(4): 81-83.
Research on Fingerprint Image Enhancement Technology Based on MATLAB GUI
CAO Yan1, CHEN Wei2
(1. School of Information Engineering, Yancheng Institution of Technology, Yancheng Jiangsu 224051, China; 2. Yancheng First People’s Hospital, Yancheng Jiangsu 224005, China)
This paper introduces the method of fingerprint image enhancement using Laplace-Gaussian operator, and focuses on the design method and implementation process of fingerprint image enhancement using MATLABA GUI. It has certain reference significance for developing image processing software based on graphical user interface and related image processing problems.
MATLAB GUI; Fingerprint image; Laplace-gaussian operator; Image enhancement
TP391
A
10.3969/j.issn.1003-6970.2018.11.007
江苏省科技厅科技支撑计划项目(批准号:BY2016065-02)、盐城市科技计划项目(批准号:DX2015-018)
曹妍(1981-),女,讲师,主要研究方向:图像处理;陈伟(1979-),男,工程师,主要研究方向:网络与信息处理。
曹妍,陈伟. 基于MATLAB GUI的指纹图像增强技术研究[J]. 软件,2018,39(11):30-32