一种静脉识别算法移植方法及装置与流程

文档序号:30385483发布日期:2022-06-11 08:36阅读:116来源:国知局
一种静脉识别算法移植方法及装置与流程

1.本发明涉及静脉识别及处理技术领域,尤其涉及一种静脉识别算法移植方法及装置。


背景技术:

2.静脉识别是一种新兴的红外生物识别技术,它是根据人体内静脉血液中的血红蛋白吸收近红外或者人体辐射远红外线的特性,用红外相机拍摄体内(手背、指背、指腹、手掌、手腕)的静脉分布图,现有技术一般是通过图像归一化、去噪等预处理步骤后,再进行滤波增强与静脉纹路分割,然后提取体内静脉特征,再与预先注册到数据库上的静脉特征数据进行匹配,最后以此确定个人身份。
3.静脉识别设备使用前,需要向静脉识别设备中植入算法以用于识别程序的运行,算法移植的方法如中国专利cn108614703b公开的基于嵌入式平台的算法移植系统及其算法移植方法,其中所述算法移植系统包括一获取评估单元,用于获取评估算法;一算法流程调整单元,用于调整算法流程;一多核分配单元,用于对所述算法流程分配多核进行处理;一框架整合单元,用于将经过多核处理后的所述算法流程进行框架整合;和一录入单元,用于将所述算法录入嵌入式平台,从而将基于pc端设计的所述算法移植于所述嵌入式平台。
4.然而采用传统的算法移植方法时,当应用程序使用静态链接库的过程中,每个应用程序要将库代码作为独立的副本链接到可执行镜像中,导致内存巨大,最终导致识别过程中的运算速度下降。


技术实现要素:

