通用 OCR 理论:通过统一的端到端模型实现 OCR-2.0
Abstract
随着人们对人工光学字符的智能处理需求日益增长,传统的OCR系统(OCR-1.0)已越来越不能满足人们的使用需求。本文,我们将所有人工光学信号(例如纯文本、数学/分子式、表格、图表、乐谱甚至几何图形)统称为"字符",并提出了通用OCR理论以及一个优秀的模型GOT,以推动OCR-2.0的到来。GOT拥有580M参数,是一个统一、优雅、端到端的模型,由高压缩编码器和长上下文解码器组成。作为OCR-2.0模型,GOT可以在各种OCR任务下处理上述所有"字符"。在输入端,该模型支持切片和整页样式的常用场景和文档样式图像。在输出端,GOT可以通过简单的提示生成纯文本或格式化结果(markdown/tikz/smiles/kern)。此外,该模型还具有交互式OCR功能,即通过坐标或颜色引导的区域级识别。此外,我们还将动态分辨率和多页OCR技术应用于GOT,以提高实用性。在实验中,我们提供了足够的结果来证明我们模型的优越性。
1 Introduction
OCR 是一种广泛使用的技术,可将光学图像中嵌入的字符提取为可编辑格式。OCR-1.0 时代的典型 OCR 系统 [10](#10)主要基于多模块流水线风格设计,通常包括元素检测、区域裁剪和字符识别部分。每个模块都容易陷入局部最优,导致整个系统的维护成本很高。此外,传统的 OCR 方法缺乏通用能力,表现为不同的 OCR-1.0 网络通常针对不同的子任务进行设计。然而,从众多 OCR 模型中选择适合某一特定任务的模型对用户来说总是不方便的。在过去的一年里,大型视觉语言模型 (LVLM) [5](#5),[9](#9),[24](#24),[27](#27),[36](#36),[46](#46),[49](#49) 发展迅速,表现出色。作为一项备受期待的能力,当前 LVLM 的 OCR 性能正在不断提高。基于 CLIP [37](#37),LLaVA [24](#24) 在指令调整阶段后自然获得了英文 OCR 能力。为了提高 OCR 准确率并支持中文等其他语言,Qwen-VL[5](#5)解冻了其图像编码器(CLIP-G)并在其第二阶段训练中使用了大量 OCR 数据。创新的是,Vary[46](#46) 生成了一个与 CLIP 分支并行的新高分辨率 OCR 视觉词汇表,以处理文档级密集 OCR。相比之下,InternVL-1.5 [9](#9) 和其他模型 [27](#27), [50](#50) 利用滑动窗口的方式将整个图像裁剪成多个子块,以实现高分辨率 OCR。因此,人们一致认为光学字符感知和识别是文本驱动图像理解的基础,这吸引了许多研究人员更加关注 LVLM 的 OCR 助推器。
然而,现存的 LVLM 流行架构难以适合不同的 OCR 任务,原因如下:1)感知和推理之间的冲突。LVLM 主要关注视觉推理性能,例如 VQA [33](#33), [42](#42),因为这是 LLM 所擅长的。为了快速从 LLM 中获得 QA 增益,大多数 LVLM [15](#15), [24](#24), [19](#19) 将图像token与文本token对齐。然而,对于纯感知 OCR 任务(尤其是高密度文本场景)这样做是不合理的,因为每个对齐的视觉token(偏向文本token)无法压缩足够的字符。想象一下,使用数千个图像token(例如图像裁剪方式 [9](#9), [23](#23) 来编码等量的光学字符(例如,仅在 A4-PDF 页面内的文本)是多么浪费。2)高迭代和部署成本。 LVLM 通常拥有数十亿个参数,导致后期训练和部署成本过高。一般来说,对于 LVLM 来说,一旦我们想要添加新的 OCR 模式(例如,一种新的语言),微调是不够的,而没有足够的 GPU 资源进行预训练。然而,重新运行具有数十亿个参数的预训练只是为了引入一个新的 OCR 特征,这也是一种浪费。
因此,我们提出了通用的OCR理论,即OCR-2.0,以突破传统方法和LVLM方法在OCR任务上的瓶颈。我们认为OCR 2.0模型应具备以下基本特征:
- 端到端。相较于流程复杂的OCR-1.0模型,OCR-2.0模型应具有统一的端到端架构,以确保更低的维护成本。在2.0时代,能够初学者快速掌握整个OCR系统是一件很酷的事。
- 低成本训练和推理。OCR-2.0 模型不应该像 LVLM 那样专注于推理任务的聊天机器人。它的重点应该是对光学字符的强大感知和识别,因此它需要合理数量的模型参数来换取较低的训练和推理成本。
- 通用性。OCR-2.0模型的另一个重点是通用性,包括识别更通用的人工光学"字符",例如乐谱、图表、几何图形等。此外,模型还应支持可读性更强的输出格式,例如公式和表格的LATEX/Markdown格式。
基于提出的通用 OCR 理论,我们提出了一个主要的 OCR-2.0 模型(GOT),以弥合 OCR-1.0 模型与人们更高的光学字符处理需求之间的差距。在架构上,我们为模型采用了简单的编码器-解码器范式。具体来说,GOT 拥有一个高压缩率编码器将光学图像转换为token,以及一个长上下文长度解码器以输出相应的 OCR 结果。编码器具有大约 80M 个参数,输入大小为 1024×1024,足以处理常用的照片/文档输入样式。每个输入图像将被压缩为 256×1024 尺寸的token。GOT 的解码器具有 0.5B 参数,支持最大长度 8K 的token,以确保它能够处理长上下文场景。我们为 GOT 设计了一种有效且高效的训练策略,该策略可分为三个过程,即编码器的解耦预训练、编码器与新解码器的联合训练以及解码器的进一步后训练。此外,为了进一步提升 GOT 的实用性,我们还采用了细粒度 OCR 功能以获得更好的交互性、针对超高分辨率图像(例如超过 2K)的动态分辨率策略以及多页 OCR 技术来缓解 PDF 图像-文本对中分页困难的问题(例如,.tex 文件中的分页符)。为了支持每个训练阶段,我们为合成数据生产做了许多数据引擎,这是 GOT 成功的关键,将在本文中详细描述。我们的模型支持的主要输入数据格式可以在 [Figure 1](#Figure 1) 中看到。
作为 OCR-2.0 的设想模型,GOT 在我们各种 OCR 任务的实验中表现出了良好的性能。我们希望提出的简洁优雅的 GOT 能够吸引更多研究人员投入到 OCR-2.0 的研究。当然,通往 OCR-2.0 的道路仍然很长,GOT 还有很大的改进空间,例如支持更多语言、更通用的人工信号和更复杂的几何图形。在这个由 LVLM 引领的新时代,我们坚信纯 OCR 模型并没有结束,甚至可能是一个新的开始。
Figure 1: On the input side, GOT supports various optical image types, such as commonly used photographs and documents. Besides, as a general OCR-2.0 model, GOT can handle more tasks, e.g., sheet music, molecular formulas, easy geometric shapes, charts, etc. Moreover, the model can adapt to region-focus OCR, high-resolution OCR, and multiple-page OCR. GOT mainly supports English and Chinese and can control the structure results (Mathpix markdown/tikz/smiles/kern) via a prompt.
2 Related Work
2.1 Traditional OCR
光学字符识别 (OCR) 是一个经典的研究课题,旨在将图像的光学内容转换为可编辑格式,以便进一步进行下游处理。传统的 OCR 系统称为 OCR-1.0,通常使用由多个专家模块组装而成的框架。例如,为了处理不同的光学字符,OCR 系统 10 通常通过集成多个领域专家网络来开发,例如布局分析 [54](#54)、文本检测 [18](#18), [19](#19), [26](#26), [30](#30), [43](#43), [45](#45), [52](#52), [55](#55)、区域提取和内容识别 [11](#11), [14](#14), [16](#16)。使用这种流水线方案的原因是文本识别模块(OCR 部分)无法成功扩展,只能处理小切片的图像格式,导致整个 OCR 流程为先检测文本/裁剪区域,然后识别切片内的结果。然而,程序复杂的系统可能会遭受潜在的系统错误和高昂的维护成本。虽然有些 OCR-1.0 模型,例如 Nougat [6](#6) 可以直接在整页级别处理文档,但它们往往是针对某个特定的子任务进行设计和训练的,导致通用能力不尽如人意。在 OCR-1.0 时代,一个不方便的地方是我们通常需要根据不同的 OCR 需求切换不同的模型。
2.2 LVLM-driven OCR
大型视觉语言模型 (LVLM) [5](#5), [9](#9), [20](#20), [24](#24), [27](#27), [46](#46), [49](#49) 因其强大的泛化能力而引起了人工智能社区的广泛关注。对于目前具有感知推理综合能力的 LVLM,随着对文本驱动的视觉理解的需求不断增长,OCR 能力已成为热点。大多数 LVLM 的 OCR 能力来自现成的 CLIP [37](#37),尤其是那些冻结 CLIP 编码器 [24](#24) 来完成整个 LVLM 训练的模型。对于此类模型,主要包含英语场景文本知识的 vanilla CLIP(指不做任何更改的 CLIP) 是 OCR 对域外任务(例如其他语言或文档)性能的瓶颈。其他一些 LVLM [5](#5), [49](#49) 选择解冻编码器并冻结 LLM 进行训练,以增强 CLIP 编码器并将图像token与文本token对齐。这些模型将面临光学字符压缩率低的问题,因为冻结的 LLM 很难从对齐的图像token中解码过多的文本。为了缓解这个问题,一些模型 [9](#9), [27](#27), [50](#50) 采用滑动窗口方式将输入图像分解为较小的块。虽然这种动态分辨率方法在处理高分辨率输入图像(例如 PDF)时非常有效,但它会导致过多的图像token并在一定程度上限制生成的 OCR 结果的最大长度。
General OCR Theory
在本文中,我们提出了通用的 OCR 理论,即 OCR-2.0(如第 1 节所述),以促进 OCR 领域的发展。基于提出的新理论,我们提出了一种新颖的 OCR 模型(GOT)。在本节中,我们将介绍我们模型的技术细节,包括框架、多阶段训练策略和相应的数据引擎。
3.1 Framework
如 [Figure 2](#Figure 2) 所示,GOT 包含三个模块,即图像编码器、线性层和输出解码器。线性层充当连接器,用于映射视觉编码器和语言解码器之间的通道维度。我们利用三个主要步骤来优化整个 GOT 模型。首先,我们进行纯文本识别任务来预训练视觉编码器。为了提高训练效率并节省 GPU 资源,我们选择一个微型解码器将梯度传递给编码器。 在此阶段,我们将包含场景文本的图像和包含文档级字符的手册图像输入模型,以允许编码器收集两个最常用字符的编码能力。在下一个阶段,我们通过将训练好的视觉编码器连接到新的更大的解码器来形成 GOT 的架构。我们准备了大量更通用的 OCR 数据(例如,乐谱、数学/分子式和几何形状)来扩展此阶段的 OCR-2.0 知识。在最后阶段,我们打算进一步提高 GOT 的泛化和适用性。具体来说,生成并添加细粒度和多裁剪/页面合成数据,以用于 GOT,以支持区域提示 OCR [20](#20)、大图像 OCR 和批量 PDF OCR 功能。
Figure 2: The framework of the proposed GOT. Stage 1: We pre-train the vision encoder using a tiny OPT-125M to adapt the OCR tasks efficiently. Stage 2: GOT is built by connecting the vision encoder to Qwen-0.5B and sufficient OCR-2.0 knowledge of more general optical characters is used in this stage. Stage 3: No modification of the vision encoder is required, and GOT is customized to new character recognition features.
3.2 Pre-train the OCR-earmarked Vision Encoder
如上所述,GOT 采用 Encoder-Decoder 结构。受 LVLM 设计的启发,解码器可以由训练有素的语言模型初始化。但是,我们没有找到适合 OCR-2.0 模型的预训练编码器,因此我们必须自己训练一个。我们希望新的 OCR 编码器能够在各种输入形状(切片和整页)的常用场景和文档文本识别中表现出色。
3.2.1 The Vision Encoder Generation.
我们选择的编码器结构是 VitDet [17](#17)(基础版本,约 80M 参数),因为它的局部注意力机制可以大大降低高分辨率图像的计算成本。我们遵循 Vary-tiny 设置 [46](#46) 来设计编码器的最后两层,将 1024×1024×3 的输入图像转换为 256×1024 的图像token。然后,这些图像token通过 1024×768 的线性层投影到语言模型(OPT-125M [53](#53))维度。与 Vary 编码器在相对单一的输入形状下仅关注单文档任务不同,我们在预训练时加入了自然场景和裁剪切片。在预处理阶段,将每种形状的图像直接调整为 1024×1024 的正方形,因为正方形可以用来折衷适应各种长宽比的图像。
3.2.2 Data Engine Towards Encoder Pre-training
在这样的编码器预训练阶段,我们使用了大约5M个图文对,其中包括3M的场景文本OCR数据和2M的文档OCR数据。它们的获取方式如下:
对于自然场景数据,我们分别从Laion-2B [40](#40) 和Wukong [12](#12) 数据集中采样英文和中文图像。然后,使用PaddleOCR [10](#10) 工具捕获这些不同真实场景中的伪Ground Truth。总的来说,我们得到了2M的数据,一半是中文,一半是英文。对于文本Ground Truth,我们执行两种类型的处理:1)移除边界框并按从上到下、从左到右的顺序组合每个文本内容。2)根据边界框从原始图像中裁剪文本区域并将其保存为图像切片。后一种方法2)允许我们获得另外1M切片类型的图像-文本对。对于文档级数据,我们首先从Common Crawl收集开源PDF样式文件,并使用Fitz Python包提取相应的密集文本内容。在此过程中,我们获得了1.2M整页PDF样式的图像-文本对和 0.8M 图像切片数据。切片数据(包括行级和段落级)是通过解析的边界框从 PDF 图像中裁剪出来的。
3.3 Scaling Up the OCR-2.0 Knowledge via Multi-task Joint-training
3.3.1 The Final Architecture of GOT
在视觉编码器完成预训练步骤之后,我们将其连接到更大、功能更强大的语言模型,以构建 GOT 的最终架构。在这里,我们采用具有 500M 参数的 Qwen 4 作为解码器,因为它具有相对较少的参数,同时结合了多种语言的先验知识。连接器(即线性嵌入层)的尺寸调整为 1024×1024,以与 Qwen-0.5B 的输入通道对齐。因此,GOT 享有总共约 580M 参数的无缝编码器-解码器范式,这在计算资源上更加友好,并且更容易在具有 4G 内存的消费级 GPU 上部署。 编码器的高压缩率(1024×1024 光学像素到 256 个图像token)为解码器节省了大量的token空间来生成新的token。同时,解码器令人满意的解码上下文长度(我们使用大约8K的最大长度)保证了GOT可以在密集场景下有效地输出OCR结果。
3.3.2 Data Engine for Joint-training
为了将足够的 OCR-2.0 知识注入 GOT,而不是上述简单的 OCR 数据,我们在此阶段仔细探索了几种合成方法和数据引擎,如 [Figure 3](#Figure 3) 所示。 我们将在以下段落中深入探讨每种类型的合成数据的细节。
Figure 3: We use six rendering tools to run data engines to make the GOT work well on diverse OCR tasks. We utilize the LATEX for tables, Mathpix-markdown-it for math/molecular formulas, Tikz for simple geometric shapes, Verovio for sheet music, and Matplotlib/Pyecharts for charts, respectively.
Plain OCR data. 我们使用 3.2.2 节中提到的 80% 的数据作为普通 OCR 数据。为了进一步增强 GOT 的鲁棒性,我们还添加了手写文本识别子任务,该任务涉及不同语言的书信和日记中的各种笔迹。我们收集了中文 CASIA-HWDB2 [1](#1)、英文 IAM [2](#2) 和挪威语 NorHand-v3 [3](#3) 数据集来满足我们的要求。对于具有行级切片格式的原始图像-文本对,将 6∼8 对分组并随机粘贴到空白文档页面中以实现较长文本手写识别并提高训练效率。
Mathpix-markdown formatted data. 保留光学内容格式对于保持输出结果的可读性至关重要,尤其是数学公式和表格。为此,我们使用多种方法收集尽可能多的格式化数据。数据收集和制作的细节如下:
- Math formulas. 我们在Arxiv上爬取了大量的LATEX源 .tex 文件,并从中提取了大约1M的公式片段。接下来,我们将公式源转换为 Mathpix 格式,并使用 Chorme-driver 调用 Mathpix-markdown-it 工具将源渲染为 HTML 格式。然后我们将 HTML 文件转换为 SVG 并保存为 PNG 图片。我们发现这种渲染方法比直接使用 LATEX 快 20 倍以上。
- Molecular formulas. 我们首先下载包含 s 2M smile sources 的ChEMBL_25文件。然后我们使用 Mathpix-markdown-it 工具和rdkit.Chem 包收集了大约1M的分子式图文对。
- Table. 从爬取的.tex文件中,我们提取了大约 0.3M 的表格源并将其渲染成图片。我们没有使用 Mathpix-markdown-it,而是直接使用LATEX作为渲染工具,因为它对高级表格的渲染效果更好。
- Full page data. 使用 Nougat [6](#6) 方法,我们获得约 0.5M 个英文 markdown PDF-Text 对。此外,我们按照 Vary [46](#46), [47](#47) 收集了另外 0.5M 个中文 markdown 对。我们将其内容转换为 Mathpix 格式。此外,我们还添加了 0.2M 个内部数据,这些数据直接使用 Mathpix 进行标注,包括书籍、论文和财务报告。
More general OCR data. 我们希望 GOT 能够处理更通用的光学人工"字符"。 因此,我们收集了三个相关的挑战性任务并生成相应的数据。它们分别是乐谱、几何形状和图表。
- Sheet music. 音乐是文化遗产的宝贵组成部分,光学音乐识别在实现乐谱的自动识别和转录方面起着重要作用7,38。我们选择GrandStaff 39数据集作为渲染源。复乐谱数据集提供了来自音乐摘录的Humdrum **kern转录。除了现有的大约10w个图像文本样本外,我们还提取了一些文本样本,通过 Verovio Python 模块重新渲染。我们主要从白色到真实的纸张样式添加新背景,并随机添加标题和作者信息。请注意,我们只渲染单系统乐谱,因为我们没有相关领域的专业人员,也不知道如何将单系统乐谱组装成整页。渲染后,我们收集了大约0.5M个样本。
- Geometric shape. 几何是LVLM的一项关键能力,是迈向 AGI 的必要步骤。 GOT 有望将光学几何元素转换为TikZ 34文本格式。 TikZ 包含一些简洁的命令来生成基本的几何元素,它们可以用 LATEX 编译。我们采用 TikZ 风格的点和线,用最简单的点线空间关系构造简单的基本几何形状(例如,圆形、矩形、三角形和组合形状)以及简单的函数曲线(例如,直线、抛物线、椭圆、双曲线等)。通过这种方法,我们获得了大约 1M 的几何 Tikz 数据。当然,几何渲染是复杂的,我们目前的工作只是初步的尝试。目前 GOT 只能识别基本的几何形状,但我们相信随着合成数据技术和 OCR-2.0 的发展,未来的模型将能够识别复杂的几何形状。
- Chart. 图表在多个研究领域的数据可视化和数据分析中都至关重要。所提出的 GOT 将图表结构提取子任务称为"图表 OCR",它将图表图像上的视觉知识(例如标题、来源、x 标题、y 标题和值)转换为具有表格 / Python-dict 格式的可编辑输出。按照 OneChart 8,使用 Matplotlib 和 Pyecharts 工具呈现图表图像-文本对。因为 GOT 只是一个 OCR 模型,所以我们合成的Chart数据不需要语义相关性。因此,我们只是从开放获取的 NLP 语料库中随机提取实体文本(标题、来源、x 标题、y 标题等)。数值是受控分布下的随机数。通过这种方法,我们获得了 2M 图表数据,一半来自 Matplotlib,一半来自 Pyecharts。
3.4 Customizing New OCR Features by Post-training the Decoder
通过以上两个步骤压缩各种 OCR-2.0 光学信号的一般视觉信息后,GOT 便可以在各种场景中执行图像级 OCR 任务。基于这种感知敏锐的视觉编码器,GOT 可以轻松调整以满足用户对输入和输出的需求。在这里,我们定制了 GOT,只需对解码器部分进行后训练即可实现三个新功能,即细粒度、多页和动态分辨率 OCR。
3.4.1 Fine-grained Data Engine for Interactive OCR.
细粒度 OCR 20 是一种高交互性功能,是由空间坐标或颜色控制的区域级视觉感知。用户可以在问题提示中添加框坐标(框引导 OCR)或颜色文本(颜色引导 OCR),以请求在感兴趣区域 (RoI) 内进行识别,避免输出其他不相关的字符。对于自然细粒度 OCR,源图像和注释来自开源数据集,包括 RCTW 41、ReCTS 25 和 ShopSign 51 以及 COCO-Text 44 数据集。上述数据集提供了文本边界框,因此我们可以直接使用它们来生成细粒度(区域/颜色提示)OCR 数据。 对于文档级细粒度 OCR,我们按照 Fox 20 的方法,从下载的 PDF 文件中过滤掉具有扫描格式的文件,并使用 Python 包(Fitz/PDFminer)解析剩余部分。 我们记录页面级图像、每行/段落的边界框以及相应的文本,以生成框引导 OCR 子任务的Ground Truth。对于这样的任务,每个坐标值首先被归一化,然后放大 1000 倍。对于颜色引导任务,我们选择最常用的颜色(红色、绿色和蓝色)作为框架颜色,并通过原始图像上的相应边界框绘制它们。总的来说,我们收集了大约 60w 个样本。
3.4.2 Multi-crop Data Engine for Ultra-large-image OCR.
GOT支持1024×1024的输入分辨率,这对于常用的OCR任务来说已经足够了,例如场景OCR或者A4页的PDF OCR。但是对于一些图片巨大的场景,比如两页PDF横向拼接(读报纸的时候经常出现),就需要动态分辨率了。 得益于我们的高压缩率编码器,GOT的动态分辨率是在很大的滑动窗口(1024×1024)下实现的,确保我们的模型可以在可接受的图像token的情况下完成极高分辨率的OCR任务。我们使用InternVL-1.5 9的裁剪方法,tiles最大为12。超分辨率图像是使用上面提到的单页PDF数据合成的,包括横向和纵向拼接。通过这种方法,我们总共获得了50w个图文对。
3.4.3 Multi-page Data Engine for Batched PDF-file OCR.
对于OCR任务,使用 for 循环进行多页处理是合理的。我们为GOT引入了多页OCR(不使用 for 循环)功能,因为有些格式的PDF数据很难分页(获得与各个页面完全不兼容的文本)来进一步扩大数据规模,比如Arxiv中的.tex。我们希望有了GOT,研究人员不再需要担心 PDF ground truth分页符(例如Nougat 6),因为他们可以直接在多页上进行训练。为了实现这样的功能,我们从 Mathpix 格式的 PDF 数据中随机抽取2-8页,并将它们连接在一起形成一轮 OCR 任务。每个选定的页面包含少于650个token的文本,以确保整体长度不超过8K。总的来说,我们生成了大约20w个多页OCR数据,其中大部分是中英文交错页面。
4 Experiments
4.1 Implement Details
我们使用 64 个 L40s GPU 来训练 GOT。在预训练阶段,我们优化所有模型参数,全局批次大小为 128,训练 3 个 epoch。我们使用 AdamW 29 优化器和 cosine annealing scheduler 28,起始学习率为 1e-4。此阶段的最大 token 长度设置为 4096。在联合训练阶段,我们将最大 token 长度设置为 6000,并使用与阶段 1 相同的优化器设置对模型进行 1 个 epoch 的训练。在最后的后训练阶段,我们将最大 token 长度扩展为 8192,以允许模型支持多 patch/page OCR 功能。在此阶段,起始学习率为 2e-5,epoch 设置为 1。
每次训练数据过程中,都会从前一阶段采样 80% 的数据用于下一阶段,以确保在添加新特征时基本能力不会下降。
4.2 Main Results
在本节中,我们验证了 GOT 在 5 个不同 OCR 任务上的性能,包括 1)纯文本 OCR;2)场景文本 OCR;3)细粒度文档 OCR;4)格式化(Mathpix markdown)文档 OCR;5)更通用的字符 OCR。请注意,每个基准的测试数据都经过严格的文本相似性过滤,以确保它不包含在训练数据中。每个测试基准的来源和模型性能分析如下。
4.2.1 Plain document OCR performance
我们使用开源的 Fox 20 基准测试了 GOT 在中文和英文 PDF OCR 上的性能。我们使用的指标是 OCR 任务中常用的指标,即 edict distance(编辑距离)、F1-score, precision, recall, BLEU 和 METEOR。由于文档文本较长,我们使用词级分词来计算每个指标。如 [Table 1](#Table 1) 所示,GOT 在仅 580M 的体积下,在文档的纯文本 OCR 上取得了先进的性能,证明了出色的 PDF 文本感知和识别能力。
Table 1: Performance comparison of dense English (en) and Chinese (zh) OCR on document-level pages. The results of other models are from the previous work 20.
4.2.2 Scene text OCR performance
我们收集了 400 张自然图像,一半是中文,一半是英文,作为场景文本 OCR 基准。 此基准中的所有基本事实都是手动校正的。由于场景图像中的文本相对较短,我们使用字符级分割来计算各种指标。如 Table 2 所示,我们可以看到 GOT 在自然图像上也表现良好,证明了该模型在大多数基本 OCR 任务(文档和场景文本)上的出色性能。
Table 2: Performance of English (en) and Chinese (zh) OCR for scene texts.
4.2.3 Formatted document OCR performance
将光学 PDF 图像转换为类似 markdown 的格式是 OCR 模型的重要功能。为了验证 GOT 的这一能力,我们精心准备了 90 页样本作为高质量基准。该基准包含中文和英文文档页面,首先通过 Mathpix 生成伪标签,然后手动纠正错误。在 Table 3 中,我们可以看到单尺度(1024×1024)GOT 可以得到令人满意的结果。当我们使用多裁剪推理时,GOT 的性能进一步提升,尤其是在带有小文本的公式和表格上。该结果证明了GOT对格式化输出文档的有效性。此外,动态分辨率方案在处理高分辨率图像时是一个不错的选择。
Table 3: Performances of formatted document (Chinese/English) and more general OCR. Single means the input is the vanilla image and multi-crop represents the dynamic resolution strategy.
4.2.4 Fine-grained OCR performance
我们报告了 GOT 的细粒度 OCR 指标。如 Table 4 所示,GOT 在基于边界框和基于颜色的参考 OCR 任务上都比 Fox 20 整体表现更好,表明我们的模型具有出色的交互式 OCR 能力。
Table 4: Comparison of fine-grained document OCR.
4.2.5 More general OCR performance
我们利用乐谱、几何图形和图表基准来验证 GOT 更通用的 OCR 性能。对于前两个任务,我们分别渲染了 100 和 180 个额外样本作为基准,如 Table 3 所示,GOT 在这些新的 OCR 任务上仍然表现良好。对于图表 OCR,我们使用结构提取版本 8 ChartQA 32 和 PlotQA 35 作为基准。在 Table 5 中,GOT 的图表 OCR 能力甚至比图表专用模型和流行的 LVLM 更好。所有结果都证明了我们的模型在更通用的 OCR 任务上的有效性。
Table 5: Performance comparisons on number-centric chart OCR.
5 Conclusion
本文提出了一个基本的 OCR-2.0 模型,该模型在结构上比 OCR-1.0 系统更简单,比 LVLM 更专注于纯 OCR 任务,并且具有卓越的性能。OCR-2.0 将各种泛 OCR 任务集成到一个模型中,是模型设计、数据工程和应用场景中一个有价值的研究方向。我们希望简单、优雅、有效且有前景的 GOT OCR-2.0 模型能够引起人们对此类任务的更多关注。
参考文献
1 Casia-hwdb2-line. https://huggingface.co/datasets/Teklia/CASIA-HWDB2-line (2024) 6
2 Iam-line. https://huggingface.co/datasets/Teklia/IAM-line (2024) 6
3 Norhand-v3-line. https://huggingface.co/datasets/Teklia/NorHand-v3-line (2024) 6
4 Bai, J., Bai, S., Chu, Y., Cui, Z., Dang, K., Deng, X., Fan, Y., Ge, W., Han, Y., Huang, F., Hui, B., Ji, L., Li,
M., Lin, J., Lin, R., Liu, D., Liu, G., Lu, C., Lu, K., Ma, J., Men, R., Ren, X., Ren, X., Tan, C., Tan, S., Tu,
J., Wang, P., Wang, S., Wang, W., Wu, S., Xu, B., Xu, J., Yang, A., Yang, H., Yang, J., Yang, S., Yao, Y.,
Yu, B., Yuan, H., Yuan, Z., Zhang, J., Zhang, X., Zhang, Y., Zhang, Z., Zhou, C., Zhou, J., Zhou, X., Zhu,
T.: Qwen technical report. arXiv preprint arXiv:2309.16609 (2023) 6
5 Bai, J., Bai, S., Yang, S., Wang, S., Tan, S., Wang, P., Lin, J., Zhou, C., Zhou, J.: Qwen-vl: A versatile visionlanguage model for understanding, localization, text reading, and beyond. arXiv preprint arXiv:2308.12966
(2023) 1, 4, 9, 10
6 Blecher, L., Cucurull, G., Scialom, T., Stojnic, R.: Nougat: Neural optical understanding for academic
documents. arXiv preprint arXiv:2308.13418 (2023) 4, 6, 8, 9
7 Calvo-Zaragoza, J., Jr, J.H., Pacha, A.: Understanding optical music recognition. ACM Computing Surveys
(CSUR) 53(4), 1--35 (2020) 7
8 Chen, J., Kong, L., Wei, H., Liu, C., Ge, Z., Zhao, L., Sun, J., Han, C., Zhang, X.: Onechart: Purify the
chart structural extraction via one auxiliary token. arXiv preprint arXiv:2404.09987 (2024) 7, 10
9 Chen, Z., Wang, W., Tian, H., Ye, S., Gao, Z., Cui, E., Tong, W., Hu, K., Luo, J., Ma, Z., et al.: How far are
we to gpt-4v? closing the gap to commercial multimodal models with open-source suites. arXiv preprint
arXiv:2404.16821 (2024) 1, 3, 4, 8, 9
10 Du, Y., Li, C., Guo, R., Cui, C., Liu, W., Zhou, J., Lu, B., Yang, Y., Liu, Q., Hu, X., et al.: Pp-ocrv2: Bag
of tricks for ultra lightweight ocr system. arXiv preprint arXiv:2109.03144 (2021) 1, 4, 5
11 Graves, A., Fernández, S., Gomez, F., Schmidhuber, J.: Connectionist temporal classification: Labelling
unsegmented sequence data with recurrent neural networks. In: International Conference on Machine
Learning (ICML) (2006) 4
12 Gu, J., Meng, X., Lu, G., Hou, L., Minzhe, N., Liang, X., Yao, L., Huang, R., Zhang, W., Jiang, X., et al.:
Wukong: A 100 million large-scale chinese cross-modal pre-training benchmark. Advances in Neural
Information Processing Systems 35, 26418--26431 (2022) 5
13 Hu, A., Xu, H., Ye, J., Yan, M., Zhang, L., Zhang, B., Li, C., Zhang, J., Jin, Q., Huang, F., et al.:
mplug-docowl 1.5: Unified structure learning for ocr-free document understanding. arXiv preprint
arXiv:2403.12895 (2024) 9, 10
14 LeCun, Y., Bottou, L., Bengio, Y., Haffner, P.: Gradient-based learning applied to document recognition.
Proceedings of the IEEE 86(11), 2278--2324 (1998) 4
15 Li, J., Li, D., Savarese, S., Hoi, S.: Blip-2: Bootstrapping language-image pre-training with frozen image
encoders and large language models. arXiv preprint arXiv:2301.12597 (2023) 3
16 Li, M., Lv, T., Chen, J., Cui, L., Lu, Y., Florencio, D., Zhang, C., Li, Z., Wei, F.: Trocr: Transformerbased optical character recognition with pre-trained models. In: Proceedings of the AAAI Conference on
Artificial Intelligence. vol. 37, pp. 13094--13102 (2023) 4
17 Li, Y., Mao, H., Girshick, R., He, K.: Exploring plain vision transformer backbones for object detection.
In: European conference on computer vision. pp. 280--296. Springer (2022) 5
18 Liao, M., Shi, B., Bai, X., Wang, C., Lu, T., Mei, T.: Textboxes: A fast text detector with a single deep
neural network. In: Proceedings of the Thirty-First AAAI Conference on Artificial Intelligence (2017) 4
19 Liao, M., Zou, Z., Wan, Z., Yao, C., Bai, X.: Real-time scene text detection with differentiable binarization
and adaptive scale fusion. IEEE transactions on pattern analysis and machine intelligence 45(1), 919--931
(2022) 4
20 Liu, C., Wei, H., Chen, J., Kong, L., Ge, Z., Zhu, Z., Zhao, L., Sun, J., Han, C., Zhang, X.: Focus anywhere
for fine-grained multi-page document understanding. arXiv preprint arXiv:2405.14295 (2024) 4, 8, 9, 10
21 Liu, C., Wei, H., Yang, J., Liu, J., Li, W., Guo, Y., Fang, L.: Gigahumandet: Exploring full-body detection
on gigapixel-level images. In: Proceedings of the AAAI Conference on Artificial Intelligence. vol. 38, pp.
10092--10100 (2024) 14
22 Liu, F., Eisenschlos, J.M., Piccinno, F., Krichene, S., Pang, C., Lee, K., Joshi, M., Chen, W., Collier, N.,
Altun, Y.: Deplot: One-shot visual language reasoning by plot-to-table translation. In: Findings of the 61st
Annual Meeting of the Association for Computational Linguistics (2023), https://arxiv.org/abs/
2212.10505 10
23 Liu, H., Li, C., Li, Y., Li, B., Zhang, Y., Shen, S., Lee, Y.J.: Llava-next: Improved reasoning, ocr, and
world knowledge (January 2024), https://llava-vl.github.io/blog/2024-01-30-llava-next/
3, 9
24 Liu, H., Li, C., Wu, Q., Lee, Y.J.: Visual instruction tuning (2023) 1, 3, 4
25 Liu, X., Zhang, R., Zhou, Y., Jiang, Q., Song, Q., Li, N., Zhou, K., Wang, L., Wang, D., Liao, M., et al.:
Icdar 2019 robust reading challenge on reading chinese text on signboard. arXiv preprint arXiv:1912.09641
(2019) 8
26 Liu, Y., Jin, L., Zhang, S., Luo, C., Zhang, S.: Curved scene text detection via transverse and longitudinal
sequence connection. Pattern Recognition 90, 337--345 (2019) 4
27 Liu, Y., Yang, B., Liu, Q., Li, Z., Ma, Z., Zhang, S., Bai, X.: Textmonkey: An ocr-free large multimodal
model for understanding document. arXiv preprint arXiv:2403.04473 (2024) 1, 3, 4, 9
28 Loshchilov, I., Hutter, F.: Sgdr: Stochastic gradient descent with warm restarts. arXiv preprint
arXiv:1608.03983 (2016) 8
29 Loshchilov, I., Hutter, F.: Decoupled weight decay regularization. In: ICLR (2019) 8
30 Lyu, P., Yao, C., Wu, W., Yan, S., Bai, X.: Multi-oriented scene text detection via corner localization and
region segmentation. In: Proceedings of the IEEE conference on computer vision and pattern recognition.
pp. 7553--7563 (2018) 4
31 Masry, A., Kavehzadeh, P., Do, X.L., Hoque, E., Joty, S.: Unichart: A universal vision-language pretrained
model for chart comprehension and reasoning. arXiv preprint arXiv:2305.14761 (2023) 10
32 Masry, A., Long, D.X., Tan, J.Q., Joty, S., Hoque, E.: Chartqa: A benchmark for question answering about
charts with visual and logical reasoning. arXiv preprint arXiv:2203.10244 (2022) 10
33 Mathew, M., Karatzas, D., Jawahar, C.: Docvqa: A dataset for vqa on document images. In: Proceedings
of the IEEE/CVF winter conference on applications of computer vision. pp. 2200--2209 (2021) 3
34 Mertz, A., Slough, W.: Graphics with tikz. The PracTEX Journal 1, 1--22 (2007) 7
35 Methani, N., Ganguly, P., Khapra, M.M., Kumar, P.: Plotqa: Reasoning over scientific plots. In: Proceedings of the IEEE/CVF Winter Conference on Applications of Computer Vision. pp. 1527--1536 (2020) 10
36 OpenAI: Gpt-4 technical report (2023) 1, 10
37 Radford, A., Kim, J.W., Hallacy, C., Ramesh, A., Goh, G., Agarwal, S., Sastry, G., Askell, A., Mishkin, P.,
Clark, J., et al.: Learning transferable visual models from natural language supervision. In: International
conference on machine learning. pp. 8748--8763. PMLR (2021) 1, 4
38 Ríos-Vila, A., Calvo-Zaragoza, J., Paquet, T.: Sheet music transformer: End-to-end optical music recognition beyond monophonic transcription. arXiv preprint arXiv:2402.07596 (2024) 7
39 Ríos-Vila, A., Rizo, D., Iñesta, J.M., Calvo-Zaragoza, J.: End-to-end optical music recognition for
pianoform sheet music. International Journal on Document Analysis and Recognition (IJDAR) 26(3),
347--362 (2023) 7
40 Schuhmann, C., Beaumont, R., Vencu, R., Gordon, C., Wightman, R., Cherti, M., Coombes, T., Katta,
A., Mullis, C., Wortsman, M., et al.: Laion-5b: An open large-scale dataset for training next generation
image-text models. Advances in Neural Information Processing Systems 35, 25278--25294 (2022) 5
41 Shi, B., Yao, C., Liao, M., Yang, M., Xu, P., Cui, L., Belongie, S., Lu, S., Bai, X.: Icdar2017 competition
on reading chinese text in the wild (rctw-17). In: 2017 14th iapr international conference on document
analysis and recognition (ICDAR). vol. 1, pp. 1429--1434. IEEE (2017) 8
42 Singh, A., Natarajan, V., Shah, M., Jiang, Y., Chen, X., Batra, D., Parikh, D., Rohrbach, M.: Towards
vqa models that can read. In: Proceedings of the IEEE/CVF conference on computer vision and pattern
recognition. pp. 8317--8326 (2019) 3
43 Tian, Z., Huang, W., He, T., He, P., Qiao, Y.: Detecting text in natural image with connectionist text
proposal network. In: European conference on computer vision. pp. 56--72. Springer (2016) 4
44 Veit, A., Matera, T., Neumann, L., Matas, J., Belongie, S.: Coco-text: Dataset and benchmark for text
detection and recognition in natural images. arXiv preprint arXiv:1601.07140 (2016) 8
45 Wang, Y., Xie, H., Zha, Z.J., Xing, M., Fu, Z., Zhang, Y.: Contournet: Taking a further step toward accurate
arbitrary-shaped scene text detection. In: Proceedings of the IEEE/CVF Conference on Computer Vision
and Pattern Recognition. pp. 11753--11762 (2020) 4
46 Wei, H., Kong, L., Chen, J., Zhao, L., Ge, Z., Yang, J., Sun, J., Han, C., Zhang, X.: Vary: Scaling up the
vision vocabulary for large vision-language models. arXiv preprint arXiv:2312.06109 (2023) 1, 4, 5, 6, 9
47 Wei, H., Kong, L., Chen, J., Zhao, L., Ge, Z., Yu, E., Sun, J., Han, C., Zhang, X.: Small language model
meets with reinforced vision vocabulary. arXiv preprint arXiv:2401.12503 (2024) 6, 9
48 Xia, R., Zhang, B., Ye, H., Yan, X., Liu, Q., Zhou, H., Chen, Z., Dou, M., Shi, B., Yan, J., Qiao, Y.: Chartx
& chartvlm: A versatile benchmark and foundation model for complicated chart reasoning (2024) 10
49 Ye, J., Hu, A., Xu, H., Ye, Q., Yan, M., Dan, Y., Zhao, C., Xu, G., Li, C., Tian, J., et al.: mplugdocowl: Modularized multimodal large language model for document understanding. arXiv preprint
arXiv:2307.02499 (2023) 1, 3, 4
50 Ye, J., Hu, A., Xu, H., Ye, Q., Yan, M., Xu, G., Li, C., Tian, J., Qian, Q., Zhang, J., et al.: Ureader:
Universal ocr-free visually-situated language understanding with multimodal large language model. arXiv
preprint arXiv:2310.05126 (2023) 3, 4, 9
51 Zhang, C., Peng, G., Tao, Y., Fu, F., Jiang, W., Almpanidis, G., Chen, K.: Shopsign: A diverse scene text
dataset of chinese shop signs in street views. arXiv preprint arXiv:1903.10412 (2019) 8
52 Zhang, S.X., Zhu, X., Yang, C., Wang, H., Yin, X.C.: Adaptive boundary proposal network for arbitrary
shape text detection. In: Proceedings of the IEEE/CVF International Conference on Computer Vision. pp.
1305--1314 (2021) 4
53 Zhang, S., Roller, S., Goyal, N., Artetxe, M., Chen, M., Chen, S., Dewan, C., Diab, M., Li, X., Lin, X.V.,
et al.: Opt: Open pre-trained transformer language models. arXiv preprint arXiv:2205.01068 (2022) 5
54 Zhong, X., Tang, J., Yepes, A.J.: Publaynet: largest dataset ever for document layout analysis. In: 2019
International conference on document analysis and recognition (ICDAR). pp. 1015--1022. IEEE (2019) 4
55 Zhou, X., Yao, C., Wen, H., Wang, Y., Zhou, S., He, W., Liang, J.: East: An efficient and accurate scene
text detector. In: Proceedings of the IEEE International Conference on Computer Vision (ICCV) (2017) 4