Linux中的Python OCR模块?
我想在Linux中找到一个易于使用的OCR python模块,我发现pytesser http://code.google.com/p/pytesser/,但它包含一个.exe可执行文件。Linux中的Python OCR模块?
我试着改变了代码使用葡萄酒,它确实有效,但它太慢了,真的不是一个好主意。
是否有任何Linux的替代品,因为它易于使用?
你可以只是包装tesseract
的功能:
import os
import tempfile
import subprocess
def ocr(path):
temp = tempfile.NamedTemporaryFile(delete=False)
process = subprocess.Popen(['tesseract', path, temp.name], stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
process.communicate()
with open(temp.name + '.txt', 'r') as handle:
contents = handle.read()
os.remove(temp.name + '.txt')
os.remove(temp.name)
return contents
如果你想文件分割和更先进的功能,尝试OCRopus。
中定义。该代码错误,句柄。 close()'调用不存在的str.close()'。 – OneOfOne 2011-04-27 05:59:44
Gotcha。我在写这篇文章的时候重写了一段,因为我有两个占用空间的'.close()'函数。不知道是否遗漏它们是不好的,但我听说Python自己清理了所有的东西。 – Blender 2011-04-27 06:01:27
是的,pytesser也是类似于你的函数,它可以将tesseract可执行文件打包并获取stdout。但tessetact.exe使用临时文件,阻止我使用多线程(文件冲突) – 2011-04-27 06:58:19
除了Blender的答案,这只是执行Tesseract可执行文件,我想补充说,还有其他的OCR替代方案,也可以称为外部进程。
ABBYY COMAND在线OCR工具:http://ocr4linux.com/en:start
这不是免费的,所以值得考虑的只有正方体准确性不够好为你的任务,或者你需要更复杂的布局analisys或需要导出PDF, Word和其他文件。
更新:这里的ABBYY和正方体的准确性比较:http://www.splitbrain.org/blog/2010-06/15-linux_ocr_software_comparison
声明:我ABBYY
我认为Tesseract比ABBY FineReader具有更好的准确性,因为我已经用它来数字化几百本书。 – Blender 2011-04-27 22:54:51
@Blender:下面是几个引擎的比较:http://www.splitbrain.org/blog/2010-06/15-linux_ocr_software_comparison您可以看到,ABBYY一般来说准确得多,在大多数样本上都可以达到100%的准确率,但仍然有些地方比tesseract差。我的经验表明:一般而言,ABBYY确实更精确,而且(对我而言最重要的)即使没有经过培训也能很好地工作。你培训tesseract的文件?你是否还训练ABBYY或比较它? – Tomato 2011-04-28 08:34:57
根本没有针对Tesseract的培训。但是我使用的是Tesseract的'svn'版本,与普通的稳定版本大不相同。 – Blender 2011-05-02 17:47:35
蟒蛇正方体
http://code.google.com/p/python-tesseract
import cv2.cv as cv
import tesseract
api = tesseract.TessBaseAPI()
api.Init(".","eng",tesseract.OEM_DEFAULT)
api.SetPageSegMode(tesseract.PSM_AUTO)
image=cv.LoadImage("eurotext.jpg", cv.CV_LOAD_IMAGE_GRAYSCALE)
tesseract.SetCvImage(image,api)
text=api.GetUTF8Text()
conf=api.MeanTextConf()
你有一大堆的选择这里。
其他人指出的一种方法是使用tesseract。看起来现在有一堆包装,所以最好的方法是do a quick pypi search。最常用的人这几天都:
寻找类似引擎的另一个有用的网站是alternative.to。根据他们的一些基于Linux的系统有:
- ABBYY
- 正方体
- 楔形文字
- Ocropus
- GOCR
为什么关闭的问题?它肯定适用于“程序员常用的软件工具”和“编程专业特有的实用,可回答的问题”,这些问题在http://stackoverflow.com/help/on-topic – 2013-07-26 08:31:26