OCR2.0--General OCR Theory

news/2024/12/21 22:37:27/

引领光学字符识别(OCR)的新篇章

引言:OCR技术进化的必要性

光学字符识别(OCR)是一项广泛应用的技术,它能够从图像中提取字符并将其转换为可编辑格式。虽然OCR-1.0在过去取得了广泛应用,但传统的系统在处理现代复杂任务方面遇到了很多挑战,包括文档、复杂图表以及乐谱等多种文本格式的处理。本文讨论了OCR技术的进化方向,重点介绍了通用OCR理论(General OCR Theory)以及新提出的GOT模型。

OCR-1.0的局限性

传统的OCR系统通常采用多模块流水线式的架构,包括元素检测、区域裁剪和字符识别。然而,这种模块化方式存在显著的缺陷,如局部最优问题、高维护成本以及缺乏通用性。传统OCR方法往往针对特定任务进行优化,可能适合处理文档OCR,但在场景文本或结构化数据任务中表现不佳,用户需要频繁切换模型。

OCR-2.0的愿景

随着智能光学字符处理需求的不断增长,OCR-2.0应运而生。新的理论强调一个统一的、端到端的模型,能够在同一个框架内处理多种字符形式,包括文本、图表、几何图形,甚至乐谱。为此,作者提出了通用光学字符识别理论(General Optical Character Recognition Theory, OCR-2.0)及其核心模型GOT(General Optical Text)。

GOT模型引入了高压缩率的编码器和长上下文解码器,使得GOT能够在多种OCR任务中表现出色。GOT模型具有端到端结构,计算成本低,且具备强大的通用性,能够处理英文和中文文本,并支持用户交互,如通过坐标或颜色进行区域识别。

GOT模型:统一的OCR解决方案

GOT采用了编码器-解码器架构,专为应对现代OCR任务而设计。编码器将输入图像压缩为一系列token,而解码器则将这些token转换为文本或结构化输出。GOT的编码器约有8000万参数,能够处理高分辨率输入(如整页文档),解码器则有5亿参数,支持长上下文场景,使得它在需要识别大量文本的文档处理任务中表现尤为出色。

该模型的高压缩比使其即便在消费级GPU上也能高效运行,相较传统OCR系统的高硬件要求,GOT无疑具有更大的优势。

Framework

在这里插入图片描述

GOT模型的整体设计包含了三个模块,分别是图像编码器、线性层和解码器。通过这三大模块的协同工作,GOT模型能够高效地处理各种OCR任务。

首先,预训练视觉编码器时,通过选择小型解码器和适当的数据输入,确保模型在提高效率的同时不会浪费GPU资源。在此过程中,系统通过学习常见的文本编码特征,提升了对常用字符的处理能力。

接着,模型进入第二阶段,将已经训练好的视觉编码器连接到新的更大解码器。这一步骤不仅仅是扩大模型容量,更重要的是通过增加多种数据类型如乐谱、数学公式和几何图形来丰富模型的应用范围,从而扩展了GOT的知识库。

最后,通过细粒度的数据和多页面合成数据,进一步增强了模型的泛化能力,使其在处理不同类型的OCR任务时表现更为出色。GOT能够处理区域提示OCR、超大图像OCR和批量PDF OCR,这意味着它不仅仅适用于传统的文本识别,还可以处理更加复杂和多样化的光学字符识别任务。

总的来说,GOT模型为OCR技术的发展提供了一个完整的、统一的解决方案,具备出色的多任务处理能力。

创新的训练策略

GOT的训练过程分为三个阶段:

  1. 编码器预训练:首先对GOT的视觉编码器进行预训练,处理场景文本和文档样式图像,通过全页文档和文本片段的组合,使编码器能够适应不同的输入格式。
  2. 联合训练:预训练完成后,编码器与更大的语言解码器连接,扩展GOT的OCR能力,以处理更复杂的字符,如数学公式和图表。
  3. 解码器后期训练:最后阶段是对解码器进行微调,增加对多页文档处理、细粒度区域OCR以及高分辨率图像的支持。

数据生成助力OCR-2.0

GOT成功的关键在于其合成数据的生成。在预训练阶段,使用了约500万对图像-文本数据,包括英文和中文的数据集。为进一步增强其能力,还生成了诸如数学公式、分子结构和几何图形等特定任务的合成数据。这些数据的加入使得GOT的OCR-2.0知识得到了显著扩展,确保其在各种应用中的通用性。

OCR-2.0的实际应用:性能与结果

GOT模型在多个OCR任务中表现优异:

  1. 文档OCR:GOT在中英文PDF文档OCR任务中表现突出,精确度超过了多款OCR模型,展现了出色的文档文本感知与识别能力。
  2. 场景文本OCR:在自然场景图像中,GOT也同样表现出色,进一步证明了其多任务处理能力。
  3. 格式化OCR:GOT能够将光学PDF图像转换为结构化的输出格式(如Markdown格式),特别适用于学术和技术文档。
  4. 细粒度OCR:GOT具备交互式OCR功能,用户可以指定感兴趣的区域进行文字提取,这在精确性方面表现优异。
  5. 通用OCR:除了文本,GOT还能够识别更加复杂的光学字符,如几何图形、乐谱,甚至是图表,展现了更广泛的适用性。

