一种图像检测方法、装置、计算机设备及存储介质与流程

文档序号:15933586发布日期:2018-11-14 02:02阅读:94来源:国知局

本发明涉及图像处理技术领域,尤其涉及一种图像检测方法、装置、计算机设备及存储介质。

背景技术

手指静脉识别技术是新一代的生物特征识别技术,具有潜在在广泛应用。为定位用于识别的静脉区域,一个重要的工作是对手指边缘进行检测。

目前,常用的指静脉采集设备的采集质量均不高,采集到的均为低质量手指静脉图像,而现有的经典边缘检测算法对采集到的手指静脉图像的质量要求较高,当手指静脉图像的质量较低时,其手指边缘检测效果不理想,无法准确定位手指边缘。



技术实现要素:

本发明实施例提供一种图像检测方法、装置、计算机设备及存储介质,以解决对低质量的手指静脉图像无法准确定位手指边缘的问题。

一种图像检测方法,包括:

从采集设备中获取原始的手指静脉图像;

对所述手指静脉图像进行gabor滤波变换,得到增强图像;

对所述增强图像进行二值化处理,获取二值化图像;

对所述二值化图像进行膨胀处理,得到膨胀化图像;

识别所述膨胀化图像中的指静脉纹路,对所述指静脉纹路作删除处理,获取去噪图像;

识别所述去噪图像中的手指边缘纹路,对所述手指边缘纹路作延伸处理,得到完整的手指边缘图像。

一种图像检测装置,包括:

采集模块,用于从采集设备中获取原始的手指静脉图像;

变换模块,用于对所述手指静脉图像进行gabor滤波变换,得到增强图像;

二值化模块,用于对所述增强图像进行二值化处理,获取二值化图像;

膨胀化模块,用于对所述二值化图像进行膨胀处理,得到膨胀化图像;

去噪模块,用于识别所述膨胀化图像中的指静脉纹路,对所述指静脉纹路作删除处理,获取去噪图像;

延伸模块,用于识别所述去噪图像中的手指边缘纹路,对所述手指边缘纹路作延伸处理,得到完整的手指边缘图像。

一种计算机设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述图像检测方法的步骤。

一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述图像检测方法的步骤。

上述图像检测方法、装置、计算机设备及存储介质中,通过对手指静脉图像进行gabor滤波变换得到增强图像,进一步对增强图像进行二值化处理获取二值化图像,再对二值化图像进行膨胀处理得到膨胀化图像,通过识别膨胀化图像中的指静脉纹路并作删除处理,得到处理后的去噪图像,最后识别去噪图像中的手指边缘纹路并对其作延伸处理,获取处理后的完整的手指边缘图像。一方面,通过gabor滤波变换提高手指静脉图像的图像质量,使得在对手指边缘检测时能够有效提高检测的准确性;另一方面,通过对gabor变换后的增强图像依次进行二值化处理、膨胀处理、去噪处理和延伸处理这一系列的处理过程,能够有效去除干扰对象,保留并准确提取手指边缘图像,从而实现对低端指静脉采集设备采集到的低质量手指静脉图像进行手指边缘的准确定位,有效提高手指静脉图像中手指边缘检测的准确性,以及对多种不同指静脉采集设备的适用性。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例中提供的图像检测方法的应用环境示意图;

图2是本发明实施例中提供的图像检测方法的实现流程图;

图3是本发明实施例提供的图像检测方法中对手指静脉图像进行灰度化处理的实现流程图;

图4是本发明实施例提供的图像检测方法中步骤s5的实现流程图;

图5是本发明实施例提供的图像检测方法中步骤s6的实现流程图;

图6是本发明实施例中提供的图像检测方法中去噪图像中的中心线及预设幅度范围的示例图;

图7是本发明实施例中提供的图像检测方法中中心像素点及其近邻点的位置的示例图;

图8是本发明实施例中提供的图像检测装置的示意图;

图9是本发明实施例中提供的计算机设备的示意图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

图1示出了本发明实施例提供的应用环境,该应用环境包括服务端和客户端,其中,服务端和客户端之间通过网络进行连接,客户端用于对手指静脉图像进行采集,并且将采集到的手指静脉图像发送到服务端,客户端具体可以但不限于是摄像机、相机、扫描仪或者带有其他拍照功能的手指静脉图像采集设备;服务端用于对手指静脉图像进行手指边缘检测,服务端具体可以用独立的服务器或者多个服务器组成的服务器集群实现。本发明实施例提供的图像检测方法应用于服务端。

