字符训练网上一搜一大堆,但做为一个初学者而言,字符合并网上却写的很笼统python
首先,须要 生成的字符集.tif文件,位置文件 .box ,只要有这两个文件在,就能够合并字典(这个说的颇有道理的样子)
好了,我如今有三个须要合并的字典git
(1).(why3.楷体.exp0.tif,why3.楷体.exp0.box)github
(2).(why4.microsoftyaheiuilight.exp0.tif,why4.microsoftyaheiuilight.exp0.box)测试
(3). (why5.隶书b.exp0.tif,why5.隶书b.exp0.box)字体
一、先生成相对应的 .tr 文件
//本身的命令根据本身的状况进行修改ui
tesseract why3.楷体.exp0.tif why3.楷体.exp0 nobatch box.train
tesseract why4.microsoftyaheiuilight.exp0.tif why4.microsoftyaheiuilight.exp0 nobatch box.train
tesseract why5.隶书b.exp0.tif why5.隶书b.exp0 nobatch box.train
二、从全部文件中提取字符
//本身的命令根据本身的状况进行修改google
unicharset_extractor why3.楷体.exp0.box why4.microsoftyaheiuilight.exp0.box why5.隶书b.exp0.box
三、生成字体特征文件
新建的font.txt文件,在文件中把全部box文件对应的字体特征都加进去(若是不知道,能够去原来考出来的字库文件找.font_properties文件查看)spa
楷体 0 0 0 0 0
microsoftyaheiuilight 0 0 0 0 0
隶书b 0 1 0 0 0
写完以后,执行以下命令:.net
mftraining -F font.txt -U unicharset why3.楷体.exp0.tr why4.microsoftyaheiuilight.exp0.tr why5.隶书b.exp0.tr
4 、汇集全部.tr 文件
3d
cntraining why3.楷体.exp0.tr why4.microsoftyaheiuilight.exp0.tr why5.隶书b.exp0.tr
5 、重命名文件,我把unicharset, inttemp, normproto, pfftable,shapetable 这几个文件加了前缀why. (本身定,随意) //我加的是together.
六、合并全部文件 生成一个大的字库文件
combine_tessdata together.
目录下生成的结果以下:
把合并字库拷进以下目录:
测试图片以下:
执行以下代码:
# coding=utf-8 __author__ = 'syq' #https://github.com/tesseract-ocr import sys import importlib #reload(sys) importlib.reload(sys); #sys.setdefaultencoding('utf-8') import os; os.environ['NLS_LANG'] = 'SIMPLIFIED CHINESE_CHINA.UTF8' try: from pyocr import pyocr from PIL import Image except ImportError: print('模块导入错误,请使用pip安装,pytesseract依赖如下库:') print('http://www.lfd.uci.edu/~gohlke/pythonlibs/#pil') print('http://code.google.com/p/tesseract-ocr/') raise SystemExit tools = pyocr.get_available_tools()[:] if len(tools) == 0: print("No OCR tool found") sys.exit(1) print("Using '%s'" % (tools[0].get_name())) print(tools[0].image_to_string(Image.open('pic\\123.png'),lang='together'))
结果以下:
效果还能够,厉害了
参考:http://blog.csdn.net/dragoo1/article/details/8439272
http://www.lxway.com/815805156.htm