跳转至

一、PP-OCRv5简介

PP-OCRv5 是PP-OCR新一代文字识别解决方案,该方案聚焦于多场景、多文字类型的文字识别。在文字类型方面,PP-OCRv5支持简体中文、中文拼音、繁体中文、英文、日文5大主流文字类型,在场景方面,PP-OCRv5升级了中英复杂手写体、竖排文本、生僻字等多种挑战性场景的识别能力。在内部多场景复杂评估集上,PP-OCRv5较PP-OCRv4端到端提升13个百分点。

二、关键指标

1. 文本检测指标

模型 手写中文 手写英文 印刷中文 印刷英文 繁体中文 古籍文本 日文 通用场景 拼音 旋转 扭曲 艺术字 平均
PP-OCRv5_server_det 0.803 0.841 0.945 0.917 0.815 0.676 0.772 0.797 0.671 0.8 0.876 0.673 0.827
PP-OCRv4_server_det 0.706 0.249 0.888 0.690 0.759 0.473 0.685 0.715 0.542 0.366 0.775 0.583 0.662
PP-OCRv5_mobile_det 0.744 0.777 0.905 0.910 0.823 0.581 0.727 0.721 0.575 0.647 0.827 0.525 0.770
PP-OCRv4_mobile_det 0.583 0.369 0.872 0.773 0.663 0.231 0.634 0.710 0.430 0.299 0.715 0.549 0.624

对比PP-OCRv4,PP-OCRv5在所有检测场景下均有明显提升,尤其在手写、古籍、日文检测能力上表现更优。

2. 文本识别指标

评估集类别 手写中文 手写英文 印刷中文 印刷英文 繁体中文 古籍文本 日文 易混淆字符 通用场景 拼音 竖直文本 艺术字 加权平均
PP-OCRv5_server_rec 0.5807 0.5806 0.9013 0.8679 0.7472 0.6039 0.7372 0.5946 0.8384 0.7435 0.9314 0.6397 0.8401
PP-OCRv4_server_rec 0.3626 0.2661 0.8486 0.6677 0.4097 0.3080 0.4623 0.5028 0.8362 0.2694 0.5455 0.5892 0.5735
PP-OCRv5_mobile_rec 0.4166 0.4944 0.8605 0.8753 0.7199 0.5786 0.7577 0.5570 0.7703 0.7248 0.8089 0.5398 0.8015
PP-OCRv4_mobile_rec 0.2980 0.2550 0.8398 0.6598 0.3218 0.2593 0.4724 0.4599 0.8106 0.2593 0.5924 0.5555 0.5301

单模型即可覆盖多语言和多类型文本,识别精度大幅领先前代产品和主流开源方案。

三、PP-OCRv5 Demo示例

更多示例

四、推理性能参考数据

测试环境:

  • NVIDIA Tesla V100
  • Intel Xeon Gold 6271C
  • PaddlePaddle 3.0.0

在 200 张图像(包括通用图像与文档图像)上测试。测试时从磁盘读取图像,因此读图时间及其他额外开销也被包含在总耗时内。如果将图像提前载入到内存,可进一步减少平均每图约 25 ms 的时间开销。

如果不特别说明,则:

  • 使用 PP-OCRv4_mobile_det 和 PP-OCRv4_mobile_rec 模型。
  • 不使用文档图像方向分类、文本图像矫正、文本行方向分类。
  • text_det_limit_type 设置为 "min"text_det_limit_side_len 设置为 732

1. PP-OCRv5 与 PP-OCRv4 推理性能对比

配置 说明
v5_mobile 使用 PP-OCRv5_mobile_det 和 PP-OCRv5_mobile_rec 模型。
v4_mobile 使用 PP-OCRv4_mobile_det 和 PP-OCRv4_mobile_rec 模型。
v5_server 使用 PP-OCRv5_server_det 和 PP-OCRv5_server_rec 模型。
v4_server 使用 PP-OCRv4_server_det 和 PP-OCRv4_server_rec 模型。

