【官方】十分钟掌握PaddleOCR文字检测使用


PaddleOCR是百度开源的超轻量级OCR模型库,提供了数十种文本检测、识别模型,旨在打造一套丰富、领先、实用的文字检测、识别模型/工具库,助力使用者训练出更好的模型,并应用落地。

☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 免费无限量使用 DeepSeek R1 模型☜☜☜

【官方】十分钟掌握paddleocr文字检测使用 -

PP-OCRv3策略简要介绍

PaddleOCR是百度开源的超轻量级OCR模型库,提供了数十种文本检测、识别模型,旨在打造一套丰富、领先、实用的文字检测、识别模型/工具库,助力使用者训练出更好的模型,并应用落地。同时PaddleOCR也几经更新, 在2025.5.9 发布最新版本PaddleOCR release/2.5 :

  • 发布PP-OCRv3,速度可比情况下,中文场景效果相比于PP-OCRv2再提升5%,英文场景提升11%,80语种多语言模型平均识别准确率提升5%以上;
  • 发布半自动标注工具PPOCRLabelv2:新增表格文字图像、图像关键信息抽取任务和不规则文字图像的标注功能;
  • 发布OCR产业落地工具集:打通22种训练部署软硬件环境与方式,覆盖企业90%的训练部署环境需求;
  • 发布交互式OCR开源电子书《动手学OCR》,覆盖OCR全栈技术的前沿理论与代码实践,并配套教学视频。

本教程主要介绍PP-OCRv3的文本检测的CML蒸馏训练方式,包含模型训练、评估、预测等内容。

1. PP-OCRv3检测快速使用

PP-OCRv3在PP-OCRv2的基础上进一步升级。 PP-OCRv3采用PP-OCRv2的CML蒸馏策略,在蒸馏的student模型、teacher模型精度提升、CML蒸馏策略上分别做了优化。 PP-OCRv3模型优化策略介绍参考:https://github.com/PaddlePaddle/PaddleOCR/blob/release/2.5/doc/doc_ch/PP-OCRv3_introduction.md

1.1. 运行环境准备

首先,克隆GitHub上PaddleOCR的代码库,并安装相应的依赖库:

In [ ]
#如果代码克隆较慢,请使用gitee上的PaddleOCR代码:https://gitee.com/paddlepaddle/PaddleOCR.git#!git clone  https://github.com/paddlepaddle/PaddleOCR.git!git clone  https://gitee.com/paddlepaddle/PaddleOCR.git
In [ ]
# 切换到PaddleOCR目录%cd ~/PaddleOCR# 切换到PaddleOCR dygraph分支!git checkout dygraph# 安装依赖!pip install -r requirements.txt -i https://mirror.baidu.com/pypi/simple

1.2. PP-OCRv3检测模型介绍

PP-OCRv3采用CML的蒸馏策略,训练配置文件为configs/det/ch_PP-OCRv3/ch_PP-OCRv3_det_cml.yml,CML蒸馏训练策略包含三个模型,分别是蒸馏教师模型以及两个蒸馏学生模型。

网络结构配置如下:

In [ ]
Architecture:
  name: DistillationModel
  algorithm: Distillation
  model_type: det
  Models:                   
    Student:                 # CML蒸馏的Student模型配置
      model_type: det
      algorithm: DB
      Transform: null
      Backbone:
        name: MobileNetV3    # Student模型backbone使用mobilev3
        scale: 0.5
        model_name: large
        disable_se: true
      Neck:
        name: RSEFPN         # Student模型neck部分使用PaddleOCR中的RSEFPN
        out_channels: 96
        shortcut: True
      Head:
        name: DBHead
        k: 50
    Student2:                # Student2模型的配置同Student
      model_type: det
      algorithm: DB
      Transform: null
      Backbone:
        name: MobileNetV3
        scale: 0.5
        model_name: large
        disable_se: true
      Neck:
        name: RSEFPN
        out_channels: 96
        shortcut: True
      Head:
        name: DBHead
        k: 50
    Teacher:                 # Teacher模型配置
      freeze_params: true
      return_all_feats: false
      model_type: det
      algorithm: DB
      Backbone:
        name: ResNet         # Teacher使用resnet50作为backbone 
        in_channels: 3
        layers: 50         
      Neck:
        name: LKPAN          # Teacher模型使用PaddleOCR中的LKPAN作为neck网络
        out_channels: 256
      Head:
        name: DBHead
        kernel_list: [7,2,2]  
        k: 50

注:PP-OCRv3模型分别在网络结构做了以下优化

  • Student模型使用RSEPAN提升模型召回和精度;
  • Teacher模型使用LKPAN提升模型精度和召回;

