一种基于3D指静脉的特征提取和比对方法及装置
技术领域
本发明属于信息安全中的生物特征识别技术领域,尤其涉及一种基于3D指静脉的特征提取和比对方法及装置。
背景技术
手指静脉识别技术是第二代生物特征识别的代表性技术,它使用近红外光对手指进行照射,手指静脉血管中的血红蛋白对近红外光相比于骨骼肌肉等区域具有更高的吸收率,因此手指静脉血管纹路在指静脉图像中会形成低灰度区域。手指静脉纹路具有唯一性和稳定性,并且位于人体内部,具有高度的安全性和防伪性。因此可以利用指静脉图像进行个人的身份认证。
目前指静脉识别技术都是二维图像识别,而且在采集手指静脉时只用了一只摄像头,这种情况下采集的手指静脉多是片面的,不能很好的表示整个手指静脉的特征;同时在验证过程中,传统方法多为基于二值图的特征比对方法,如中国专利申请CN110348289A公开的一种基于二值图的手指静脉比对方法,包括:采集近红外光下的手指图像;对采集的手指图像进行预处理,以获取对应的手指静脉二值图;采用FAST算法对手指静脉二值图进行特征点提取;采用梯度直方图对提取的特征点进行向量化描述;基于向量化描述的特征点,计算手指静脉二值图与训练库中所有注册图像之间的匹配距离;通过比较手指静脉二值图与所有注册图像的匹配距离,得到识别结果。
上述比对方法对手指放置姿势要求特别高,特别是在验证时,手指稍微旋转一点,就会导致识别率特别低,有时甚至无法识别。
发明内容
本发明所要解决的技术问题提供一种基于3D指静脉的特征提取和比对方法及装置,以解决传统指静脉比对方法对手指放置姿势要求高和识别率的问题。
为了解决上述技术问题,本发明提供的技术方案为:
本发明涉及一种基于3D指静脉的特征提取和比对方法,其包括以下步骤:
1)采用3D采集装置采集手指的注册指静脉图像和待测指静脉图像, 3D采集装置包括位于手指下方的第一摄像头、位于手指侧方的第二摄像头和位于手指前端的第三摄像头;第一摄像头和第二摄像头各采集一张图像,第三摄像头采集多张不同焦距的图像;
2)对采集到的指静脉图像依次进行边缘检测、膨胀、细化和去毛刺处理,得到手指静脉的细线图;
3)利用手指静脉的细线图进行指静脉图像三维重建;
4)将三维重建之后的指静脉图像进行点云收集,将点云作为对应的手指特征;
5)将待测指静脉图像与注册指静脉图像的手指特征进行比对,计算手指特征的点云的距离,若比对结果小于识别阈值,则验证成功,否则,验证失败。
优选地,步骤1)中采集m根手指,每根手指采集n次,每次第一摄像头和第二摄像头各采集一张图像,第三摄像头采集u张不同焦距的图像,从而总共得到m*n*(2 + u)张图像,其中m为大于200的整数,n为大于6的整数,u为大于5的整数;
所述的特征提取和比对方法还包括步骤4-5)的识别阈值确定步骤,具体包括:
4-5.1)划分注册模板和比对特征,即将每根手指的第一根手指特征作为注册模板,将每根手指剩余的n-1个特征作为比对特征;
4-5.2)采用迭代最近点(ICP,Iterative Closest Point)算法对m根手指进行不同类比对,即采用某根手指的待比对特征与其余手指的注册模板进行比对,计算待比对特征和其余手指注册模板对应的点云的距离,取所有距离中最小距离作为识别阈值。
优选地,步骤1)采集时,将手指置于x-y-z三维空间内,手指指尖指向的方向平行于y轴,第一摄像头采集的图像为image1,位于坐标xy平面上, y方向图像大小为L,x方向图像大小为W;第二摄像头采集的图像为image2,位于yz平面上, y方向图像大小为L,z方向图像大小为H;第三摄像头采集的u张图像为红色image3,位于xz平面上, x方向图像大小为W,z方向图像大小为H。
优选地,所述步骤2)获得手指静脉的细线图的具体步骤包括:
2.1)利用Sobel算子对图像在每个方向进行边缘检测,得到二值图B;
2.2)将二值图B与膨胀卷积因子进行卷积得到膨胀后的二值图Gxy;
2.3)对膨胀后的二值图进行细化;
2.4)对细化后的二值图进行去毛刺,即设置阈值T3,当细化后的二值图的分叉线和孤立线的长度小于等于阈值T3,则删除分叉线和孤立线;否则不做任何操作。
优选地,所述步骤2.1)中边缘检测的计算公式为:
式中,A为待处理图像,T
1为阈值,
为得到的二值图B的像素值;
所述步骤2.2)中将二值图B与膨胀卷积因子进行卷积的公式为:
式中,G
xy为膨胀后的二值图,设置阈值
,如果
大于等于阈值
,则将此像素
的3*3邻域都填充为1,否则此像素的3*3邻域不做任何操作;
所述步骤2.3)中,对膨胀后的二值图进行细化的公式为:
当二值图像素P 1 的3*3邻域满足公式(5)中的4个全部条件的,则删除该二值图像素P 1 ,式中,N(P 1 )是P 1 周围8个相邻点的值的和,T(P 1 )是P 1 周围8个点0、1轮换的次数,P 2 、P 4 、P 6 、P 8 分别为和P 1 相邻的正上方、右边、正下方、左边的点。
优选地,所述步骤3)利用手指静脉的细线图进行指静脉图像三维重建是以y方向为遍历方向,寻找每个y方向平面的点云,具体步骤包括:
3.1)当y=1时,在图像大小为L*W的图像image1上寻找x轴上面为1的像素,如果找
到a个为1的像素,记录为,
;
3.2)在图像大小为L*H的图像image2上面寻找当y=1时,z轴上面为1的像素,如果
找到b个为1的像素,记录为
;
3.3)在y方向的图像image3上存在
个点,如果在image3上面对应的这
的
点的值为1,则保存此点,否则不保存,进而在y=1的平面上就找到
个点,
,图像
image3通过式(6)计算选取:
式中,
L为指静脉图像在y方向的大小,
为在y方向采集的图像张数,
i为大于等于
1且小于等于
的整数;
3.4)改变y的取值,y的取值每次增加1,重复步骤3.1)~3.3),直至y=
L,在y方向的
L
个平面上分别找出
个点云。
优选地,所述步骤4)将三维重建之后的指静脉图进行点云收集,将点云作为对应
的手指特征的具体步骤是:将
个点集聚集到一起,得到k个点组
成的点云,作为此手指的特征。
优选地,所述步骤4-5.2)具体包括:
4-5.2.1)设置阈值T,对注册模板点云中的任意一点,寻找待比对特征点云中和此点距离小于阈值T的点,这2个点称为对应点,从而找到num对对应点集,记作:
为注册模板点云中找到的对应点集,
为待比对特征点云中找到的对应点集,
~
为注册模板特征点云中的
个点,
~
为待比对特征点云中的
个点;
4-5.2.2)通过最小二乘法,进行注册模板点云和待比对特征点云点集的配准,使公式(8)最小,
式中,
为配准最小值,
为旋转矩阵,
为平移矩阵,
为式(7)选择出来的
对应点集对数,
i为大于等于1且小于等于
的整数,
和
为式(7)选择出来的点集;
旋转矩阵和平移矩阵的求解步骤为:
式中,
i为大于等于1且小于等于
的整数,
为式(7)选择出来的点
进
行求和并求平均的结果,
为式(7)选择出来的点
进行求和并求平均的结果;
4-5.2.2.2)计算两组点和质心的差值
和
,公式为:
式中,
和
为式(7)选择出来的点,
i为大于等于1且小于等于
的整数,
和
为式(9)计算出来的结果;
4-5.2.2.3)计算得到旋转矩阵
和平移矩阵
,计算公式为:
式中,
和
为式(8)中需要求解的旋转矩阵和平移矩阵,
和
为式(9)计算出来
的结果,
矩阵为式(12)通过奇异值分解SVD方法分解得到,式(12)如下:
式中,
和
为式(10)计算出来的结果
i为1到
的整数;
通过以上计算,即可计算出旋转矩阵
和平移矩阵
,从而计算出
;
4-5.2.3)重复步骤4-5.2.1)和4-5.2.2),通过多次迭代,找到众多
中的最小
值,记作
,
为此次比对结果;
4-5.2.4)识别阈值
的确定,通过m根手指不同类之间进行比对,每次比对重复
4-5.2.1)、4-5.2.2)、4-5.2.3),得到
个
结果,找到这些结果的最小值
作为阈值
;
4-5.2.5)识别率跑批测试,将m根手指同类之间进行比对,每次比对重复4-
5.2.1)、4-5.2.2)、4-5.2.3),得到
个
比对结果,如果比对结果小于阈
值
,则成功;否则,则失败;识别率=成功的个数/(
)。
本发明还涉及一种基于3D指静脉的特征提取和比对装置,其包括:
1)采集模块,采用3D采集装置采集手指的注册指静脉图像和待测指静脉图像, 3D采集装置包括位于手指下方的第一摄像头、位于手指侧方的第二摄像头和位于手指前端的第三摄像头;第一摄像头和第二摄像头各采集一张图像,第三摄像头采集多张不同焦距的图像;
2)图像处理模块,用于对采集到的所有指静脉图像依次进行边缘检测、膨胀、细化和去毛刺处理,得到手指静脉的细线图;
3)三维重建模块,利用手指静脉的细线图进行指静脉图像三维重建;
4)手指特征提取模块,用于将三维重建之后的指静脉图进行点云收集,将点云作为对应的手指特征;
4-5)识别阈值确定模块,将手指特征提取模块得到的手指特征划分为注册模板和待比对特征,采用迭代最近点(ICP,Iterative Closest Point)算法对m根手指进行不同类比对,即采用某根手指的待比对特征与其余手指的注册模板进行比对,计算待比对特征和其余手指注册模板对应的点云的距离,取所有距离的最小距离作为识别阈值;
5)比对模块,将待测指静脉图像与注册指静脉图像的手指特征进行比对,计算手指特征的点云的距离,若比对结果小于识别阈值,则验证成功,否则,验证失败。
采用本发明提供的技术方案,与现有技术相比,具有如下有益效果:
1、本发明在采集手指装置上进行了创新,即采用x-y-z方向3个摄像头进行手指静脉图像的采集,同时,在y方向上的摄像头可以通过调节焦距,采集多张图片用于3D指静脉重建,用此设备采集的图片可以很全面的表示指静脉信息。
2、本发明在特征提取上进行了创新,利用三维重建提取指静脉特征,对手指旋转性能有很强的鲁棒性。
3、本发明在特征比对上进行了创新,即采用基于3D点云的迭代最近点(ICP,Iterative Closest Point)特征比对方法,此方法比对的指静脉特征非常全面,验证时,手指怎么放置都能很大程度上验证成功,从而提高了识别率,也提高了用户的体验效果。
附图说明
图1是3D指静脉的特征提取和识别的流程图;
图2是指静脉3D采集装置示意图;
图3是每根手指采集的(2+u)张图像示意图;
图4是每个y方向平面进行3D重建示意图;
图5指静脉图像三维重建结果示意图;
图6为3D指静脉的特征提取和比对装置的结构框图。
具体实施方式
为进一步了解本发明的内容,结合实施例对本发明作详细描述,以下实施例用于说明本发明,但不用来限制本发明的范围。
实施例1
参照附图1所示,本发明涉及的基于3D指静脉的特征提取和比对方法,其包括以下步骤:
1)准备一台在x-y-z方向上各有一个摄像头的指静脉3D采集装置,该3D采集装置为在x,y,z方向上各有一个摄像头,如图2所示,手指放上去以后,手指指尖指向的方向平行于y轴,手指下方有一个第一摄像头(摄像头1),手指左侧有一个第二摄像头(摄像头2),手指前端也放有一个第三摄像头(摄像头3),红外灯位于手指上方,当手指放入采集装置时,红外灯亮,手指下方和手指左边的摄像头各拍一张指静脉图,手指顶端的摄像头通过自动变焦,拍摄u个不同焦距的图像,通过该3D采集装置采集m根手指的指静脉图像,m>200,每根手指采集n次,n>6,每次第一摄像头和第二摄像头各采集一张图像,第三摄像头采集u张不同焦距的图像,u为大于5的整数。
每次采集的(2+u)张指静脉图像如图3所示,位于手指下方的第一摄像头采集的图像为image1(即z方向的图像),位于坐标xy平面上,y方向图像大小为L,x方向图像大小为W;位于手指左边的摄像头采集的图像为image2(即x方向的图像),位于yz平面上, y方向图像大小为L,z方向图像大小为H;位于手指指尖前端的摄像头采集的u张图像为红色image3(即y方向的图像),位于xz平面上,x方向图像大小为W,z方向图像大小为H,此实施例中,u=10,L=500,W=200,H=200;此实施例中采集手指的数量m=500,每根手指采集n次,n=10,总共得到m*n*(2 + u)张图像。
2)对采集到的所有指静脉图像依次进行边缘检测、膨胀、细化和去毛刺处理,得到手指静脉的细线图,1为细线,0为背景,具体步骤如下:
2.1)利用Sobel算子对图像在每个方向进行边缘检测,得到二值图B,边缘检测的计算公式为:
式中,A为待处理图像,T
1为阈值,
为得到的二值图B的像素值,本实施例中T
1=
32;
2.2)将二值图B与膨胀卷积因子进行卷积得到膨胀后的二值图Gxy,公式为:
式中,G
xy为膨胀后的二值图,设置阈值
,如果
大于等于阈值
,本实施例中
=2,则将此像素的3*3邻域都填充为1,否则此像素的3*3邻域不做任何操作;
2.3)对膨胀后的二值图进行细化,细化的公式为:
当二值图像素P 1 的3*3邻域满足公式(5)中的4个全部条件的,则删除该二值图像素P 1 ,式中,N(P 1 )是P 1 周围8个相邻点的值的和,T(P 1 )是P 1 周围8个点0、1轮换的次数,P 2 、P 4 、P 6 、P 8 分别为和P 1 相邻的正上方、右边、正下方、左边的点;
2.4)对细化后的二值图进行去毛刺,即设置阈值T3,本实施例中,T3=10,当细化后的二值图的分叉线和孤立线的长度小于等于阈值T3,则删除分叉线和孤立线;否则不做任何操作。
3)利用手指静脉的细线图进行指静脉图像三维重建,该步骤是以y方向为遍历方向,寻找每个y方向平面的点云,具体步骤包括:
3.1)当y=1时,在图像大小为500*200的图像image1上寻找x轴上面为1的像素,如
果找到a个为1的像素,记录为,
;
3.2)在图像大小为500*200的图像image2上面寻找当y=1时,z轴上面为1的像素,
如果找到b个为1的像素,记录为
;
3.3)在y方向的图像(图像大小为200*200的图像image3)上存在
个点,如图4
所示,如果在image3上面对应的这
的点的值为1,则保存此点,否则不保存,进而在y=1
的平面上就找到
个点,
,因为image3图像有u张,图像image3通过式(6)计算选
取:
式中,
L为指静脉图像在y方向的大小,
i为大于等于1且小于等于
的整数;
3.4)改变y的取值,y的取值每次增加1,重复步骤3.1)~3.3),直至y=
L,在y方向的
L
个平面上分别找出
个点云。指静脉图像三维重建结果示意图如
图5所示。
4)将三维重建之后的指静脉图进行点云收集,将点云作为对应的手指特征,具体
步骤是:将
个点集聚集到一起,得到k个点组成的点云,作为此手
指的特征,进而可以得到500*10=5000个手指特征。
4-5.1)划分注册模板和比对特征,即将每根手指的第一个手指特征作为注册模板,总共500个模板,将每根手指剩余的n-1个特征作为待比对特征,总共500*9=4500个待比对特征。
4-5.2)采用迭代最近点(ICP,Iterative Closest Point)算法对500根手指进行
不同类比对,采用某根手指的待比对特征与其余手指的注册模板进行比对,计算待比对特
征和其余手指注册模板对应的点云的距离,取所有距离的最小距离作为识别阈值
,即第
i根手指的9个比对特征和第i+1根到第500根手指的注册模板进行比对,
;得到
=1122750个结果,找到这些结果的最小值作为阈值
,此实施例中
=1.59,
迭代最近点ICP(Iterative Closest Point)算法具体步骤为:
4-5.2.1)设置阈值T,本实施例中,T=20,对注册模板点云中的任意一点,寻找待比对特征点云中和此点距离小于阈值T的点,这2个点称为对应点,从而找到num对对应点集,记作:
为注册模板点云中找到的对应点集,
为待比对特征点云中找到的对应点集,
~
为注册模板特征点云中的
个点,
~
为待比对特征点云中的
个点;
4-5.2.2)通过最小二乘法,进行注册模板点云和待比对特征点云点集的配准,使公式(8)最小,
式中,
为配准最小值,
为旋转矩阵,
为平移矩阵,
为式(7)选择出来的
对应点集对数,
i为大于等于1且小于等于
的整数,
和
为式(7)选择出来的点集;
旋转矩阵和平移矩阵的求解步骤为:
式中,
i为大于等于1且小于等于
的整数,
为式(7)选择出来的点
进
行求和并求平均的结果,
为式(7)选择出来的点
进行求和并求平均的结果;
4-5.2.2.2)计算两组点和质心的差值
和
,公式为:
式中,
和
为式(7)选择出来的点,
i为大于等于1且小于等于
的整数,
和
为式(9)计算出来的结果;
4-5.2.2.3)计算得到旋转矩阵
和平移矩阵
,计算公式为:
式中,
和
为式(8)中需要求解的旋转矩阵和平移矩阵,
和
为式(9)计算出来
的结果,
矩阵为式(12)通过奇异值分解SVD方法分解得到,式(12)如下:
式中,
和
为式(10)计算出来的结果
i为大于等于1且小于等于
的整数;
通过以上计算,即可计算出旋转矩阵
和平移矩阵
,从而计算出
;
4-5.2.3)重复步骤4-5.2.1)和4-5.2.2),通过多次迭代,找到众多
中的最小
值,记作
,
为此次比对结果。
5)将待测指静脉图像与注册指静脉图像的手指特征进行比对,计算手指特征的点云的距离,若比对结果小于识别阈值,则验证成功,否则,验证失败。
实验例1
识别率跑批测试,利用迭代最近点(ICP,Iterative Closest Point)比对算法,具
体方法详见步骤4-5.2.1)、4-5.2.2)、4-5.2.3),将500根手指进行同类之间比对,即第i根
手指的第j个比对特征和第i根手指的注册模板进行比对,其中,
,
;然后
得到
=4500个
比对结果,如果比对结果小于识别阈值
=1.59,则成功;否
则,则失败;此实施例中,识别率=成功的个数/(
)=4496/4500=99.9%。本实施例
还测试了一种基于二值图的二维图像指静脉比对方法,具体步骤在此不在赘述,得到识别
率为92.13%,所以,本发明特征提取和比对方法比传统方法识别率提高了7.77%。
实验例2
将此比对方法应用到真实场景,先注册手指,然后放置手指进行验证,小于识别阈
值
=1.59,则验证成功;否则,验证失败。此实施例中,真实场景测试,成功率为99.5%。同
时本实施例也测试了一种基于二值图的二维图像指静脉比对方法的真实场景测试,具体步
骤不再赘述,成功率为91.04%,所以,本发明特征提取和比对方法比传统方法在真实场景中
提高了8.46%。
实施例2
参照附图6所示,本实施例涉及一种基于3D指静脉的特征提取和比对装置,其包括:
1)采集模块,采用3D采集装置采集手指的注册指静脉图像和待测指静脉图像, 3D采集装置包括位于手指下方的第一摄像头、位于手指侧方的第二摄像头和位于手指前端的第三摄像头;第一摄像头和第二摄像头各采集一张图像,第三摄像头采集多张不同焦距的图像;采集模块用于实现实施例1步骤1)的功能。
2)图像处理模块,用于对采集到的所有指静脉图像依次进行边缘检测、膨胀、细化和去毛刺处理,得到手指静脉的细线图;图像处理模块用于实现实施例1步骤2)的功能。
3)三维重建模块,利用手指静脉的细线图进行指静脉图像三维重建;三维重建模块用于实现实施例1步骤3)的功能。
4)手指特征提取模块,用于将三维重建之后的指静脉图进行点云收集,将点云作为对应的手指特征;手指特征提取模块用于实现实施例1步骤4)的功能。
4-5)识别阈值确定模块,将手指特征提取模块得到的手指特征划分为注册模板和待比对特征,采用迭代最近点(ICP,Iterative Closest Point)算法对m根手指进行不同类比对,即采用某根手指的待比对特征与其余手指的注册模板进行比对,计算待比对特征和其余手指各注册模板对应的点云的距离,取所有距离中最小距离作为识别阈值;识别阈值确定模块用于实现实施例1步骤4-5)的功能。
5)比对模块,将待测指静脉图像与注册指静脉图像的手指特征进行比对,计算手指特征的点云的距离,若比对结果小于识别阈值,则验证成功,否则,验证失败。比对模块用于实现实施例1步骤5)的功能。
显然,本实施例的3D指静脉的特征提取和比对装置可以作为上述实施例1的3D指静脉的特征提取和比对方法的执行主体,因此能够实现3D指静脉的特征提取和比对方法所实现的功能。由于原理相同,本文不再赘述。
以上结合实施例对本发明进行了详细说明,但所述内容仅为本发明的较佳实施例,不能被认为用于限定本发明的实施范围。凡依本发明申请范围所作的均等变化与改进等,均应仍属于本发明的专利涵盖范围之内。