一. 算法框架
表格识别技术主要使用基于注意力机制的图片描述模型 RARE,整体流程如下图所示,对于其中的表格区域进行表格识别处理。
表格识别的难点主要在于表格结构的提取,以及将表格信息与 OCR 信息融合。整体流程可以分为上下两部分,其中上半部分(黑色支路)是普通的 OCR 过程,通过(1)文本检测模块对表格图片进行单行文字检测,获得坐标,然后通过(2)文本识别模块识别模型得到文字结果。
而在下半部分的在蓝色支路中,表格图片首先经过(3)表格结构预测模块,获得每个 Excel 单元格的四点坐标与表格结构信息。结合黑色支路文本检测获得的单行文字文本框 4 点坐标,共同输入(4)Cell 坐标聚合模块,再通过(5)Cell 文本聚合模块,将属于同一单元格的文本拼接在一起。最后结合表格结构信息,通过(6)Excel 导出模块获得 Excel 形式的表格数据。
下面分别针每个模块分别展开介绍。
二. 文本检测模块和文本识别模块
主要使用 PP-OCR 提供的检测和识别算法。
三. 表格结构预测模块
主要使用基于 Attention 的图片描述模型 RARE,RARE 模型可以实现:输入一张图片,通过带有注意力机制的网络输出一段文字,描述图片的内容,而针对于表格图片的图片描述网络,输入一张经过版面分析的表格图片,输出的是一串 HTML 字符(如下图所示)。表格的结构通过 HTML 的结构标记表示,其中的内容即为表格文本中的内容。通过进一步的 HTML 解析,可以获得每个文本的单元格四点坐标和表格结构信息。
四. Cell 坐标聚合模块
主要用来解决如何将跨行单元格的文本重新拼接在一个单元格内的问题。它通过计算由文本检测算法获得的文本框坐标(红色框)与表格结构预测模块得到的 Cell 坐标(蓝色框)之间的 IOU 和顶点距离来进行单行到多行的聚合。使用 IOU 判断哪些红色框同属于一个蓝色框,使用顶点距离和 IOU 判断红色框的排列顺序。
五. Cell 文本聚合模块
根据已有的红色文本框顺序,按照从上到下从左到右顺序利用(4)Cell 坐标聚合模块的结果将(2)文本识别结果和进行拼接,这样对于多行文本的单元格内容即可拼接成一个字符串。
六. Excel 导出模块
将(3)表格结构预测结果 html 结果与(5)Cell 文本聚合模块文本结果结合,最终导出为 Excel 输出。
论文地址:https://arxiv.org/pdf/1603.03915v1.pdf (RARE论文)
我们的表格识别技术解决方案
欢迎技术交流!!!