update link
This commit is contained in:
parent
131a99b747
commit
4a1549d610
|
@ -12,12 +12,12 @@
|
|||
- [2. FAQ](#2-faq)
|
||||
|
||||
|
||||
<a name="1"></a>
|
||||
<a name="1-----"></a>
|
||||
# 1. 文字检测
|
||||
|
||||
本节以icdar2015数据集为例,介绍PaddleOCR中检测模型训练、评估、测试的使用方式。
|
||||
|
||||
<a name="11"></a>
|
||||
<a name="11-----"></a>
|
||||
## 1.1 数据准备
|
||||
icdar2015数据集可以从[官网](https://rrc.cvc.uab.es/?ch=4&com=downloads)下载到,首次下载需注册。
|
||||
|
||||
|
@ -64,7 +64,7 @@ json.dumps编码前的图像标注信息是包含多个字典的list,字典中
|
|||
|
||||
如果您想在其他数据集上训练,可以按照上述形式构建标注文件。
|
||||
|
||||
<a name="12"></a>
|
||||
<a name="12--------"></a>
|
||||
## 1.2 下载预训练模型
|
||||
|
||||
首先下载模型backbone的pretrain model,PaddleOCR的检测模型目前支持两种backbone,分别是MobileNetV3、ResNet_vd系列,
|
||||
|
@ -82,7 +82,7 @@ wget -P ./pretrain_models/ https://paddle-imagenet-models-name.bj.bcebos.com/dyg
|
|||
wget -P ./pretrain_models/ https://paddle-imagenet-models-name.bj.bcebos.com/dygraph/ResNet50_vd_ssld_pretrained.pdparams
|
||||
```
|
||||
|
||||
<a name="13"></a>
|
||||
<a name="13-----"></a>
|
||||
## 1.3 启动训练
|
||||
|
||||
*如果您安装的是cpu版本,请将配置文件中的 `use_gpu` 字段修改为false*
|
||||
|
@ -105,7 +105,7 @@ python3 -m paddle.distributed.launch --gpus '0,1,2,3' tools/train.py -c configs/
|
|||
python3 tools/train.py -c configs/det/det_mv3_db.yml -o Optimizer.base_lr=0.0001
|
||||
```
|
||||
|
||||
<a name="14"></a>
|
||||
<a name="14-----"></a>
|
||||
## 1.4 断点训练
|
||||
|
||||
如果训练程序中断,如果希望加载训练中断的模型从而恢复训练,可以通过指定Global.checkpoints指定要加载的模型路径:
|
||||
|
@ -115,7 +115,7 @@ python3 tools/train.py -c configs/det/det_mv3_db.yml -o Global.checkpoints=./you
|
|||
|
||||
**注意**:`Global.checkpoints`的优先级高于`Global.pretrain_weights`的优先级,即同时指定两个参数时,优先加载`Global.checkpoints`指定的模型,如果`Global.checkpoints`指定的模型路径有误,会加载`Global.pretrain_weights`指定的模型。
|
||||
|
||||
<a name="15"></a>
|
||||
<a name="15---backbone---"></a>
|
||||
## 1.5 更换Backbone 训练
|
||||
|
||||
PaddleOCR将网络划分为四部分,分别在[ppocr/modeling](../../ppocr/modeling)下。 进入网络的数据将按照顺序(transforms->backbones->
|
||||
|
@ -163,7 +163,7 @@ args1: args1
|
|||
|
||||
**注意**:如果要更换网络的其他模块,可以参考[文档](./add_new_algorithm.md)。
|
||||
|
||||
<a name="16"></a>
|
||||
<a name="16-----"></a>
|
||||
## 1.6 指标评估
|
||||
|
||||
PaddleOCR计算三个OCR检测相关的指标,分别是:Precision、Recall、Hmean(F-Score)。
|
||||
|
@ -176,7 +176,7 @@ python3 tools/eval.py -c configs/det/det_mv3_db.yml -o Global.checkpoints="{pat
|
|||
|
||||
* 注:`box_thresh`、`unclip_ratio`是DB后处理所需要的参数,在评估EAST模型时不需要设置
|
||||
|
||||
<a name="17"></a>
|
||||
<a name="17-------"></a>
|
||||
## 1.7 测试检测效果
|
||||
|
||||
测试单张图像的检测效果
|
||||
|
@ -194,7 +194,7 @@ python3 tools/infer_det.py -c configs/det/det_mv3_db.yml -o Global.infer_img="./
|
|||
python3 tools/infer_det.py -c configs/det/det_mv3_db.yml -o Global.infer_img="./doc/imgs_en/" Global.pretrained_model="./output/det_db/best_accuracy"
|
||||
```
|
||||
|
||||
<a name="#18--inference----"></a>
|
||||
<a name="18--inference----"></a>
|
||||
## 1.8 转inference模型测试
|
||||
|
||||
inference 模型(`paddle.jit.save`保存的模型)
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
* [1.2 OCR 识别模型基本概念](#12-ocr---------)
|
||||
* [1.3 PP-OCR模型](#13-pp-ocr--)
|
||||
|
||||
|
||||
<a name="11-ocr-----"></a>
|
||||
# 1. OCR 简要介绍
|
||||
本节简要介绍OCR检测模型、识别模型的基本概念,并介绍PaddleOCR的PP-OCR模型。
|
||||
|
||||
|
@ -13,7 +13,7 @@ OCR(Optical Character Recognition,光学字符识别)目前是文字识别
|
|||
|
||||
OCR文字识别一般包括两个部分,文本检测和文本识别;文本检测首先利用检测算法检测到图像中的文本行;然后检测到的文本行用识别算法去识别到具体文字。
|
||||
|
||||
|
||||
<a name="11-ocr---------"></a>
|
||||
## 1.1 OCR 检测模型基本概念
|
||||
|
||||
文本检测就是要定位图像中的文字区域,然后通常以边界框的形式将单词或文本行标记出来。传统的文字检测算法多是通过手工提取特征的方式,特点是速度快,简单场景效果好,但是面对自然场景,效果会大打折扣。当前多是采用深度学习方法来做。
|
||||
|
@ -23,14 +23,14 @@ OCR文字识别一般包括两个部分,文本检测和文本识别;文本
|
|||
2. 基于分割的方法;将文本行当成分割目标,然后通过分割结果构建外接文本框,可以处理弯曲文本,对于文本交叉场景问题效果不理想。典型算法为DB、PSENet等方法。
|
||||
3. 混合目标检测和分割的方法;
|
||||
|
||||
|
||||
<a name="12-ocr---------"></a>
|
||||
## 1.2 OCR 识别模型基本概念
|
||||
|
||||
OCR识别算法的输入数据一般是文本行,背景信息不多,文字占据主要部分,识别算法目前可以分为两类算法:
|
||||
1. 基于CTC的方法;即识别算法的文字预测模块是基于CTC的,常用的算法组合为CNN+RNN+CTC。目前也有一些算法尝试在网络中加入transformer模块等等。
|
||||
2. 基于Attention的方法;即识别算法的文字预测模块是基于Attention的,常用算法组合是CNN+RNN+Attention。
|
||||
|
||||
|
||||
<a name="13-pp-ocr--"></a>
|
||||
## 1.3 PP-OCR模型
|
||||
|
||||
PaddleOCR 中集成了很多OCR算法,文本检测算法有DB、EAST、SAST等等,文本识别算法有CRNN、RARE、StarNet、Rosetta、SRN等算法。
|
||||
|
|
Loading…
Reference in New Issue