请参阅图2,图2示出本实施例提供的图像检测方法的实现流程。详述如下:

s1:从采集设备中获取原始的手指静脉图像。

在本发明实施例中,原始的手指静脉图像是指未经过任何处理,直接从指静脉采集设备中采集到的手指静脉图像。

需要说明的是,由于不同的指静脉采集设备获取到的手指静脉图像的质量不同,通常使用的指静脉采集设备采集到的手指静脉图像的质量均比较低,通过本发明实施例提供的方法,能够对低质量的手指静脉图像进行准确的边缘识别,从而有效提高手指静脉图像中手指边缘检测的准确性,以及对多种不同指静脉采集设备的适用性。

s2:对手指静脉图像进行gabor滤波变换,得到增强图像。

在本发明实施例中,根据步骤s1获取的手指静脉图像,为了进一步提高该手指静脉图像的质量,采用gabor滤波变换的方法对图像作增强处理,最终得到处理后的增强图像。

具体地,根据gabor滤波函数对手指静脉图像进行卷积运算,通过卷积运算结果获取增强图像。其中,卷积运算指的是使用一个卷积核对手指静脉图像中的每个像素点进行一系列操作,卷积核是预设的矩阵模板,用于与手指静脉图像进行运算,其具体可以是一个四方形的网格结构,例如3*3的矩阵,该矩阵中的每个元素都有一个预设的权重值,在使用卷积核进行计算时,将卷积核的中心放置在要计算的目标像素点上,计算卷积核中每个元素的权重值和其覆盖的图像像素点的像素值之间的乘积并求和,得到的结果即为目标像素点的新像素值。

gabor滤波变换属于加窗傅里叶变换,gabor函数可以在频域不同尺度、不同方向上提取图像的相关特征,实现对图像的增强效果。

s3:对增强图像进行二值化处理,获取二值化图像。

在本发明实施例中,在步骤s2获取的增强图像的基础上,为了让图像中的像素点的像素值只呈现0或者255,即图像只呈现黑色或者白色两种颜色,需要进一步对该增强图像进行二值化处理。

二值化,就是将图像上的像素点的像素值设置为0或255,也就是将整个图像呈现出明显的只有黑和白的视觉效果。

具体地,扫描步骤s2获取的增强图像中的每个像素点,若该像素点的像素值小于预设的像素阈值,则将该像素点的像素值设为0,即为像素点变为黑色;若该像素点的像素值大于等于预设值的像素阈值,则将该像素点的像素值设为255,即像素点变为白色,得到二值化图像。

s4:对二值化图像进行膨胀处理,得到膨胀化图像。

在本发明实施例中,在步骤s3获取的二值化图像的基础上,由于二值化图像只呈现黒和白两种颜色,即图像中只有黑色像素点和白色像素点,且背景色由黑色像素点构成,手指纹路由白色像素点构成,为了使该图像中断裂的手指纹路连接起来,通过遍历二值化图像中的每个像素点,获取每个像素点的像素值,若该像素点的像素值为255则确认该像素点为白色像素点,通过检测不连续的白色像素点,确定手指纹路不连续的地方,即手指纹路的断裂处,对该断裂处进行膨胀处理,通过膨胀处理使手指纹路变得更加完整,最终得到膨胀化图像。

膨胀处理,是指将二值化图像中断裂的手指纹路的边界像素点设置为白色像素点,当两条手指纹路的边界相距较近,即手指纹路发生断裂的地方其断裂的长度较小时,通过膨胀处理能够将该断裂处连接起来,从而使手指纹路变得完整。

例如:在matlab应用工具中,通过调用该工具提供的膨胀函数imdilate()可以直接对图像进行膨胀处理,将图像中像素值为255的像素点,即白色像素点进行膨胀,从而得到膨胀化图像。

s5:识别膨胀化图像中的指静脉纹路,对指静脉纹路作删除处理,获取去噪图像。

在本发明实施例中,指静脉纹路是指手指静脉血管的纹路,不同于手指边缘纹路,指静脉纹路在膨胀化图像中长度较短,并且不规则的分布在整个膨胀化图像中。

具体地,在步骤s4得到的膨胀化图像中,根据连续的白色像素点的数量确定纹路的长度,例如,若连续的白色像素点的个数为10个,则其构成的纹路的长度为10。

