汉字中文验证码点选识别匹配,达到商用级别

汉字中文验证码点选识别匹配深度学习方法实现,达到商用级别

  • 一、简介
    • 1.1 需求分析
    • 1.2 运行效果
    • 1.3 性能指标
  • 二、使用方法
    • 2.1 源码运行
    • 2.2 打包后运行
    • 2.3 测试效果
  • 三、项目下载

一、简介

1.1 需求分析

针对中文验证码进行识别,当出现以下验证码时,需要手动按照汉字的顺序,在上半部分的乱码中按照顺序点选出来。本项目通过深度学习的方法,自动识别,并按照白底汉字的顺序,返回上半部分图像中汉字的中心点坐标。

在这里插入图片描述

1.2 运行效果

如下图,会按照顺序返回汉字的中心点坐标
在这里插入图片描述

1.3 性能指标

a、在cpu上运行,i7的13代处理器上,平均每张耗时约0.069s。
b、在服务器上,那2核2g内存处理器,外部调用每张用时约0.2s。
c、准确率达到98%。

二、使用方法

项目目录结构如下:
在这里插入图片描述
运行方法三种,第一种是直接运行源码;第二种是打包完成之后,运行shell脚本(service.sh)运行项目;第三种是自己测试的时候的脚本,可以直接在代码里面修改路径即可。

2.1 源码运行

(1)安装所需要的依赖

pip install -r requirements.txt

(2)运行项目脚本:

python main.py

(3)发送请求调用脚本如下:

import requests
url = "你当前服务器的ip地址(比如:http://185.11.49.108:5000/)"
payload={"img":"你要检测的base64格式的图像"}
headders = {"content_type":"application/json"}
response = requests.request("POST",url,json=payload,headers=headers)
print(reponse.text)

返回的数据格式是json格式,里面包含每个汉字的坐标。

2.2 打包后运行

(1)安装pyinstaller:

pip install pyinstaller

(2)打包项目:

pyinstaller main.spec

(3)在终端中启动脚本命令如下:

#启动脚本
bash service.sh start

#停止脚本运行
#bash service.sh stop

#查看项目启动状态
#bash service.sh status

(4)发送请求调用脚本如下(和运行源码的执行一样):

import requests
url = "你当前服务器的ip地址(比如:http://185.11.49.108:5000/)"
payload={"img":"你要检测的base64格式的图像"}
headders = {"content_type":"application/json"}
response = requests.request("POST",url,json=payload,headers=headers)
print(reponse.text)

2.3 测试效果

前面两种方法是flask接口封装好了之后,直接调用,测试的话可以使用里面的test_model.py脚本测试效果,只需要修改读取图片的路径即可。

三、项目下载

本项目花费我一个月时间做完,效果和效率都很好,需要的请关注并私信我,或邮箱联系:1240893959@qq.com, 平时看邮箱比较多,一发我就能看到。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/431970.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

MySQL性能优化-Mysql索引篇(4)

概览 承接上文,我们说过数据库读取磁盘的最小单位是页不是行,那么对于数据库来说,如果我们想要查找多行记录,查询时间是否会成倍地提升呢?其实数据库会采用缓冲池的方式提升页的查找效率。 为了更好地理解SQL查询效率…

计算机设计大赛 深度学习的动物识别

文章目录 0 前言1 背景2 算法原理2.1 动物识别方法概况2.2 常用的网络模型2.2.1 B-CNN2.2.2 SSD 3 SSD动物目标检测流程4 实现效果5 部分相关代码5.1 数据预处理5.2 构建卷积神经网络5.3 tensorflow计算图可视化5.4 网络模型训练5.5 对猫狗图像进行2分类 6 最后 0 前言 &#…

【探索AI】程序员如何选择职业赛道?

程序员如何选择职业赛道? 程序员的职业赛道就像是一座迷宫,有前端的美丽花园,后端的黑暗洞穴,还有数据科学的神秘密室。你准备好探索这个充满挑战和机遇的迷宫了吗?快来了解如何选择职业赛道吧! 自我评估…

Git分布式管理-头歌实验日志和版本回退

在Git使用过程中,一种很常见的情况是:发现某个已经提交到仓库里的代码文件有致命的bug,必须将代码回滚到上一个版本,在这种情况下就显示出了Git的强大。Git为每次提交,都保留了日志,根据提交日志&#xff0…

人工智能-飞桨

文章目录 概要安装零基础教程基础知识小结 概要 集核心框架、基础模型库、端到端开发套件、丰富的工具组件于一体的深度学习平台 官方入口 安装 python安装 python官方下载 PaddlePaddle安装 python -m pip install paddlepaddle2.6.0 -i https://mirror.baidu.com/pypi/s…

电脑电源电压不足会出现什么问题?怎么办?

电脑电源的电压是多少? 电脑电源输出一般有12V、5V、3.3V三种不同的电压。 电脑电源负责给电脑配件供电,如CPU、主板、内存条、硬盘、显卡等,是电脑的重要组成部分。 新规格的12V、5V、3.3V等输出的电源分配一般更适合当前电脑配件的电源需求…

【中国电信】光猫 PT632 使用超管权限修改 IP 地址租期时间