5.本发明的目的在于提供一种静脉识别算法移植方法及装置,以解决现有技术中静脉的灰度区域增强不明显导致识别成功率下降、静脉图像预处理算法和静脉识别算法模型占用系统内存大导致运算速度慢、设备成本高等问题。
6.为了达到目的,本发明提供的技术方案为:本发明涉及一种静脉识别算法移植方法,其包括以下步骤:1)构建待移植的静脉图像预处理算法;2)构建待移植的静脉识别算法模型;3)基于静脉图像预处理算法和静脉识别算法模型生成动态链接库,将动态链接库编译成库文件,基于该库文件和静脉识别算法中的逻辑代码编译生成可执行程序,将可执行程序导入到静脉设备中。
7.优选地,所述的步骤3)具体包括以下步骤:3.1)基于待移植的静脉图像预处理算法和待移植的静脉识别算法模型生成动态链接库;3.2)用交叉编译器将动态链接库编译成库文件;3.3)用交叉编译器将编译后的库文件和静脉识别算法中的逻辑代码编译生成可
执行程序;3.4)将可执行程序导入到静脉设备中执行,对静脉设备进行调试,直至达到目标效果;3.5)将调试好的可执行程序放入根文件系统里,设置系统启动执行,将该文件系统制作成镜像,利用对应芯片的烧录工具烧录到静脉设备里。
8.优选地,所述的步骤1)是基于区域线性变换与高斯同态滤波相结合的灰度不均匀校正方法构建待移植的静脉图像预处理算法的,所构建的静脉图像预处理算法用于将静脉图像处理为符合静脉识别算法模型输入需求的格式,静脉图像预处理算法的计算步骤包括:1.1)对静脉图像进行尺度归一化处理;1.2)对归一化处理的静脉图像进行图像增强处理。
9.优选地,所述的步骤1.1)中是利用插值算法对静脉图像进行缩放进而实现归一化处理;所述的步骤1.2)中是利用区域线性变换与多尺度同态滤波相结合的灰度不均匀校正方法进行图像增强处理的,图像增强处理的具体步骤为:1.2.1)设定归一化处理后的静脉图像为f(x,y),x和y分别为所述静脉图像矩阵的行坐标和列坐标,图像感兴趣灰度范围为[a,b],a和b分别为所述静脉图像感兴趣灰度范围区间的最小灰度值和最大灰度值,按照公式(1)~(3)对尺度归一化处理后的图像进行区域线性变换处理,将图像感兴趣灰度范围扩展至[c,d] ,c和d分别为所述静脉图像感兴趣灰度范围区间进行扩展后的最小灰度值和最大灰度值,得到区域线性变换处理后的静脉图像g(x,y):1.2.2)根据照射-反射模型,对处理后的静脉图像进行对数变换,得到对数变换后的静脉图像:1.2.3)基于进行傅里叶变换,得到:式中,为的傅里叶变换,u和v分别为静脉图像矩阵的行坐标和列坐标x,y经过傅里叶变换得到的变量;1.2.4)使用滤波器对上式进行滤波处理,得到滤波后的频域图像:
1.2.5)基于,进行傅里叶逆变换,得到频率域转换到空间域后的图像:1.2.6)基于的指数计算单尺度图像:1.2.7)将多个尺度的同态滤波的输出结果进行加权求和,得到最终的图像:式中,n为多尺度的个数,取3~5个,为不同的单尺度图像,是经过区域线性变换后的图像,是的权值,取值范围为大于0且小于1,为每个单尺度图像的权值,且需满足: 。
[0010]
优选地,所述的步骤2)所构建的待移植的静脉识别算法模型用于利用处理后的静脉图像输出识别结果;所构建的待移植的静脉识别算法模型的静脉识别计算步骤包括:2.1)对预处理后的静脉图像进行特征提取;2.2)对特征提取后的静脉图像进行特征比对。
[0011]
优选地,所述的步骤2.1)中对预处理后的静脉图像进行特征提取的具体步骤包括:2.1.1)遍历整幅预处理后的静脉图像f(x,y),将图像按照像素点进行拆分,得到四个拆分后的图像f1(x,y)、f2(x,y)、f3(x,y)、f4(x,y);2.1.2)使用双边滤波分别对拆分后的四个图像分别进行滤波处理;2.1.3)将滤波处理后的四个静脉图像分别进行地形特征线提取;2.1.4)对四个地形特征线图像进行特征编码,得到四个静脉特征图像,再将四个静脉特征融合成一个大特征图像用于后续比对。
[0012]
优选地,所述的步骤2.1.3)中地形特征线提取是利用特征点所在地表在不同方向上表现出的凹凸特性,借助 3
×
3 的移动窗口,计算每个网格点的一阶、二阶导数值,通过导数的正负性判断特征点所属类型,导数为正值,则判定为山脊点,导数为负值,则判定为山谷点,连接所有山脊点形成山脊线,连接所有山谷点形成山谷线,即为地形特征线;所述的步骤2.1.4)中对地形特征线图像进行特征编码是利用x方向和y方向上关于高程z的二阶导数的正负组合关系进行特征编码,编码方式为:若满足以下条件:
则设置该点灰度值为0,即;若满足以下条件:则设置该点灰度值为1,即;若满足以下条件:则设置该点灰度值为2,即;若满足以下条件:则设置该点灰度值为3,即;若满足以下条件:则设置该点灰度值为4,即;若满足以下条件:则设置该点灰度值为5,即;若满足以下条件:则设置该点灰度值为6,即;若满足以下条件:
则设置该点灰度值为7,即;式中,为分别表示在x方向和y方向上关于高程z的二阶导数。
[0013]
优选地,所述的2.2)对特征提取后的静脉图像进行特征比对的具体步骤包括:2.2.1)将待匹配特征进行相似度排序,排序的具体步骤为:2.2.1.1)若待匹配的特征个数为1,则跳过步骤2.2.1),直接进入步骤2.2.2)中,若匹配的特征个数大于1,则进入步骤2.2.1.2);2.2.1.2)用双线性插值法将待匹配图像矩阵和模板特征都缩放到原图的四分之一;2.2.1.3)计算经过缩放后图像特征矩阵的结构相似度系数来表示静脉图像相似度:式中,为计算出的相似度值,和分别表示两幅静脉特征矩阵,和分别表示特征矩阵和的灰度平均值,和分别表示特征矩阵和的灰度标准差,表示两个特征矩阵和的协方差,和分别为常数,取值范围为大于0且小于等于0.1;2.2.1.4)根据相似度值大小对待匹配特征进行排序;2.2.2)选取排名靠前的n个待匹配特征和模板特征进行最后的精确比对,具体步骤为:2.2.2.1)将待匹配特征和模板特征进行滑动窗口相似度计算,计算公式为:式中:为计算后的比对值,为步长,为窗口最大行数,为窗口行数,为窗口最大列数,为窗口列数,为窗口行方向的步长,为窗口列方向的步长,为待匹配的特征,为行列坐标,为待匹配特征与模板特征的相似度计算表,待匹配特征与模板特征的相似度计算表表示为:其中,为相似度计算表的模型参数,相似度计算表需满足;
2.2.2.2)将待匹配的静脉特征分别旋转0度、
±
2度、
±
4度后与模板特征进行一一匹配,得到多个匹配值,从多个匹配值中选择最小的一个值作为最终两个待匹配特征匹配结果;2.2.2.3)根据滑窗统计计算公式计算出静脉图像类间和类内结果,得到数据曲线,根据曲线确定阈值,根据阈值判断是静脉图像属于同类还是异类。
[0014]
优选地,所述步骤1)和步骤2)构建的待移植的静脉图像预处理算法和待移植的静脉识别算法模型均上传至云端,所述步骤3)从云端提取静脉图像预处理算法和静脉识别算法模型。
[0015]
本发明还涉及一种静脉识别算法移植装置,其包括:图像预处理算法构建模块,用于构建待移植的静脉图像预处理算法;静脉识别算法模型构建模块,用于构建待移植的静脉识别算法模型;移植模块,用于基于静脉图像预处理算法和静脉识别算法模型生成动态链接库,将动态链接库编译成库文件,基于该库文件和静脉识别算法中的逻辑代码编译生成可执行程序,将可执行程序导入到静脉设备中。
[0016]
采用本发明提供的技术方案,与现有技术相比,具有如下有益效果:1.本发明涉及的静脉识别算法移植方法基于静脉图像预处理算法和静脉识别算法模型移植生成动态链接库,将动态链接库编译,用逻辑代码编译生成可执行程序,将可执行程序导入到静脉设备中,使用动态链接库,可以节约系统空间,多个应用程序可以共享单个动态链接库,避免当应用程序使用静态链接库时,每个应用程序要将库代码作为独立的副本链接到可执行镜像中。
[0017]
2.本发明涉及的静脉识别算法移植方法在静脉图像预处理算法和静脉识别算法模型的移植过程中,还将可执行程序导入到静脉设备中执行,对静脉设备进行调试,直至达到目标效果,再将调试好的可执行程序放入根文件系统里,设置系统启动执行,将该文件系统制作成镜像,利用对应芯片的烧录工具烧录到静脉设备里,可以避免将可执行程序直接放入静脉设备中调试,使得操作更加简单。
[0018]
3.本发明涉及的静脉识别算法移植方法中的静脉图像预处理算法是基于区域线性变换与高斯同态滤波相结合的灰度不均匀校正方法构建的,该方法能增强原图各部分的反差,即增强输入图像中静脉的灰度区域,相对抑制那些非静脉的灰度区域,能够对静脉图像增强预处理,可以为后续匹配识别奠定了良好基础。
[0019]
4.本发明涉及的静脉识别算法移植方法所用的预处理算法和静脉识别算法模型占用系统内存少,不寄于任何硬件平台,落地速度快,具有可移植性高的特点;可以将云端中的算法和模型转换后移植至体积较小,成本较低的静脉设备中,可以快速实现大规模量产,也有助于提高静脉识别装置的运算速度。
附图说明
[0020]
图1是静脉识别算法移植方法的流程图;图2是静脉识别算法移植装置的结构框架图。
具体实施方式
[0021]
为进一步了解本发明的内容,结合实施例对本发明作详细描述,以下实施例用于说明本发明,但不用来限制本发明的范围。
[0022]
实施例1参照附图1所示,本发明涉及的静脉识别算法移植方法包括以下步骤:1)基于区域线性变换与高斯同态滤波相结合的灰度不均匀校正方法构建待移植的静脉图像预处理算法,所述的静脉图像预处理算法用于将静脉图像处理为符合静脉识别算法模型输入需求的格式,具体流程包括:1.1)利用插值算法对静脉图像进行缩放进而实现归一化处理;1.2)利用区域线性变换与多尺度同态滤波相结合的灰度不均匀校正方法对归一化处理的静脉图像进行图像增强处理,即包括以下步骤:1.2.1)设定归一化处理后的静脉图像为f(x,y),图像感兴趣灰度范围为[a,b],按照公式(1)~(3)对尺度归一化处理后的图像进行区域线性变换处理,将图像感兴趣灰度范围扩展至[c,d],得到区域线性变换处理后的静脉图像g(x,y):经过处理后,由于变换后静脉图像在区间[0,a]以及区间[b,l]之间的灰度受到压缩,使噪声干扰得到减弱,经近红外拍摄的静脉图像灰度范围为0到255,包括图像感兴趣灰度范围和噪声灰度范围,即把噪声灰度范围尽量的压缩,感兴趣灰度范围进行扩展;本实施例通过区域线性变换进行初步噪声处理,压缩噪声范围,避免后期进行感兴趣区域灰度增强时,噪声同步增强,影响处理结果;1.2.2)根据照射-反射模型,对处理后的静脉图像进行对数变换,得到对数变换后的静脉图像:1.2.3)基于进行傅里叶变换,得到:式中,为的傅里叶变换。
[0023]
1.2.4)使用滤波器对上式进行滤波处理,得到滤波后的频域图像:1.2.5)基于,进行傅里叶逆变换,得到频率域转换到空间域后的图像:
1.2.6)基于的指数计算单尺度图像:1.2.7)将多个尺度的同态滤波的输出结果进行加权求和,得到最终的图像:式中,n为多尺度的个数,一般取3到5个,为不同的单尺度图像,是经过区域线性变换后的图像,是的权值,取值范围为大于0且小于1,为每个单尺度图像的权值,且需满足:。
[0024]
2)构建待移植的静脉识别算法模型,所述的静脉识别算法模型用于利用处理后的静脉图像输出识别结果,其具体步骤包括:2.1)对预处理后的静脉图像进行特征提取,即包括以下步骤:2.1.1)遍历整幅预处理后的静脉图像f(x,y),将图像按照像素点进行拆分,得到四个拆分后的图像f1(x,y)、f2(x,y)、f3(x,y)、f4(x,y) ,拆分后的图像大小为原始图像的四分之一;2.1.2)使用双边滤波分别对拆分后的四个图像分别进行滤波处理,将静脉图像拆分后进行滤波处理,可以减少处理图像的大小,提高运算效率;2.1.3)将滤波处理后的四个静脉图像分别进行地形特征线提取,即利用特征点所在地表在不同方向上表现出的凹凸特性,借助 3
×
3 的移动窗口,计算每个网格点的一阶、二阶导数值,通过导数的正负性判断特征点所属类型,导数为正值,则判定为山脊点,导数为负值,则判定为山谷点,连接所有山脊点形成山脊线,连接所有山谷点形成山谷线,形成地形特征线;本实施例采用栅格数据图像处理的技术提取地形特征,规则格网dem(数字高程模型)数据是一种栅格数据,高程值对应图像灰度值,dem 格网数据可以视为灰度图像,将静脉灰度图像视为dem格网数据,图像灰度值对应于高程值,根据此理论再进行后续操作。
[0025]
2.1.4)对四个地形特征线图像进行特征编码,得到四个静脉特征图像,即利用x方向和y方向上关于高程z的二阶导数的正负组合关系进行特征编码,编码方式为:若满足以下条件:则设置该点灰度值为0,即;若满足以下条件:
则设置该点灰度值为1,即;若满足以下条件:则设置该点灰度值为2,即;若满足以下条件:则设置该点灰度值为3,即;若满足以下条件:则设置该点灰度值为4,即;若满足以下条件:则设置该点灰度值为5,即;若满足以下条件:则设置该点灰度值为6,即;若满足以下条件:则设置该点灰度值为7,即;式中,、为分别表示在x方向和y方向上关于高程z的二阶导数;再将四个静脉特征融合成一个大特征图像用于后续比对;2.2)对特征提取后的静脉图像(即大特征图像)进行特征比对,具体为:2.2.1)将待匹配特征进行相似度排序,排序的具体步骤为:
2.2.1.1)若待匹配的特征个数为1,则跳过步骤2.2.1),直接进入步骤2.2.2)中,若匹配的特征个数大于1,则进入步骤2.2.1.2);2.2.1.2)用双线性插值法将待匹配图像矩阵和模板特征都缩放到原图的四分之一;2.2.1.3)计算经过缩放后图像特征矩阵的结构相似度系数来表示静脉图像相似度:式中,为计算出的相似度值,和分别表示两幅静脉特征矩阵,和分别表示特征矩阵和的灰度平均值,和分别表示特征矩阵和的灰度标准差,表示两个特征矩阵和的协方差,和分别为常数,取值范围为大于0且小于等于0.1;每次计算的时候都从特征矩阵上取一个 n
×
n 的窗口(n一般取3、5、7),然后不断滑动窗口进行计算,最后取平均值作为全局的相似度值;2.2.1.4)根据相似度值大小对待匹配特征进行排序;2.2.2)选取排名靠前的n个待匹配特征和模板特征进行最后的精确比对,(0《n《10,n为整数),具体步骤为:2.2.2.1)将待匹配特征和模板特征进行滑动窗口相似度计算,计算公式为:式中:为计算后的比对值,为步长,为窗口最大行数,为窗口行数,为窗口最大列数,为窗口列数,为窗口行方向的步长,为窗口列方向的步长,为待匹配的特征,行列坐标,为待匹配特征与模板特征的相似度计算表,待匹配特征与模板特征的相似度计算表表示为:其中,为相似度计算表的模型参数,可以根据不同静脉图像库进行相对应设置,相似度计算表需满足;2.2.2.2)将待匹配的静脉特征分别旋转0度、
±
2度、
±
4度后与模板特征进行一一匹配,得到多个匹配值,从多个匹配值中选择最小的一个值作为最终两个待匹配特征匹配结果;
2.2.2.3)根据滑窗统计计算公式计算出静脉图像类间和类内结果,得到数据曲线,根据曲线确定阈值,根据阈值判断是静脉图像属于同类还是异类。
[0026]
3)将静脉图像预处理算法和静脉识别算法模型移植至静脉设备,所述静脉设备包括:摄像头、滤光片、反光镜、红外灯板、触摸传感器touch、中央处理单元cpu,其具体步骤为:3.1)在windows系统下,将待移植的预处理算法和静脉识别算法模型在release模式下生成动态链接库;3.2)在linux系统下,用交叉编译器将动态链接库编译生成.so库文件;3.3)用交叉编译器mips-linux-gnu-gcc将.so库文件和静脉识别算法中的逻辑代码编译生成可执行程序;其中,逻辑代码为静脉识别算法中其它程序,如控制设备开关、提示用户放置手指等程序;3.4)用工具集lrzsz,通过串口将可执行程序导入到静脉设备中执行,对静脉设备进行调试,直至达到目标效果;3.5)将调试好的可执行程序放入根文件系统里,然后设置系统启动执行,然后将该文件系统制作成镜像,利用对应芯片的烧录工具烧录到静脉设备里;使用动态链接库,可以节约系统空间,多个应用程序可以共享单个动态链接库,避免当应用程序使用静态链接库时,每个应用程序要将库代码作为独立的副本链接到可执行镜像中。将可执行程序先在设备中调试,然后再放入根文件系统,可以避免将可执行程序直接放入静脉设备中调试,操作复杂。
[0027]
静脉设备上电后即会执行程序,可以进行注册验证流程。
[0028]
实施例2参照附图2所示,本发明还涉及一种静脉识别算法移植装置,其包括:图像预处理算法构建模块,其基于区域线性变换与高斯同态滤波相结合的灰度不均匀校正方法构建待移植的静脉图像预处理算法,所述的静脉图像预处理算法用于将静脉图像处理为符合静脉识别算法模型输入需求的格式;图像预处理算法构建模块用于实现实施例1步骤1)的功能;静脉识别算法模型构建模块,用于构建待移植的静脉识别算法模型,所述的静脉识别算法模型用于利用处理后的静脉图像输出识别结果;静脉识别算法模型构建模块用于实现实施例1步骤2)的功能;移植模块,用于将静脉图像预处理算法和静脉识别算法模型移植至静脉设备;移植模块用于实现实施例1步骤3)的功能。
[0029]
显然,本实施例的静脉识别算法移植装置可以完整地实现实施例1所述的静脉识别算法移植方法。
[0030]
以上结合实施例对本发明进行了详细说明,但所述内容仅为本发明的较佳实施例,不能被认为用于限定本发明的实施范围。凡依本发明申请范围所作的均等变化与改进等,均应仍属于本发明的专利涵盖范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1