跳到主要内容

OCR 文字识别

问题

OCR 的原理是什么?在 AI 应用中 OCR 有哪些用途?

答案

一、OCR 流程

二、主流 OCR 方案

方案类型特点
PaddleOCR开源中文效果最佳,轻量
Tesseract开源Google 维护,多语言
EasyOCR开源Python 友好
Azure Document AI云服务文档理解、表格抽取
Google Cloud Vision云服务准确率高

三、文档理解

现代文档理解已超越传统 OCR,融合了版面分析 + OCR + VLM

能力传统 OCRVLM 文档理解
纯文本识别
表格抽取需专门模型
图表理解
语义理解
多页文档逐页处理上下文理解
LLM 时代的 OCR

VLM(如 GPT-4o)可以直接"看"图片理解文档内容,很多场景不再需要传统 OCR 管线。但传统 OCR 在以下场景仍有优势:

  • 大批量处理(成本低)
  • 精确字符级识别
  • 离线/端侧场景

四、应用场景

场景方案
身份证/银行卡识别专用 OCR 模型
PDF/发票抽取VLM 或 Document AI
手写识别专用手写 OCR
RAG 文档处理OCR → 文本 → Embedding

常见面试问题

Q1: 如何在 RAG 系统中处理扫描版 PDF?

答案

  1. OCR 提取:用 PaddleOCR 提取图片中的文字
  2. 版面分析:识别标题、段落、表格区域
  3. 结构化:按文档逻辑组织提取的文本
  4. 或者:直接用 VLM 将 PDF 页面作为图片输入理解
  • 推荐混合方案:OCR 提取文本 + VLM 理解复杂页面

Q2: OCR 如何处理倾斜/模糊的文字?

答案

  • 倾斜矫正:Hough 变换检测文本行角度,旋转矫正
  • 图像增强:二值化、去噪、锐化
  • 超分辨率:用深度学习模型增强分辨率
  • 数据增强:训练时加入旋转、模糊等数据增强

相关链接