我如何在Tesseract和OpenCV之间进行选择? [关闭]
computer-vision
ocr
opencv
python
6
0

我最近遇到过TesseractOpenCV 。看起来Tesseract是成熟的OCR引擎,而OpenCV可以用作创建OCR应用程序/服务的框架。

我尝试在某些图像上使用Tesseract,其准确性似乎不错。后来,我遇到了一个有关使用OpenCV使用Python执行OCR的非常简单的教程 ,这给我留下了深刻的印象。几分钟后,我完成了对该系统的培训,其准确性非常好。但是,当然,采用这种方法意味着我需要使用大型训练集来广泛地训练系统。

我的具体问题如下:

  • 如何在Tesseract和使用OpenCV构建自定义OCR应用之间进行选择?
  • 对于Tesseract,有针对不同语言的培训数据集。 OpenCV是否有类似的东西,这样我就不必重新开始实现OCR了?
  • 对于想成为商业应用程序的哪个更好?

有什么建议么?

参考资料:
Stack Overflow
收藏
评论
共 3 个回答
高赞 时间 活跃

两者可以互补。如果您阅读有关OpenCV的文章,请访问: https : //github.com/tesseract-ocr/docs/blob/master/tesseracticdar2007.pdf

它着重指出:“由于HP具有产品中使用的独立开发的页面布局分析技术,因此Tesseract从来不需要自己的页面布局分析。因此,Tesseract假定其输入是带有定义了可选的多边形文本区域。”

此类任务可由OpenCV执行,并将生成的图像移交给Tesseract。您可以在Git存储库中找到此类代码的示例: https : //github.com/Itseez/opencv_contrib/tree/master/modules/text/samples这些示例使用Tesseract API进行图像到文本的转换。

收藏
评论
  • Tesseract是OCR引擎。它由Google使用,研究和资助,专门用于读取图像中的文本,执行基本的文档分割以及对特定的图像输入(单个单词,行,段落,页面,有限的词典等)进行操作。

  • 另一方面,OpenCV是一个计算机视觉库,其中包含使您可以执行某些特征提取和数据分类的功能。您可以创建一个简单的字母分段器和分类器来执行基本的OCR,但它并不是一个很好的OCR引擎(我之前从头开始用Python编写过。这对于输入与您的训练数据有所不同的输入确实不准确)。

如果您想基本了解OCR的难度,请尝试使用OpenCV。 Tesseract适用于真正的 OCR。

收藏
评论

我是您提到的那个数字识别教程的作者, 我想说,这绝不能替代tesseract。

Tesseract是一个非常好的OCR引擎,可能是最好的OpenSource OCR引擎。

您提到的教程只是一个尝试,旨在了解OCR的最简单工作。

因此,如果您正在寻找OCR应用程序,我建议您使用OpenCV预处理图像,然后应用tesseract引擎。

收藏
评论
新手导航
  • 社区规范
  • 提出问题
  • 进行投票
  • 个人资料
  • 优化问题
  • 回答问题

关于我们

常见问题

内容许可

联系我们

@2020 AskGo
京ICP备20001863号