Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
PaddleOCR
提交
79eb8e23
P
PaddleOCR
项目概览
PaddlePaddle
/
PaddleOCR
大约 1 年 前同步成功
通知
1528
Star
32962
Fork
6643
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
108
列表
看板
标记
里程碑
合并请求
7
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
PaddleOCR
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
108
Issue
108
列表
看板
标记
里程碑
合并请求
7
合并请求
7
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
79eb8e23
编写于
10月 14, 2021
作者:
M
MissPenguin
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
update doc
上级
4246f9d9
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
45 addition
and
32 deletion
+45
-32
tests/docs/compare_right.png
tests/docs/compare_right.png
+0
-0
tests/docs/compare_wrong.png
tests/docs/compare_wrong.png
+0
-0
tests/docs/test_python.md
tests/docs/test_python.md
+45
-32
未找到文件。
tests/docs/compare_right.png
0 → 100644
浏览文件 @
79eb8e23
33.0 KB
tests/docs/compare_wrong.png
0 → 100644
浏览文件 @
79eb8e23
64.2 KB
tests/docs/test_python.md
浏览文件 @
79eb8e23
...
...
@@ -4,40 +4,28 @@ Python功能测试的主程序为`test_python.sh`,可以测试基于Python的
## 测试结论汇总
训练相关:方式包括:
【单机单卡、单机多卡、多机多卡】
*【正常训练、混合精度训练】*
【裁剪、在线量化、蒸馏】
-
训练相关:
| 算法名称 | 模型名称 | 单机单卡 | 单机多卡 | 多机多卡 | 模型压缩 |
| 算法名称 | 模型名称 | 单机单卡 | 单机多卡 | 多机多卡 | 模型压缩
(单机多卡)
|
| :---- | :---- | :---- | :---- | :---- | :---- |
| DB | ch_ppocr_mobile_v2.0_det| 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 | 裁剪、在线/离线量化、蒸馏 |
| DB | ch_ppocr_server_v2.0_det| 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 | 裁剪、在线/离线量化、蒸馏 |
| CRNN | ch_ppocr_mobile_v2.0_rec| 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 | 裁剪、在线/离线量化、蒸馏 |
| CRNN | ch_ppocr_server_v2.0_rec| 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 | 裁剪、在线/离线量化、蒸馏 |
|PP-OCR| ch_ppocr_server_v2.0_det| 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 | 裁剪、在线/离线量化、蒸馏 |
|PP-OCR| ch_ppocr_server_v2.0_det| 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 | 裁剪、在线/离线量化、蒸馏 |
| 算法名称 | 模型名称 | 单机单卡 | 单机多卡 | 多机多卡 |
| :---- | :---- | :---- | :---- | :---- |
| DB | ch_ppocr_mobile_v2.0_det| 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 |
| DB | ch_ppocr_server_v2.0_det| 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 |
| DB | ch_ppocr_mobile_v2.0_det_pact| 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 |
| DB | ch_ppocr_mobile_v2.0_det_fpgm| 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 |
| CRNN | ch_ppocr_mobile_v2.0_rec| 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 |
| CRNN | ch_ppocr_server_v2.0_rec| 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 |
| CRNN | ch_ppocr_mobile_v2.0_rec_pact| 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 |
| CRNN | ch_ppocr_mobile_v2.0_rec_fpgm| 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 |
|PP-OCR| ch_ppocr_server_v2.0_det| 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 |
|PP-OCR| ch_ppocr_server_v2.0_det| 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 |
预测相关:
| 模型名称 | 算法名称 | 模型类型 |device | batchsize=1/6 | mkldnn | tensorrt | cpu多线程 |
| DB | ch_ppocr_mobile_v2.0_det| 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 | 正常训练:FPGM裁剪、PACT量化 |
| DB | ch_ppocr_server_v2.0_det| 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 | 正常训练:FPGM裁剪、PACT量化 |
| CRNN | ch_ppocr_mobile_v2.0_rec| 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 | 正常训练:FPGM裁剪、PACT量化 |
| CRNN | ch_ppocr_server_v2.0_rec| 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 | 正常训练:FPGM裁剪、PACT量化 |
|PP-OCR| ch_ppocr_mobile_v2.0| 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 | 正常训练:FPGM裁剪、PACT量化 |
|PP-OCR| ch_ppocr_server_v2.0| 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 | 正常训练
<br>
混合精度 | 正常训练:FPGM裁剪、PACT量化 |
-
预测相关:
| 算法名称 | 模型名称 |device | batchsize=1/6 | mkldnn | cpu多线程 | tensorrt | 离线量化 |
| ---- | ---- | ---- | ---- | ---- | ---- | ----| --- |
|ch_ppocr_mobile_v2.0_det| DB | 检测 | CPU/GPU | 支持 | 支持 | fp32/fp16/int8 | 支持 |
|ch_ppocr_mobile_v2.0_rec| CRNN | 识别 | CPU/GPU | 支持 | 支持 | fp32/fp16/int8 | 支持 |
|ch_ppocr_server_v2.0_det| DB | 检测 | CPU/GPU | 支持 | 支持 | fp32/fp16/int8 | 支持 |
|ch_ppocr_server_v2.0_rec| CRNN | 识别 | CPU/GPU | 支持 | 支持 | fp32/fp16/int8 | 支持 |
| DB |ch_ppocr_mobile_v2.0_det| CPU/GPU | 支持 | 支持 | 支持 | fp32/fp16/int8 | 支持 |
| DB |ch_ppocr_server_v2.0_det| CPU/GPU | 支持 | 支持 | 支持 | fp32/fp16/int8 | 支持
| CRNN |ch_ppocr_mobile_v2.0_rec| CPU/GPU | 支持 | 支持 | 支持 | fp32/fp16/int8 | 支持 |
| CRNN |ch_ppocr_server_v2.0_rec| CPU/GPU | 支持 | 支持 | 支持 | fp32/fp16/int8 | 支持 |
|PP-OCR|ch_ppocr_server_v2.0 | CPU/GPU | 支持 | 支持 | 支持 | fp32/fp16/int8 | 支持 |
|PP-OCR|ch_ppocr_server_v2.0 | CPU/GPU | 支持 | 支持 | 支持 | fp32/fp16/int8 | 支持 |
...
...
@@ -91,4 +79,29 @@ bash tests/test.sh ./tests/configs/ppocr_det_mobile_params.txt 'whole_train_infe
```
## 3. 精度测试
\ No newline at end of file
## 3. 精度测试
使用compare_results.py脚本比较模型预测的结果是否符合预期,主要步骤包括:
-
提取日志中的预测坐标;
-
从本地文件中提取保存好的坐标结果;
-
比较上述两个结果是否符合精度预期,误差大于设置阈值时会报错。
### 使用方式
运行命令:
```
shell
python3.7 tests/compare_results.py
--gt_file
=
./tests/results/
*
.txt
--log_file
=
./tests/output/infer_
*
.log
--atol
=
1e-3
--rtol
=
1e-3
```
参数介绍:
-
gt_file: 指向事先保存好的预测结果路径,支持
*.txt 结尾,会自动索引*
.txt格式的文件,文件默认保存在tests/result/ 文件夹下
-
log_file: 指向运行tests/test.sh 脚本的infer模式保存的预测日志,预测日志中打印的有预测结果,比如:文本框,预测文本,类别等等,同样支持infer_
*
.log格式传入
-
atol: 设置的绝对误差
-
rtol: 设置的相对误差
### 运行结果
正常运行效果如下图:
<img
src=
"compare_right.png"
width=
"1000"
>
出现不一致结果时的运行输出:
<img
src=
"compare_wrong.png"
width=
"1000"
>
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录