详细策略介绍参考链接: https://github.com/PaddlePaddle/PaddleOCR/blob/release/2.5/doc/doc_ch/PP-OCRv3_introduction.md

2. 训练文字检测模型

2.1. 准备训练数据

本教程以HierText数据集为例,介绍PP-OCRv3检测模型的蒸馏训练方式。 HierText是第一个具有自然场景和文档中文本分层注释的数据集。该数据集包含从 Open Images 数据集中选择的 11639 张图像,提供高质量的单词 (~1.2M)、行和段落级别的注释。HierText数据集下载地址: https://github.com/google-research-datasets/hiertext

值得注意的是该数据集的标注格式与ppocrlabel格式不一样,我们需要对其数据标签格式进行相应的转换。

您可以从AI Studio中直接下载标签格式转换后的HierText数据集: https://aistudio.baidu.com/aistudio/datasetdetail/143700

本教程中已经下载好了HierText数据集,并存放在~/data/data143700/文件夹中。运行如下指令,完成数据集解压:

In [3]
# 准备数据集!cd ~/data/data143700/ && tar xf hiertext1.tar && mv hiertext1 hiertext && mkdir ~/PaddleOCR/train_data/ && mv hiertext ~/PaddleOCR/train_data/

运行上述命令后,在PaddleOCR/train_data/ 目录下包含以下文件:

~/train_data/hiertext
  └─ train/     HierText训练集数据
  └─ validation/     HierText验证集数据
  └─ label_hiertext_train.txt  HierText训练集的行标注
  └─ label_hiertext_val.txt    HierText验证集的行标注

其中,paddleocr支持的标注文件格式为:

" 图像文件的路径               json.dumps编码的图像标注信息"hiertext/train/1b1b8bd73eb47995.jpg	   [{"points": [[758, 283], [971, 267], [972, 279], [758, 294]], "transcription": "We are not programming in 1969 anymore"}, ...]

其中图像标注信息中包含两种参数:

  • pointspoints表示文本框的四个点的绝对坐标(x, y),从左上角的点开始顺时针排列。
  • transcriptiontranscription表示当前文本框的文字内容,在文本检测任务中无需使用这个信息。

如果您想在其他数据集上训练PaddleOCR,可以按照上述形式构建标注文件。

简小派 简小派

简小派是一款AI原生求职工具,通过简历优化、岗位匹配、项目生成、模拟面试与智能投递,全链路提升求职成功率,帮助普通人更快拿到更好的 offer。

简小派 123 查看详情 简小派

之后您需要修改训练配置文件ch_PP-OCRv3_det_cml.yml中的训练数据为HierText数据。

  • 修改训练数据配置:
In [ ]
Train:
  dataset:
    name: SimpleDataSet
    data_dir: ./train_data/icdar2015/text_localization/
    label_file_list:
      - ./train_data/icdar2015/text_localization/train_icdar2015_label.txt

修改为:

In [ ]
Train:
  dataset:
    name: SimpleDataSet
    data_dir: ./train_data/
    label_file_list:
      - ./train_data/hiertext/label_hiertext_train.txt
  • 修改验证数据配置:
In [ ]
Eval:
  dataset:
    name: SimpleDataSet
    data_dir: ./train_data/icdar2015/text_localization/
    label_file_list:
      - ./train_data/icdar2015/text_localization/test_icdar2015_label.txt

修改为:

In [ ]
Eval:
  dataset:
    name: SimpleDataSet
    data_dir: ./train_data/
    label_file_list:
      - ./train_data/hiertext/label_hiertext_val.txt

2.2. 启动训练

下载PP-OCRv3的蒸馏预训练模型并进行训练的方式如下

In [ ]
#下载预训练模型到~/PaddleOCR/pre_train文件夹下!mkdir ~/PaddleOCR/pre_train
%cd ~/PaddleOCR/pre_train
!wget https://paddleocr.bj.bcebos.com/PP-OCRv3/chinese/ch_PP-OCRv3_det_distill_train.tar
!tar xf ch_PP-OCRv3_det_distill_train.tar
In [ ]
# 启动训练,训练模型默认保存在output目录下,加载PP-OCRv3检测预训练模型%cd ~/PaddleOCR
!python3 tools/train.py -c configs/det/ch_PP-OCRv3/ch_PP-OCRv3_det_cml.yml -o Global.s*e_model_dir=./output/ Global.pretrained_model=./pre_train/ch_PP-OCRv3_det_distill_train/best_accuracy

如果要使用多GPU分布式训练,请使用如下命令:

In [ ]
# 启动训练,训练模型默认保存在output目录下,--gpus '0,1,2,3'表示使用0,1,2,3号GPU训练!python3 -m paddle.distributed.launch --log_dir=./debug/ --gpus '0,1,2,3' tools/train.py -c configs/det/ch_PP-OCRv3/ch_PP-OCRv3_det_cml.yml -o Global.s*e_model_dir=./output/ Global.pretrained_model=./pre_train/ch_PP-OCRv3_det_distill_train/best_accuracy

