Canny算法修正的谷形检测手指静脉分割算法
2018-09-26许伟伟章坚武
许伟伟 章坚武
摘要:针对使用方向谷形检测方法对手指静脉图像进行分割存在的静脉边界区域分割精度低的问题,对结合了Niblack算法的方向谷形检测分割进行深入研究与探讨,并以此为基础提出基于Canny算法修正的谷形检测手指静脉分割算法。首先对手指静脉的局部梯度变化特征进行分析,得出静脉边界点应具备的条件,并以此作为是否为真实边界点的判据,同时结合由Canny算法获取的非极大值抑制图像对基于方向谷形检测的分割结果进行边界点修正。最后通过实验对比修正前后的分割效果,发现该算法分割结果在静脉区域的连续性,以及静脉提取的真实性和准确性上都表现更为优秀,证明了其有效性。
关键词:Canny算法;方向谷形;手指静脉;图像分割;Niblack算法
DOI:10.11907/rjdk.173146
中图分类号:TP312
文献标识码:A文章编号:1672-7800(2018)007-0087-04
Abstract:Inordertosolvetheproblemoflowaccuracyofveinboundarysegmentationusingdirectionalvalleydetectionmethodforfingerveinimagesegmentation,theauthordeeplystudiedanddiscussedthedirectionalvalleydetectionsegmentationcombinedwithNiblackalgorithm.BasedonCannyalgorithmmodificationdirectionvalleydetectionfingerveinimagesegmentationalgorithmwasproposed.Firstofall,theauthoranalyzedthecharacteristicsoflocalgradientoffingerveinandobtainedtheconditionsthatveinsboundarypointshouldpossess,andusedthemasthecriterionofwhetheritisarealboundarypoint,Combinedwiththenon-maximalvalueobtainedbyCannyalgorithmthevaluesuppressionimageperformsboundarypointcorrectionontheresultofthesegmentationbasedonthedirectionvalleydetection.Atlast,thesegmentationresultsbeforeandafterthecorrectionarecomparedbyexperiments.Thesegmentationresultoftheproposedalgorithmperformsbetterinveracityandaccuracyoftheveinareaandveinsextraction,whichprovesthatitiseffective.
KeyWords:Cannyalgorithm;directionalvalley;fingervein;imagesegmentation;Niblackalgorithm
0引言
由于在使用手指静脉采集装置对手指静脉图像进行采集的过程中会受到来自各种环境因素和手指自身因素的影响(如手指表皮厚度分布不均、手指褶皱、手指不正确的压力、环境光照变化),所以采集到的手指静脉图像质量较差,常表现为对比度低、局部光照发生突变、整体亮度不均匀等[1-2]。对于此类手指静脉图像要想获取效果较好的静脉特征,需要使用适应此应用场景的图像增强和图像分割算法。目前,对于该类低质量手指静脉图像区域特征提取的研究较少,通常采用的图像分割方法有:①基于阈值的分割方法,包括:OTSU阈值分割[3-4]、Niblack阈值分割[5-6]、均值阈值分割[7]、迭代法[8];②基于静脉空间谷形结构特征的方法,包括:重复线性追踪法[9-11]、方向谷形检测法[12]。其中基于阈值的分割算法存在定位精度低的问题,而基于静脉谷形特点的重复线性追踪法存在静脉纹路不够光滑且耗时长的问题。其中同样是基于静脉谷形特点的方向谷性检测算法,由于其算法原理简单,解决了耗时长的问题。由于传统的方向谷形检测算法无法满足检测低质量手指静脉的分割需求,文献[12]提出将Niblack算法与方向谷形检测算法融合进行静脉分割,可获得理想的静脉分割图像,然而该方法仍没有解决静脉边界点的精确定位问题。
为了解决静脉区域边界点的精确定位问题,本文在文献[12]基础上使用边缘定位准确的Canny算法对分割结果进行静脉边界点修正,为使静脉谷形在低对比度区域凸显出来,使用自适应阶数的分数阶微分[13-14]算子对图像进行有效增强。
1基于局部统计特性的方向谷形分割算法
1.1方向谷形检测基本原理
通过对手指静脉图像的灰度分析可知,静脉区域处的灰度较低,背景灰度相对较高,纵切面一般呈现谷形特点,而静脉则存在于谷形处。如图1所示,图像白色横线处的纵切面呈现出若干谷形,而谷形所在位置正是静脉所在位置,因此可以将对静脉区域的提取转化成对图像中谷形区域的提取。
为了提取出图1中所示的谷形区域,文献[12]設计出如图2所示8个方向的检测算子,每个方向上的取值同样都取为3、0、-1、0、-4、0、-1、0、3。
1.2Niblack算法基本原理
Niblack算法是一种根据局部统计特性进行动态阈值获取的二值化方法,其原理是:根据单个像素邻域的均值和标准方差情况获取当前像素点阈值。像素点(x,y)处的均值m(x,y)和标准方差s(x,y)计算公式如下:
1.3方向谷形检测分割算法
对于对比度低且光照不均匀的手指静脉图像,要想获取静脉区域的有效分割结果,对图像的增强是必不可少的。本文采用自适应阶数分数阶微分增强算法对图像进行增强,其增强效果如图3所示。
方向谷形检测分割算法步骤如下:
(1)提取谷形区域。对图像f(x,y)中的每个像素,使用8个方向算子分别计算出以当前像素为中心、大小为9*9邻域8个方向上的卷积和,使用最大的卷积和替代当前点的灰度值,得到新的谷形特征矩阵g(x,y)。
(2)以0作为阈值进行粗分割。将步骤(1)中获取的谷形特征矩阵g(x,y)用0值作为阈值进行阈值运算,大于0的值保留,小于0的值直接置0,此时得到粗分割图像h(x,y)。
(3)使用步骤(2)的h(x,y)中所有非0元素均值进行二次粗分割。统计h(x,y)中非零元素个数,使用h(x,y)中非零元素之和除以非零元素个数,从而获取非零元素均值,使用该均值作为阈值对图像h(x,y)进行阈值操作,大于该均值的像素点灰度使用该均值替代,否则不作改变,此时获得新的分割图像k(x,y)。
(4)使用模糊增强对步骤(3)中的k(x,y)进行增强,获取增强后的图像记为k′(x,y)。
(5)最后使用Niblack算法对步骤(4)中的k′(x,y)进行细分割。
根据实验结果分析,该算法基本能够将手指静脉的主体区域分割出来,但是存在一个问题:其提取的静脉区域边界处定位不够准确,并且随着Niblack算法中窗口半径的变动,静脉区域边界处将出现不同程度的展宽现象,甚至出现静脉断裂现象。图4展示了不同窗口半径下提取得到的静脉情况。
由图4所示,不同半径的窗口选取对分割结果的影响主要表现在静脉区域的边界精确度上,以及在灰度均匀变化区域处,半径过小的窗口分割后容易产生伪静脉。这是因为半径过小会导致在静脉较为稀疏的区域,窗口内部全是非静脉区域,而此时由于Niblack的阈值机制,必然会有一部分不是静脉的区域被认为是静脉,从而产生伪静脉。同时,半径选择过大会导致分割不够充分,而半径大小适中时,连续性无法得到保障,并且还会漏掉部分静脉。
2方向谷形检测修正算法
2.1Canny算法原理
Canny算法是一种常用于图像边缘检测的一阶微分算子法的改良版算法[15-16]。其在一阶微分算子基础上添加了非极大值抑制和双阈值两个关键性操作,其中非极大值抑制能够在阈值之前去除大量非边缘梯度,起到了粗阈值功能。高低阈值保证了对图像单像素的边缘提取,使定位精度得到提高。正因为其边缘定位准确,且为单边响应,使Canny算法成为图像边缘检测方向的经典算法。边缘提取主要包含以下步骤:
(1)选用适合的去噪算法对图像进行去噪。由于Canny算法是在一阶微分算子基础上提出的,继承了微分算子对噪声敏感的特性,所以需要预先对图像进行有效的去噪处理,这也是对检测结果影响较大的一个步骤。
(2)使用梯度算子与图像卷积获取梯度图像和梯度方向,通常为了突出中间像素的贡献,使用3*3的sobel算子。
(3)对步骤(2)中获取的梯度图像进行非极大值抑制。对于梯度图像中的每个像素点,比较其方向上相邻的两个像素点是否小于该点值,若当前点值不同,大于其方向上相邻两点的值,则判定为非极大值,直接置0,否则保留。
(4)选择适当的高、低梯度阈值对步骤(3)中获取的非极大值抑制图像进行阈值处理。保留大于高阈值的像素点值,小于低阈值的像素点值则直接去除,介于二者之间的像素点值,判断该像素点8领域内的像素点值是否大于高阈值,若有则保留,否则去除。
2.2修正原理
通过静脉图像的纵切面可知,静脉区域内部与外部灰度变化不大,即梯度不大,梯度值仅在静脉边界或者噪点处值相对较大,而噪声可以通过有效地滤波去除,所以一般只考虑在静脉边界处有较大梯度值。所以要想精确地确定静脉边界,只需找到梯度大的值所在位置即可。但是,梯度大到什么程度才算是静脉边界,这是Canny算法的难点所在,需要对梯度进行高低阈值处理。高低阈值的找寻对于光照不均匀且对比度低的手指静脉而言并不容易,所以本文并未直接采用Canny算法找寻手指静脉边缘特征。但是,Canny算法能够尽可能多地发现梯度并且对于初步梯度图像进行非极大值抑制处理,去除了大量非边缘梯度,从而为找寻单像素的静脉边缘特征提供了可能。对于如何使用Canny算法进行静脉边界修正,本文先对静脉结构进行分析,静脉区域示意图如图5所示。
如图5所示,l1和l2分别为静脉区域的边界,lm为静脉谷形最低处的连线,P为边界上一点,P1、P2分别是P的相邻像素点,tp为过P点且与P1和P2连线垂直的线,分别交lm和l2于A、B两点。若P是静脉边界上的点,即边界点,由静脉纵切面上的灰度变化特性可知,该点梯度值大于静脉内部与当前点局部范围内静脉外部的梯度值。因此,可逐个对当前分割结果的边界点作判断,若不满足以上条件,则将当前点去除,以此类推,直到所有边界点都满足条件为止。该修正算法流程如图6所示。
在修正分割图像边界过程中,根据以上分析,确定当前边界点是否为真实边界点,关键要在梯度图像中沿着边界的垂线方向找寻是否存在像素点的梯度大于当前点梯度。若存在比当前点梯度大的像素点,则当前点不是边界点,反之则是边界点,目前问题是如何设置当前搜索的结束條件。由于单条静脉区域一对边缘处的梯度都很大,为了防止两条边缘互相干扰,将搜索终止位置设置成垂线与静脉谷形最低处的连线交点处,即图5中的A点处。同时,考虑在去除伪边界的过程中,若连续在一个方向上去除多个伪边界点,将导致新增的边界点与静脉方向出现近似垂直的现象,本文采用的对策是先对所有旧边界点进行修正,待当前边界中所有旧边界点都修正完成后,再进一步考虑新出现的边界点,以此类推。
3实验分析
由第一部分对窗口半径的分析,半径太小会引入伪静脉,半径不够大时,在对比度低的区域则无法保证连续性。通过综合考虑,使用窗口半径为60情况下获取的方向分割图作为修正对象,这样既保证了连续性,又不至于引入伪静脉,而当前半径下的静脉刻画不精确问题可使用修正算法解决。修正后效果如图7所示。
如图7所示,修正后图像在半径为60的分割图像基础上尽可能多地保留了原图静脉区域,同时对静脉区域的边界进行了有效修正,使修正后的图像明显比原分割图更加细化,对比增强图像也没有引入伪静脉,并且静脉的连续性较好,综合说明该修正算法是有效的。
4结语
本文在基于方向谷形检测的手指静脉分割算法基础上,针对该分割算法在静脉边界处分割精度不足的问题,提出基于Canny算法修正的方向谷形手指静脉分割算法。对静脉区域的梯度变化进行深入研究,分析真实边界点在梯度上应具有的条件,并以此作为依据判断当前分割出的边界点是否为真实边界点。考虑到Canny算法具有边缘定位准确的优势,因此使用Canny算法获取经过非极大值抑制后的梯度图像,并使用该图像按照真实边界点具备的条件对原始方向谷形检测获取的分割图像进行边界修正,最终获取修正后的分割图像。该方法结合了Canny算法边缘定位准确和方向谷形检测分割充分考虑静脉区域空间结构特征的优势,获得了静脉分割充分且边界刻画准确的分割图像。同时对原始分割算法下的窗口大小选取对分割结果的影响进行了详细研究,为了不丢失静脉且保证修正后分割结果的静脉连续性,采用r=60窗口下的分割结果作为修正对象,实验结果同时具备了大窗口分割连续性和小窗口分割充分性的特点,同时克服了小窗口下分割易产生伪静脉的缺点。
参考文献:
[1]刘通.面向低质量图像的手指静脉识别关键技术研究[D].长沙:国防科学技术大学,2014.
[2]黄贝宁.复杂实用环境下手指静脉身份认证系统中若干难点问题研究[D].北京:北京大学,2012.
[3]谢剑斌,刘通,李沛秦,等.一种基于优化区域OTSU的静脉图像分割算法[J].信号处理,2009,25(1):87-89.
[4]何志勇,孙立宁,陈立国.Otsu准则下分割阈值的快速计算[J].电子学报,2013,41(2):267-272.
[5]郑均辉,甘泉.NIBLACK改进算法在手指静脉识别中的应用研究[J].微型电脑应用,2015,31(5):36-38.
[6]赵丹丹.手指静脉图像的增强和细化算法及其在身份识别中的应用[D].合肥:安徽大学,2015.
[7]孙晓琳.指静脉图像模式提取算法研究[D].长春:吉林大学,2012.
[8]郑宪秋.人体手指静脉图像识别算法研究[D].南昌:东华理工大学,2016.
[9]MIURAN,NAGASAKAA,MIYATAKET.Featureextractionoffinger-veinpatternsbasedonrepeatedlinetrackinganditsapplicationtopersonalidentification[J].Systems&ComputersinJapan;,2004,15(4):194-203.
[10]LIUT,XIEJB,YANW,etal.Analgorithmforfinger-veinsegmentationbasedonmodifiedrepeatedlinetracking[J].ImagingScienceJournal,2013,61(6):491-502.
[11]BESRAB,MOHAPATRARK.Extractionofsegmentedveinpatternsusingrepeatedlinetrackingalgorithm[C].IEEE,InternationalConferenceonSensing,SignalProcessingandSecurity,2017.
[12]余成波,秦华锋,睿张.手指静脉认证系统的静脉特征提取方法:CN,100514352C[P].2009.
[13]汪成亮,兰利彬,周尚波.自适应分数阶微分在图像纹理增强中的应用[J].重庆大学学报:自然科学版,2011,34(2):32-37.
[14]PUYF,ZHOUJL,YUANX.Fractionaldifferentialmask:afractionaldifferential-basedapproachformultiscaletextureenhancement[J].IEEETransactionsonImageProcessingaPublicationoftheIEEESignalProcessingSociety,2010,19(2):491.
[15]张桂梅,孙晓旭,陈彬彬,等.结合分数阶微分和Canny算子的边缘检测[J].中国图象图形学报,2016,21(8):1028-1038.
[16]LIUK,XIAOK,XIONGH.Animageedgedetectionalgorithmbasedonimprovedcanny[C].InternationalConferenceonMachinery,MaterialsandComputingTechnology.2017.
(責任编辑:黄健)