若连续的白色像素点构成的纹路的长度小于预设长度阈值,则确认该纹路为指静脉纹路,并对其进行删除处理,得到去噪图像。其中,删除处理具体可以通过将指静脉纹路的像素点的像素值由255修改为0,即将白色像素点转化为黑色像素点。

需要说明的是,预设阈值可以根据实际应用的需要进行设置,此处不做限制。

s6:识别去噪图像中的手指边缘纹路,对手指边缘纹路作延伸处理,得到完整的手指边缘图像。

具体地,由于经过去噪处理后的去噪图像中只剩下手指边缘纹路,且背景色为黑色,手指边缘纹路为白色,故将去噪图像中连续的白色像素点构成的纹路识别为手指边缘纹路,根据步骤s5获取的去噪图像,为了让图像中手指边缘纹路缺少的部分补充完整,需要进一步对手指边缘纹路作延伸处理,即对由连续的白色像素点构成的纹路作延伸处理,最终得到处理后的完整的手指边缘图像。

延伸处理,是指在已经找到的部分手指边缘纹路的基础上,按照手指的方向进行延伸,直到达到预设位置为止。其中,预设位置可以是手指静脉图像的边界位置,还可以是与边界位置相距预定距离的位置,其具体可以根据实际应用的需要进行设置,此处不做限制。

在图2对应的实施例中,通过对手指静脉图像进行gabor滤波变换得到增强图像,进一步对增强图像进行二值化处理获取二值化图像,再对二值化图像进行膨胀处理得到膨胀化图像,通过识别膨胀化图像中的指静脉纹路并作删除处理,得到处理后的去噪图像,最后识别去噪图像中的手指边缘纹路并对其作延伸处理,获取处理后的完整的手指边缘图像。一方面,通过gabor滤波变换提高手指静脉图像的图像质量,使得在对手指边缘检测时能够有效提高检测的准确性;另一方面,通过对gabor变换后的增强图像依次进行二值化处理、膨胀处理、去噪处理和延伸处理这一系列的处理过程,能够有效去除干扰对象,保留并准确提取手指边缘图像,从而实现对低端指静脉采集设备采集到的低质量手指静脉图像进行手指边缘的准确定位,有效提高手指静脉图像中手指边缘检测的准确性,以及对多种不同指静脉采集设备的适用性。

接下来,在图2对应的实施例的基础之上,在步骤s2提及的对手指静脉图像进行gabor滤波变换,得到增强图像之前,还可以进一步对图像作灰度化处理,如图3所示,该图像检测方法还包括:

s7:对手指静脉图像中的像素点进行遍历,获取每个像素点的rgb分量值。

具体地,按照预设的遍历方式对手指静脉图像中的像素点进行遍历,获取每个像素点的rgb分量值,其中,r、g、b分别代表红、绿、蓝三个通道的颜色。

其中,预设的遍历方式具体可以是以手指静脉图像的左上角像素点为起点,从上往下从左往右的逐行遍历,也可以是从手指静脉图像的中线位置同时向两边遍历,还可以是其他遍历方式,此处不做限制。

s8:根据像素点的rgb分量值,按照公式(1)对手指静脉图像作灰度化处理:

其中,x和y为手指静脉图像中每个像素点的横坐标和纵坐标,g(x,y)为像素点(x,y)灰度化处理后的灰度值,r(x,y)为像素点(x,y)的r通道的颜色分量,g(x,y)为像素点(x,y)的g通道的颜色分量,b(x,y)为像素点(x,y)的b通道的颜色分量,k1,k2,k3分别为r通道,g通道和b通道对应的占比参数,σ为预设的调节参数。

在本发明实施例中,为了实现对手指静脉图像中信息内容的准确提取,首先需要对手指静脉图像进行灰度化处理,其中,k1,k2,k3和σ的参数值可以根据实际应用的需要进行设置,此处不做限制,通过调节k1,k2,k3的取值范围可以分别对r通道,g通道和b通道的占比进行调整,通过调节σ的取值范围对g(x,y)进行调整。

rgb模型是目前常用的一种彩色信息表达方式,它使用红、绿、蓝三原色的亮度来定量表示颜色。该模型也称为加色混色模型,是以rgb三色光互相叠加来实现混色的方法,因而适合于显示器等发光体的显示。

灰度化是指在rgb模型中,如果r=g=b时,则色彩表示只有一种灰度颜色,其中r=g=b的值叫灰度值,因此,灰度图像每个像素只需一个字节存放灰度值,灰度范围为0-255。

