All Projects → Kuri-su → Captcha_reader

Kuri-su / Captcha_reader

Licence: wtfpl
🐝 PHP 验证码识别与训练 脚手架

Labels

Projects that are alternatives of or similar to Captcha reader

Django Simple Captcha
Django Simple Captcha is an extremely simple, yet highly customizable Django application to add captcha images to any Django form.
Stars: ✭ 1,151 (+771.97%)
Mutual labels:  captcha
Captcha
Go package captcha implements generation and verification of image and audio CAPTCHAs.
Stars: ✭ 1,321 (+900.76%)
Mutual labels:  captcha
Ngx Captcha
ReCaptcha components for Angular. Live preview:
Stars: ✭ 115 (-12.88%)
Mutual labels:  captcha
Captcha Breaker
High Accuracy Captcha Breaker with Tensorflow and Node.js
Stars: ✭ 76 (-42.42%)
Mutual labels:  captcha
12306 captcha
基于深度学习识别12306验证码
Stars: ✭ 89 (-32.58%)
Mutual labels:  captcha
Recaptcha Spring Boot Starter
Spring Boot starter for Google's reCAPTCHA
Stars: ✭ 103 (-21.97%)
Mutual labels:  captcha
Easycaptcha
Java图形验证码,支持gif、中文、算术等类型,可用于Java Web、JavaSE等项目。
Stars: ✭ 1,084 (+721.21%)
Mutual labels:  captcha
Crack captcha
破解英文数字验证码
Stars: ✭ 131 (-0.76%)
Mutual labels:  captcha
Tensorflow Demos
all kinds of demos of tensorflow code
Stars: ✭ 89 (-32.58%)
Mutual labels:  captcha
No Captcha
No CAPTCHA reCAPTCHA For Laravel.
Stars: ✭ 1,484 (+1024.24%)
Mutual labels:  captcha
Hooman
http interceptor to hoomanize cloudflare requests
Stars: ✭ 82 (-37.88%)
Mutual labels:  captcha
Slidercaptcha
Slider captcha support mobile
Stars: ✭ 88 (-33.33%)
Mutual labels:  captcha
Captchouli
booru-backed procedurally-generated anime image captcha library and server
Stars: ✭ 104 (-21.21%)
Mutual labels:  captcha
Happy Captcha
Happy Captcha是一款易于使用的Java验证码软件包,旨在花最短的时间,最少的代码量,实现Web站点的验证码功能。Happy Captcha完全遵循Apache 2.0开源许可协议,你可以自由使用该软件,如您在使用Happy Captcha时发现软件的任何缺陷,欢迎随时与我联系。
Stars: ✭ 75 (-43.18%)
Mutual labels:  captcha
Captcha
基于CNN的验证码整体识别
Stars: ✭ 125 (-5.3%)
Mutual labels:  captcha
Captcha break keras
keras theano 验证码破解 字母+数字
Stars: ✭ 60 (-54.55%)
Mutual labels:  captcha
Captcha
PHP Captcha library
Stars: ✭ 1,382 (+946.97%)
Mutual labels:  captcha
Incapsula Cracker Py3
Python3 compatible way to bypass sites guarded with Incapsula
Stars: ✭ 132 (+0%)
Mutual labels:  captcha
Node Captcha
Simple captcha for Node.JS and Express.
Stars: ✭ 130 (-1.52%)
Mutual labels:  captcha
Express Recaptcha
Implementation of google recaptcha v2 & V3 solutions for express.js
Stars: ✭ 104 (-21.21%)
Mutual labels:  captcha

CAPTCHA_Reader

验证码识别与训练 脚手架

这个项目对验证码识别中常用的 四个步骤获取文件 => 降噪 => 切割 => 识别)进行了简单的封装,减少开发的复杂程度。并提供了一些现成的解决方案。

Donate :)

digitalCoin: 来个甜筒 🍦 吧~www

Install use Composer