GPU,不使用高性能推理:

配置 平均每图耗时(s) 平均每秒预测字符数量 平均 CPU 利用率(%) 峰值 RAM 用量(MB) 平均 RAM 用量(MB) 峰值 VRAM 用量(MB) 平均 VRAM 用量(MB)
v5_mobile 0.56 1162 106.02 1576.43 1420.83 18.95 4342.00
v4_mobile 0.27 2246 111.20 1392.22 1318.76 28.90 1304.00
v5_server 0.70 929 105.31 1634.85 1428.55 36.21 5402.00
v4_server 0.44 1418 106.96 1455.34 1346.95 58.82 6760.00

GPU,使用高性能推理:

配置 平均每图耗时(s) 平均每秒预测字符数量 平均 CPU 利用率(%) 峰值 RAM 用量(MB) 平均 RAM 用量(MB) 峰值 VRAM 用量(MB) 平均 VRAM 用量(MB)
v5_mobile 0.50 1301 106.50 1338.12 1155.86 11.97 4112.00
v4_mobile 0.21 2887 114.09 1113.27 1054.46 15.22 2072.00
v5_server 0.60 1084 105.73 1980.73 1776.20 22.10 12150.00
v4_server 0.36 1687 104.15 1186.42 1065.67 38.12 13058.00

CPU,不使用高性能推理:

配置 平均每图耗时(s) 平均每秒预测字符数量 平均 CPU 利用率(%) 峰值 RAM 用量(MB) 平均 RAM 用量(MB)
v5_mobile 1.43 455 798.93 11695.40 6829.09
v4_mobile 1.09 556 813.16 11996.30 6834.25
v5_server 3.79 172 799.24 50216.00 27902.40
v4_server 4.22 148 803.74 51428.70 28593.60

CPU,使用高性能推理:

配置 平均每图耗时(s) 平均每秒预测字符数量 平均 CPU 利用率(%) 峰值 RAM 用量(MB) 平均 RAM 用量(MB)
v5_mobile 1.14 571 339.68 3245.17 2560.55
v4_mobile 0.68 892 443.00 3057.38 2329.44
v5_server 3.56 183 797.03 45664.70 26905.90
v4_server 4.22 148 803.74 51428.70 28593.60

说明:PP-OCRv5 的识别模型使用了更大的字典,需要更长的推理时间,导致 PP-OCRv5 的推理速度慢于 PP-OCRv4。

2. 使用辅助功能对 PP-OCRv5 推理性能的影响

配置 说明
base 不使用文档图像方向分类、文本图像矫正、文本行方向分类。
with_textline 使用文本行方向分类,不使用文档图像方向分类、文本图像矫正。
with_all 使用文档图像方向分类、文本图像矫正、文本行方向分类。

GPU,不使用高性能推理:

配置 平均每图耗时(s) 平均每秒预测字符数量 平均 CPU 利用率(%) 峰值 RAM 用量(MB) 平均 RAM 用量(MB) 峰值 VRAM 用量(MB) 平均 VRAM 用量(MB)
base 0.56 1162 106.02 1576.43 1420.83 18.95 4342.00
with_textline 0.59 1104 105.58 1765.64 1478.53 19.48 4350.00
with_all 1.02 600 104.92 1924.23 1628.50 10.96 2632.00

CPU,不使用高性能推理:

配置 平均每图耗时(s) 平均每秒预测字符数量 平均 CPU 利用率(%) 峰值 RAM 用量(MB) 平均 RAM 用量(MB)
base 1.43 455 798.93 11695.40 6829.09
with_textline 1.50 434 799.47 12007.20 6882.22
with_all 1.93 316 646.49 11759.60 6940.54

说明:文本图像矫正等辅助功能会对端到端推理精度造成影响,因此并不一定使用的辅助功能越多、资源用量越大。

3. 文本检测模块输入缩放尺寸策略对 PP-OCRv5 推理性能的影响