需要说明的是,在本发明实施例中,通过公式(1)进行加权平均计算灰度值,在其他实施例中还可以采用分量法、最大值法或者平均值法对图像进行灰度化处理,此处不做限制。

在图3对应的实施例中,通过遍历手指静脉图像中的像素点并获取对应像素点的rgb分量值,根据获取到的每个像素点的rgb分量值,利用公式(1)对手指静脉图像进行灰度化处理,从而实现将图像中像素点的像素值范围设定在0-255之间,进一步减少图像原始数据量,提高在后续处理计算中的计算效率。

在图2对应的实施例的基础之上,下面通过一个具体的实施例对步骤s2提及的对手指静脉图像进行gabor滤波变换,得到增强图像的具体实现方法进行详细说明,详述如下:

按照公式(2)对手指静脉图像进行gabor滤波变换:

其中,为gabor滤波函数,x和y为手指静脉图像中像素点的横坐标和纵坐标,k为方向指数,θk为垂直于手指静脉图像的方向,m为尺度级别,σm为第m级尺度的标准差,fm为第m级的中心频率,γ为空间纵横比,δφ为预设带宽,i(x,y)为手指静脉图像,为gabor滤波变换后的增强图像。

在本发明实施例中,预设带宽δφ为1,也可以根据实际需求进行设定,此处不做限制,gabor滤波的波长由v的取值所决定,v的取值由预设带宽δφ的取值决定,因此通过设置δφ的值达到调节波长的目的。尺度级别m是指gabor滤波中的频域窗尺度的数量,该数量可以根据实际应用的需要进行设置,此处不做限制。

具体地,使用预设带宽以及垂直于手指静脉图像的方向,利用公式(2)的gabor滤波函数对手指静脉图像进行变换,从而将手指静脉图像的高频波滤掉,只留下低频部分,在垂直于纹路的方向上将低频波滤掉,只留下高频部分,最终使图像变得高亮,即通过gabor滤波变换后得到增强图像。

在本发明实施例中,通过公式(2)对手指静脉图像进行gabor滤波变换,能够快速地将图像变得高亮,达到图像增强的效果,从而提高手指静脉图像的图像质量,以及对手指静脉图像中纹路的辨别率,以便在后续进行手指边缘检测时能够实现准确检测,提高手指边缘识别的准确性。

在图2对应的实施例的基础之上,下面通过一个具体的实施例对步骤s5中所提及的识别膨胀化图像中的指静脉纹路,对指静脉纹路作删除处理,获取去噪图像的具体实现方法进行详细说明。

请参阅图4,图4示出了本发明实施例提供的步骤s5的具体实现流程,详述如下:

s51:对膨胀化图像中的像素点进行遍历,获取相同预设像素值的连续像素点构成的纹路。

具体地,在本发明实施例中,预设像素值具体可以为255,根据步骤s4获取到的膨胀化图像,对该膨胀化图像中的像素点进行遍历,识别像素值为255的像素点,即白色像素点,获取连续的白色像素点构成的纹路。

例如,若膨胀化图像中的某行存在n个像素点,且第i个像素点至第i+k个像素点的像素值均为255,第i+k+a个像素点至第i+k+a+b个像素点的像素值均为255,即都为白色像素点,则通过遍历该行的像素点识别出两条纹路,即i+k个连续白色像素点和a+b个连续白色像素点。

s52:针对每条纹路,计算该纹路的长度,若长度小于预设的第一阈值,则将该纹路中所有像素点的像素值设置为目标像素值,得到去噪图像。

在本发明实施例中,由于手指静脉纹路和手指边缘纹路同时存在,为了只保留手指边缘纹路,需要识别出手指静脉纹路并将其删除,最终得到只有手指边缘纹路的图像。

具体地,针对步骤s51获取的每条纹路,根据该纹路包含的像素点数量确定该纹路的长度,并将该纹路的长度与预设的第一阈值进行比较。若该纹路的长度小于预设的第一阈值,则确认该纹路为噪点,并将该纹路上每个像素点的像素值均设为目标像素值,在本发明实施例中,目标像素值为0,即将该纹路上的白色像素点都改为黑色像素点;若该纹路的长度大于或者等于预设第一阈值,则确认该纹路不为噪点,不做处理,最终保留大于预设第一阈值的纹路图像,即手指边缘纹路图像,作为去噪图像。

