Hugging Face · 官方博客

PP-OCRv6 登陆 Hugging Face:1.5M 至 34.5M 参数支持 50 种语言 OCR

PP-OCRv6 on Hugging Face: 50-Language OCR from 1.5M to 34.5M Parameters

二〇二六年六月二十二日 · 英文原文

PaddleOCR 发布 PP-OCRv6,提供 tiny(1.5M 参数)、small(7.7M 参数)和 medium(34.5M 参数)三个模型等级,支持 50 种语言(含简繁体中文、英语、日语及 46 种拉丁字母语言)。medium 版本在内部基准测试中检测 Hmean 达 86.2%、识别准确率 83.2%,较 PP-OCRv5_server 分别提升 4.6 和 5.1 个百分点。模型采用 PPLCNetV4 骨干、RepLKFPN 检测模块和 EncoderWithLightSVTR 识别模块,可通过 Paddle Inference、Transformers 或 ONNX Runtime 后端部署,在 Hugging Face Hub 提供 safetensors、Paddle 推理模型和 ONNX 格式。

](https://huggingface.co/AlexTransformer)

Image 2: cuicheng 的头像

Image 3: Jun Zhang 的头像

Image 4: Manhui Lin 的头像

Image 5: Yue Zhang 的头像

Image 6: leo-q8 的头像

Image 7: yubo 的头像

Image 8: Yi Liu 的头像

在线评估 PP-OCRv6,然后通过 PaddlePaddle、Transformers 或 ONNX Runtime 后端集成轻量级、可投入生产的 OCR。

PP-OCRv6 是 PaddleOCR 通用 OCR 模型系列的最新版本。它专为文档、截图、多语言图像、数字显示屏、工业标签和场景文本中的真实文本检测与识别而设计。

Image 9: ppocrv6_det_vis

该模型系列的参数量从 1.5M 到 34.5M,分为三个等级:tinysmallmedium。medium 和 small 等级支持 50 种语言,包括简体中文、繁体中文、英语、日语以及 46 种拉丁字母语言。快速在线体验 PP-OCRv6:PP-OCRv6 在线 Demo

Image 10: ocrv6_models

在 PaddleOCR 官方内部的多场景 OCR 基准测试中,PP-OCRv6_medium 达到了 86.2% 的检测 Hmean83.2% 的识别准确率。与 PP-OCRv5_server 相比,文本检测提升了 +4.6 个百分点,文本识别提升了 +5.1 个百分点

Image 11: v6acc_opt

PP-OCRv6 聚焦于一个实际的 OCR 需求:通过小模型和灵活的部署选项,生成准确、结构化的文本输出。关于为何在 VLM 时代专用 OCR 模型仍然有用的深入讨论,请参阅我们之前的博客:PP-OCRv5 on Hugging Face: A Specialized Approach to OCR


PP-OCRv6 的新特性

PP-OCRv6 在检测和识别方面引入了架构、训练和数据的改进。主要设计目标是在保持模型大小适合不同部署场景的同时,提高 OCR 准确率。

三个模型等级

PP-OCRv6 提供三个模型等级,覆盖不同的模型大小和 OCR 准确率水平。

模型 模型大小 检测 Hmean 识别准确率 典型应用场景
PP-OCRv6_tiny 1.5M 参数 80.6% 73.5% 边缘设备、轻量级本地 OCR、延迟敏感型演示、资源受限环境
PP-OCRv6_small 7.7M 参数 84.1% 81.3% 移动端、桌面端、均衡型 OCR 服务、计算成本较低的多语言 OCR
PP-OCRv6_medium 34.5M 参数 86.2% 83.2% 精度导向型 OCR、服务端 pipeline、工业 OCR、文档录入、多语言 OCR

PPLCNetV4 骨干网络

PP-OCRv6 使用 PPLCNetV4 作为文本检测和文本识别的统一骨干网络。

对于开发者而言,主要好处是模型系列的一致性。tiny、small 和 medium 等级并非互不相关的模型;它们属于同一个 OCR 系列,共享共同的架构方向。

Image 12: Image

用于文本检测的 RepLKFPN

文本检测是 OCR pipeline 的第一阶段。检测质量会影响送入识别器的裁剪区域,而质量差的裁剪区域通常会导致较差的识别结果。

PP-OCRv6 使用 RepLKFPN 升级了检测模块,这是一个轻量级的大核特征金字塔网络,专为多尺度文本检测设计,同时保持高效的推理。

这对于真实世界的 OCR 输入至关重要,因为文本可能很小、很密集、有旋转、分辨率低,或嵌入在复杂背景中。

Image 13: ppocrv6_det_pip_ori

用于识别的 EncoderWithLightSVTR

对于文本识别,PP-OCRv6 使用 EncoderWithLightSVTR。它将局部上下文建模与全局 attention 相结合,以提高对具有挑战性的文本裁剪区域的识别质量。

识别方面的改进对于多语言文本、屏幕文本、工业字符、特殊符号、密集文本和噪声图像区域尤其重要。

Image 14: rec

统一的多语言 OCR

medium 和 small 等级在一个模型系列中支持 50 种语言,涵盖简体中文、繁体中文、英语、日语以及 46 种拉丁字母语言。

这有助于减少在常见的多语言 OCR 场景中需要单独 OCR 模型的需求。


使用 PaddleOCR 快速开始

安装 PaddleOCR:

pip install paddleocr

使用 Paddle Inference(默认后端)运行 OCR:

from paddleocr import PaddleOCR

# 模型:PP-OCRv6_medium(默认)
# 后端:Paddle Inference(默认)
ocr = PaddleOCR(
    use_doc_orientation_classify=False,
    use_doc_unwarping=False,
    use_textline_orientation=False,
)
result = ocr.predict("https://paddle-model-ecology.bj.bcebos.com/paddlex/imgs/demo_image/general_ocr_002.png")

for res in result:
    res.print()
    res.save_to_img("output")
    res.save_to_json("output")

OCR 结果可以保存为可视化图像和结构化的 JSON 输出。结构化输出随后可被下游系统使用,例如文档解析、搜索、提取、RAG、分析或 agent 工作流。


可用的推理后端

PP-OCRv6 可以通过 PaddleOCR 与多种推理后端一起使用。PaddleOCR 3.7 提供了一个统一的推理引擎接口,其中 engine 选择底层运行时,相关配置可以通过 pipeline 或模块 API 传递。

后端 描述
Transformers 面向 Hugging Face / PyTorch 的推理路径,适用于支持的 PaddleOCR 模型
ONNX Runtime 基于 ONNX 的部署环境的可移植推理路径
Paddle Inference 原生 Paddle 推理格式

对于 Hugging Face 用户,PaddleOCR 支持使用 Transformers 后端运行选定的 OCR 和文档解析模型。可以通过以下方式启用:

engine="transformers"

有关 Transformers 后端在 PaddleOCR 中如何工作的更多详细信息,请参阅:

PaddleOCR: Running OCR and Document Parsing Tasks with a Transformers Backend

使用 Transformers 后端运行 PP-OCRv6 示例:

from paddleocr import PaddleOCR

# 模型:PP-OCRv6_medium(默认)
# 后端:transformers
ocr = PaddleOCR(
    use_doc_orientation_classify=False,
    use_doc_unwarping=False,
    use_textline_orientation=False,
    engine="transformers",
)
result = ocr.predict("https://paddle-model-ecology.bj.bcebos.com/paddlex/imgs/demo_image/general_ocr_002.png")

ONNX 变体也可在 PP-OCRv6 Collection 中找到,适用于通过 engine="onnxruntime" 使用 ONNX Runtime 的环境:

from paddleocr import PaddleOCR

# 模型:PP-OCRv6_medium(默认)
# 后端:ONNX Runtime
ocr = PaddleOCR(
    use_doc_orientation_classify=False,
    use_doc_unwarping=False,
    use_textline_orientation=False,
    engine="onnxruntime",
)
result = ocr.predict("https://paddle-model-ecology.bj.bcebos.com/paddlex/imgs/demo_image/general_ocr_002.png")

这些后端选项共同使 PP-OCRv6 能够在不同的运行时环境中使用,同时在 Hugging Face Hub 上保持相同的 OCR 模型系列。


结论

PP-OCRv6 通过一个轻量级、多语言的 OCR 模型系列扩展了 PaddleOCR,用于真实世界的文本检测与识别。

此次发布包括三个模型等级,参数量从 1.5M 到 34.5M,支持多达 50 种语言的 OCR,相比 PP-OCRv5_server 在检测和识别准确率上有所提升,并在 Hugging Face Hub 上提供了多种模型格式,包括 safetensorsPaddle 推理模型ONNX 模型

结合托管的 Hugging Face Space 和可用的 PaddleOCR 推理后端,PP-OCRv6 为评估和集成提供了多个入口点:

您可以通过在线 Demo 评估 PP-OCRv6,探索 Collection 中可用的模型资产,并使用与您自己的 OCR 工作流相匹配的推理后端。

译自 Hugging Face · 官方博客 · 录于 二〇二六年六月二十二日