一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

彩色虹膜识别的瞳孔快速定位方法与流程

2022-02-20 00:26:13 来源:中国专利 TAG:


1.本发明涉及身份识别技术领域,具体的涉及虹膜识别中基于彩色虹膜图像的瞳孔快速定位方法。


背景技术:

2.人体虹膜是环绕黑色瞳孔的圆环状部分,其外由白色巩膜所包围。虹膜识别首先需完成虹膜图像中虹膜的定位,包括虹膜圆环的内圆定位和外圆定位,其目的是将虹膜圆环部分的图像提取出来,为后续处理奠定基础。所谓内圆定位,就是找出瞳孔的中心点和边界圆,即虹膜圆环的内边界。所谓外圆定位,就是找出虹膜圆环的外边界。
3.常规的虹膜内圆定位多是先对灰度图的二值化变换,然后选用canny或sobel等算子做二值化图的边缘检测以形成相应的边缘检测数据,并对该组数据分析计算找出符合条件的“圆”。通常情况下,所得到的这些“圆”多达数十乃至上百个,要从中过滤出那个真正的虹膜圆环的内圆需要较大的计算量。
4.传统的虹膜识别技术基于通过专门的红外线摄像机(需配合相应的红外线光源)采集所得的只有黑白二色的灰度图像。彩色虹膜图像则能够通过配置在诸如手机、平板电脑等这类海量使用的移动终端上的摄像头在常规光照下摄得。因此,基于彩色虹膜图像识别技术的应当具有更加广泛的应用场景。


技术实现要素:

5.本发明利用彩色虹膜图像的彩色空间特性,对图像进行色彩空间变换加工,得到瞳孔特征明显且其它的噪音信号基本被屏蔽掉的具有较高鲁棒性的二值化图,以极大地减少边缘检测及虹膜内圆的定位的计算量,显著地提高边缘检测及虹膜内圆的定位和提取效率。
6.本发明采用的技术方案是:彩色虹膜识别的瞳孔快速定位方法,所述方法包括以下处理步骤:
7.p1,将彩色虹膜图像转换为ycbcr色彩空间图像;
8.p2,从ycbcr色彩空间图像分离出其中的cr分量图,得到cr图;
9.p3,将cr图做二值化转换,得到边缘清晰的二值图cr_bw图;
10.p4,做cr_bw图的边缘检测,得到边缘检测图cr_edge;
11.p5,从边缘检测图cr_edge中过滤提取全部圆拟合数据,过滤提取虹膜内圆数据:瞳孔的中心点坐标及半径。
12.进一步的,所述p1将彩色虹膜图像转换为ycbcr色彩空间图像的具体处理过程为:
13.p1-1,计算彩色虹膜图像的rgb矩阵的空间尺寸:行数,列数,维度;
14.p1-2,按前述p1-1计算得到的空间尺寸:行数,列数,维度,分离rgb矩阵,分别得到r分量,g分量,b分量三个分量矩阵;
15.p1-3,彩色虹膜图像的rgb矩阵转换生成ycbcr色彩空间的亮度分量,具体的转换
过程为:用参数向量pa_y分别乘以p1-2中得到的r分量,g分量,b分量,并对各分量所有元素加y分量修正值cor_y修正,得到ycbcr色彩空间的亮度分量y矩阵结果;其处理表达式如下:
16.亮度分量y=(pa_yr*r pa_yg*g pa_yb*b) cor_y;
17.p1-4,彩色虹膜图像的rgb矩阵转换生成ycbcr色彩空间的蓝色分量,具体的转换过程为:用参数向量pa_cb分别乘以p1-2中得到的r分量,g分量,b分量,并对各分量所有元素加cb分量修正值cor_cb修正,得到ycbcr色彩空间的蓝色分量cb矩阵结果;其处理表达式如下:
18.蓝色分量cb=(pa_cbr*r pa_cbg*g pa_cbb*b) cor_cb;
19.p1-5,彩色虹膜图像的rgb矩阵转换生成ycbcr色彩空间的红色分量,具体的转换过程为:用参数向量pa_cr分别乘以p1-2中得到的r分量,g分量,b分量,并对各分量所有元素加cr分量修正值cor_cr修正,得到ycbcr色彩空间的红色分量cr矩阵结果;其处理表达式如下:
20.红色分量cr=(pa_crr*r pa_crg*g pa_crb*b) cor_cr;
21.p1-6,合并上述p1-3,p1-4,p1-5所得到的亮度分量y矩阵,蓝色分量cb矩阵,红色分量cr矩阵,得到rgb矩阵转换为ycbcr色彩空间的完整结果。
22.特别的,所述p1-3的参数向量pa_y为:
23.pa_y=[pa_yr,pa_yg,pa_yb]=[0.299,0.587,0.114]。
[0024]
特别的,所述p1-4的参数向量pa_cb为:
[0025]
pa_cb=[pa_cbr,pa_cbg,pa_cbb]=[-0.1687,-0.3313,0.5]。
[0026]
特别的,所述p1-5的参数向量pa_cr为:
[0027]
pa_cr=[pa_crr,pa_crg,pa_crb]=[0.5,-0.4187,-0.0813]。
[0028]
特别的,所述p1-3的y分量修正值cor_y=16。
[0029]
特别的,所述p1-4的cb分量修正值cor_cb=128。
[0030]
特别的,所述p1-5的cr分量修正值cor_cr=128。
[0031]
进一步的,所述p3将cr图做二值化转换到二值图cr_bw图的具体处理过程为:
[0032]
p3-1,计算p2输出的cr图的虹膜瞳孔作为前景对象的最佳分割阈值,以使虹膜瞳孔作为前景对象与背景之间的方差最大化,以突出虹膜瞳孔对象;
[0033]
p3-2,利用p3-1得到的分割阈值对cr图进行图像二值化分割,即将小于分割阈值的前景像素置为“0”值,并将大于等于分割阈值的背景像素置为“255”值;
[0034]
p3-3,将p3-2得到的二值化灰度图进行0/1二值化转换得到二值图cr_bw图。
[0035]
进一步的,所述p3-1的cr图的虹膜瞳孔作为前景对象的最佳分割阈值,具体计算方法为:
[0036]
p3-1-1,生成cr图的直方图;
[0037]
p3-1-2,对cr图的直方图进行直方图平滑化处理;
[0038]
p3-1-3,计算平滑化处理后的cr图的直方图的最大灰度值和最小灰度值,以此作为后续计算的边界值;
[0039]
p3-1-4,计算每个灰度值下的质量矩,即每个灰度的值乘以该灰度值的像素数量;
[0040]
p3-1-5,计算cr图的直方图的每个灰度下的方差,即该灰度值下的波动范围;
[0041]
p3-1-6,从前述每个灰度下的方差中过滤出最大的方差值,并以此方差值所对应
的灰度值作为p3-1的cr图的虹膜瞳孔作为前景对象的最佳分割阈值。
[0042]
进一步的,所述p4的对二值图cr_bw图的边缘检测的方法包括以下过程:
[0043]
p4-1,对二值图cr_bw进行图像滤波处理,以去除噪音信号;
[0044]
p4-2,对完成图像去除噪音处理的二值图cr_bw计算梯度的幅值和方向;
[0045]
p4-3,对梯度幅值进行非极大抑制;
[0046]
p4-4,用双阈值算法检测和连接边缘。
[0047]
进一步的,所述p4-1的对二值图cr_bw进行图像滤波处理,其具体处理方法为:
[0048]
p4-1-1,确定适当的滤波模板,包括其尺寸大小,标准差系数;
[0049]
p4-1-2,用上述滤波模板生成滤波掩膜矩阵;
[0050]
p4-1-3,用滤波掩膜矩阵和二值图cr_bw图像矩阵做卷积计算:
[0051]

首先保持行不变,列变化,在水平方向上做卷积运算;
[0052]

