提交 036e0868 编写于 作者: J Jethong

add faq

上级 9a55ea9c
...@@ -9,8 +9,8 @@ PaddleOCR同时支持动态图与静态图两种编程范式 ...@@ -9,8 +9,8 @@ PaddleOCR同时支持动态图与静态图两种编程范式
**近期更新** **近期更新**
- **【预告】 PaddleOCR研发团队对最新发版内容技术深入解读,4月13日晚上19:00,[直播地址](https://live.bilibili.com/21689802)** - **【预告】 PaddleOCR研发团队对最新发版内容技术深入解读,4月13日晚上19:00,[直播地址](https://live.bilibili.com/21689802)**
- 2021.4.12 [FAQ](./doc/doc_ch/FAQ.md)新增5个高频问题,总数203个,每周一都会更新,欢迎大家持续关注。
- 2021.4.8 release 2.1版本,新增AAAI 2021论文[端到端识别算法PGNet](./doc/doc_ch/pgnet.md)开源,[多语言模型](./doc/doc_ch/multi_languages.md)支持种类增加到80+。 - 2021.4.8 release 2.1版本,新增AAAI 2021论文[端到端识别算法PGNet](./doc/doc_ch/pgnet.md)开源,[多语言模型](./doc/doc_ch/multi_languages.md)支持种类增加到80+。
- 2021.4.6 [FAQ](./doc/doc_ch/FAQ.md)新增5个高频问题,总数198个,每周一都会更新,欢迎大家持续关注。
- 2021.2.8 正式发布PaddleOCRv2.0(branch release/2.0)并设置为推荐用户使用的默认分支. 发布的详细内容,请参考: https://github.com/PaddlePaddle/PaddleOCR/releases/tag/v2.0.0 - 2021.2.8 正式发布PaddleOCRv2.0(branch release/2.0)并设置为推荐用户使用的默认分支. 发布的详细内容,请参考: https://github.com/PaddlePaddle/PaddleOCR/releases/tag/v2.0.0
- 2021.1.26,28,29 PaddleOCR官方研发团队带来技术深入解读三日直播课,1月26日、28日、29日晚上19:30,[直播地址](https://live.bilibili.com/21689802) - 2021.1.26,28,29 PaddleOCR官方研发团队带来技术深入解读三日直播课,1月26日、28日、29日晚上19:30,[直播地址](https://live.bilibili.com/21689802)
- [More](./doc/doc_ch/update.md) - [More](./doc/doc_ch/update.md)
......
...@@ -9,34 +9,34 @@ ...@@ -9,34 +9,34 @@
## PaddleOCR常见问题汇总(持续更新) ## PaddleOCR常见问题汇总(持续更新)
* [近期更新(2021.4.6](#近期更新) * [近期更新(2021.4.12](#近期更新)
* [【精选】OCR精选10个问题](#OCR精选10个问题) * [【精选】OCR精选10个问题](#OCR精选10个问题)
* [【理论篇】OCR通用41个问题](#OCR通用问题) * [【理论篇】OCR通用43个问题](#OCR通用问题)
* [基础知识13题](#基础知识) * [基础知识13题](#基础知识)
* [数据集8](#数据集2) * [数据集9](#数据集2)
* [模型训练调优20](#模型训练调优2) * [模型训练调优21](#模型训练调优2)
* [【实战篇】PaddleOCR实战147个问题](#PaddleOCR实战问题) * [【实战篇】PaddleOCR实战150个问题](#PaddleOCR实战问题)
* [使用咨询56](#使用咨询) * [使用咨询57](#使用咨询)
* [数据集18题](#数据集3) * [数据集18题](#数据集3)
* [模型训练调优33](#模型训练调优3) * [模型训练调优34](#模型训练调优3)
* [预测部署40](#预测部署3) * [预测部署41](#预测部署3)
<a name="近期更新"></a> <a name="近期更新"></a>
## 近期更新(2021.4.6 ## 近期更新(2021.4.12
#### Q3.4.40: 使用hub_serving部署,延时较高,可能的原因是什么呀 #### Q2.2.9: 端到端算法PGNet使用的是什么类型的数据集呢
**A**: 首先,测试的时候第一张图延时较高,可以多测试几张然后观察后几张图的速度;其次,如果是在cpu端部署serving端模型(如backbone为ResNet34),耗时较慢,建议在cpu端部署mobile(如backbone为MobileNetV3)模型 **A**: PGNet目前可以使用四点标注数据集,也可以使用多点标注数据集(十四点),多点标注训练的效果要比四点的好,一种可以尝试的策略是先在四点数据集上训练,之后用多点数据集在此基础上继续训练
#### Q2.3.20: 如何根据不同的硬件平台选用不同的backbone #### Q2.3.21: 端到端算法PGNet是否支持中文识别,速度会很慢嘛
**A**在不同的硬件上,不同的backbone的速度优势不同,可以根据不同平台的速度-精度图来确定backbone,这里可以参考[PaddleClas模型速度-精度图](https://github.com/PaddlePaddle/PaddleClas/tree/release/2.0/docs/zh_CN/models) **A**目前开源的PGNet算法模型主要是用于检测英文数字,对于中文的识别肯定也是支持的,大家可以使用开源的端到端中文数据集进行训练,对于复杂文本(弯曲文本)的识别,也可以自己构造一批数据集针对进行训练,对于推理速度,可以将模型转换为inference,速度应该会是一个比较可观的结果
#### Q3.1.55: 目前PaddleOCR有知识蒸馏的demo吗 #### Q3.1.57: 端到端算法PGNet提供了两种后处理方式,两者之间有什么区别呢
**A**: 目前我们还没有提供PaddleOCR知识蒸馏的相关demo,PaddleClas开源了一个效果还不错的方案,可以移步[SSLD知识蒸馏方案](https://github.com/PaddlePaddle/PaddleClas/blob/release%2F2.0/docs/zh_CN/advanced_tutorials/distillation/distillation.md), paper: https://arxiv.org/abs/2103.05959 关于PaddleOCR的蒸馏,我们也会在未来支持 **A**: 两种后处理的区别主要在于速度的推理,config中PostProcess有fast/slow两种模式,一种速度慢,精度相对较高,另外一种速度快,精度也在可接受的范围之内。建议使用速度快的后处理方式
#### Q3.3.33: 训练识别和检测时学习率要加上warmup,目的是什么 #### Q3.3.34: 表格识别中,如何提高单字的识别结果
**A**: Warmup机制先使学习率从一个较小的值逐步升到一个较大的值,而不是直接就使用较大的学习率,这样有助于模型的稳定收敛。在OCR检测和OCR识别中,一般会带来精度~0.5%的提升 **A**: 首先需要确认一下检测模型有没有有效的检测出单个字符,如果没有的话,需要在训练集当中添加相应的单字数据集
#### Q3.1.56: 在使用PPOCRLabel的时候,如何标注倾斜的文字 #### Q3.4.41: PaddleORC支持tensorrt推理吗
**A**: 如果矩形框标注后空白冗余较多,可以尝试PPOCRLabel提供的四点标注,可以标注各种倾斜角度的文本 **A**: 支持的,需要在编译的时候将CMakeLists.txt文件当中,将相关代码`option(WITH_TENSORRT "Compile demo with TensorRT." OFF)`的OFF改成ON
<a name="OCR精选10个问题"></a> <a name="OCR精选10个问题"></a>
## 【精选】OCR精选10个问题 ## 【精选】OCR精选10个问题
...@@ -213,6 +213,9 @@ ...@@ -213,6 +213,9 @@
#### Q2.2.8: DBNet如果想使用多边形作为输入,数据标签格式应该如何设定? #### Q2.2.8: DBNet如果想使用多边形作为输入,数据标签格式应该如何设定?
**A**:如果想使用多边形作为DBNet的输入,数据标签也应该用多边形来表示。这样子可以更好得拟合弯曲文本。PPOCRLabel暂时只支持矩形框标注和四边形框标注。 **A**:如果想使用多边形作为DBNet的输入,数据标签也应该用多边形来表示。这样子可以更好得拟合弯曲文本。PPOCRLabel暂时只支持矩形框标注和四边形框标注。
#### Q2.2.9: 端到端算法PGNet使用的是什么类型的数据集呢?
**A**: PGNet目前可以使用四点标注数据集,也可以使用多点标注数据集(十四点),多点标注训练的效果要比四点的好,一种可以尝试的策略是先在四点数据集上训练,之后用多点数据集在此基础上继续训练。
<a name="模型训练调优2"></a> <a name="模型训练调优2"></a>
### 模型训练调优 ### 模型训练调优
...@@ -313,6 +316,9 @@ ...@@ -313,6 +316,9 @@
#### Q2.3.20: 如何根据不同的硬件平台选用不同的backbone? #### Q2.3.20: 如何根据不同的硬件平台选用不同的backbone?
**A**:在不同的硬件上,不同的backbone的速度优势不同,可以根据不同平台的速度-精度图来确定backbone,这里可以参考[PaddleClas模型速度-精度图](https://github.com/PaddlePaddle/PaddleClas/tree/release/2.0/docs/zh_CN/models) **A**:在不同的硬件上,不同的backbone的速度优势不同,可以根据不同平台的速度-精度图来确定backbone,这里可以参考[PaddleClas模型速度-精度图](https://github.com/PaddlePaddle/PaddleClas/tree/release/2.0/docs/zh_CN/models)
#### Q2.3.21: 端到端算法PGNet是否支持中文识别,速度会很慢嘛?
**A**:目前开源的PGNet算法模型主要是用于检测英文数字,对于中文的识别肯定也是支持的,大家可以使用开源的端到端中文数据集进行训练,对于复杂文本(弯曲文本)的识别,也可以自己构造一批数据集针对进行训练,对于推理速度,可以将模型转换为inference,速度应该会是一个比较可观的结果。
<a name="PaddleOCR实战问题"></a> <a name="PaddleOCR实战问题"></a>
## 【实战篇】PaddleOCR实战问题 ## 【实战篇】PaddleOCR实战问题
...@@ -604,6 +610,9 @@ repo中config.yml文件的前后处理参数和inference预测默认的超参数 ...@@ -604,6 +610,9 @@ repo中config.yml文件的前后处理参数和inference预测默认的超参数
#### Q3.1.56: 在使用PPOCRLabel的时候,如何标注倾斜的文字? #### Q3.1.56: 在使用PPOCRLabel的时候,如何标注倾斜的文字?
**A**: 如果矩形框标注后空白冗余较多,可以尝试PPOCRLabel提供的四点标注,可以标注各种倾斜角度的文本。 **A**: 如果矩形框标注后空白冗余较多,可以尝试PPOCRLabel提供的四点标注,可以标注各种倾斜角度的文本。
#### Q3.1.57: 端到端算法PGNet提供了两种后处理方式,两者之间有什么区别呢?
**A**: 两种后处理的区别主要在于速度的推理,config中PostProcess有fast/slow两种模式,一种速度慢,精度相对较高,另外一种速度快,精度也在可接受的范围之内。建议使用速度快的后处理方式。
<a name="数据集3"></a> <a name="数据集3"></a>
...@@ -874,6 +883,9 @@ lr: ...@@ -874,6 +883,9 @@ lr:
#### Q3.3.33: 训练识别和检测时学习率要加上warmup,目的是什么? #### Q3.3.33: 训练识别和检测时学习率要加上warmup,目的是什么?
**A**: Warmup机制先使学习率从一个较小的值逐步升到一个较大的值,而不是直接就使用较大的学习率,这样有助于模型的稳定收敛。在OCR检测和OCR识别中,一般会带来精度~0.5%的提升。 **A**: Warmup机制先使学习率从一个较小的值逐步升到一个较大的值,而不是直接就使用较大的学习率,这样有助于模型的稳定收敛。在OCR检测和OCR识别中,一般会带来精度~0.5%的提升。
#### Q3.3.34: 表格识别中,如何提高单字的识别结果?
**A**: 首先需要确认一下检测模型有没有有效的检测出单个字符,如果没有的话,需要在训练集当中添加相应的单字数据集。
<a name="预测部署3"></a> <a name="预测部署3"></a>
...@@ -1071,3 +1083,6 @@ nvidia-smi --lock-gpu-clocks=1590 -i 0 ...@@ -1071,3 +1083,6 @@ nvidia-smi --lock-gpu-clocks=1590 -i 0
#### Q3.4.40: 使用hub_serving部署,延时较高,可能的原因是什么呀? #### Q3.4.40: 使用hub_serving部署,延时较高,可能的原因是什么呀?
**A**: 首先,测试的时候第一张图延时较高,可以多测试几张然后观察后几张图的速度;其次,如果是在cpu端部署serving端模型(如backbone为ResNet34),耗时较慢,建议在cpu端部署mobile(如backbone为MobileNetV3)模型。 **A**: 首先,测试的时候第一张图延时较高,可以多测试几张然后观察后几张图的速度;其次,如果是在cpu端部署serving端模型(如backbone为ResNet34),耗时较慢,建议在cpu端部署mobile(如backbone为MobileNetV3)模型。
#### Q3.4.41: PaddleORC支持tensorrt推理吗?
**A**: 支持的,需要在编译的时候将CMakeLists.txt文件当中,将相关代码`option(WITH_TENSORRT "Compile demo with TensorRT." OFF)`的OFF改成ON。
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册