百度飞浆Paddle 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路径下了】

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



此处贴上上面用到的指令,方便粘贴使用

c 复制代码
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生成模型:

c 复制代码
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生成模型:

c 复制代码
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格式均为:

相关推荐
飞桨PaddlePaddle1 天前
飞桨PP系列新成员PP-DocLayout开源,版面检测加速大模型数据构建,超百页文档图像一秒搞定
人工智能·百度·paddlepaddle·飞桨·deepseek
Ronin-Lotus3 天前
深度学习篇---模型参数调优
人工智能·pytorch·python·深度学习·paddlepaddle·batch·学习率
Ronin-Lotus3 天前
深度学习篇---模型GPU训练
人工智能·pytorch·python·深度学习·paddlepaddle·并行·openmp
1nv1s1ble3 天前
paddle ocr
ocr·paddle
Sinokap4 天前
Let’s Encrypt 宣布推出短期证书与 IP 地址支持,推动 Web 安全迈向新高度
前端·tcp/ip·安全·ocr
赛卡5 天前
Gerbv 与 Python 协同:实现 Gerber 文件智能分析与制造数据自动化
图像处理·人工智能·python·算法·计算机视觉·自动化·ocr
余子桃5 天前
Python实现图片文字识别-OCR
ocr
猫头虎5 天前
合合信息TextIn大模型加速器 2.0来了:智能文档解析和图表解析能力全面升级
开发语言·人工智能·python·计算机视觉·信息可视化·aigc·ocr
code_talking6 天前
【OCR】技术
ocr
冲上云霄的Jayden6 天前
PaddleNLP UIE 通过OCR识别银行回执信息
nlp·ocr·paddle·paddlenlp·信息提取·uie·银行回执