配置 说明
mobile_min_1280 使用 PP-OCRv5_mobile_det 和 PP-OCRv5_mobile_rec 模型,将 text_det_limit_type 设置为 "min"text_det_limit_side_len 设置为 1280
mobile_min_736 使用 PP-OCRv5_mobile_det 和 PP-OCRv5_mobile_rec 模型,将 text_det_limit_type 设置为 "min"text_det_limit_side_len 设置为 1280
mobile_max_960 使用 PP-OCRv5_mobile_det 和 PP-OCRv5_mobile_rec 模型,将 text_det_limit_type 设置为 "max"text_det_limit_side_len 设置为 960
mobile_max_640 使用 PP-OCRv5_mobile_det 和 PP-OCRv5_mobile_rec 模型,将 text_det_limit_type 设置为 "max"text_det_limit_side_len 设置为 640
server_min_1280 使用 PP-OCRv5_server_det 和 PP-OCRv5_server_rec 模型,将 text_det_limit_type 设置为 "min"text_det_limit_side_len 设置为 1280
server_min_736 使用 PP-OCRv5_server_det 和 PP-OCRv5_server_rec 模型,将 text_det_limit_type 设置为 "min"text_det_limit_side_len 设置为 1280
server_max_960 使用 PP-OCRv5_server_det 和 PP-OCRv5_server_rec 模型,将 text_det_limit_type 设置为 "max"text_det_limit_side_len 设置为 960
server_max_640 使用 PP-OCRv5_server_det 和 PP-OCRv5_server_rec 模型,将 text_det_limit_type 设置为 "max"text_det_limit_side_len 设置为 640

GPU,不使用高性能推理:

配置 平均每图耗时(s) 平均每秒预测字符数量 平均 CPU 利用率(%) 峰值 RAM 用量(MB) 平均 RAM 用量(MB) 峰值 VRAM 用量(MB) 平均 VRAM 用量(MB)
mobile_min_1280 0.61 1071 109.12 1663.71 1439.72 19.27 4202.00
mobile_min_736 0.56 1162 106.02 1576.43 1420.83 18.95 4342.00
mobile_max_960 0.48 1313 103.49 1587.25 1395.48 19.37 2642.00
mobile_max_640 0.42 1436 103.07 1651.14 1422.62 18.95 2530.00
server_min_1280 0.82 795 107.17 1678.16 1428.94 40.43 10368.00
server_min_736 0.70 929 105.31 1634.85 1428.55 36.21 5402.00
server_max_960 0.59 1073 103.03 1590.19 1383.62 33.42 2928.00
server_max_640 0.54 1099 102.63 1602.09 1416.49 30.77 3152.00

CPU,不使用高性能推理:

配置 平均每图耗时(s) 平均每秒预测字符数量 平均 CPU 利用率(%) 峰值 RAM 用量(MB) 平均 RAM 用量(MB)
mobile_min_1280 1.64 398 799.45 12344.10 7100.60
mobile_min_736 1.43 455 798.93 11695.40 6829.09
mobile_max_960 1.21 521 800.13 11099.10 6369.49
mobile_max_640 1.01 597 802.52 9585.48 5573.52
server_min_1280 4.48 145 800.49 50683.10 28273.30
server_min_736 3.79 172 799.24 50216.00 27902.40
server_max_960 2.67 237 797.63 49362.50 26075.60
server_max_640 2.36 251 795.18 45656.10 24900.80

五、部署与二次开发

  • 多系统支持:兼容Windows、Linux、Mac等主流操作系统。
  • 多硬件支持:除了英伟达GPU外,还支持Intel CPU、昆仑芯、昇腾等新硬件推理和部署。
  • 高性能推理插件:推荐结合高性能推理插件进一步提升推理速度,详见高性能推理指南
  • 服务化部署:支持高稳定性服务化部署方案,详见服务化部署指南
  • 二次开发能力:支持自定义数据集训练、字典扩展、模型微调。举例:如需增加韩文识别,可扩展字典并微调模型,无缝集成到现有产线,详见文本检测模块使用教程文本识别模块使用教程