2.3. 模型评估

训练过程中保存的模型在output目录下,包含以下文件:

In [ ]
best_accuracy.states    
best_accuracy.pdparams  # 默认保存最优精度的模型参数best_accuracy.pdopt     # 默认保存最优精度的优化器相关参数latest.states    
latest.pdparams  # 默认保存的最新模型参数latest.pdopt     # 默认保存的最新模型的优化器相关参数

其中,best_accuracy是保存的最优模型,可以直接使用该模型评估

In [ ]
# 进行模型评估%cd ~/PaddleOCR/
!python3 tools/eval.py -c configs/det/ch_PP-OCRv3/ch_PP-OCRv3_det_cml.yml -o Global.checkpoints=./output/best_accuracy

2.4. 基于训练模型的预测

使用上述步骤训练好的模型,测试文本检测效果。我们在 ./doc/imgs_en/文件夹下准备了一些测试图像,您也可以上传自己的图像测试我们的OCR检测模型。

In [ ]
# 进行检测%cd ~/PaddleOCR/
!python3 tools/infer_det.py -c configs/det/ch_PP-OCRv3/ch_PP-OCRv3_det_cml.yml -o Global.checkpoints=./output/best_accuracy Global.infer_img=./doc/imgs_en/img_12.jpg

预测可视化的图像默认保存在./checkpoints/det_db/目录下,运行下述代码进行可视化

In [7]
import matplotlib.pyplot as pltfrom PIL import Image## 显示原图,读取名称为12.jpg的测试图像img_path= "./checkpoints/det_db/det_results_Student/img_12.jpg"img = Image.open(img_path)
plt.figure("test_img", figsize=(10,10))
plt.imshow(img)
plt.show()
<Figure size 720x720 with 1 Axes>

2.5. 基于预测引擎预测

模型训练好后,可以将模型固化为文件,以便于部署

运行如下指令,可将训练好的模型导出为预测部署模型

In [ ]
# 导出为预测部署模型%cd ~/PaddleOCR/
!python3 tools/export_model.py -c configs/det/ch_PP-OCRv3/ch_PP-OCRv3_det_cml.yml -o Global.checkpoints=./output/best_accuracy Global.s*e_inference_dir=./inference/

运行完后,导出的预测部署模型位于inference目录下,组织结构为:

inference├── Student      # 保存的精度最高的Student模型│   ├── inference.pdiparams
│   ├── inference.pdiparams.info│   └── inference.pdmodel
├── Student2    # CML训练方法中的第二个student模型,精度低于Student│   ├── inference.pdiparams
│   ├── inference.pdiparams.info│   └── inference.pdmodel
└── Teacher     # 蒸馏教师模型
    ├── inference.pdiparams
    ├── inference.pdiparams.info
    └── inference.pdmodel

Student下的模型为导出的精度最高的模型。下面以Student的inference模型为例,介绍inference模型的使用方法。

注:关于inference模型的更多使用示例,参考: https://github.com/PaddlePaddle/PaddleOCR/blob/release/2.5/doc/doc_ch/inference_ppocr.md

In [ ]
# 使用inference模型进行文字检测%cd ~/PaddleOCR/
!python3 tools/infer/predict_det.py --image_dir=./doc/imgs_en/img_10.jpg --det_model_dir=./inference/Student/
In [10]
## 显示轻量级模型识别结果## 可视化det_res_img_10.jpg的文本检测效果import matplotlib.pyplot as pltfrom PIL import Image
img_path= "./inference_results/det_res_img_10.jpg"img = Image.open(img_path)
plt.figure("results_img", figsize=(20,20))
plt.imshow(img)
plt.show()
<Figure size 1440x1440 with 1 Axes>

以上就是【官方】十分钟掌握PaddleOCR文字检测使用的详细内容,更多请关注其它相关文章!


# 开源  # 全网推广 营销  # 邯郸网站建设有哪些优势  # 教育怎么样抖音推广营销  # 网站制作推广计划  # 杭州seo优化排行  # 优化网站价格  # 房产网站的推广  # seo快排软件网销  # 抖音关键词搜索排名合作公司  # 新媒体营销推广策略分析  # 官网  # 配置文件  # 为例  # 中文网  # 请使用  # python  # 最优  # 十分钟  # 目录下  # 一言  # type  # fig  # udio  # igs  # red  # 排列  # 百度  # ai  # 工具  # git 


相关栏目: 【 Google疑问12 】 【 Facebook疑问10 】 【 优化推广96088 】 【 技术知识133117 】 【 IDC资讯59369 】 【 网络运营7196 】 【 IT资讯61894