背景 由于光猫默认设置的动态 IP 租期是 24 小时,所以每天都会断网一次,严重影响用网体验,所以打算通过修改动态 IP 租期为 一周(最长就一周,没有永久的选项)来改善。 需求 一台电脑(已开启 …

网络信息安全:OpenSSH_7.4p1升级至OpenSSH_9.6p1 | ssh-agent远程代码执行漏洞(CVE-2023-38408)

网络&信息安全:OpenSSH_7.4p1升级至OpenSSH_9.6p1 | ssh-agent远程代码执行漏洞(CVE-2023-38408) 1.1 风险详情1.2 操作环境1.3 漏洞处理:OpenSSH升级1、查看SSH客户端的版本信息2、列出系统中openssl、openssh的软件包3、启动telnet&…

idea:springboot项目搭建

目录 一、创建项目 1、File → New → Project 2、Spring Initializr → Next 3、填写信息 → Next 4、web → Spring Web → Next 5、填写信息 → Finish 6、处理配置不合理内容 7、注意事项 7.1 有依赖包,却显示找不到依赖,刷新一下maven 二…

SmartX 携手 openGauss 社区发布联合方案评测与性能最佳实践 | 附优化方法与测试数据

近日,北京志凌海纳科技有限公司(以下简称 “SmartX”)携手 openGauss 社区完成了 openGauss 数据库基于 SmartX 超融合平台(SMTX OS)和 SmartX 分布式存储平台(SMTX ZBS)的性能测试和调优。 结…

JVM(垃圾回收机制 ---- GC)

啥是垃圾? 不再使用的内存 啥是垃圾回收机制? 自动释放不用的内存 注意: GC 主要是针对 堆 进行的 GC的基本操作单位是 对象, 即GC’回收的是整个对象都不使用的情况 GC 的优缺点 好处: 省心, 写代码简单, 不易出错 缺点: 需要消耗额外资源, 有额外性能开销 , 此外, 易触发 S…

vue 内容渲染和属性绑定

内容渲染指令 1. 使用v-text指令&#xff0c;将数据采用纯文本方式填充其空元素中 <script setup>import { reactive } from vuelet student reactive({name: Jack,desc: <h3>我是来自中国的小朋友&#xff01;</h3>}) </script> <template><…

介绍下RabbitMQ的事务机制

想要保证发送者一定能把消息发送给RabbitMQ&#xff0c;一种是通过confirm机制&#xff0c;另外一种就是通过事务机制。 RabbitMQ的事务机制&#xff0c;允许生产者将一组操作打包一个原子事务单元&#xff0c;那么全部执行成功&#xff0c;要么全部失败。事务提供了一种确保消…

【开源】JAVA+Vue.js实现食品生产管理系统

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、功能模块2.1 加工厂管理模块2.2 客户管理模块2.3 食品管理模块2.4 生产销售订单管理模块2.5 系统管理模块2.6 其他管理模块 三、系统展示四、核心代码4.1 查询食品4.2 查询加工厂4.3 新增生产订单4.4 新增销售订单4.5 查询客户 五、…

操作系统:初识操作系统

目录 1.冯诺依曼体系结构 2.操作系统 2.1什么是操作系统 2.2为什么需要操作系统 2.3怎么实现操作系统 1.冯诺依曼体系结构 对于上图&#xff1a; 输入设备完成的是写入工作&#xff0c;输出设备完成输出工作&#xff0c;这两部分包含磁盘这类的外存。 存储器一般指的是内存…

【C#杂谈】在 .NET Framework 中使用新的C#语言特性

前排提示&#xff1a;提出一个可以让 [^1] 这中语法可以在.NET Framework运行时中使用的方法 众所都周知&#xff0c;.NET Framework&#xff08;以下简称 .NF&#xff09;作为一个被微软官方确认不在继续发布新特性的运行时&#xff0c;它所对应的C#语言版本被&#xff08;官方…

TruEra

文章目录 关于 TruEra关于 TruLens 关于 TruEra TruEra Gen AI Observability and LLM Evaluation​ Monitor, evaluate, and debug your LLM and Gen AI apps. All part of Full Lifecycle AI Observability from TruEra. 官网&#xff1a;https://truera.comgithub : https…

时间序列分析技巧(一):根据ACF、PACF进行AR、MA、ARMA模型选择

程序员如何选择职业赛道&#xff1f; &#x1f349;CSDN小墨&晓末:https://blog.csdn.net/jd1813346972 个人介绍: 研一&#xff5c;统计学&#xff5c;干货分享          擅长Python、Matlab、R等主流编程软件          累计十余项国家级比赛奖项&#…

定时执行专家 - 自动截屏任务的设置步骤

以下是使用定时执行专家进行自动截屏的设置步骤&#xff1a; 下载并安装定时执行专家 从以下 官方博客 下载最新版本的定时执行专家&#xff0c;并按照提示进行安装。 BoomWorks软件的最新版-CSDN博客文章浏览阅读10w次&#xff0c;点赞9次&#xff0c;收藏42次。▉定时执行…

C语言数据结构与算法——深度、广度优先搜索(DFS、BFS)

目录 一、深度优先搜索&#xff08;Depth-First-Search 简称&#xff1a;DFS&#xff09; 无向图的深度优先搜索 有向图的深度优先搜索 二、广度优先搜索&#xff08;Breadth-First-Search 简称&#xff1a;BFS&#xff09; 无向图的广度优先搜索 有向图的广度优先搜索 深…