【问题标题】:c# OCR can't recognize digits (tesseract 2)c# OCR 无法识别数字(tesseract 2)
【发布时间】:2011-07-25 10:03:33
【问题描述】:

我正在尝试从以下内容中提取数字:

失败了,我得到一个~作为回报。我正在使用谷歌的 tesseract 2,使用 C#(开源 c# 包装器),现在我想知道,这张图片是否太糟糕而不能用于 OCR?

因为恕我直言,数字很清楚。

您是否有任何其他 OCR 引擎可以解决这个问题?

编辑

我也尝试过使用 Asprise OCR (http://asprise.com/product/ocr/selector.php),但它也无法解析图像...

【问题讨论】:

  • 可能任何您支付 $ 购买的引擎都能够获得数字 - 例如 Abbyy 或 Oce'。
  • 这是给我公司的。并且判断任务的大小,我敢肯定他们不会为此付钱,我也付不起^_^。这是两难境地:/。但是您是否认为我的图像对于 weak ocr 引擎来说太垃圾了?
  • 你会推荐任何其他开源甚至免费的引擎吗?
  • 我还没有找到一个好的开源 OCR。我很想知道是否也存在这种情况。据我所知,文档处理中有很多钱是通过点击(文档或页面)来收费的。
  • 是的,这是一个糟糕的图像。磅值太小,文本没有抗锯齿,因此太块状。后者可能是扫描仪工件。

标签: c# ocr tesseract


【解决方案1】:

我建议调整大小。我在 IE 中将此页面放大到 200%,截取屏幕截图,将其打印为 PDF 并将其导入到我使用 tessnet 的程序中。苔丝成功了!除非我读错了#s :-)

尽管置信度 = 140(如果您想知道,最好低于 100)。当然,当我尝试原始尺寸时,我没有得到〜;我得到了大约 1/2 的 #s 正确,一堆字母和其他垃圾。不够好,但更好。

t2 似乎喜欢一定尺寸的图像。

我的程序会进行处理以使其正常工作。建议使用 .net GDI+ 转换为 32 位,使用插值模式高质量双三次调整大小。这似乎有点“填补空白”。

使用可行的尺寸 - 我发现,太大或太小,并且 tesseract 表现不同。

这两个问题都是预处理,这很简单,你会尝试 tesseract;但是,我知道如何调整大小和插值;我不知道如何进行 OCR!所以我愿意和解。

【讨论】:

  • 我可以使用您的代码来重新处理图像质量,以便我可以插入并测试吗?谢谢
  • @CoolStraw - 实际上,我使用 Alfred Bolliger 的 PrintKey 2000 拍摄了 IE8 的屏幕截图,使用 PDFMachineWhite 免费版打印,然后我的程序使用verydoc 的 pdf2vec 自动将其转换为 WMF,并使用VB.NET/GDI+,在其中渲染 WMF,并调整它的大小,在 UI 中呈现它,允许我拖动一个选择矩形并从弹出窗口中选择 OCR,保存一个用于单独进程的 sn-p 到 OCR 它使用tessnet ...(我忍不住要说!)不要那么努力。使用这样的代码 (bobpowell.net/highqualitythumb.htm) 来调整大小只放大,不缩小。
  • 你摇滚我的世界宝贝男孩!非常感谢您解决了我的拦截器问题!
【解决方案2】:

您的图片分辨率太低——96 DPI,可能是屏幕截图。将其重新缩放到 300 DPI,tessnet2 应该能够识别它。

【讨论】:

    猜你喜欢
    • 2021-03-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-08-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多