[发明专利]一种基于轮廓提取的九宫格图形验证码识别方法有效
申请号: | 201910185020.3 | 申请日: | 2019-03-12 |
公开(公告)号: | CN110069915B | 公开(公告)日: | 2021-04-13 |
发明(设计)人: | 丁珩珂;刘泽华;王毅刚 | 申请(专利权)人: | 杭州电子科技大学 |
主分类号: | G06F21/36 | 分类号: | G06F21/36;G06K9/32;G06K9/34;G06K9/46 |
代理公司: | 杭州君度专利代理事务所(特殊普通合伙) 33240 | 代理人: | 朱月芬 |
地址: | 310018 浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 轮廓 提取 九宫 图形 验证 识别 方法 | ||
1.一种基于轮廓提取的九宫格图形验证码识别方法,其特征在于包括如下步骤:
步骤(1)对输入的含箭头的九宫格图形验证码进行二值化与高斯模糊预处理,并根据九宫格标记点的颜色设置阈值进行降噪;
步骤(2)对步骤(1)处理后的图片进行膨胀处理,随后进行canny轮廓检测,计算出所有闭合轮廓的重心;
步骤(3)对步骤(2)中提取的轮廓进行分类,依据闭合轮廓的重心位置、分布情况计算出九宫格点编号与箭头位置,并对非重叠箭头轮廓进行最小闭合三角形提取;
步骤(4)由箭头位置与九宫格标记点分析得出每个九宫格点的出入度,进而计算出该九宫格图形验证码中的哈密顿路径;
步骤(5)抽取任意非重叠箭头,通过计算三角形顶点与重心关系得出该箭头方向,从而给该哈密顿路径标明方向,最终输出该图形验证码的验证结果。
2.根据权利要求1所述的一种基于轮廓提取的九宫格图形验证码识别方法,其特征在于所述的步骤(1)中,对输入的含箭头的九宫格图形验证码进行二值化与高斯模糊预处理,并根据九宫格标记点的颜色设置阈值进行降噪,具体包括如下步骤:
1-1.依据给定的RGB彩色图,将其转换为灰度图备用,
1-2.将灰度图进行高斯模糊处理,其高斯模糊最小单位为n*n,得到高斯处理图,n为灰度图行列最小值的2%;
1-3.对高斯处理后的灰度图进行阈值降噪,使得灰度图中仅留下箭头与九宫格标记点。
3.根据权利要求2所述的一种基于轮廓提取的九宫格图形验证码识别方法,其特征在于所述的步骤(2)中,对步骤(1)处理后的灰度图进行膨胀处理,随后进行canny轮廓检测,计算出所有闭合轮廓的重心,具体包括如下步骤:
2-1.为了让随后的轮廓检测结果都闭合,对步骤(1)处理后的灰度图进行膨胀处理,获取膨胀图,其膨胀单位元大小为m*m,m为图片行列最小值的1%;
2-2.设置canny检测单元,大小为0.5m*0.5m,对膨胀图进行canny边缘检测,得到轮廓集G,
2-3.计算出每一个轮廓的重心,采用如下公式:
其中,g为轮廓点集,g∈G,num为g中点的数目。
4.根据权利要求1所述的一种基于轮廓提取的九宫格图形验证码识别方法,其特征在于所述的步骤(3)中,对步骤(2)中提取的轮廓进行分类,依据其重心位置、分布情况,计算出九宫格标记点编号与箭头位置,并对非重叠箭头轮廓进行最小闭合三角形提取,具体包括如下步骤:
3-1.图形验证码中九宫格标记点重心分布是规律的,从而筛选出九宫格标记点,并为九宫格标记点进行编号,且箭头点仅存在于两个九宫格标记点连线的中心,由此筛选出箭头点,再依据箭头点的重心位置对其编号,
3-2.根据标记点与箭头点编号关系,筛选出连线关系,并在灰度图中对箭头点附近连线进行验证,具体的:
3-2-1.找到可能存在的连线两端标记点与箭头点组合,
3-2-2.在灰度图中定位到箭头点重心位置,以箭头点的重心为原点,构建半径为n的圆形轨迹进行遍历,以检索到的存在点位置组成的连线向量判断该组合是否存在,其中n为灰度图行列最小值的2%;
3-3.依据箭头点与标记点数量关系与连线关系筛选出非重叠箭头点,并对其进行最小闭合三角形提取,作为三角形集V,非重叠下箭头点数目为标记点数目-1。
5.根据权利要求4所述的一种基于轮廓提取的九宫格图形验证码识别方法,其特征在于所述的步骤(4)中,根据箭头点重心位置与九宫格标记点分析得出每个九宫格标记点的出入度,进而计算出该九宫格图形验证码中的哈密顿路径,具体包括如下步骤:
4-1.依据步骤(3)中所验证得出的九宫格标记点连线与箭头组合,计算出所有九宫格标记点的出入度,
4-2.随机抽取一个出入度为1的九宫格标记点,由连线与箭头组合推导该图形验证码中九宫格标记点连线的哈密顿路径。
6.根据权利要求5所述的一种基于轮廓提取的九宫格图形验证码识别方法,其特征在于所述的步骤(5)中,抽取任意非重叠箭头,通过计算三角形顶点与重心关系得出该箭头方向,从而给该哈密顿路径标明方向,最终输出该图形验证码的验证结果,具体包括如下步骤:
5-1.抽取任意非重叠箭头,定位该箭头所提取的最小闭合三角形与标记点箭头组合,
5-2.由两端标记点x1与x2计算得出连线向量ρ,公式如下:
ρ=x1-x2
5-3.由最小闭合三角形的三个顶点A、B、C计算出三角形的三边向量α、β、γ,公式如5-2,
5-4.计算三边向量与连线向量中的点乘值,求得最接近0的三边向量δ,不属于该向量的顶点设为D,
5-5.由δ与D的位置关系与ρ的方向确定该箭头的方向,并将该方向赋给哈密顿路径,使其成为一个有向路径,
5-6.由始至终输出该路径中的所有节点,即为该图形验证码的验证结果。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州电子科技大学,未经杭州电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201910185020.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:滑动解锁方法、系统及电子装置
- 下一篇:一种密码安全管理系统和方法