GOT模型在场景文本OCR任务中的表现

在这里插入图片描述

在表2中,展示了不同模型在场景文本OCR任务中的性能表现。这些模型包括了从UReader到GOT在内的多种最新OCR技术。表中的性能指标涵盖了编辑距离(Edit Distance)、F1分数、精度(Precision)、召回率(Recall)、BLEU分数和METEOR分数等。

性能对比:

  • GOT模型的优势:GOT模型以580M参数的规模,表现出优异的性能,尤其是在英文和中文的场景文本OCR任务中均获得了最高的F1分数(0.926 en,0.928 zh)。此外,GOT在精度和召回率方面也领先于其他模型,分别达到了0.934和0.927(en),以及0.914和0.954(zh)。
  • 编辑距离:GOT的编辑距离为0.112(en)和0.096(zh),远远优于其他较大的模型,如Qwen-VL-Max (>72B参数) 和InternVL-ChatV1.5 (26B参数)。
  • 综合评价:从BLEU和METEOR分数来看,GOT在中英文的表现也十分强劲,特别是在METEOR得分方面,GOT的分数分别为0.896(en)和0.928(zh),显示了极高的文本质量预测能力。

收集了400张自然场景图像,分别为200张中文图像和200张英文图像,作为场景文本OCR的基准数据集。该数据集中的所有真实标签均通过人工校正。在这些场景文本图像中,文本相对较短,因此使用字符级别的分割来计算各项指标。

从表2可以看出,GOT在处理自然场景图像时也表现出色,证明了其在大多数基本OCR任务(包括文档和场景文本)的卓越性能。特别是对于复杂的场景文本,GOT模型的表现无论是在英文还是中文任务中,均遥遥领先于其他较大规模的模型。

结论:迈向OCR的新纪元

通用OCR理论和GOT模型代表了OCR技术的一次重大飞跃。OCR-2.0抛弃了过去碎片化、任务特定的OCR模型,提出了一种更统一、高效、通用的字符识别方式。无论是处理密集的文档文本,还是复杂的结构化数据,GOT在各个领域的出色表现为未来OCR创新铺平了道路。

这款统一的模型在多个行业中展现出巨大的潜力,从学术研究到法律文件处理,GOT无疑是通向下一代OCR技术的关键一步。


http://www.ppmy.cn/news/1526915.html

相关文章

华为初级认证HCIA怎么样?

想在网络技术领域实现职业突破吗?华为HCIA初级认证是专为网络领域的新手与初学者设计的一项入门级认证。它旨在评估并确认个人对网络基本原理和技术知识的扎实掌握,是步入华为认证体系大门的基石。 一、华为HCIA 初级认证概述 华为初级认证网络工程师&am…

【ESP32】Arduino开发 | 中断矩阵+按键输入中断例程

对于中断矩阵的详细介绍会放在ESP-IDF开发文章中,跳转栏目目录可以找到对应文章。 1. API 1.1 绑定GPIO中断 attachInterrupt(uint8_t pin, voidFuncPtr handler, int mode); pin:管脚号;handler:中断处理函数;mode…

【百日算法计划】:每日一题,见证成长(014)

题目 奇偶链表 给定一个单链表,把所有的奇数节点和偶数节点分别排在一起 示例: 输入: 2->1->3->5->6->4->7->NULL 输出: 2->3->6->7->1->5->4->NULL 思路 构建两个结果链表,分别存储奇偶节点 使用一个辅助变…

初识爬虫1

学习路线:爬虫基础知识-requests模块-数据提取-selenium-反爬与反反爬-MongoDB数据库-scrapy-appium。 对应视频链接(百度网盘):正在整理中 爬虫基础知识: 1.爬虫的概念 总结:模拟浏览器,发送请求,获取…

vue项目本地可以访问接口,浏览器输入接口可以访问数据,部署到服务器无法报接口404

需求变动,原本访问python的后端接口,现在新增Java的接口 新增的接口在服务器上一直404 ,本地正常,浏览器输入路径正常。 两个后端不同端口,前端配置了两个转发如下: dev: {// PathsassetsSubDirectory: st…

uni-app plus.runtime.arguments 获取参数

uni-app plus.runtime.arguments 获取参数 问题 在 app.vue 中 onShow 获取 应用启动的参数:plus.runtime.arguments 这个是可行的. APP打开以后, 进入到了后台 然后再恢复到前台 仍然会走一次 onShow的生命周期 然后获取到plus.runtime.arguments 中的参数&#x…

Linux:vim编辑技巧

命令模式 光标跳转 输入18,再输入G,可以跳转到18行。 复制、粘贴、删除 P是往上一行粘贴 小写u可以撤销 查找/撤销/保存 大写U可能失效,用CTRLr 末行模式 保存/退出/文件操作 字符串替换 开关参数的控制

CentOS入门宝典:从零到一构建你的Linux服务器帝国

目录 引言 一、CentOS简介与版本选择 1.1 CentOS是什么? 1.2 版本选择 二、安装CentOS 2.1 准备安装介质 2.2 安装过程 三、基础配置与优化 3.1 更新系统 3.2 配置防火墙 3.3 配置SELinux 3.4 系统监控与日志 四、网络配置与管理 4.1 配置静态IP 4.…