我已经开始使用Pytesser,它可以兼容英语和中文,但是有没有办法让这两种语言同时工作?我是否必须制作自己的训练数据文件?我的代码是:
import Image
from pytesser import *
print image_to_string(Image.open("chinese_and_english.jpg"), lang="eng")
#also want to have chinese be recognized
答案 0 :(得分:5)
我不确定Pytesser,但使用tesserocr您可以指定多种语言。例如:
import tesserocr
with tesserocr.PyTessBaseAPI(lang='eng+chi_tra') as api:
api.SetImageFile('eSXSz.jpg')
print api.GetUTF8Text()
# or simply
print tesserocr.file_to_text('eSXSz.jpg', lang='eng+chi_tra')
图片的示例输出:
In [8]: print tesserocr.file_to_text('eSXSz.jpg', lang='eng+chi_tra')
Character, Chmese 動m川爬d
胸肌岫馴伽 H枷﹏ P﹏… …
〔Manda‥﹝ 二 Standard C…爬虯
一
口
X慣ng怕ng
请注意,与第一个示例相比,初始化API效率更高一些,并通过调用SetImageFile
(或SetImage
并PIL.Image
将其重新用于多个图片} object)以避免每次都重新初始化API。