相关推荐: 新闻传闻:迪士尼可能采用人工智能来控制电影制作成本  美图设计室2.0新增哪些功能  人工智能在交通领域的革新:智能解决方案彻底改变交通方式  站在社会的高度理解人工智能  消息称 Meta Quest 将推 VR 游戏订阅:每月 7.99 美元,任选两款  7大探索区域打造沉浸式玩乐“元宇宙” 昆明京东MALL未来科技探索官全城招募中  OpenAI 已全面开放 GPT-3.5 Turbo、DALL-E 及 Whisper API  自己动手使用AI技术实现数字内容生产  借力AI!PCB全球巨头,有爆发潜质吗?  智能机器人正在彻底改变客户服务  携程发布旅游行业垂直大模型 梁建章:AI策略是做可靠的内容 放心的推荐  【机智云物联网低功耗转接板】远程环境数据采集探索  2025世界人工智能大会成功召开  世界人工智能大会|“AI领航,共筑未来”高端保险论坛成功举办  普林斯顿Infinigen矩阵开启!AI造物主100%创造大自然,逼真到炸裂  宇宙探索下一阶段,机器代替人类,AI会在太空探索中取代人类吗?  腾讯自主研发机器狗 Max 升级,可“奔跑跳跃”完成避障动作  借助ChatGPT快速上手ElasticSearch dsl  AI立法迫在眉睫,如何看对行业影响?  联通发布鸿湖图文AI大模型1.0,可实现以文生图  马斯克反讽人工智能AI炒作:“机器学习”本质就是统计  马斯克称人类是半机器人,记忆外包给了电脑  Vision Pro 太贵,苹果基于 iPhone 的 VR 头显专利曝光  江永:精准施训提升通信无人机应急救援能力  脑机接口产业联盟发布十大脑机接口关键技术  OpenAI CEO 阿尔特曼到访日本,对全球 AI 协调合作表示乐观  AI无法对传统文化符号进行解构和创新  为什么很多人对纽约《人工智能招聘法》感到生气?  定义人工智能的十个关键术语  Hugging Face发布了基于NASA卫星数据构建的AI地理空间基础模型  首个算网生态体!中国移动元宇宙产业联盟正式成立  国产医疗企业的人工智能  看似低调,实则稳健:字节在AI路上会遇到什么?  利好来了,AI再起一波?  扎克伯格吐槽苹果Vision Pro:社交落后Meta太多,无法建设元宇宙  华为昇腾AI原生支持30多种基础大模型,包括GPT  AI智能室内效果图设计软件效果,确实惊到我了!  “具身智能”引爆机器人产业,看绝影Lite3/X20四足机器人有何特别之处?  美的推出 AI 双视精准避障的自动集尘扫拖机器人 V12,售价仅为2999元  AI成政客博弈工具,美国大选真假难辨,律师们的生意来了  智能化解决方案:保障数据安全阻击泄露和丢失  周鸿祎参加中美青年科技创新峰会,分享人工智能创新机遇  腾讯汤道生:大模型只是起点,产业落地是AI更大的应用场景  标贝科技亮相国际顶会ICASSP2025 加速布局海外AI数据市场  为AI而服务设计:构建以人为本的AI创新方法  “聚智启新,‘蓉’力同行” 成都市人工智能产业融通对接会成功举办  多家欧洲企业签署公开信,批评欧盟 AI 法案草案限制产业发展  关于开展“与AI共创未来”——2025年全国青少年人工智能创新实践活动的通知  AI进军债券交易,BondGPT来了!  卫星通信牵引物联网竞争升维,模组厂商如何决胜百亿市场? 

 2025-07-16

了解您产品搜索量及市场趋势,制定营销计划

同行竞争及网站分析保障您的广告效果

点击免费数据支持

提交您的需求,1小时内享受我们的专业解答。

运城市盐湖区信雨科技有限公司


运城市盐湖区信雨科技有限公司

运城市盐湖区信雨科技有限公司是一家深耕海外推广领域十年的专业服务商,作为谷歌推广与Facebook广告全球合作伙伴,聚焦外贸企业出海痛点,以数字化营销为核心,提供一站式海外营销解决方案。公司凭借十年行业沉淀与平台官方资源加持,打破传统外贸获客壁垒,助力企业高效开拓全球市场,成为中小企业出海的可靠合作伙伴。

 8156699

 13765294890

 8156699@qq.com

Notice

We and selected third parties use cookies or similar technologies for technical purposes and, with your consent, for other purposes as specified in the cookie policy.
You can consent to the use of such technologies by closing this notice, by interacting with any link or button outside of this notice or by continuing to browse otherwise.