可以理解的是,若检测到像素值为255的像素点,且该像素点的近邻点的像素值均为0,即该像素点为单个白色的像素点,其对应的纹路的长度的值为1,则将该像素点的像素值设为0,即该白色像素点被改为黑色像素点。其中,近邻点是指该像素点左边和右边的一个像素点。

在图4对应的实施例中,通过对膨胀化图像中的像素点进行遍历,获取由连续的白色像素点构成的纹路,针对每条纹路,根据纹路长度与预设的第一阈值进行对比,将小于预设的第一阈值的纹路进行删除,最终得到去噪图像,将纹路与预设的第一阈值进行比较,将小于预设的第一阈值的纹路识别为手指静脉纹路,将大于预设的第一阈值的纹路识别为手指边缘纹路,以此区分两种纹路,通过删除小于预设的第一阈值的纹路来排除手指静脉图像中的手指静脉纹路,减少手指静脉纹路对后续手指边缘检测的干扰,提高后续手指边缘检测的准确性。

在图2对应的实施例的基础之上,下面通过一个具体的实施例来对步骤s6中所提及的识别去噪图像中的手指边缘纹路,对手指边缘纹路作延伸处理,得到完整的手指边缘图像的具体实现方法进行详细说明。

请参阅图5,图5示出了本发明实施例提供的步骤s6的具体实现流程,详述如下:

s61:获取去噪图像中的中心线上预设像素值的像素点作为中心像素点。

在本发明实施例中,去噪图像的中心线是在去噪图像的中间位置并且与与手指垂直的方向的直线,选取该中心线上像素值为255的像素点,即白色像素点,作为中心像素点。可以理解的,中心像素点为手指上边界和下边界的像素点。

如图6所示,在该去噪图像中,手指水平放置,中心线为去噪图像的中间位置且与手指方向垂直的直线,中心像素点为手指上边界和手指下边界的像素点,其中,中心像素点m为手指上边界的像素点。

s62:以中心像素点为起始点,向左对预设幅度范围内的像素点进行遍历,获取相同预设像素值的连续像素点构成的左边缘纹路。

具体地,继续如图6所示,以中心像素点m作为起始点,在预设幅度范围内,向左分别对该起始点近邻的左边像素点、上边像素点、下边像素点、左上边像素点和左下边像素点进行遍历,若从这5个像素点中遍历到像素值为255的像素点,则以该像素值为255的像素点为起始点,继续对该点近邻的5个像素点进行遍历,直到近邻的5个像素点的像素值都不为255为止,获取由像素值为255的连续的像素点构成的左边缘纹路,即由连续的白色像素点构成的左边缘纹路。

其中,起始点及其左边像素点、上边像素点、下边像素点、左上边像素点和左下边像素点的位置如图7所示。

例如,若中心像素点m的坐标为(0,0),则左边像素点a的坐标为(-1,0),上边像素点b的坐标为(0,1),下边像素点c的坐标为(0,-1),左上边像素点e的坐标为(-1,1),左下边像素点f的坐标为(-1,-1)。

由于手指边缘往往不是一条直线,因此通过预设幅度范围限定对手指边缘的遍历范围,预设幅度范围是指以中心像素点为中心,分别向上和向下扩展预设数量的像素点得到的幅度范围,通过预设幅度范围可以保证遍历的准确性,同时也减少不必要的遍历,从而提高识别效率。

需要说明的是,由于手指边缘分为手指上边界和手指下边界两部分,故在遍历时,同时对手指边缘上边界和手指边缘下边界进行遍历,分别获取到手指边缘上边界的左边缘纹路和手指下边界的左边缘纹路。

s63:若左边缘纹路的长度小于预设的第二阈值,则将左侧近邻点的像素值设置为预设像素值,并将左侧近邻点添加到左边缘纹路后,继续向左进行遍历,直到该左边缘纹路的长度达到第二阈值为止,其中,左侧近邻点是指与边缘纹路最左边的像素点左侧相邻的像素点。

具体地,根据步骤s62获取的左边缘纹路包含的像素点的数量,确定该左边缘纹路的长度,并将该长度与预设的第二阈值进行对比,若该长度小于预设的第二阈值,则确认该左边缘纹路不完整,将该左边缘纹路最左边像素点的左侧近邻点的像素值设为255,即将该左侧近邻点由黑色像素点改为白色像素点,并将该长度更新为包含该左侧近邻点的左边缘纹路的长度后,继续按照步骤s63的遍历方式向左进行遍历,直到长度等于第二阈值为止。

