google 的 tesseract-OCR 中使用哪种算法进行识别?

Posted

技术标签:

【中文标题】google 的 tesseract-OCR 中使用哪种算法进行识别?【英文标题】:Which algorithm is used in google's tesseract-OCR for Recognition? 【发布时间】:2017-11-09 03:14:49 【问题描述】:

google 的 tesseract-OCR 识别用的是什么算法?是神经网络吗?

【问题讨论】:

【参考方案1】:

the tesseract source 中的This paper 提供了对该技术的深入概述。

值得注意的是:

Blob 被组织成文本行,行和区域是 分析固定间距或比例文本。

[...]

识别然后作为两遍过程进行。在第一关,一个 尝试依次识别每个单词。每一个字是 满意的作为训练数据传递给自适应分类器。这 然后自适应分类器有机会更准确地识别 页面下方的文字。

[...]

找到文本行后,基线会更适合 精确地使用二次样条。

[...]

通过将 blob 划分为组来拟合基线 原始直线基线的合理连续位移。 将二次样条拟合到人口最多的分区,(假设 作为基线)通过最小二乘拟合。

这篇论文没有明确说明它是否使用了神经网络,但考虑到内容我会说它很可能,至少在其中的一部分。

有关寻线的更多信息,请参阅R。史密斯,“一种通过文本行累积的简单有效的倾斜检测算法”,Proc。第三诠释。会议。关于文档分析和识别(第 2 卷),IEEE 1995,第 1145-1148 页。

【讨论】:

感谢您的链接:) @ChiroOdhora 您能否接受它(在投票箭头下方打勾),这样它就不会再“未答复”了? :)【参考方案2】:

基于tesseract github repo 的About 部分:

Tesseract 4 添加了一个新的基于神经网络 (LSTM) 的 OCR 引擎,它是 专注于线条识别

该算法使用 LSTM 模型提取文本。

更多信息,您可以查看页面How Tesseract uses LSTMs...的Modernization Efforts

所以,是的,它是基于神经网络的。

【讨论】:

以上是关于google 的 tesseract-OCR 中使用哪种算法进行识别?的主要内容,如果未能解决你的问题,请参考以下文章

tesseract-ocr图片识别开源工具

Tesseract-OCR-03-图片文字识别

如何在 Google 表格的 IMPORTRANGE 中使单元格引用动态化?

在android google map v2中使标记只能点击一次

Tesseract-OCR 安装中文识别与训练字库

求易语言调用tesseract-OCR例子