| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> opencv+tesseract完成验证码识别(识别率99.99%) -> 正文阅读 |
|
[人工智能]opencv+tesseract完成验证码识别(识别率99.99%) |
一、需要识别的内容需要识别的验证码内容如下??验证码下载下载地址。 二、直接调用tesseract来完成识别(识别率很差)识别的图片内容为: 在window系统钟打开cmd命令窗口,执行识别命令如下:
识别结果为:519}? ? ? ?该识别准确率远远达不到预期 三、训练数据样本,提升识别率1、下载10份样本(样本数量越多,识别率越高),然后通过jTessBoxEditor来进行样本数据矫正(该步骤耗时较长)。 ?2、打开 jTessBoxEditor,将所有的样本数据生成一个总的tif文件(tif就是所有图片的集合)。操作如下: 1)jTessBoxEditor->Tools->Merge TIFF 2?)全选所有的样本文件,之后生成的tif命名为?jtbnum.font.exp0.tif 3)进行数据识别调整,如下图: ? ? ?四、生成样本库字体将所有的样本识别内容都调整正确后(调整的参数保存在jtbnum.font.exp0.box文件钟),我们需要将我们生成的样本文件封装成我们的 jtbnum.traineddata 字体库,生成方式如下: 1)创建?font_properties?文件,内容为?font 0 0 0 0 0 2)在同级目录创建 run.bat 文件 内容如下
?3)双击执行 run.bat 文件,系统执行完成后,将会生成?jtbnum.traineddata 文件。 4)将?jtbnum.traineddata 拷贝到tesseract安装目录下的tessdata文件夹下。 5)测试识别率: ?识别的图片内容为:
?识别结果为:51915? ? ? ?识别结果已经很准确率,但是验证码图片中的杂质没有清除,导致会识别出多余内容来。 五、通过Opencv清除图片的多余杂质(Java实现)
图片处理结果如下(杂质已经清除): 5)测试识别率: ?识别的图片内容为:
?识别结果为:5191? ? ? ?识别已经很精确 ?后期会附上各软件版本信息以及详细代码 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 0:33:08- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |