OCR(光学字符识别)

OCR

把图片里的字读出来

亦作、亦称:光学字符识别 · Optical Character Recognition

OCR(光学字符识别,Optical Character Recognition)是从扫描件、照片或自然场景图像中自动检测并提取文字的计算机视觉基础技术。它是文档数字化、发票理解、多模态大模型等众多 AI 应用的核心底层能力,也是连接物理世界文字信息与数字化处理的关键桥梁。

概述

OCR 将「图像中的文字」转换为机器可读文本,是文档智能与人机交互的关键入口。

  • 核心任务:输入为含文字的图像(扫描件、照片、截图),输出对应的 Unicode 文本字符串及位置坐标。
  • 两大子任务文本检测(定位文字区域,返回包围框或多边形)与文字识别(解读字符内容),现代方案通常端到端完成。
  • 版面分析:复杂文档还需理解页面结构(标题、段落、表格、图注),再分区识别,称为版面理解(Document Layout Analysis)
  • 重要性:OCR 输出质量直接决定下游文档问答、信息抽取、RAG 召回等任务的效果上限。

工作原理

现代 OCR 流水线由检测、识别、后处理三阶段串联,或由端到端网络一次性完成。

  • 文本检测:主流方法包括 EAST(高效文本检测器,2017)和 DBNet(可微分二值化,2020),输出文字区域的包围框或任意形状多边形。
  • 文字识别:对检测到的文字块逐行识别;经典架构是 CRNN(卷积层提取特征列 → 双向 LSTM 建模序列 → CTC 解码),现代方案也有基于 Transformer 的注意力解码。
  • 端到端方案PaddleOCR(百度)、TrOCR(微软,2021)等将检测与识别合并为统一网络,减少级联误差。
  • 版面理解LayoutLM 系列(微软,2020)将文字内容与版面坐标联合预训练,支持结构化文档抽取。
  • 后处理:语言模型纠错、阅读顺序排序、表格行列重建,提升输出可用性。

类型与变体

OCR 场景多样,不同场景对应不同技术路线与评测基准。

  • 印刷体 OCR:字体规整、背景干净,商业系统准确率可超 99%,Tesseract(HP 开发、Google 开源)是代表性开源引擎。
  • 手写体识别(HTR):笔迹个性化程度高,需大规模手写数据训练,准确率仍显著低于印刷体。
  • 场景文字识别(STR):自然场景字体多变、光照复杂,代表基准数据集有 IIIT-5KCUTE80ICDAR 系列。
  • 表格识别:除字符外还需还原行列结构,代表方法有 TableMasterLGPMA,评测用 TEDS 指标。
  • 公式 OCR:数学公式需输出 LaTeX 等结构化格式,专用模型有 Pix2Tex(LaTeX-OCR)等,难度远高于普通文字识别。

应用场景

OCR 是众多行业数字化流程的基础组件,应用场景持续向多模态 AI 延伸。

  • 金融与行政:发票、合同、银行流水自动提取结构化信息,大幅减少人工录入错误。
  • 档案数字化:图书馆和政府机构将历史文献扫描后转为可全文检索的数字资产。
  • 移动端拍照应用:拍照翻译、搜题、名片扫描等功能的底层驱动能力。
  • 车牌与证件识别:停车场、海关实时识别车牌、护照、身份证号码。
  • 多模态 RAG:PDF 和图片文档须经 OCR 前处理才能进入向量检索,是 RAG 流水线的必要环节。
  • Computer Use:AI Agent 操作屏幕时依赖 OCR 或多模态模型理解界面文字,是自动化的基础感知层。

发展脉络

OCR 历史超过半个世纪,深度学习驱动了近年质的飞跃。

  • 1914 年:物理学家 Emanuel Goldberg 发明可读取字符并转为电报码的机器,是 OCR 的早期雏形。
  • 1929 年Gustav Tauschek 在德国获得「阅读机器」专利,被视为最早的 OCR 装置。
  • 1950 年代:IBM 等公司推出商业 OCR 设备,并在 1959 年正式确立「Optical Character Recognition」术语。
  • 1974 年Ray Kurzweil 开发出首个能识别任意正常字体(全字体 OCR)的系统。
  • 1985 年Tesseract 由 HP 实验室研发,2006 年由 Google 接手并开源,成为最具影响力的开源引擎之一。
  • 2015 年CRNN + CTC 方案发表,深度学习首次在不规则场景文字识别上大幅超越传统方法。
  • 2017 年EAST 检测器发布,奠定现代两阶段 OCR 流水线基础。
  • 2020 年:微软提出 LayoutLM,将 OCR 文字与版面坐标融入预训练,推动文档理解进入大模型时代。
  • 2022 年至今PaddleOCR(百度)、TrOCR(微软)等工业级开源方案成熟;多模态大模型内置文字感知能力,OCR 逐渐成为多模态 AI 基础设施的标配。

与相邻概念的区别

OCR 常与文档理解、多模态模型等概念混淆,需明确边界。

  • OCR vs 文档理解:OCR 输出原始文字序列,文档理解还需在此基础上提取语义结构(键值对、表格内容、章节层级),OCR 是文档理解的必要子任务而非全部。
  • OCR vs 场景文字识别(STR):STR 是 OCR 的子集,专指自然场景(非文档)图像中的文字识别,背景复杂、字体多变,难度更高。
  • OCR vs 多模态大模型GPT-4VQwen-VL 等能理解图像整体语义,但在密集小字、复杂表格的精度和稳定性上仍不及专用 OCR 引擎,二者互补而非替代。
  • OCR vs 图像分类:图像分类输出离散类别标签,OCR 输出连续字符序列,任务形式与技术路线均不同。

局限与误区

OCR 在若干场景下准确率显著下降,也存在常见认知误区。

  • 低质量图像:模糊、强反光、严重倾斜时识别率大幅降低,通常需图像预处理(去噪、矫正、超分辨率)作为前置步骤。
  • 手写与艺术字体:高度风格化或潦草的笔迹对现有模型仍是挑战,错误率远高于印刷体。
  • 多语言混排:中英文夹杂时字符边界判断困难,小语种因训练数据稀缺准确率参差不齐。
  • 误区——「识别率高等于结构理解好」:字符识别正确不代表表格行列关系、阅读顺序等结构信息也正确,结构化抽取需额外后处理或专用模型。
  • 误区——「多模态大模型已取代专用 OCR」:通用视觉语言模型对超长文档、密集文字处理仍不稳定,工业场景下专用 OCR 引擎依然不可或缺。

常见误解

日常交流中容易听到的简化说法,未必准确,但能帮助理解误解从何而来。

  • 「把图片里的字读出来」
  • 「扫描件转文字」
  • 「多模态读屏基础能力」

相关术语

和本术语关联紧密的其他词条,便于串联理解。

🎯 考点练习

含该术语的高频面试题,含标准答案与追问。

延伸阅读

从知识库精选 3 篇文章,帮助深入理解该术语。

  1. 1

    图像分类:从 AlexNet 到 EfficientNet

    梳理图像分类的经典模型演进路线与核心设计思想

  2. 2

    多模态学习(一):CLIP 视觉-语言预训练

    从对比学习到零样本分类,理解 CLIP 如何连接视觉与语言

  3. 3

    Computer Use Agent 企业自动化:从 RPA 到视觉智能体

    深入理解 Computer Use Agent 技术原理,对比传统 RPA 与新一代视觉智能体,掌握企业级落地实践

外部参考

维基百科:查看「OCR」词条

本页内容为本站原创撰写;维基百科链接仅作延伸参考。