System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种银行流水OCR快速识别方法技术_技高网

一种银行流水OCR快速识别方法技术

技术编号:41284427 阅读:3 留言:0更新日期:2024-05-11 09:33
本发明专利技术涉及数据处理技术领域,尤其涉及一种银行流水OCR快速识别方法,包括采用OCR识别模型对银行流水的表格的文本块识别得到由文本框包围的子文本块,将表头的子文本块加入vec_head并切分表头的子文本块或对表头的子文本块进行初次判定,将表头下一行的子文本块加入vec_head_double,确定表格类型,确定对当前一行明细的子文本块的二次判定,以确定当前一行明细中单个子文本块是否属于vec_head_double中的单个子文本块,确定当前一行明细中单个子文本块是否属于vec_head中的单个子文本块,确定当前一行明细的子文本块的划分方式,本发明专利技术克服了现有技术中不同版式的银行流水表格没有横纵线辅助表格进行识别,导致对表格识别的适应性差和识别精度差的问题。

【技术实现步骤摘要】

本专利技术涉及数据处理,尤其涉及一种银行流水ocr快速识别方法。


技术介绍

1、在金融领域,银行流水账单是重要的财务资料,它记录了账户的所有交易明细,对于个人和企业的财务管理至关重要。随着信息技术的发展,人们越来越倾向于使用电子形式的银行流水账单,这就需要将账单中的文本信息准确地从图像转换为可编辑和可分析的数据格式。为了实现这一转换,通常会使用光学字符识别(optical characterrecognition,ocr)技术。

2、ocr技术能够识别和转换不同类型的文档,包括打印文本、手写文本以及图像中的文本。然而,银行流水账单通常包含复杂的表格和多样的格式,这对ocr技术的准确性和效率提出了较高的要求。传统的ocr系统可能难以准确处理表格中的数据,尤其是当表格布局复杂或文本格式不规则时。

3、针对银行流水账单的ocr识别,需要一种能够准确地识别和处理表格数据的方法。这种方法应该能够识别表格的结构,包括表头和表体,以及处理不同行列的数据。同时,对于表格内的文本块,需要能够进行有效的切分和分类,以确保数据的准确性和完整性。

4、中国专利申请公开号:cn116152480a公开了一种数据提取和结构化处理系统及实现方法,包括:文件上传模块、文件识别模块、数据解析模块、解析结果整合模块、解析结果存储模块等五个模块,共十个功能:文件上传、文件转换、文件识别、识别结果自动校验、识别结果人工校验、定位表格类型、解析数据、整合解析结果、存储解析结果。

5、由此可见,现有技术存在以下问题:由于不同版式的银行流水表格没有横纵线辅助表格进行识别,导致对表格识别的适应性差和识别精度差。


技术实现思路

1、为此,本专利技术提供一种银行流水ocr快速识别方法,用以克服现有技术中不同版式的银行流水表格没有横纵线辅助表格进行识别,导致对表格识别的适应性差和识别精度差的问题。

2、为实现上述目的,本专利技术提供一种银行流水ocr快速识别方法,包括:

3、采用ocr识别模型对银行流水的表格的文本块识别得到由文本框包围的子文本块;

4、遍历表头,将表头的子文本块加入vec_head并切分表头的子文本块;

5、或对表头的子文本块进行初次判定;

6、将表头下一行的子文本块加入vec_head_double,根据vec_head_double中的子文本块与vec_head中的子文本块是否存在水平交叠确定表格类型;

7、或根据任意一行明细的第一子文本块数量确定表格类型;

8、根据当前一行明细的第二子文本块数量确定对当前一行明细的子文本块的二次判定,以根据当前一行明细中单个子文本块与vec_head_double中的单个子文本块的第一水平交叠率确定当前一行明细中单个子文本块是否属于vec_head_double中的单个子文本块;

9、根据当前一行明细中单个子文本块与vec_head中的单个子文本块的第二水平交叠率确定当前一行明细中单个子文本块是否属于vec_head中的单个子文本块;

10、确定当前一行明细的子文本块和上一个日期所在行的第一垂直交叠率以及当前一行明细的子文本块和下一个日期所在行的第二垂直交叠率,以根据所述第一垂直交叠率与所述第二垂直交叠率的比对结果确定当前一行明细的子文本块的划分方式。

11、进一步地,所述将表头的子文本块加入vec_head并切分表头的子文本块包括在表头的子文本块中字符之间的间隔大于等于第二预设间隔的条件下切分表头的子文本块;

12、或,在表头的文本块中字符之间的间隔大于第一预设间隔且小于第二预设间隔的条件下对表头的子文本块进行初次判定。

13、进一步地,所述对表头的子文本块进行初次判定包括在vec_head中的子文本块切分后剩余字符的字符数量小于等于预设数量的条件下删除剩余字符。

14、进一步地,所述根据vec_head_double中的子文本块与vec_head中子文本块的是否存在水平交叠确定表格类型包括当存在水平交叠时确定表格类型为单条数据多行类型;

15、或,当不存在水平交叠时,将vec_head_double中的子文本块加入vec_head。

16、进一步地,所述根据任意一行明细的第一子文本块数量确定表格类型包括在存在任意一行明细的第一子文本块数量小于上一行明细子文本块数量的条件下确定表格类型为单列数据多行类型;

17、或,在每一行明细的第一子文本块数量等于上一行明细的子文本块数量的条件下确定表格类型为单条数据单行类型。

18、进一步地,所述根据当前一行明细的第二子文本块数量确定对当前一行明细的子文本块的二次判定包括在当前一行明细的第二子文本块数量小于上一行明细的子文本块数量的条件下对当前一行明细的子文本块进行二次判定。

19、进一步地,所述第一水平交叠率根据以下公式计算,设定

20、;

21、其中,d1表示所述第一水平交叠率,a2表示vec_head_double中单个子文本块的文本框右下角的横坐标,a1表示vec_head_double中单个子文本块的文本框左下角的横坐标,b1表示当前一行明细中单个子文本块的文本框左下角的横坐标;

22、所述确定当前一行明细中单个子文本块是否属于vec_head_double中的单个子文本块包括在所述第一水平交叠率小于等于第一预设水平交叠率的条件下确定当前一行明细中单个子文本块不属于vec_head_double中的单个子文本块;

23、或,在所述第一水平交叠率小于等于1且大于第一预设水平交叠率的条件下确定当前一行明细中单个子文本块属于vec_head_double中的单个子文本块。

24、进一步地,所述第二水平交叠率根据以下公式计算,设定

25、;

26、其中,d2表示第二水平交叠率,a02表示vec_head中单个子文本块的文本框右下角的横坐标,a01表示vec_head中单个子文本块的文本框左下角的横坐标,b01表示当前一行明细中单个子文本块的文本框左下角的横坐标;

27、所述确定当前一行明细中单个子文本块是否属于vec_head中的单个子文本块包括在所述第二水平交叠率小于等于第二预设水平交叠率的条件下确定当前一行明细中单个子文本块不属于vec_head_double中的单个子文本块;

28、或,在所述第二水平交叠率小于等于1且大于第二预设水平交叠率的条件下确定当前一行明细中单个子文本块属于vec_head_double中的单个子文本块。

29、进一步地,所述第一垂直交叠率根据以下公式计算,设定

30、;

31、其中,c1表示所述第一垂直交叠率,f1表示上一个日期的文本框右下角的纵坐标,f2表示上一个日期的文本框右上角的纵坐标,g2表示当前一行明细中子文本块的文本框左上角的纵坐标本文档来自技高网...

【技术保护点】

1.一种银行流水OCR快速识别方法,其特征在于,包括:

2.根据权利要求1所述的银行流水OCR快速识别方法,其特征在于,所述将表头的子文本块加入vec_head并切分表头的子文本块包括在表头的子文本块中字符之间的间隔大于等于第二预设间隔的条件下切分表头的子文本块;

3.根据权利要求2所述的银行流水OCR快速识别方法,其特征在于,所述对表头的子文本块进行初次判定包括在vec_head中的子文本块切分后剩余字符的字符数量小于等于预设数量的条件下删除剩余字符。

4.根据权利要求3所述的银行流水OCR快速识别方法,其特征在于,所述根据vec_head_double中的子文本块与vec_head中子文本块的是否存在水平交叠确定表格类型包括当存在水平交叠时确定表格类型为单条数据多行类型;

5.根据权利要求4所述的银行流水OCR快速识别方法,其特征在于,所述根据任意一行明细的第一子文本块数量确定表格类型包括在存在任意一行明细的第一子文本块数量小于上一行明细子文本块数量的条件下确定表格类型为单列数据多行类型;

6.根据权利要求5所述的银行流水OCR快速识别方法,其特征在于,所述根据当前一行明细的第二子文本块数量确定对当前一行明细的子文本块的二次判定包括在当前一行明细的第二子文本块数量小于上一行明细的子文本块数量的条件下对当前一行明细的子文本块进行二次判定。

7.根据权利要求6所述的银行流水OCR快速识别方法,其特征在于,所述第一水平交叠率根据以下公式计算,设定

8.根据权利要求7所述的银行流水OCR快速识别方法,其特征在于,所述第二水平交叠率根据以下公式计算,设定

9.根据权利要求8所述的银行流水OCR快速识别方法,其特征在于,所述第一垂直交叠率根据以下公式计算,设定

10.根据权利要求9所述的银行流水OCR快速识别方法,其特征在于,所述确定当前一行明细的子文本块的划分方式包括在所述第一垂直交叠率小于所述第二垂直交叠率的条件下确定当前一行明细的子文本块划分至下一个日期所在行;

...

【技术特征摘要】

1.一种银行流水ocr快速识别方法,其特征在于,包括:

2.根据权利要求1所述的银行流水ocr快速识别方法,其特征在于,所述将表头的子文本块加入vec_head并切分表头的子文本块包括在表头的子文本块中字符之间的间隔大于等于第二预设间隔的条件下切分表头的子文本块;

3.根据权利要求2所述的银行流水ocr快速识别方法,其特征在于,所述对表头的子文本块进行初次判定包括在vec_head中的子文本块切分后剩余字符的字符数量小于等于预设数量的条件下删除剩余字符。

4.根据权利要求3所述的银行流水ocr快速识别方法,其特征在于,所述根据vec_head_double中的子文本块与vec_head中子文本块的是否存在水平交叠确定表格类型包括当存在水平交叠时确定表格类型为单条数据多行类型;

5.根据权利要求4所述的银行流水ocr快速识别方法,其特征在于,所述根据任意一行明细的第一子文本块数量确定表格类型包括在存在任意一行明细的第一子文本块数量小于上一行...

【专利技术属性】
技术研发人员:葛钧航饶顶锋陶坚坚刘伟易爱春刘鑫源麻文华
申请(专利权)人:北京译图智讯科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1