1. 下载源码
切换到 /paddle/目录下 下载源码
cd /paddle
git clone https://gitee.com/paddlepaddle/PaddleOCR.git
# 切换版本
git checkout origin/release/2.7
2. 预模型下载
注:预训练模型:已经训练好的模型。在此模型基础上训练,对生成新的模型进行增强
-
模型下载
gitee.paddleocr 可直接跳转至下方页面对模型进行下载 这里参考的文章 >> |
注:进入PP-OCR系列模型下载页面
注:此处下载的训练模型内容是
ch_det_mobile_v2.0_det ( 跟随参考文章 )
-
下载后在docker容器中创建目录将模型保存至目录中
注:首先创建目录
mkdir /paddle/PaddleOCR/Preliminary_training
-
使用公开数据集
注:可训练自己的数据集,这里跳过,直接使用公开数据集
训练自己的数据集 参考文章 >>| 注:
公开数据集下载说明 >>| 注:共3部分 下载图片和标注
注:进入网站进行下载时需要注册登录
注:下图就是下载后的内容
注:下载的文件需要对文件夹名称做修改(留作彩蛋,文章后面会说)
去那 >>|
3. 修改模型训练文件yml
注:修改预训练模型的位置。修改use_gpu: false(因本机使用的是cpu)
4. 将下载的训练集进行编排
注:编排如图
5. 执行脚本进行训练
注:选择配置文件进行训练,这里选择 ./configs/det/det_mv3_db.yml det_mv3_db的意思基于db和mobileNetV3算法的文本检测配置文件
注:处理执行时遇到的问题
- 问题1:处理模块不存在问题
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
- 问题2:对象无此属性错误
注:编辑报错文件/paddle/PaddleOCR/tools/program.py 进行修改。将dist.ParallelEnv().dev_id 为 dist.get_rank()
错误处理参考文章
>> |
6. 修改文件夹名称(彩蛋)
注:修改训练文件夹 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/