【问题标题】:OCR engine to capture characters from images用于从图像中捕获字符的 OCR 引擎
【发布时间】:2012-08-09 02:59:38
【问题描述】:

我正在为 Tesseract OCR 引擎使用 c# tessnet2 包装器来捕获图像文件的字符。我一直在到处搜索 tessnet2 是否有任何内置函数来覆盖某些字符并将它们保存到它正在读取的同一个图像文件中,但没有找到任何相关的内容。所以我想做的是根据我从 tessnet2 收到的内容创建一个新的想象文件,但我需要以相同的方式创建新图像,但只更改新创建的图像中的一些内容。我不确定我是否使用了正确的方法,或者是否有其他 c# 程序集允许您从图像文件中读取字符,同时允许您根据需要进行操作。

【问题讨论】:

    标签: c# ocr tesseract tessnet2


    【解决方案1】:

    祝你好运——但 tess 无法用正确的字体替换。光栅图形通常不存储字形信息。即使是这样,您也可能会违反与您要书写的字体相关的许可和/或版权。我不是 OCR 方面的专家,但我会自信地说,这不是现成的东西在野外。

    【讨论】:

      【解决方案2】:

      扩展布赖恩的回答: 您需要自己执行此操作。我没有使用过 Tesseract,但我使用过 Nuance OCR 引擎。它将返回字体信息以及它已识别的字符的坐标(请注意,您很可能必须计算实际的图像坐标,因为 OCR 引擎会在执行识别之前对图像进行校正)。一旦你得到坐标和纠偏以便计算实际坐标,你就可以使用任何图像处理库(Leadtools、Accusoft 等)或直接 GDI+ 函数来清除字符,然后使用字体信息和大小信息创建一个新角色并将其合并到图像中。这不是微不足道的,但肯定是可行的。

      编辑:
      当我写最初的答案时已经很晚了,想澄清字体信息的含义。 OCR 引擎将为您提供有关磅值、粗体/斜体和字体系列的信息(Seriph , 等等)。我不知道有哪一种能告诉您文档所在的确切字体。如果您有要处理的文档样本,那么您可以根据 OCR 引擎提供的信息做出很好的猜测。

      【讨论】:

      • 但仍然是一个潜在的法律问题。如果您要使用商业字体书写,则需要获得许可——如果您要对来自各种来源的文档进行这些编辑,这可能会变得难以管理。
      • @BrianWarshaw - 当然,这可能是一个问题,我没有从这个角度解决它。我是从你那里解决的。我在一家编辑软件公司工作了几年,我们做过这样的事情,但这并不是一件小事(尤其是脏文档)
      • 我现在明白这是如何工作的,当我写第一篇文章时我只是在学习,不知道涉及到什么。你们知道可以读取 PDF 的 OCR 引擎吗? Tesseract 不读取 PDF
      • 好吧,与其寻找 OCR 引擎来读取 PDF,不如寻找读取 PDF 内容的 API?如果您的 PDF 基本上只是 PDF 页面上的大光栅图像,您可以结合使用 PDF 阅读 API(获取图像内容)和 OCR 引擎来处理光栅图形。
      • @DavidPerez - 要关注 Brian 的评论,您可以尝试 pdfsharp.net/MainPage.ashx,我认为它只支持阅读最高 1.4 版的 PDF。
      猜你喜欢
      • 1970-01-01
      • 2010-12-31
      • 1970-01-01
      • 2017-11-16
      • 1970-01-01
      • 1970-01-01
      • 2020-11-15
      • 2010-12-15
      • 2013-09-19
      相关资源
      最近更新 更多