接着在上述得到的结果上,保持列不边,行变化,在竖直方向上做卷积运算;
[0053]
p4-1-4,去除卷积计算后二值图cr_bw图像矩阵中超出峰值上限的非正常元素值,及得到过滤掉图像中单一或孤立块的噪音信号的平滑度更高的二值图cr_bw。
[0054]
进一步的,所述p4-2的计算cr_bw图像中每个像素点的梯度,梯度幅值和方向的处理过程为:
[0055]
p4-2-1,建立如下与cr_bw图像矩阵相同尺寸的三个零值矩阵:
[0056]

x方向梯度值矩阵ix(x,y)
[0057]

y方向梯度值矩阵iy(x,y)
[0058]

目标图像矩阵的梯度幅值矩阵m(x,y)
[0059]
p4-2-2,计算cr_bw图像中每个像素点的梯度,计算方法参见如下表达式:
[0060]
cr_bw(x,y)元素的x方向梯度:ix(x,y)=i(x 1,y)-i(x-1,y)
[0061]
cr_bw(x,y)元素的y方向梯度:iy(x,y)=i(x,y 1)-i(x,y-1)
[0062]
p4-2-3,计算cr_bw图像中每个像素点的梯度幅值m,计算方法参见如下表达式:
[0063]
cr_bw(x,y)元素的梯度幅值
[0064]
p4-2-4,计算cr_bw图像中每个像素点的梯度方向角θ,计算方法参见如下表达式:
[0065]
cr_bw(x,y)元素的梯度方向角θ(x,y)=arctan((iy(x,y),ix(x,y))。
[0066]
进一步的,所述p4-3的对二值图cr_bw图进行非最大值抑制,其具体处理方法为:
[0067]
p4-3-1,建立与cr_bw图像矩阵相同尺寸的零值矩阵k(x,y);
[0068]
p4-3-2,循环遍历读取梯度幅值矩阵m(x,y)所有像素,判断当前像素的梯度值是否为0;
[0069]
p4-3-3,如果梯度幅值矩阵m(x,y)当前像素梯度值为0,则赋值k(x,y)对应像素为0;
[0070]
p4-3-4,如果梯度幅值矩阵m(x,y)当前像素梯度值不为0,则梯度幅值矩阵m(x,y)当前像素梯度值与邻近像素的x梯度,y梯度比较,筛选出最大值的像素赋予m(x,y),并将其余较小值的像素赋值0;
[0071]
p4-3-5,筛选出最大值的像素值赋值k(x,y)当前像素,直至遍历所有像素,得到非最大值抑制处理结果k(x,y)。
[0072]
进一步的,所述p4-4的用双阈值算法检测和连接边缘,其具体处理方法为:
[0073]
3,根据图像选取合适的高阈值和低阈值;
[0074]
4,循环遍历前述非最大值抑制后的二值图cr_bw图所有像素;
[0075]
3,如果当前像素的梯度值高于高阈值,则保留;
[0076]
4,如果当前像素的梯度值低于低阈值,则舍弃;
[0077]
5,如果当前像素的梯度值介于高低阈值之间,则从邻近像素寻找像素梯度值,如果存在像素梯度值高于高阈值,则保留,如果没有,则舍弃。
[0078]
进一步的,所述p5的过滤提取瞳孔边界圆数据的处理方法为:从边缘检测图cr_edge中过滤提取全部圆拟合数据,逐一计算形成这些圆拟合的圆心坐标和半径长为元素的数组,从该数组过滤提取符合条件的虹膜瞳孔定位结果,输出其中心点坐标及半径。
[0079]
本发明的有益效果是:
[0080]
本发明的二值图cr_bw图中的瞳孔十分突出,且大多时候图中只有这样一个与瞳孔对应的圆形,该圆的数据过滤提取十分简单快捷。和传统虹膜内圆提取时的大量“圆”数据计算过滤相比,处理效率有显著的提高。
附图说明
[0081]
图1为本发明彩色虹膜识别的瞳孔快速定位方法流程图;
[0082]
图2为本发明彩色虹膜图像原始输入实例示意图;
[0083]
图3为本发明将彩色虹膜图像转换到ycbcr色彩空间的结果示意图;
[0084]
图4为本发明从ycbcr色彩空间抽取的cr分量结果示意图;
[0085]
图5为本发明cr分量图的二值化结果示意图;
[0086]
图6为本发明cr分量图边缘检测计算的处理流程示意图;
[0087]
图7为本发明cr分量图边缘检测结果示意图;
[0088]
图8为本发明彩色虹膜识别对二值图cr_bw图进行图像滤波处理的处理流程示意图;
[0089]
图9为本发明是本发明图像滤波处理的滤波模板示意图;
[0090]
图10为本发明图像滤波处理中图像矩阵与滤波模板的卷积计算方法示意图;
[0091]
图11为本发明图像滤波处理中对二值图cr_bw图进行图像滤波处理输出结果示意图;
[0092]
图12为本发明对二值图cr_bw图进行梯度幅值和方向检测的处理流程示意图;
[0093]
图13为本发明对二值图cr_bw图进行梯度幅值和方向检测的处理结果示意图;
[0094]
图14为本发明对二值图cr_bw图进行非最大值抑制的处理流程示意图;
[0095]
图15为本发明对二值图cr_bw图进行非最大值抑制的处理结果示意图;
[0096]
图16为本发明瞳孔定位结果示意图。
具体实施方式
[0097]
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明作进一步的详细说明。本发明的示意性实施方式及其说明仅用于解释本发明,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
[0098]
实施例1:图1所示为本发明彩色虹膜识别的瞳孔快速定位方法的处理流程图。如图1所示,本发明彩色虹膜识别的瞳孔快速定位方法,所述方法包括以下处理步骤:
[0099]
p1,将彩色虹膜图像转换为ycbcr色彩空间图像;
[0100]
p2,从ycbcr色彩空间图像分离出其中的cr分量图,得到cr图;
[0101]
p3,将cr图做二值化转换,得到边缘清晰度较高的二值图cr_bw图;
[0102]
p4,对cr_bw图进行边缘检测,得到边缘检测图cr_edge;
[0103]
p5,从边缘检测图cr_edge中过滤提取全部圆拟合数据,过滤提取虹膜内圆数据:瞳孔的中心点坐标及半径。
[0104]
实施例2:参见图2和图3,图2为彩色虹膜图像原始输入实例示意图,图3为将图2所示的彩色虹膜图像转换到ycbcr色彩空间的结果示意图。如图2所示,本发明的输入为彩色虹膜图像,本实施例中,该图像为目前市面广泛应用的普通智能手机所摄,拍摄时施加了适当的可见光光源的辅助照射。如图3所示,将如图2所示的彩色虹膜图像转换到ycbcr色彩空间的结果图。ycbcr是色彩空间的一种,常用于数字摄影系统中。ycbcr色彩空间的图像由三个分量组成,包括y分量、cb分量、cr分量。其中,y为颜色的亮度(luma)分量,cb为蓝色的浓度偏移量分量,cr则为红色的浓度偏移量分量。
[0105]
实施例3:图4所示为本发明从如图3所示的ycbcr色彩空间图中抽取其cr分量,即是ycbcr色彩空间图像中抽取的红色的浓度偏移量分量所形成的结果示意图。
[0106]
实施例4:图5所示为本发明用如图4所示的cr分量图进行二值化转换后得到的边缘清晰的二值图。如图5所示,经过二值化转换,所得到的的二值图中展现出非常清晰的“瞳孔”图形,而瞳孔以外的其他噪音信号基本被消除了。
[0107]
实施例5:参见图6和图7,是本发明对如图5所示的二值图cr_bw图进行边缘检测计算的处理流程以及处理结果示意图。图6是本发明对如图5所示的二值图cr_bw图进行边缘检测计算的处理流程示意图,图7是本发明对如图5所示的二值图cr_bw图进行边缘检测计算的处理结果示意图。由于如图5所示的二值图已经过滤掉了绝大部分瞳孔以外的噪音图形,因此,边缘检测结果也非常简单清晰。对二值图cr_bw图的边缘检测的方法包括以下过程:
[0108]
p4-1,对二值图cr_bw进行图像滤波处理,以过滤掉噪音信号;
[0109]
p4-2,对完成图像滤波处理的二值图cr_bw计算梯度的幅值和方向;
[0110]
p4-3,对梯度幅值进行非极大抑制;
[0111]
p4-4,用双阈值算法检测和连接边缘。
[0112]
实施例6:参见图8,图9,图10和图11。图8所示是本发明对如图5所示的二值图cr_bw图进行图像滤波处理的处理流程示意图,图9所示是本发明滤波模板示意图,图10所示是本发明图像滤波处理中图像矩阵与滤波模板的卷积计算方法示意图,图11所示是本发明图像滤波处理中二值图cr_bw图进行图像滤波处理输出结果示意图。图像滤波处理,也叫平滑滤波处理,其作用有二:一是图像平滑,二是消除图像噪音。本实施例中,图像滤波处理的主要目的是去除图像噪音。彩色虹膜图像的二值图cr_bw中,由于图像本身原因,以及经过前述彩色虹膜图像转换为ycbcr色彩空间,将cr分量图做二值化转换等转换过程后,图像中瞳孔内以及其周围还会存在一些诸如小斑点乃至孤立像素类的非目标类的对象,对于这类对象,将视为需要过滤掉的图像噪音,处理不好将妨碍后面处理过程的精确度及结果的质量。
处理的基本思路是:引入一滤波掩膜模板,用该滤波模板与滤波图像做矩阵的卷积运算,既能消除图像噪音信号,又能起到图像增强图像边缘清晰的作用。所述p4-1的对二值图cr_bw进行图像滤波处理,其具体处理方法为:
[0113]
第一步,确定适当的滤波掩膜模板,包括其尺寸大小,标准差系数。滤波掩膜模板为一矩阵,本实施例中,滤波掩膜模板矩阵采用3*3矩阵。
[0114]
第二步,用上述滤波掩膜模板作为滤波掩膜矩阵。本实施例中,滤波掩膜模板采用的滤波掩膜模板参见图9所示,为如下所示3*3的矩阵:
[0115]
[(x-1,y-1);(x-1,y);(x-1,y 1);
[0116]
(x,y-1);(x,y);(x,y 1);
[0117]
(x 1,y-1);(x 1,y);(x 1,y 1)]
[0118]
=[0.075,0.124,0.075;
[0119]
0.124,0.204,0.124;
[0120]
0.075,0.124,0.075;]
[0121]
第三步,用滤波掩膜矩阵和二值图cr_bw图像矩阵做卷积计算。如图9所示,为本发明的卷积计算方法示意图。其计算方法参见如下表达式:
[0122]
(x,y)=(x-1,y-1)*(x-1,y-1) (x-1,y)*(x-1,y)*(x-1,y 1)*(x-1,y 1)
[0123]
(x,y-1)*(x,y-1) (x,y)*(x,y)*(x,y 1)*(x,y 1)
[0124]
(x 1,y-1)*(x 1,y-1) (x 1,y)*(x 1,y)*(x 1,y 1)*(x 1,y 1)
[0125]
如图9所示,本实施例中,cr_bw(x,y)=cr_bw(3,3)像素的灰度值为38,参照如下表达式计算,该像素的灰度值做卷积运算后的值改变为33:
[0126]
cr_bw(3,3)=35*0.075 36*0.124 31*0.075
[0127]
31*0.124 38*0.204 28*0.124
[0128]
31*0.075 34*0.124 21*0.075
[0129]
=33
[0130]
其卷积计算过程为:
[0131]

首先保持行不变,列变化,在水平方向上做该行所有矩阵元素的卷积运算;
[0132]

改变行号,继续

步的卷积运算,直至遍历所有行的卷积运算;
[0133]
第四步,去除卷积计算后二值图cr_bw图像矩阵中超出峰值上限的非正常元素值,即得到去除图像噪音信号且虹膜瞳孔图像边缘梯度更高的二值图cr_bw。
[0134]
实施例7:参见图12和图13。图12所示是本发明对如图11所示的二值图cr_bw图进行梯度幅值和方向检测的处理流程示意图,图13所示是本发明对如图11所示的二值图cr_bw图进行梯度幅值和方向检测的处理结果示意图。在图像识别中,图像的梯度方向是函数f(x,y)变化最快的方向,当图像中存在边缘时,就会有较大的梯度值,相反,当图像中有比较平滑的部分时,灰度值变化较小,则相应的梯度也较小。本实施例中,计算cr_bw图像中每个像素点的梯度,梯度幅值和方向的处理过程为:
[0135]
第一步,建立如下与cr_bw图像矩阵相同尺寸的三个零值矩阵:
[0136]

x方向梯度值矩阵ix(x,y)
[0137]

y方向梯度值矩阵iy(x,y)
[0138]

目标图像矩阵的梯度幅值矩阵m(x,y)
[0139]
第二步,计算cr_bw图像中每个像素点的梯度,计算方法参见如下表达式:
[0140]
cr_bw(x,y)元素的x方向梯度:ix(x,y)=i(x 1,y)-i(x-1,y)
[0141]
cr_bw(x,y)元素的y方向梯度:iy(x,y)=i(x,y 1)-i(x,y-1)
[0142]
第三步,计算cr_bw图像中每个像素点的梯度幅值m,计算方法参见如下表达式:
[0143]
cr_bw(x,y)元素的梯度幅值
[0144]
第四步,计算cr_bw图像中每个像素点的梯度方向角θ,计算方法参见如下表达式:
[0145]
cr_bw(x,y)元素的梯度方向角θ(x,y)=arctan((iy(x,y),ix(x,y))
[0146]
实施例8:参见图14和图15。图14所示是本发明对如图13所示的二值图cr_bw图进行非最大值抑制的处理流程示意图,图15所示是本发明对如图13所示的二值图cr_bw图进行非最大值抑制的处理结果示意图。本实施例中,非极大值抑制处理是在对图像cr_bw进行梯度计算后所生成的梯度矩阵上求取的极大值,并剔除该极大值之外的元素值。基本思路是:以所计算的像素为参考中心,沿该点的梯度方向上考察附近相邻像素点的情况,根据考察结果决定保留具有的最大值的点,而剔除其非最大值的点。对二值图cr_bw图进行非最大值抑制的处理过程为:
[0147]
第一步,建立如下与cr_bw图像矩阵相同尺寸的零值矩阵k(x,y):
[0148]
第二步,循环遍历读取梯度幅值矩阵m(x,y)所有像素,判断当前像素的梯度值是否为0。
[0149]
第三步,如果梯度幅值矩阵m(x,y)当前像素梯度值为0,则赋值k(x,y)对应像素为0;
[0150]
第四步,如果梯度幅值矩阵m(x,y)当前像素梯度值不为0,则梯度幅值矩阵m(x,y)当前像素梯度值与邻近像素的x梯度,y梯度比较,筛选出最大值的像素=》m(x,y),并将其余较小值的像素赋值0;
[0151]
第五步,筛选出最大值的像素值赋值k(x,y)当前像素,直至遍历所有像素,得到非最大值抑制处理结果k(x,y)。
[0152]
实施例9:图16所示是本发明对如图2所示的彩色虹膜图像完成瞳孔定位计算后的输出结果示意图。如图16所示,利用如图15所示的边缘检测结果数据计算出彩色虹膜图像的瞳孔的定位结果:瞳孔的中心点坐标及半径,由此快捷而准确地定位了彩色虹膜的瞳孔位置。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献