1.准备验证码图片

 import os
from urllib.request import urlretrieve urlPath='http://www.189.cn/portal/captcha/simple.do?date=1503125232339'
localPath='G:\python_work\chapter11\captcha' # 根据文件名创建文件
def createFileByFileName(localPath,fileName):
if not os.path.exists(localPath):
os.makedirs(localPath)
totalPath=localPath+'\\'+fileName
if not os.path.exists(totalPath):
file=open(totalPath, 'a+')
file.close()
return totalPath # 根据图片的地址, 下载图片并保存在本地
def getAndSaveImg(imgUrl, filename):
if(len(imgUrl)!=0):
file=filename+'.jpg'
urlretrieve(imgUrl, createFileByFileName(localPath, file)) # 下载图片
i=0
while i<100:
getAndSaveImg(urlPath, str(i))
i=i+1

2.将验证码图片转为灰度图 , 扩展名改为.tif

 import os
from PIL import Image def getFileList(path):
# 返回目录中所有jpg图像的文件名列表
return [os.path.join(path, f) for f in os.listdir(path) if f.endswith('.jpg')] # 批量将图片转为灰度图
def patchConvert(srcPath, destPath):
fileList = getFileList(srcPath)
for file in fileList:
img = Image.open(file).convert('L')
name_ext = getFileNameAndExt(file)
destFile = os.path.join(destPath, name_ext[0]+'.tif')
img.save(destFile) # 获取文件名和扩展名
def getFileNameAndExt(filename):
# 取目录与文件名
(filepath, tempfilename) = os.path.split(filename)
# 取文件名(不带扩展名)和扩展名
(shotname, extension) = os.path.splitext(tempfilename)
return shotname, extension patchConvert('captcha', 'captcha_gray')

3. 后续步骤参考原先的博客:

http://www.cnblogs.com/CoolJayson/p/7395824.html

问题: 生成box文件后, 用jTessBoxEditor修改box文件时, 里面的矩形画的误差较大, 字符个数识别不准确 , 应该如何对矩形进行修改???

用Tesseract训练验证码遇到的问题的更多相关文章

  1. Tesseract训练中文字体识别

    注:目前仅说明windows下的情况 前言 网上已经有大量的tesseract的识别教程,但是主要有两个缺点: 大多数比较老,有部分内容已经不适用. 大部分只是就英文的训练进行探索,很少针对中文的训练 ...

  2. tensorflow训练验证码识别模型

    tensorflow训练验证码识别模型的样本可以使用captcha生成,captcha在linux中的安装也很简单: pip install captcha 生成验证码: # -*- coding: ...

  3. Tesseract 对验证码的识别原理和实现步骤

    一. Steps: 学习图片库--->处理图片(初步处理)--->校正.学习图片 二. Tesseract: 1. 采集图片库(一般每个出现的字符出现20次左右识别效果比较好),根据图片特 ...

  4. Tesseract训练笔记

    [参考] http://www.cnblogs.com/samlin/p/Tesseract-OCR.html https://code.google.com/p/tesseract-ocr/wiki ...

  5. Tesseract训练

    最近在用Tesseract做一个图片识别的小应用,目标图像只有数字和英文字母,在实际使用过程中发现个别数识别错误,因此不得不研究学习Tesseract的训练. http://www.cnblogs.c ...

  6. tesseract 训练

    下载chi_sim.traindata字库下载tesseract-ocr-setup-3.02.02.exe 下载地址:http://code.google.com/p/tesseract-ocr/d ...

  7. 跟我学算法- tensorflow 卷积神经网络训练验证码

    使用captcha.image.Image 生成随机验证码,随机生成的验证码为0到9的数字,验证码有4位数字组成,这是一个自己生成验证码,自己不断训练的模型 使用三层卷积层,三层池化层,二层全连接层来 ...

  8. tesseract训练手写体

    前面的步骤都一样,从第4步开始 4.使用tesseract生成.box文件: tesseract eng.handwriting.exp0.tif eng.handwriting.exp0 -l en ...

  9. tesseract系列(3) -- tesseract训练

    tessract的训练有个工具叫 jTessBoxEditor 1.jTessBoxEditor是用java写的,首先要装java的环境 jdk-8u191-windows-x64.exe 这个我想从 ...

随机推荐

  1. (数学 尾0的个数) 51nod1003 阶乘后面0的数量

    n的阶乘后面有多少个0? 6的阶乘 = 1*2*3*4*5*6 = 720,720后面有1个0. 收起   输入 一个数N(1 <= N <= 10^9) 输出 输出0的数量 输入样例 5 ...

  2. opencv: 基本知识;

    注: 该篇博文为扩展型,后期将逐步进行扩展: 1. IplImage转Mat IplImage转Mat: IplImage *pImage = cv::loadImage(“”); Mat imgM ...

  3. day-01(html)

    本文档并非个人所写,只是方便自己参考: 案例1-网站信息展示需求: 在页面展示一些文字信息,需要排版技术分析: html:超文本标签语言////////////////////html: 作用:展示 ...

  4. 运维监控-Open-Falcon安装Agent实战篇

    运维监控-Open-Falcon安装Agent实战篇 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本文参考链接来自:http://book.open-falcon.org/zh/ ...

  5. docker仓库harbor搭建

    1.安装docker-compose [root@docker02 ~]# yum install epel-release [root@docker02 ~]# pip install docker ...

  6. HDFS-JavaAPI

    一.pom.xml <?xml version="1.0" encoding="UTF-8"?> <project xmlns="h ...

  7. springboot下整合redis使用redisTemplate模板

    pom <!-- 引入 redis 依赖 --> <dependency> <groupId>org.springframework.boot</groupI ...

  8. VScode 1.13 gocode提示dial tcp 216.239.37.1:443: connectex: A connection attempt failed because the connected..

    在将VScode升级至 1.13后让升级gocode,在升级时报出如下错误 D:\go_work\src>go get -u -v github.com/mdempsky/gocode gith ...

  9. 3.1HashMap源码分析

    在前篇博文中(HashMap原理及实现学习总结)详细总结了HashMap的原理及实现过程,这一篇是对HashMap的源码分析. package dataStructure.hash; import j ...

  10. Sql分页代码示例

    select * from (select ROW_NUMBER()over( order by id) orderid,* from test) a where a.orderid between ...