AI文档识别技术之表格识别(一)
2023/8/13 21:22:19
本文主要是介绍AI文档识别技术之表格识别(一),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
文章目录
前言
此文章主要介绍DocumentAI表格识别的V1版本,通过DocumentAI表格识别实现表格检测并实现表格还原结构
- 表格检测:检测表格在图片中所处的区域
- 表格还原结构:通过表格图片还原表格的结构信息,主要包括(行数,列数,合并单元格数)
目前DocumentAI表格识别已实现V2版本,大幅提升标准表格的识别准确率,具体信息会在下一篇blog中再具体说明
1. 表格识别原理介绍
1.1 表格类型分类
在现实生活中,表格大小、种类与样式复杂多样,例如表格中存在不同的背景填充,不同的行列合并方法,不同的内容文本类型等,并且现有文档既包括现代的、电子的文档,也有历史的、扫描的手写文档,它们的文档样式、所处光照环境以及纹理等都有比较大的差异,表格识别一直是文档识别领域的研究难点。
DocumentAI表格识别将表格分为两类,一种为标准表格,另一种为非标准表格:
- 标准表格:表格边框完整,表格内线完整且清晰,无需人为再添加表格线条做表格内容分割
标准表格图片
- 非标准表格:缺少表格边框或者表格内线,表格线条不清晰,需要人为添加表格线条分割表格内容,例如下面的表格就缺少很多的横线与竖线
非标准图片
1.2 识别原理
DocumentAI通过结合AI与传统算法实现表格识别,主要用到的AI能力与算法有:
- AI:版面分析能力(通过AI版面分析检测表格在图片内所处的区域)
- AI:OCR能力(通过OCR实现识别表格内容)
- 算法:图像处理算法(通过结合图像处理算法辅助获取表格结构信息)
通过以上的AI与算法再结合一些表格识别算法即可实现通用表格识别,同时支持识别标准表格与非标准表格
2. 整体识别流程
2.1 流程图
2.2 图像处理部分大致流程
图像处理的大致流程为:
- 对输入的表格图片进行预处理
- 通过形态学算法过滤非线条信息
- 检测线条与block得到表格的基础信息
3. 将表格转换为html与json格式输出
3.1 html格式
通过输出表格的html格式更方便用户的结果可视化与调试
3.2 json格式
通过json格式更方便的在各语言之间传输表格数据
3.3 表格识别实例
原图
html展示结果
{ "type": "table_with_line", //表格类型 "angle": 0, //表格倾斜角度 "width": 572, //表格宽度 "height": 93, //表格高度 "rows": 3, //表格行数 "cols": 3, //表格列数 "position": [111, 266, 683, 266, 683, 359, 111, 359], //表格位置 "height_of_rows": [32, 30, 31], //表格每一行的高度 "width_of_cols": [190, 190, 191], //表格每一列的宽度 "table_cells": [ //表格内所有单元格的信息 { "start_row": 1, //单元格所在开始行号 "end_row": 1, //单元格所在结束行号 "start_col": 1, //单元格所在开始列号 "end_col": 1, //单元格所在结束列号 "text": "", //单元格文本内容 "position": [0, 0, 190, 0, 190, 32, 0, 32], //单元格位置 "lines": [] //单元格文本行信息 }, ..., // 其余单元格 { "start_row": 3, "end_row": 3, "start_col": 3, "end_col": 3, "text": "23%", "position": [380, 62, 571, 62, 571, 93, 380, 93], "lines": [ { "text": "23%", "score": 1, "position": [458, 70, 491, 70, 491, 93, 458, 93] } ] } ] }
表格json结果
这篇关于AI文档识别技术之表格识别(一)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-12-22程序员出海做 AI 工具:如何用 similarweb 找到最佳流量渠道?
- 2024-12-20自建AI入门:生成模型介绍——GAN和VAE浅析
- 2024-12-20游戏引擎的进化史——从手工编码到超真实画面和人工智能
- 2024-12-20利用大型语言模型构建文本中的知识图谱:从文本到结构化数据的转换指南
- 2024-12-20揭秘百年人工智能:从深度学习到可解释AI
- 2024-12-20复杂RAG(检索增强生成)的入门介绍
- 2024-12-20基于大型语言模型的积木堆叠任务研究
- 2024-12-20从原型到生产:提升大型语言模型准确性的实战经验
- 2024-12-20啥是大模型1
- 2024-12-20英特尔的 Lunar Lake 计划:一场未竟的承诺