c# - 应付发票捕获或提取自动化

标签 c# ocr capture invoices iris-recognition

关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。












想改进这个问题?将问题更新为 on-topic对于堆栈溢出。

3年前关闭。




Improve this question




我正在创建一个桌面/winform 应用程序,它读取 tif/pdf 应付发票并提取所有发票信息以存储到数据库中。

我可以使用 OCR(图像的 ocr 特定区域)读取标准条形码(QR 码、Code39 等)和一些应付发票的标准字段(发票日期、公司名称、地址),但无法捕获行项目、正确金额.

我分两个阶段提取信息:
1.根据模板读取特定区域(用户映射区域
特定领域)
2. OCR整页并搜索应付账款
发票标准字段名称和值

我有以下3种方法的想法:
1. 为一种发票创建模板并处理所有发票。
2. 基于神经网络的引擎,需要使用样本数据进行训练才能根据模式进行工作。
3.表单处理,一种OMR。 OCR 查看字段放置在表单上的完全相同的坐标(在表单设计期间)

问题:
如何使用 OCR 或一些智能阅读器提取应付发票?
我主要寻找一些算法(C# + OCR 引擎)/应付发票捕获的理念,但引用一些具有相同功能或可靠类型的商业产品的 SDK 也会有帮助。

我在 Google 上搜索并发现 Abbyy FlexiCapture Engine、IRIS Capture & Extract 很有前途,但主要是基于模板或培训。他们声称不需要模板或培训,但没有任何东西看起来 100 自动捕获。

请引用一些产品(至少免费试用)、SDK 或示例/示例。

最佳答案

当然,到 2018 年,情况有所改善。让我回顾一下今天的主要方法:

  • 仍然是原始 OCR 引擎(tesseract、Abbyy、Google OCR 等)和正则表达式(对于一些非常有限的用例,这可能仍然可以正常工作)
  • Abbyy FlexiCapture Engine - 如果您愿意为每种特定发票格式定义一个新模板
  • ,仍然很强大,但仍然基于模板
  • Rossum Elis (发票), TagGun (收据),... - 基于预先训练的机器学习模型的 API,即可用并立即工作,每月免费数量
  • LucidTech , Itemize , ... - 具有类似功能的不易访问的 API(您需要通过演示和销售流程)
  • Datamolino , CloudFactory , ... - 人工在幕后手动执行数据转录的 API(不同的延迟、定价和准确度结构)
  • 关于c# - 应付发票捕获或提取自动化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20021353/

    相关文章:

    c# - 在 JSON 反序列化期间没有为 'System.String' 类型定义无参数构造函数

    Python - 删除(转换为白色)图像的非黑色像素

    python - 从计算机屏幕识别图像

    java - 在 Java 中捕获(捕获)窗口中的鼠标光标

    Python 正则表达式问号运算符不起作用?

    c++ - 使用 Qt 的正则表达式捕获一些文本

    c# - C#解释中的Vigenere算法

    c# - List<T>.Remove 应该放在 List<T>.Exists 之前吗?

    c# - .NET 中并行任务的线程安全

    java - 将希伯来语单词转换为英语字符