百度飞浆Paddle OCR检测和识别【OCR数据收集、标注、数据集划分、检测识别模型训练、导出模型】

文章目录

  • 前言
  • 一、OCR数据集采集
  • 二、OCR数据标注
  • 三、划分数据集
  • 四、数据训练
  • 五、导出模型


前言

1、我的电脑没有GPU,如果不使用AI Studio训练的话,第一遍我是按照CPU进行环境配置和训练的,可以参考这篇文章,我按着弄了一遍,可以使用的。
2、使用AI Studio平台进行数据GPU训练,每天都可以领到可以使用的点数,作为零氪用户也可以使用A100训练,完全够用的。Ai Studio进行训练方便简单快捷,不需要配置复杂的环境,或者解决各种离谱的代码报错。本文使用Ai Studio进行训练的。


提示:Paddle OCR分为两部分:检测【det】和识别【rec】,需要分别进行训练,然后拿到训练结果还需要生成模型,Paddle版本最好2.5.2的,使用2.6.1的导出的模型没办法供后续开发使用

一、OCR数据集采集

图片大小不影响训练,将图片进行采集。

二、OCR数据标注

tools文件地址:提取码:umys

1、解压并安装tools文件下的miniconda,建议安装在D盘下的某个目录中,【C盘权限问题比较多后续会麻烦】
在这里插入图片描述
在这里插入图片描述

安装完成之后,检查 我的电脑-》属性-》高级系统变量-》path中是否有下框标红路径,没有的话需要加上【你自己的安装路径】,我的安装路径在D:\miniconda3,示例:
在这里插入图片描述

2、拿到tools文件夹下的.condarc 文件放在“C:\Users\XXX”下【XXX是你的本机用户名】,【我的用户名为29162】示例:
在这里插入图片描述

3、在最近安装找到anaconda prompt,【没找到可以在搜索框搜索】右键管理员身份打开。
①输入 conda create -n OCRTest python=3.8 【这个命令是创建了个环境,其中OCRTest是新取的环境名,这里取名以OCRTest为例】
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

输入“y”
显示到这里说明新环境创建成功
②把tools文件下的PaddleOCR-dygraph.zip解压,可以放到你自己的路径下,【我的路径是D:\BaiduNetdiskDownload\PaddleOCR-dygraph\PaddleOCR-dygraph,并以这个路径为例】
③在刚刚的Anaconda窗口中输入
conda activate OCRTest 【命令行前面的base变为OCRTest说明环境激活成功】
d:
cd D:\BaiduNetdiskDownload\PaddleOCR-dygraph\PaddleOCR-dygraph\PPOCRLabel 【注意,是进入到了PPOCRLabel路径下了】
在这里插入图片描述

④输入以下命令 【请按照截图中的步骤进行安装和运行,指令贴在下面了,方便粘贴使用】
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
此处贴上上面用到的指令,方便粘贴使用

conda install paddlepaddle==2.6.1 --channel https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/Paddle/win-64   
python PPOCRLabel.py
pip install xlrd
python PPOCRLabel.py
pip install PyQt5

如果遇到Proceed ([y]/n)?   直接输入y
如果遇到paddle报错,请输入:
conda install paddlepaddle==2.6.1 --channel https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/Paddle/win-64  
如果遇到cv2报错,请输入
cd ..
pip install -r requirements.txt
如果报错OMP: Error #15: Initializing libiomp5md.dll
set KMP_DUPLICATE_LIB_OK=TRUE

⑤至此,标注软件成功安装并打开啦!!!

解压xunlianji,并在标注软件界面选择 文件-》打开目录-》①选择你刚刚解压完的图片所在文件夹路径,②文件-》自动导出标记结果,界面如下,快捷键信息如下【常用快捷键w是新建标注框,d是切换下一张】。
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

手动缩小识别框,确保数字全部被识别框包裹。

自动标注会有一些错误,我们需要的仅仅是正确的号码牌数字
以下是几类错误,需要手动修改,每次手动修改识别结果后需要按下回车键。
1、多了英文符号的,需要在右侧红色框框里去掉英文符号
在这里插入图片描述

全部标注完成后,依次点击“文件”下的导出Label,导出recLabel按钮。最后生成的文件如下:
在这里插入图片描述

还有生成了文件夹,用于rec识别:
在这里插入图片描述


三、划分数据集

把图片和标注数据按照Label.txt文件以8:1:1【6:2:2也行,具体按照实验要求来】划分,手动或者编码划分,划分后的结果如下:
在这里插入图片描述

四、数据训练

