验证码识别--type5

每一种验证码都是由人设计出来。在设计过程中,可能由于多个方面的原因,造成了这样或那样的可以被利用的漏洞。验证码识别,首先需要解决的问题就是发现这些漏洞--然后利用漏洞解决问题。
这个图片看上去很复杂,有空心字符、有粘连、有干扰线,但是为什么人在识别的时候不会出错?是因为主要字符是不同颜色的。而且设计者为了防止如果随机的话出现相近的颜色造成不能被识别的结果,于是选用了6种相互之间区别都比较大的颜色——并且只有这6种颜色。这就是切入口。
另一个方面,关于具体颜色的处理,我还真是弱项。如果过滤出特点的区域的颜色,是个问题。
一、判断相似颜色
即使是非常相似的颜色,也会被认为是不相同的,直接用RGB相比较,是不科学的。
最好的办法是有那种可以拖动的条来做这个东西的,按时目前也是能够做出一些效果来的。
if (r<50 || g>50 ||b>50) 红 也包括,镂空问题再考虑,我先把几个颜色分离出来,最好能够做出自动化的工具
首先是3元色
    if (b<50 || g>50 ||r>50) 
  if (g<50 || b>50 ||r>50)
 
然后是混合色    if (g>50    ) 紫色
 
 
橙色
现在应该是摸索出一套方法出来,应该可以有所使用
如果采用ps的话,其效果的确是更好一点。但是问题在于这里的颜色容差如何来算
通过带着问题来阅读,我修改代码
一方面,继续原有代码。对于三原色,采用盒式模型,而对于延伸的三色,采用球模型
结果应该说是很好了。问题主要出现在空心字符哪里,还有字符粘连那里。
二方面,hsi应该 是更直观的
但是效果不好,不知道为什么。还是采用RGB模型.
 
最后,经过相关的处理,只能得到这样的结果
 
下一步如何来做,一方面,还是需要通过先验知识--字的团块主要是在一起的。来做分析,把主要团块找出来,然后把这些缝隙连接起来。
做到目前这一步,非常关键的一个问题出现了:
图像分割要做到哪一步,才是可行的?此外,识别要到什么程度,才是有价值的。这几个问题都必须通过具体的识别的例子才能够得到结果。所以目前几个type的识别必须要继续再做一步。

验证码识别--type5的更多相关文章

  1. 字符型图片验证码识别完整过程及Python实现

    字符型图片验证码识别完整过程及Python实现 1   摘要 验证码是目前互联网上非常常见也是非常重要的一个事物,充当着很多系统的 防火墙 功能,但是随时OCR技术的发展,验证码暴露出来的安全问题也越 ...

  2. 验证码识别<1>

    1. 引子 前两天访问学校自助服务器()缴纳网费,登录时发现这系统的验证码也太过“清晰”了,突然脑袋里就蹦出一个想法:如果能够自动识别验证码,然后采用暴力破解的方式,那么密码不是可以轻易被破解吗? p ...

  3. 简单的验证码识别(opecv)

    opencv版本: 3.0.0 处理验证码: 纯数字验证码 (颜色不同,有噪音,和带有较多的划痕) 测试时间 :  一天+一晚 效果: 比较挫,可能是由于测试的图片是在太小了的缘故. 原理:  验证码 ...

  4. 利用开源程序(ImageMagick+tesseract-ocr)实现图像验证码识别

    --------------------------------------------------低调的分割线-------------------------------------------- ...

  5. 基于LeNet网络的中文验证码识别

    基于LeNet网络的中文验证码识别 由于公司需要进行了中文验证码的图片识别开发,最近一段时间刚忙完上线,好不容易闲下来就继上篇<基于Windows10 x64+visual Studio2013 ...

  6. Java验证码识别解决方案

    建库,去重,切割,识别. package edu.fzu.ir.test; import java.awt.Color; import java.awt.image.BufferedImage; im ...

  7. 简单验证码识别(matlab)

    简单验证码识别(matlab) 验证码识别, matlab 昨天晚上一个朋友给我发了一些验证码的图片,希望能有一个自动识别的程序. 1474529971027.jpg 我看了看这些样本,发现都是很规则 ...

  8. Python验证码识别处理实例(转载)

    版权声明:本文为博主林炳文Evankaka原创文章,转载请注明出处http://blog.csdn.net/evankaka 一.准备工作与代码实例 1.PIL.pytesser.tesseract ...

  9. 验证码识别--type2

    验证码识别--type2 终于来到了彩色图像,一定有一些特点 这里的干扰项是色彩不是很鲜艳的.灰色的线条,还有单独的干扰点,根据这些特性进行去除 直接ostu的话,有的效果好,有的效果不好   本来是 ...

随机推荐

  1. 二叉树的先序、中序以及后序遍历(递归 && 非递归)

    树节点定义: class TreeNode { int val; TreeNode left; TreeNode right; TreeNode(int x) { val = x; } } 递归建立二 ...

  2. leetcode143- Reorder List问题

    题目要求: Given a singly linked list L: L0→L1→…→Ln-1→Ln,    reorder it to: L0→Ln→L1→Ln-1→L2→Ln-2→… You m ...

  3. PostgreSQL数据导出导入COPY

    [postgres@DELL-R720 bin]$ ./psql -p 6432psql (9.4.5)Type "help" for help. postgres=# postg ...

  4. [Reprint]C++友元函数与拷贝构造函数详解

    这篇文章主要介绍了C++友元函数与拷贝构造函数,需要的朋友可以参考下   一.友元函数 1.友元函数概述: (1)友元函数是定义在一个类外的普通函数.友元函数和普通函数的定义一样;在类内必须将该普通函 ...

  5. SpringMvc:处理模型数据

    SpringMvc提供了以下途径输出模型数据: -ModelAndView:处理方法返回值类型为ModelAndView,方法体即可通过该对象添加模型数据 -Map或Model:入参为org.spri ...

  6. 在desk于webi中资料查询不一致

    1,首先检查是否勾选重复列,重复列造成 2,缓存

  7. 为archlinux配置cron

    cron的作用:cron可以用来周期性地自动执行一些命令. cron的实现:cron有很多实现版本,例如:cronie, dcron, fcron, bcron, vixie-cron,我安装的是 c ...

  8. zw版【转发·台湾nvp系列Delphi例程】HALCON DirectShow

    zw版[转发·台湾nvp系列Delphi例程]HALCON DirectShow unit Unit1;interfaceuses Windows, Messages, SysUtils, Varia ...

  9. zw版【转发·台湾nvp系列Delphi例程】HALCON OverpaintRegion1

    zw版[转发·台湾nvp系列Delphi例程]HALCON OverpaintRegion1 unit Unit1;interfaceuses Windows, Messages, SysUtils, ...

  10. hadoop文件系统FileSystem详解 转自http://hi.baidu.com/270460591/item/0efacd8accb7a1d7ef083d05

    Hadoop文件系统 基本的文件系统命令操作, 通过hadoop fs -help可以获取所有的命令的详细帮助文件. Java抽象类org.apache.hadoop.fs.FileSystem定义了 ...