跳到主要内容

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

相关链接​