数据训练分为det检测训练和rec识别训练,paddle 2.5.2的环境,在Ai Studio训练。
在这里插入图片描述

1、det的训练:
det训练地址

算力点每日运行获取,使用GPU训练
在这里插入图片描述
依次点击pip安装,最后点击运行,启动环境成功
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
训练完成后在AIstudio查看推理效果,下载模型文件。

2、rec训练
训练网址:rec训练地址

依次pip后点击运行
上传数据集后开始训练和推理,步骤同det
注:rec的数据集是前面标注生成的检测数据集:
在这里插入图片描述
在这里插入图片描述

五、导出模型

从AI Studio下载下来的模型文件为
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
需要使用如下命令进行导出【按照自己的路径进行修改,第一个路径是你从AIStudio下载下来的需要进行模型转换的路径,model是文件名;第二个路径是你想导出到的路径】:

det生成模型:

python tools/export_model.py -c configs/det/ch_PP-OCRv4/ch_PP-OCRv4_det_teacher.yml -o Global.checkpoints=./output/ch_PP-OCRv4/det_best_model/model Global.save_inference_dir=./output/db_lqq_infer/det_model

rec生成模型:

python tools/export_model.py -c configs/rec/ch_PP-OCRv4/ch_PP-OCRv4_rec.yml -o Global.checkpoints=./output/ch_PP-OCRv4/det_best_model/model Global.save_inference_dir=./output/db_lqq_infer/rec_model

最后生成的模型文件det和rec格式均为:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/882467.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Kafka技术详解[1]:简介与基础概念

目录 1. Kafka入门 1.1 概述 1.1.1 初识Kafka 1.1.2 消息队列 1.1.3 生产者-消费者模式 1.1.4 消息中间件对比 1.1.5 ZooKeeper 1. Kafka入门 1.1 概述 1.1.1 初识Kafka Kafka是由Scala和Java语言开发的高吞吐量分布式消息发布和订阅系统,也是大数据技术领…

10月23-27日六西格玛绿带公开课即将在雄安新区开课

在金秋送爽、硕果累累的季节里,天行健管理咨询公司宣布了一项重要决定——定于10月23日至27日,在充满未来气息的河北雄安新区,举办一场旨在提升企业质量管理水平、培养精英人才的六西格玛绿带公开课。此次课程的举办,不仅是对当前…

Spring6梳理9—— 依赖注入之注入对象类型属性

目录 9.1 依赖注入之外部注入对象类型属性 9.1.1 创建dept与emp类 9.1.2 创建配置文件 9.1.3 创建测试类 9.1.4 运行结果 9.2 依赖注入之内部注入对象类型 9.3 依赖注入之级联注入对象类型 9.1 依赖注入之外部注入对象类型属性 9.1.1 创建dept与emp类 1.dept…

Python在AI中的应用--使用决策树进行文本分类

Python在AI中的应用--使用决策树进行文本分类 文本分类决策树什么是决策树 scikit算法 使用scikit的决策树进行文章分类一个文本分类的Python代码使用的scikit APIs说明装入数据集决策树算法类类构造器: 构造决策树分类器产生输出评估输出结果分类准确度分类文字评估…

达梦-华为鲲鹏ARM架构下性能测试最佳实践

一、测试综述 1.1 测试目的 本次测试的目的是验证达梦数据库,在鲲鹏服务器下,不同服务器参数基于sysbench性能压力测试的表现。本次参数是根据为华为鲲鹏arm服务器调优十板斧内建议值调整 成长地图-鲲鹏开发套件开发文档-鲲鹏社区 1.2 通用指标 指标…

跟着问题学12——GRU详解

1 GRU 1. 什么是GRU GRU(Gate Recurrent Unit)是循环神经网络(Recurrent Neural Network, RNN)的一种。和LSTM(Long-Short Term Memory)一样,也是为了解决长期记忆 和反向传播中的梯度等问题…

让AI激发创作力:OpenAI分享5位专业作家利用ChatGPT写作的案例技巧

大家好,我是木易,一个持续关注AI领域的互联网技术产品经理,国内Top2本科,美国Top10 CS研究生,MBA。我坚信AI是普通人变强的“外挂”,专注于分享AI全维度知识,包括但不限于AI科普,AI工…

【标准库的典型内容】std::declval

一、 d e c l v a l declval declval的基本概念和常规范例 s t d : : d e c l v a l std::declval std::declval 是 C 11 C11 C11标准中出现的一个函数模板。这个函数模板设计的比较奇怪(没有实现,只有声明),因此无法被调用&…

AlmaLinux 安裝JDK8

