【问题标题】:How to get better result when using Tesseract on receipt?在收据上使用 Tesseract 时如何获得更好的结果?
【发布时间】:2019-10-01 21:41:32
【问题描述】:

我正在用 Java 构建一个扫描收据的应用程序,并使用 OCR 和 tesseract 库提取所有文本。我已经在两张图片上运行了该程序,一张是我拍摄的,一张来自互联网,我从互联网上得到了一个几乎完美的结果,但是我的图片中有随机字符串。我该如何改变呢?我需要高质量的高分辨率图像吗?

我尝试拍摄更好的图像,即使是只有一个单词的图像,但我什么也没得到。

Tesseract instance = new Tesseract();
instance.setDatapath(pathToMyTessData); 
instance.setLanguage("fra");

String result = instance.doOCR(new File(myReceiptFile));
System.out.println(result);

我要扫描的收据包含很多(对我来说没用的)我不想提取的信息,有没有办法只提取食品、日期、总数等...?

P.S:我的票看起来像this

【问题讨论】:

    标签: java dataset ocr tesseract


    【解决方案1】:

    也许你应该训练你的 tesseract ,还有另一篇关于这个的帖子。 here

    【讨论】:

    • 训练只对特殊的非标准字体或训练数据中缺失的字符有意义,而上述图像并非如此。
    【解决方案2】:

    你可能会错过这个 SO 主题 image processing to improve tesseract OCR accuracy

    如果你想得到完美的结果,也许你需要做自定义布局分析,所以你可以发送到tesseract包含的文本区域(=>相同大小的字体大小)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-09-17
      • 2011-09-04
      • 2011-12-30
      • 2021-12-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多