需要说明的是,第二阈值决定了需要截取指纹的长度,当左边缘纹路的长度与第二阈值相等的情况下,则认为该左边缘纹路为完整的左边缘纹路,故可以通过第二阈值来判断左边缘纹路的完整性。

s64:以中心像素点为起始点,向右对预设幅度范围内的像素点进行遍历,获取相同预设像素值的连续像素点构成的右边缘纹路。

具体地,如图6所示,以中心像素点m作为起始点,在预设幅度范围内,向右分别对该起始点近邻的右边像素点、上边像素点、下边像素点、右上边像素点和右下边像素点进行遍历,若从这5个像素点中遍历到像素值为255的像素点,则以该像素值为255的像素点为起始点,继续对该点近邻的5个像素点进行遍历,直到近邻的5个像素点的像素值都不为255为止,获取由像素值为255的连续的像素点构成的右边缘纹路,即由连续的白色像素点构成的右边缘纹路。

其中,起始点及其右边像素点、上边像素点、下边像素点、右上边像素点和右下边像素点的位置如图7所示。例如,若中心像素点的坐标为(0,0),则右边像素点的坐标为(1,0),上边像素点的坐标为(0,1),下边像素点的坐标为(0,-1),右上边像素点的坐标为(1,1),左下边像素点的坐标为(1,-1)。s65:若右边缘纹路的长度小于预设的第二阈值,则将右侧近邻点的像素值设置为预设像素值,并将右侧近邻点添加到右边缘纹路后,继续向右进行遍历,直到该右边缘纹路的长度达到第二阈值为止,其中,右侧近邻点是指与边缘纹路最右边的像素点右侧相邻的像素点。

具体地,根据步骤s64获取的右边缘纹路包含的像素点的数量,确定该右边缘纹路的长度,并将该长度与预设的第二阈值进行对比,若该长度小于预设的第二阈值,则确认该右边缘纹路不完整,将该右边缘纹路最右边像素点的右侧近邻点的像素值设为255,即将该右侧近邻点由黑色像素点改为白色像素点,并将该长度更新为包含该右侧近邻点的右边缘纹路的长度后,继续按照步骤s64的遍历方式向右进行遍历,直到长度等于第二阈值为止。需要说明的是,步骤s62至步骤s63与步骤s64至步骤s65之间没有必然的先后执行顺序,其可以是并列执行的关系,即同时对左边缘纹路和右边缘纹路进行处理,可以提高识别效率。

s66:将左边缘纹路和右边缘纹路组成手指边缘图像。

在本发明实施例中,通过步骤s62和s63对指静脉图像中手指边缘向左进行延伸处理,并通过步骤s64和s65对指静脉图像中手指边缘向右进行延伸处理后,将得到的的左边缘纹路和右边缘纹路,共同组成完整的手指边缘图像。

在图5对应的实施例中,通过以指静脉图像中的中心线上的预设中心像素点作为起始点,向左对预设幅度范围内的像素点进行遍历,获取由连续的预设像素点构成的左边缘纹路,将该左边缘纹路的长度与预设的第二阈值进行对比,若该长度小于预设的第二阈值,则将左侧近邻点的像素值设置为预设像素值,并将该长度更新为包含左侧近邻点的长度,接着继续向左进行遍历,直到长度达到第二阈值为止,得到完整的左边缘纹路,同理,按照同样的方式对右边缘纹路进行处理,得到完整的右边缘纹路,最后将完整的左边缘纹路和完整的右边缘纹路组成完整的手指边缘图像,一方面利用中心线对图像进行分割达到区分图像左右两部分,再同时对左右两部分纹路进行延伸处理,能够快速识别纹路,提高纹路的识别效率,另一方面在预设幅度范围内进行延伸处理,能够保证延伸处理的准确性,提高准确度,从而实现对手指边缘的准确定位,有效提高手指静脉图像中手指边缘检测的准确性,同时也提高了手指边缘检测的工作效率。

应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。

对应于上述方法实施例中的图像检测方法,图8示出了与上述方法实施例中提供的图像检测方法一一对应的图像检测装置,为了便于说明,仅示出了与本发明实施例相关的部分。

如图8所示,该图像检测装置包括:采集模块81,变换模块82,二值化模块83,膨胀化模块84,去噪模块85,延伸模块86。各功能模块详细说明如下:

采集模块81,用于从采集设备中获取原始的手指静脉图像;

变换模块82,用于对手指静脉图像进行gabor滤波变换,得到增强图像;

二值化模块83,用于对增强图像进行二值化处理,获取二值化图像;

