[发明专利]自动指纹分类方法有效
申请号: | 201711490895.1 | 申请日: | 2017-12-30 |
公开(公告)号: | CN108268836B | 公开(公告)日: | 2021-04-09 |
发明(设计)人: | 刘汉英;邓昀;周剑勋 | 申请(专利权)人: | 桂林理工大学 |
主分类号: | G06K9/00 | 分类号: | G06K9/00;G06K9/46 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 541004 广西壮*** | 国省代码: | 广西;45 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 自动 指纹 分类 方法 | ||
1.一种自动指纹分类方法,其特征在于该自动指纹分类方法包括训练过程和测试过程,具体步骤为:
(1)人工将训练用指纹图像分为六类,所述六类为左箕型、右箕型、斗型、拱型、尖拱型和无法判断,对判为前五类的指纹进行训练,将H×W的指纹图像划分为16像素×16像素大小的块,其中H为所述指纹图像高度,W为所述指纹图像宽度,图像共有bi×bj块,计算块方向图特征,即4方向块数、方向块8方向位置,将块方向图特征及指纹类型存入特征数组feature中,14列,第1~4列分别表示:方向1块数,方向2块数,方向3块数,方向4块数,第5~13列存放各块质心的8方向位置,第14列为指纹类型;
(2)取特征数组feature中块方向图特征即4方向块数及指纹类型,删除重复行,删除4方向块数相同但不同指纹类型的行,生成4方向块数数据库class_dire_num,5列,分别为方向1块数,方向2块数,方向3块数,方向4块数,指纹类型;
(3)取特征数组feature,删除按4方向块数可以分类的行,根据方向块8方向位置,计算出方向块4方向位置即象限,删除重复行,删除4方向块数、方向块4方向位置相同但指纹类型不同的行,生成方向块4方向位置数据库class_dire4,14列,第1~4列分别表示:方向1块数,方向2块数,方向3块数,方向4块数,第5~13列存放各块质心的4方向位置,第14列为指纹类型;
(4)取特征数组feature,删除按4方向块数、方向块4方向位置可以分类的行,删除重复行,删除4方向块数、方向块8方向位置相同但指纹类型不同的行,生成方向块8方向位置数据库class_dire8,14列,第1~4列分别表示:方向1块数,方向2块数,方向3块数,方向4块数,第5~13列存放各块质心的8方向位置,第14列为指纹类型,特征相同但指纹类型不同的行生成无法判定数据库cantjudge,格式同class_dire8,所述特征即4方向块数、方向块8方向位置;
(5)对测试指纹进行预处理,计算块方向图特征即4方向块数、方向块8方向位置;
(6)以测试指纹的4方向块数搜索4方向块数数据库class_dire_num,如果找到,输出指纹类型,测试结束,否则执行步骤(7);
(7)根据测试指纹的方向块8方向位置,计算出方向块4方向位置,以4方向块数和方向块4方向位置搜索方向块4方向位置数据库class_dire4,如果找到,输出指纹类型,测试结束,否则执行步骤(8);
(8)以4方向块数和方向块8方向位置搜索方向块8方向位置数据库class_dire8,如果找到,输出指纹类型,测试结束,否则执行步骤(9);
(9)以4方向块数和方向块8方向位置搜索无法判定数据库cantjudge,如果找到若干行,将可能指纹类型存入类型数组lx中,否则记类型数组lx(1)=0,表示训练指纹中没有出现这种特征的指纹;
(10)寻找奇异点,记录奇异点所在块位置和个数;
(11)删除伪奇异点;
(12)如果没有找到奇异点,扩大范围尝试搜索一个中心点;
(13)按Henry分类方法即奇异点个数、位置及类型数组lx判断指纹类型,无法判断的判为无法判断;
所述步骤(1)中块方向图特征的计算包括以下步骤:
a.使用梯度法计算块方向图dirbo,分块计算掩码fmsk;
b.取四个方向特征,将块方向图dirbo改为块四方向图dir4,方法是
c.由四方向图dir4生成方向图1,用半径为1的圆盘型结构元素腐蚀方向图1,计算腐蚀后方向图1的连接分量,计算连接分量的质心的8方向位置pos8,用1-8表示,当连接分量中像素的数目小于等于4时忽略此块;分别计算方向图2、3、4的块数和质心位置,存储在特征数组feature中,每个指纹一行;
所述步骤(3)中根据方向块8方向位置pos8计算方向块4方向位置pos4,用1~4表示,分别表示1~4象限,方法是
所述步骤(10)中奇异点包括中心点和三角点,包括以下步骤:
a.奇异点中心点个数singularcore和三角点个数singulardelta初始化为0;
b.对指纹块方向图dirbo中的除图像边缘外的每一个方块,计算方向旋转的变化量总和Poincare:
△dk=dk-d(k+1) mod 8,k=0,1……7;
如果△dk≥90,△dk=△dk-180;
如果△dk≤-90,△dk=△dk+180;
c.如果块(i,j)、块(i-1,j),块(i-1,j-1),块(i,j-1)的Poincare值均为180,块(i,j)是前景块,且其3×3邻域有5块以上是前景块,则中心点个数singularcore加1,将位置i,j记录在位置数组xx1和yy1中;
d.如果块(i,j)、块(i-1,j)或块(i-1,j-2),块(i-1,j-1),块(i,j-1)的Poincare值均为-180,块(i,j)是前景块,且其3×3邻域有5块以上是前景块,三角点个数singulardelta为0或singulardelta为1且与前一个三角点间距离大于3,则三角点个数singulardelta加1,将位置记录i,j在位置数组xx2和yy2中;
所述步骤(11)中删除伪奇异点方法如下:
a.对每个含有中心点的块,如果其5×5的领域中含有Poincare值为-180的块,则该块中的中心点为伪中心点,中心点个数singularcore减1,删除位置数组xx1及yy1中记录的相应位置;
b.对每个含有三角点的块,如果其5×5的领域中含有Poincare值为180的块,则该块中的三角点为伪三角点,三角点个数singulardelta减1,删除位置数组xx2及yy2中记录的相应位置;
所述步骤(12)搜索一个中心点,方法如下:
对所述步骤(10)结果中Poincare值为180且不在图像边缘的块(i,j),所述图像边缘即第1,2行,倒数1,2行,第1,2列,倒数1,2列,按5×5邻域计算方向旋转的变化量总和Poincare:
△dk=dk-d(k+1) mod 8,k=0,1……7;
如果△dk≥90,△dk=△dk-180;
如果△dk≤-90,△dk=△dk+180;
如果Poincare(i,j)=180,中心点个数singularcore=1,将位置i,j记录在位置数组xx1和yy1中,执行步骤(13);
所述步骤(13)的分类方法如下:a.如果中心点个数singularcore=2或三角点个数singulardelta=2,且类型数组lx中含有3或类型数组lx(1)=0,判为斗型;
b.如果中心点个数singularcore=1或三角点个数singulardelta=1,类型数组lx有两个元素,且其中一个为4,则判为另一指纹类型;
c.如果中心点个数singularcore=0且三角点个数singulardelta=0,且类型数组lx中含有元素4,判为拱型;
d.如果中心点个数singularcore=1且三角点个数singulardelta=0,按以下方法判断:
如果中心点左下部分或右下部分前景小于5块,则不是拱型,但无法判断;
设s1为中心点左下部分除了左边界和下边界外,大于-90度且小于0度的块数,s2为中心点右下部分除了右边界和下边界外,大于0度且小于90度的块数;
如果s1<2,且类型数组lx中含有1,判为左箕型;
如果s2<2,且类型数组lx中含有2,判为右箕型;
如果s1-s2>thre1,s2<thre2,且类型数组lx中含有2,判为右箕型;
如果s2-s1>thre3,s1<thre4,且类型数组lx中含有1,判为左箕型;
如果s1>thre5,s2>thre5,且类型数组lx中含有3,判为斗型;
thre1,thre2,thre3,thre4,thre5为阈值;
e.如果中心点个数singularcore=0且三角点个数singulardelta=1,计算三角点位置在图中的相对位置yy2(1)/bj,所述bj为图像宽度,单位为块;
如果yy2/bj>thre6,且类型数组lx中含有1,判为左箕型;
如果yy2/bj<thre7,且类型数组lx中含有2,判为右箕型;
thre6,thre7为阈值;
f.如果中心点个数singularcore=1且三角点个数singulardelta=1,计算中心点与三角点连线与中线夹角按以下方法判断:
如果π/12>slope>-π/12,且类型数组lx中含有5,判为尖拱型;
如果π/12>slope>-π/12,且类型数组lx中不含有5;
如果s1<2,且类型数组lx中含有1,判为左箕型;
如果s2<2,且类型数组lx中含有2,判为右箕型;
如果s1-s2>thre1,s2<thre2,且类型数组lx中含有2,判为右箕型;
如果s2-s1>thre3,s1<thre4,且类型数组lx中含有1,判为左箕型;
如果s1>thre5,s2>thre5,且类型数组lx中含有3,判为斗型;
thre1,thre2,thre3,thre4,thre5同步骤d,为阈值;
如果slope≥π/12,且类型数组lx中含有1,判为左箕型;
如果slope≤-π/12,且类型数组lx中含有2,判为右箕型;
g.当步骤(13)的前述步骤都未能判断指纹类型时,判为无法判断。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于桂林理工大学,未经桂林理工大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711490895.1/1.html,转载请声明来源钻瓜专利网。