这个项目有三个功能方面,每个方面都可以是一个子项目,即使它们是相互关联的。相关研发中这些方面的脱钩可能会提高开发速度。
- 对图像进行分类——在这种情况下,供应商品牌
- 定位和定位文本
- OCR 文本 - 在这种情况下,总
这些在供应商发票的特定情况下当然是可行的,所以整个项目当然是。
目标是从输入图像中生成两个信息域。
过去的发票、供应商的名称以及每张发票的总额都可以作为培训数据使用,这可能会有所帮助。训练数据量是否足够,只能通过对某些数据指标进行非常复杂的理论应用或通过试验来确定。建议两者都做。
你们会推荐什么算法?
用人们推荐的算法来定义人工智能设计是不负责任的。这些人推荐的算法已经被算法目录路径中的文件路径名、示例的目录路径以及任何好的 AI 框架的文档部分所涵盖。让我们先谈谈设计,然后是算法选项,因此算法选择的基础比网站成员的大部分随机阅读选择要多。
所涉及的模型以及可以参数化以便可以通过训练进行调整的模型部分由上述三个子项目定义。
分析
对于这个项目,人工智能没有理由识别发票上的哪个文本是供应商名称。如果有一百种供应商发票类型,一个人识别每种发票类型的关键边界的速度比开发一个完全通用的算法方法自动化该工作所需的工作快几个数量级。如果有成千上万的供应商和不断变化的发票模板,那么开发这种自动化只会节省资源,这很可能发生在个人理财的情况下。
这些是以下对象所在的四边形(四边多边形)形式的关键边界。
- 供应商名称文本框
- 总金额文本框
- 整个表格周围的矩形
通过其中一个标记程序将十二个点数字化是一个比三个矩形边界框和倾斜表示更可能产生可靠系统的模型。这是因为倾斜角度无论如何都需要至少两个相邻点,并且在实际扫描场景中,当扫描仪可能被更换或产生不同比率的磨损或纸质发票的平滑或磨损特性时,纵横比不能保持恒定。
使用网络完成这三件事将需要一个人十年以上的发票,除非这个人是亿万富翁的强迫性买家,拥有一组秘书进行扫描和数据输入。
模型就是这些。
- 具有不同对比度、亮度、倾斜度、每英寸水平像素、每英寸垂直像素、供应商名称的相对位置和大小以及发票总额的相对位置和大小的四边形文档的数字化
- 矩形框中的数字字符和其他货币字符
- 供应商的品牌形象,可能包括徽标和任意且可能是唯一字体的类型
现在我们可以谈谈人工网络方法。
- 调整对比度、亮度、倾斜度、分辨率、位置和大小将需要基于所涉及的几何形状的自定义输入、损失函数和层排列。如果文档可以按时间顺序排序,GRU 网络可能会获得一些优势,因为集合会变成时间序列,可以利用其趋势。
- 货币价值最好使用 OCR 库来完成。
- 识别品牌可能最好将 CNN 用作分类机器。
如果未找到供应商和总数,系统必须指出,在这种情况下,将指示新模板,并且必须为这种新类型将十二个点数字化。
可以使用一个单一的深度卷积网络来做到这一点,但同样需要扩充数据集。另一种方法是创建一个填写完整的发票生成器,以在上面列出的各种可变性维度上生成大量随机变量数据,以训练深度 CNN。