在 AlmaLinux 上安装 JDK 8 可以通过包管理器 dnf 来完成。AlmaLinux 是基于 RHEL 的一个开源发行版,因此其包管理系统和 RHEL 类似。以下是详细的步骤来安装 OpenJDK 8 1. 更新系统包列表 sudo dnf update -y 2. 安装 OpenJDK 8 使用 dnf 安装 OpenJDK 8。你可…

热斑黄斑光伏发电板 红外黄斑检测图像数据集内含最高温度信息 1200张,jpg格式。

热斑黄斑光伏发电板 红外黄斑检测图像数据集 内含最高温度信息 1200张,jpg格式。 热斑黄斑光伏发电板红外黄斑检测图像数据集介绍 数据集名称 热斑黄斑光伏发电板红外黄斑检测图像数据集(Hot Spot and Yellow Spot Detection in Photovoltaic Panels I…

手势手语识别数据集,YOLOv5目标检测两个数据集,图大量,模型精度高分别为近100类

手势手语识别数据集,YOLOv5目标检测 两个数据集,图大量,模型精度高分别为近100类 手势手语识别数据集(Sign Language Gesture Recognition Dataset) 数据集概述 该数据集专为手势手语识别设计,包含大量的…

[深度学习]Pytorch框架

1 深度学习简介 应用领域:语音交互、文本处理、计算机视觉、深度学习、人机交互、知识图谱、分析处理、问题求解2 发展历史 1956年人工智能元年2016年国内开始关注深度学习2017年出现Transformer框架2018年Bert和GPT出现2022年,chatGPT出现,进入AIGC发展阶段3 PyTorch框架简…

Vue3(二)计算属性Computed,监视属性watch,watchEffect,标签的ref属性,propos属性,生命周期,自定义hook

文章目录 一 、计算属性1. 简写2. 完整写法 二、监视watch1. 监视【ref】定义的【基本类型】数据2. 监视【ref】定义的【对象类型】数据3. 监视【reactive】定义的【对象类型】数据4. 监视【ref】或【reactive】定义的【对象类型】数据中的某个属性5. 监视多个数据总结 三、wat…

html+css(如何用css做出京东页面,静态版)

<!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>京东</title><link rel"stylesheet&q…

基于Es和智普AI实现的语义检索

1、什么是语义检索 语义检索是一种利用自然语言处理&#xff08;NLP&#xff09;和人工智能&#xff08;AI&#xff09;技术来理解搜索查询的语义&#xff0c;以提供更准确和相关搜索结果的搜索技术&#xff0c;语义检索是一项突破性的技术&#xff0c;旨在通过深入理解单词和…

知识库管理系统的未来趋势:从单一平台到生态系统

在数字化浪潮的推动下&#xff0c;知识库管理系统&#xff08;Knowledge Base Management System, KBMS&#xff09;正逐步从传统的单一平台向更加开放、灵活、智能的生态系统转变。这一转变不仅体现了技术进步的必然结果&#xff0c;也深刻反映了市场需求的变化。本文将分析随…

neo4j节点关联路径的表示、节点的增删改查

目录 核心概念节点的增删改查&#xff08;1&#xff09;增&#xff08;2&#xff09;查&#xff08;3&#xff09;删&#xff08;4&#xff09;改 neo4j文档&#xff1a;https://neo4j.com/docs/ https://neo4j.com/docs/cypher-manual/current/introduction/ 核心概念 节点 ne…

如何将Excel表格嵌入Web网页在线预览、编辑并保存到自己服务器上?

猿大师办公助手作为一款专业级的网页编辑Office方案&#xff0c;不仅可以把微软Office、金山WPS和永中Office的Word文档内嵌到浏览器网页中实现在线预览、编辑保存等操作&#xff0c;还可以把微软Office、金山WPS和永中Office的Excel表格实现网页中在线预览、编辑并保存到服务器…

C++的哲学思想

C的哲学思想 文章目录 C的哲学思想&#x1f4a1;前言&#x1f4a1;C的哲学思想☁️C底层不应该基于任何其他语言&#xff08;汇编语言除外&#xff09;☁️只为使用的东西付费&#xff08;不需要为没有使用到的语言特性付费&#xff09;☁️以低成本提供高级抽象&#xff08;更…

在云渲染中3D工程文件安全性怎么样?

在云渲染中&#xff0c;3D工程文件的安全性是用户最关心的问题之一。随着企业对数据保护意识的增强&#xff0c;云渲染平台采取了严格的安全措施和加密技术&#xff0c;以确保用户数据的安全性和隐私性。 云渲染平台为了保障用户数据的安全&#xff0c;采取了多层次的安全措施。…