composer require kurisu/captcha_reader

#该库依赖 php-gb 扩展
# 如果是 linux 版本, php 可能未安装 php-gb
sudo apt install php-gb -y #自行选择合适的安装方式

对各种验证码的支持

  • 正方教务系统验证码 验证码字典样本数为500 条 ,不加上网络延时的耗时在0.14s - 0.2s之间

    • 测试集测试的结果:
    • 200个测试样本 中 整体识别正确率 87%,单个字母识别正确率到 96.5%
  • 青果教务系统验证码 验证码字典样本数为200 条左右,不加上网络延时的耗时在 0.15s - 0.25s之间

    • 测试集测试的结果:
    • 200个测试样本 中 整体识别正确率 90%,单个字母识别正确率到 96.875%
  • neea.edu.cn 验证码字典样本数为 1500 条左右,不加上网络延时的耗时在 0.6s - 0.7s之间

    • 测试集测试的结果:
    • 200个测试样本 中 整体识别正确率 54.5%,单个字母识别正确率到 80%
    •    
  • 天翼校园网认证验证码 验证码字典样本数为 2800 条左右,不加上网络延时的耗时在 0.45s - 0.5s之间

    • 测试集测试的结果:
    • 200个测试样本 中 整体识别正确率 48.5%,单个字母识别正确率到 82.875%

Examples

在线测试效果待添加,可以尝试根据下面的 Get Started Now 测试效果

Get Started Now

Online 在线

  • 运行指令 git clone https://github.com/Kuri-su/CAPTCHA_Reader.git
  • 在根目录下执行 composer update
  • 不用管 sample,training,vendor文件夹, 直接进入 src/App/index.php 下,仿照该文件的调用方式即可,例示代码段如下:

需要复制可以跳转到 link

  • 运行结果

Local 本地

在识别本地的验证码的模式,代码与上面 Online 模式相似,只需要调用 entrance方法的时候第二个参数传 local 即可,例示代码段如下:

需要复制可以跳转到 link


How To Use

识别部分

切换识别方案

在调用时, 传递的第三个参数指定你需要使用的方案组即可, 可用的方案组参考 /src/Config/app.php 文件的 componentGroup 数组的键

<?php
// ZhengFangNormal
// QinGuoNormal
// TianYiNormal
// NeeaNormal
$c = $a->entrance('https://raw.githubusercontent.com/Kuri-su/CAPTCHA_Reader/master/docs/sample/qinguo.png', 'online','QinGuoNormal');

切换识别方案中使用的类

继承 CAPTCHAReader\src\App\Abstracts\Load 抽象类,实现相应的方法,完成装饰器的构建,然后替换配置文件中的组件类即可。

替换字典

修改配置文件中相应方案的dictionary的值即可

训练部分

配置文件中的 studyGroup 下的 键名 对应使用的 学习样本组测试样本组 ,然后下面的四个类是使用的组件类。

样本集 & 测试集

已标记 学习样本集

已标记 测试样本集

  • 正方 & 青果 & neea & 天翼 已打包 link

目录结构


Update plan

  • ✔️ 更有效率的字典训练方法
  • ✔️ 使代码更加oop,更加可复用
  • ✔️ 增加对青果验证码的支持
  • ✔️ 增加对 neea 的支持
  • ✔️ 增加对 天翼校园网认证验证码 的支持
  • ✔️ 打包为composer包,方便其他项目引用
  • 🔜 补全文档
  • 🕧 PHP拓展的方式重写核心函数,降低核心函数的时间复杂度
  • 🕧 使用 pthreads 多线程识别
  • 做完上面几种验证码的就结束支持,挨个支持各个验证码太累了,影响效率的是标记各个验证码,每种最少要标记将近 1000 个,如果有相关需求的请关注其他神经网络方案(资源消耗并不会多出多少)。
  • 真是个倒霉孩子写这东西,打码工人累死了

Stargazers over time

LICENSE

WTFPL

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].