[发明专利]一种基于Scharr算子的银行卡卡号行定位方法有效
申请号: | 201811211384.6 | 申请日: | 2018-10-17 |
公开(公告)号: | CN109685074B | 公开(公告)日: | 2022-05-10 |
发明(设计)人: | 柯逍;刘诗勤;牛玉贞 | 申请(专利权)人: | 福州大学 |
主分类号: | G06V10/44 | 分类号: | G06V10/44;G06V10/26;G06V30/146 |
代理公司: | 福州元创专利商标代理有限公司 35100 | 代理人: | 蔡学俊 |
地址: | 350108 福建省福州市闽*** | 国省代码: | 福建;35 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 scharr 算子 银行卡 卡号行 定位 方法 | ||
1.一种基于Scharr算子的银行卡卡号行定位方法,其特征在于:包括以下步骤:
步骤S1:使用CANNYLINES直线检测方法检测输入银行卡卡面图像中存在的线段;
步骤S2:对CANNYLINES 直线检测得到的直线进行判断,找出银行卡卡面的4条边,并由此得到银行卡卡面的4个顶点;
步骤S3:使用透视变换对银行卡卡面进行矫正,得到归一化的标准银行卡卡面图像;
步骤S4:利用Scharr算子检测银行卡面的垂直边缘,并按行累加,定位其中累加值最大的固定高度横向区域,得到银行卡卡号行区域;
步骤S1具体包括以下步骤:
步骤S11:使用的一个无参数Canny边缘检测器,即CannyPF,从输入图像中提取边缘图,根据输入图像的梯度大小自适应地调整Canny算子的阈值,用以保证图像结构信息的完整性;
步骤S12:从梯度最大的边缘像素点开始,将边缘图中方向相同的相邻像素点连接起来,完成边缘连接;对连接形成的过长线段进行拆分,用以得到短的初始线段;
步骤S13:将初始线段在两端的方向上同时延伸,以将更多的边缘像素点加入线段,并且和周围共线的线段合并;
步骤S14:使用一种基于Helmholtz原理的直线验证方法,同时使用梯度方向和梯度大小验证每一条线段;
步骤S2具体包括以下步骤:
步骤S21:对步骤S1得到的所有线段进行计算,得到图像最上侧、最下侧的近水平线段Ltop、Lbottom,且线段长度必须大于图像长度的0.07倍;得到图像最左侧、最右侧的近垂直线段Lleft、Lright,且线段长度必须大于图像宽度的0.07倍;近水平线段的定义是线段的斜率ki满足:i为线段序号;近垂直线段的定义是线段的斜率ki满足:
步骤S22:通过Ltop、Lbottom、Lleft、Lright四条银行卡卡面边缘直线的交点获得银行卡卡面的4个顶点c1,c2,c3,c4,其中,c1是左上角顶点,c2是右上角顶点,c3是左下角顶点,c4是右下角顶点;
步骤S3具体包括以下步骤:
步骤S31:对步骤S2所得到的银行卡卡面4个顶点c1,c2,c3,c4进行透视变换,变换公式如下:
式中,u,v是原始图片坐标,对应变换后得到的图片坐标x,y,w表示映射到三维空间中后第三维的坐标,x',y',w'表示映射到另一个三维空间后的三个坐标,其中x=x′/w′,y=y′/w′,w=1;变换矩阵中a11,a12,…,a33为变换参数;
步骤S32:将通过透视变换矫正后的图片归一化到856×540;得到归一化的标准银行卡卡面图像;
步骤S31中,所述变换矩阵分为四个部分,表示线性变换,包括缩放、翻转在内的操作,[a31 a32]用于平移,[a13 a23]T产生透视变换,坐标的变换公式如下所示:
步骤S4具体包括以下步骤:
步骤S41:对步骤S3得到的归一化的标准银行卡卡面图像使用Scharr算子中的垂直边缘检测算子Gx,其中I代表原始图像矩阵,其计算公式为:
步骤S42:对Gx的每一行进行累加,得到其中k为标准银行卡卡面图像的行序号;
步骤S43:逐行扫描整张标准银行卡卡面图像,计算区域最大分数Maxscore,计算公式如下:
式中,Pheight是标准化银行卡卡面的高度,从Pheight/3开始计算是为了去除上半部分区域文字的干扰;Maxscore取最大值时,第k行是银行卡卡号行区域的起始行,第k+53行是银行卡卡号行区域的截止行。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于福州大学,未经福州大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811211384.6/1.html,转载请声明来源钻瓜专利网。