2

我有一个 Tesseract 4.0 设置,我们正在使用用于 OCR 的 LSTM 模型;传入的扫描 PDF 被解构为单独的 300dpi 上采样 PNG,然后进行去偏斜和 OCR 处理,然后重新组合成带有文本层的 PDF,同时还保存每个页面的 PNG 以便在网络浏览器中进一步显示。

有时我们会收到已经用文本图层进行专业转录的 PDF,在这些文件上运行 Tesseract 会导致准确性下降。

我们还需要稍后根据特定标签对 PNG 页面的某些部分进行分类,以用于机器学习应用程序。

所以问题将是这些:

1)有没有办法确定PDF是否已经有文本层并确定该文本的准确性?

2) 是否可以将已经包含文本图层的 PDF 分解为单独的每页 hOCR 文件,以便可以使用边界框和从相应 hOCR 文件中为该区域检索的文本突出显示 PNG 格式的这些页面的特定区域?

3) 当使用 Tesseract 将 OCR 文本保存为 hOCR 格式时,这是否提供了足够的信息,以便能够从 hOCR 文件中检索与创建 hOCR 文件的 PNG 上的确切区域相对应的任意文本块?

提前致谢

4

1 回答 1

1

有不同的工具可以将带有文本层的 PDF 转换为简单的文本或一些 HTML;只需搜索例如 pdf2text 或 pdf2html。因此,您可以通过使用此类工具并检查文本内容是否为非空来确定PDF是否具有文本层(问题1.a)。此外,我建议对文本进行一些完整性检查(例如,合理的词长,字典中的一些词),以避免只有乱码文本(问题 1.b 的一部分)。

我不知道有任何 pdf2hocr 工具(问题 2)。当然有可能想出这样的东西。但也许,使用前面提到的 pdf2html 工具之一的输出更容易。ocr-fileformat 存储库中有一个相关问题:https ://github.com/UB-Mannheim/ocr-fileformat/issues/57

Tesseract 的 hocr 输出将为您提供每行以及每个单词的边界框的坐标。因此,您可以计算给定区域,哪些行或单词与其相交并输出其文本内容(问题 3)。但是,您没有角色的位置。

于 2018-02-14T07:19:16.120 回答