膨胀化模块84,用于对二值化图像进行膨胀处理,得到膨胀化图像;

去噪模块85,用于识别膨胀化图像中的指静脉纹路,对指静脉纹路作删除处理,获取去噪图像;

延伸模块86,用于识别去噪图像中的手指边缘纹路,对手指边缘纹路作延伸处理,得到完整的手指边缘图像。

进一步地,该图像检测装置还包括:

rgb获取模块87,用于对手指静脉图像中的像素点进行遍历,获取每个像素点的rgb分量值;

灰度化模块88,用于根据像素点的rgb分量值,按照如下公式对手指静脉图像作灰度化处理:

其中,x和y为手指静脉图像中每个像素点的横坐标和纵坐标,g(x,y)为像素点(x,y)灰度化处理后的灰度值,r(x,y)为像素点(x,y)的r通道的颜色分量,g(x,y)为像素点(x,y)的g通道的颜色分量,b(x,y)为像素点(x,y)的b通道的颜色分量,k1,k2,k3分别为r通道,g通道和b通道对应的占比参数,σ为预设的调节参数。

进一步地,变换模块82包括:

gabor子模块821,用于按照如下公式对手指静脉图像进行gabor滤波变换:

其中,为gabor滤波函数,x和y为手指静脉图像中像素点的横坐标和纵坐标,k为方向指数,θk为垂直于手指静脉图像的方向,m为尺度级别,σm为第m级尺度的标准差,fm为第m级的中心频率,γ为空间纵横比,δφ为预设带宽,i(x,y)为手指静脉图像,为增强图像。

进一步地,去噪模块85包括:

获取子模块851,用于对膨胀化图像中的像素点进行遍历,获取相同预设像素值的连续像素点构成的纹路;

筛选子模块852,用于针对每条纹路,计算该纹路的长度,若长度小于预设的第一阈值,则将该纹路中所有像素点的像素值设置为目标像素值,得到去噪图像。

进一步地,延伸模块86包括:

中心子模块861,用于获取去噪图像中的中心线上预设像素值的像素点作为中心像素点;

左边缘子模块862,用于以中心像素点为起始点,向左对预设幅度范围内的像素点进行遍历,获取相同预设像素值的连续像素点构成的左边缘纹路;

左延伸子模块863,用于若左边缘纹路的长度小于预设的第二阈值,则将左侧近邻点的像素值设置为预设像素值,并将左侧近邻点添加到左边缘纹路后,继续向左进行遍历,直到左边缘纹路的长度达到第二阈值为止,其中,左侧近邻点是指与边缘纹路最左边的像素点左侧相邻的像素点;

右边缘子模块864,用于以中心像素点为起始点,向右对预设幅度范围内的像素点进行遍历,获取相同预设像素值的连续像素点构成的右边缘纹路;

右延伸子模块865,用于若右边缘纹路的长度小于预设的第二阈值,则将右侧近邻点的像素值设置为预设像素值,并将右侧近邻点添加到右边缘纹路后,继续向右进行遍历,直到右边缘纹路的长度达到第二阈值为止,其中,右侧近邻点是指与边缘纹路最右边的像素点右侧相邻的像素点;

组成子模块866,用于将左边缘纹路和右边缘纹路组成手指边缘图像。

本实施例提供的一种图像检测装置中各模块实现各自功能的过程,具体可参考前述方法实施例的描述,此处不再赘述。

本实施例提供一计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现方法实施例中图像检测方法,或者,该计算机程序被处理器执行时实现方法实施例中图像检测装置中各模块的功能。为避免重复,这里不再赘述。

可以理解地,所述计算机可读存储介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、电载波信号和电信信号等。

图9是本发明一实施例提供的计算机设备的示意图。如图9所示,该实施例的计算机设备90包括:处理器91、存储器92以及存储在存储器92中并可在处理器91上运行的计算机程序93,例如图像检测程序。处理器91执行计算机程序93时实现上述各个图像检测方法实施例中的步骤,例如图2所示的步骤s1至步骤s6。或者,处理器91执行计算机程序93时实现上述各装置实施例中各模块/单元的功能,例如图8所示模块81至模块86的功能。

示例性的,计算机程序93可以被分割成一个或多个模块/单元,一个或者多个模块/单元被存储在存储器92中,并由处理器91执行,以完成本发明。一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述计算机程序93在计算机设备90中的执行过程。例如,计算机程序93可以被分割成采集模块,变换模块,二值化模块,膨胀化模块,去噪模块,延伸模块,各模块具体功能如下:

