目录
注:gitee上有提供环境准备的链接【链接】
注:其中用到了下方红框命令

pip install paddlepaddle
切换到 /paddle/目录下 下载源码
cd /paddle
git clone https://gitee.com/paddlepaddle/PaddleOCR.git
# 切换版本
git checkout origin/release/2.7
注:预训练模型:已经训练好的模型。在此模型基础上训练,对生成新的模型进行增强
模型下载gitee.paddleocr 可直接跳转至下方页面对模型进行下载 这里参考的文章 >> |
注:进入PP-OCR系列模型下载页面
注:此处下载的训练模型内容是 ch_det_mobile_v2.0_det ( 跟随参考文章 )

注:首先创建目录
mkdir /paddle/PaddleOCR/Preliminary_training

注:可训练自己的数据集,这里跳过,直接使用公开数据集 训练自己的数据集 参考文章 >>|
注:公开数据集下载说明 >>|
注:共3部分 下载图片和标注

注:进入网站进行下载时需要注册登录

注:下图就是下载后的内容
注:下载的文件需要对文件夹名称做修改(留作彩蛋,文章后面会说) 去那 >>|

注:修改预训练模型的位置。修改use_gpu: false(因本机使用的是cpu)

注:编排如图

注:选择配置文件进行训练,这里选择 ./configs/det/det_mv3_db.yml det_mv3_db的意思基于db和mobileNetV3算法的文本检测配置文件
注:处理执行时遇到的问题
ModuleNotFoundError: No module named 'skimage' , 'imgaug', 'pyclipper', 'tqdm', 'rapidfuzz'注:安装相关模块进行解决
# 安装图像处理模块
pip install scikit-image
# 安装图像增强模块
pip install imgaug
# 安装形状裁剪模块
pip install pyclipper
# 安装嵌入式数据库模块
pip install lmdb
# 安装进度条库
pip install tqdm
# 安装字符串匹配库
pip install rapidfuzz

注:编辑报错文件/paddle/PaddleOCR/tools/program.py 进行修改。将dist.ParallelEnv().dev_id 为 dist.get_rank()错误处理参考文章 >> |
注:修改训练文件夹 ch4_training_images 为 标注文件中(train_icdar2015_label.txt)图片路径的名称 icdar_c4_train_imgs
注:或者修改标注文件的内容也可以,保持一致。避免执行训练脚本时报错

注:查看标注文件 train_icdar2015_label.txt
cat ./train_data/icdar2015/text_localization/train_icdar2015_label.txt

注:故将ch4_training_images 文件夹名称改成 icdar_c4_train_imgs/

python tools/train.py -c configs/det/det_mv3_db.yml
注:解决方案是修改配置文件参数,兼容系统当前系统性能 参考 >> |
注:需要修改配置文件 yml参数 num_workers = 0, 避免报错(内存空间不足)。空间足够大cpu核数够高可以尝试修改其他数值(这里没有再进行测试) 参考 >> |

python tools/train.py -c configs/det/det_mv3_db.yml

注:cpu配置 4个处理器,2个内核数量

注:内存8G

注:使用的文心 做的翻译, 向他问了下面这段内容:
[2024/03/02 13:36:13] ppocr INFO: epoch: [1/1200], global_step: 10, lr: 0.001000, loss: 8.048188, loss_shrink_maps: 4.862389, loss_threshold_maps: 2.202206, loss_binary_maps: 0.975967, loss_cbn: 0.000000, avg_reader_cost: 0.13627 s, avg_batch_cost: 89.83051 s, avg_samples: 16.0, ips: 0.17811 samples/s, eta: 78 days, 14:11:27
注:最后的 eta 时间很大,果断放弃,看来应该用小一点的训练集去做

注:后期会训练自定义模型在此更新链接 Ocr之PaddleOcr尝试训练自定义模型 >> |