采集模块,用于从采集设备中获取原始的手指静脉图像;

变换模块,用于对手指静脉图像进行gabor滤波变换,得到增强图像;

二值化模块,用于对增强图像进行二值化处理,获取二值化图像;

膨胀化模块,用于对二值化图像进行膨胀处理,得到膨胀化图像;

去噪模块,用于识别膨胀化图像中的指静脉纹路,对指静脉纹路作删除处理,获取去噪图像;

延伸模块,用于识别去噪图像中的手指边缘纹路,对手指边缘纹路作延伸处理,得到完整的手指边缘图像。

进一步地,该图像检测装置还包括:

rgb获取模块,用于对手指静脉图像中的像素点进行遍历,获取每个像素点的rgb分量值;

灰度化模块,用于根据像素点的rgb分量值,按照如下公式对手指静脉图像作灰度化处理:

其中,x和y为手指静脉图像中每个像素点的横坐标和纵坐标,g(x,y)为像素点(x,y)灰度化处理后的灰度值,r(x,y)为像素点(x,y)的r通道的颜色分量,g(x,y)为像素点(x,y)的g通道的颜色分量,b(x,y)为像素点(x,y)的b通道的颜色分量,k1,k2,k3分别为r通道,g通道和b通道对应的占比参数,σ为预设的调节参数。

进一步地,变换模块包括:

gabor子模块,用于按照如下公式对手指静脉图像进行gabor滤波变换:

其中,为gabor滤波函数,x和y为手指静脉图像中像素点的横坐标和纵坐标,k为方向指数,θk为垂直于手指静脉图像的方向,m为尺度级别,σm为第m级尺度的标准差,fm为第m级的中心频率,γ为空间纵横比,δφ为预设带宽,i(x,y)为手指静脉图像,为增强图像。

进一步地,去噪模块包括:

获取子模块,用于对膨胀化图像中的像素点进行遍历,获取相同预设像素值的连续像素点构成的纹路;

筛选子模块,用于针对每条纹路,计算该纹路的长度,若长度小于预设的第一阈值,则将该纹路中所有像素点的像素值设置为目标像素值,得到去噪图像。

进一步地,延伸模块包括:

中心子模块,用于获取去噪图像中的中心线上预设像素值的像素点作为中心像素点;

左边缘子模块,用于以中心像素点为起始点,向左对预设幅度范围内的像素点进行遍历,获取相同预设像素值的连续像素点构成的左边缘纹路;

左延伸子模块,用于若左边缘纹路的长度小于预设的第二阈值,则将左侧近邻点的像素值设置为预设像素值,并将左侧近邻点添加到左边缘纹路后,继续向左进行遍历,直到左边缘纹路的长度达到第二阈值为止,其中,左侧近邻点是指与边缘纹路最左边的像素点左侧相邻的像素点;

右边缘子模块,用于以中心像素点为起始点,向右对预设幅度范围内的像素点进行遍历,获取相同预设像素值的连续像素点构成的右边缘纹路;

右延伸子模块,用于若右边缘纹路的长度小于预设的第二阈值,则将右侧近邻点的像素值设置为预设像素值,并将右侧近邻点添加到右边缘纹路后,继续向右进行遍历,直到右边缘纹路的长度达到第二阈值为止,其中,右侧近邻点是指与边缘纹路最右边的像素点右侧相邻的像素点;

组成子模块,用于将左边缘纹路和右边缘纹路组成手指边缘图像。

计算机设备90可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。计算机设备90可包括,但不仅限于,处理器91、存储器92。本领域技术人员可以理解,图9仅仅是计算机设备90的示例,并不构成对计算机设备90的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如计算机设备90还可以包括输入输出设备、网络接入设备、总线等。

所称处理器91可以是中央处理单元(centralprocessingunit,cpu),还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

存储器92可以是计算机设备90的内部存储单元,例如计算机设备90的硬盘或内存。存储器92也可以是计算机设备90的外部存储设备,例如计算机设备90上配备的插接式硬盘,智能存储卡(smartmediacard,smc),安全数字(securedigital,sd)卡,闪存卡(flashcard)等。进一步地,存储器92还可以既包括计算机设备90的内部存储单元也包括外部存储设备。存储器92用于存储计算机程序以及/计算机设备90所需的其他程序和数据。存储器92还可以用于暂时地存储已经输出或者将要输出的数据。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。

以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1