Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
s920243400
PaddleOCR
提交
db754244
P
PaddleOCR
项目概览
s920243400
/
PaddleOCR
与 Fork 源项目一致
Fork自
PaddlePaddle / PaddleOCR
通知
1
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
PaddleOCR
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
提交
db754244
编写于
10月 14, 2021
作者:
M
MissPenguin
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
update doc
上级
79eb8e23
变更
2
显示空白变更内容
内联
并排
Showing
2 changed file
with
64 addition
and
8 deletion
+64
-8
tests/docs/test_cpp.md
tests/docs/test_cpp.md
+56
-0
tests/docs/test_python.md
tests/docs/test_python.md
+8
-8
未找到文件。
tests/docs/test_cpp.md
0 → 100644
浏览文件 @
db754244
# C++预测功能测试
C++预测功能测试的主程序为
`test_cpp.sh`
,可以测试基于C++预测库的模型推理功能。
## 测试结论汇总
| 算法名称 | 模型名称 |device | batchsize | mkldnn | cpu多线程 | tensorrt | 离线量化 |
| ---- | ---- | ---- | ---- | ---- | ---- | ----| --- |
| DB |ch_ppocr_mobile_v2.0_det| CPU/GPU | 1/6 | 支持 | 支持 | fp32/fp16/int8 | 支持 |
| DB |ch_ppocr_server_v2.0_det| CPU/GPU | 1/6 | 支持 | 支持 | fp32/fp16/int8 | 支持 |
| CRNN |ch_ppocr_mobile_v2.0_rec| CPU/GPU | 1/6 | 支持 | 支持 | fp32/fp16/int8 | 支持 |
| CRNN |ch_ppocr_server_v2.0_rec| CPU/GPU | 1/6 | 支持 | 支持 | fp32/fp16/int8 | 支持 |
|PP-OCR|ch_ppocr_server_v2.0 | CPU/GPU | 1/6 | 支持 | 支持 | fp32/fp16/int8 | 支持 |
|PP-OCR|ch_ppocr_server_v2.0 | CPU/GPU | 1/6 | 支持 | 支持 | fp32/fp16/int8 | 支持 |
## 1. 功能测试
先运行
`prepare.sh`
准备数据和模型,然后运行
`test_cpp.sh`
进行测试,最终在
```tests/output```
目录下生成
`cpp_infer_*.log`
后缀的日志文件。
```
shell
bash tests/prepare.sh ./tests/configs/ppocr_det_mobile_params.txt
# 用法1:
bash tests/test_cpp.sh ./tests/configs/ppocr_det_mobile_params.txt
# 用法2: 指定GPU卡预测,第三个传入参数为GPU卡号
bash tests/test_cpp.sh ./tests/configs/ppocr_det_mobile_params.txt
'1'
```
## 2. 精度测试
使用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"
>
tests/docs/test_python.md
浏览文件 @
db754244
...
@@ -18,14 +18,14 @@ Python功能测试的主程序为`test_python.sh`,可以测试基于Python的
...
@@ -18,14 +18,14 @@ Python功能测试的主程序为`test_python.sh`,可以测试基于Python的
-
预测相关:
-
预测相关:
| 算法名称 | 模型名称 |device | batchsize
=1/6
| mkldnn | cpu多线程 | tensorrt | 离线量化 |
| 算法名称 | 模型名称 |device | batchsize | mkldnn | cpu多线程 | tensorrt | 离线量化 |
| ---- | ---- | ---- | ---- | ---- | ---- | ----| --- |
| ---- | ---- | ---- | ---- | ---- | ---- | ----| --- |
| DB |ch_ppocr_mobile_v2.0_det| CPU/GPU |
支持
| 支持 | 支持 | fp32/fp16/int8 | 支持 |
| DB |ch_ppocr_mobile_v2.0_det| CPU/GPU |
1/6
| 支持 | 支持 | fp32/fp16/int8 | 支持 |
| DB |ch_ppocr_server_v2.0_det| CPU/GPU |
支持 | 支持 | 支持 | fp32/fp16/int8 | 支持
| DB |ch_ppocr_server_v2.0_det| CPU/GPU |
1/6 | 支持 | 支持 | fp32/fp16/int8 | 支持 |
| CRNN |ch_ppocr_mobile_v2.0_rec| CPU/GPU |
支持
| 支持 | 支持 | fp32/fp16/int8 | 支持 |
| CRNN |ch_ppocr_mobile_v2.0_rec| CPU/GPU |
1/6
| 支持 | 支持 | fp32/fp16/int8 | 支持 |
| CRNN |ch_ppocr_server_v2.0_rec| CPU/GPU |
支持
| 支持 | 支持 | fp32/fp16/int8 | 支持 |
| CRNN |ch_ppocr_server_v2.0_rec| CPU/GPU |
1/6
| 支持 | 支持 | fp32/fp16/int8 | 支持 |
|PP-OCR|ch_ppocr_server_v2.0 | CPU/GPU |
支持
| 支持 | 支持 | fp32/fp16/int8 | 支持 |
|PP-OCR|ch_ppocr_server_v2.0 | CPU/GPU |
1/6
| 支持 | 支持 | fp32/fp16/int8 | 支持 |
|PP-OCR|ch_ppocr_server_v2.0 | CPU/GPU |
支持
| 支持 | 支持 | fp32/fp16/int8 | 支持 |
|PP-OCR|ch_ppocr_server_v2.0 | CPU/GPU |
1/6
| 支持 | 支持 | fp32/fp16/int8 | 支持 |
...
@@ -47,7 +47,7 @@ Python功能测试的主程序为`test_python.sh`,可以测试基于Python的
...
@@ -47,7 +47,7 @@ Python功能测试的主程序为`test_python.sh`,可以测试基于Python的
## 2. 功能测试
## 2. 功能测试
先运行
`prepare.sh`
准备数据和模型,然后运行
`test_python.sh`
进行测试,最终在
```tests/output```
目录下生成
.log后缀
的日志文件。
先运行
`prepare.sh`
准备数据和模型,然后运行
`test_python.sh`
进行测试,最终在
```tests/output```
目录下生成
`infer_*.log`
格式
的日志文件。
test_python.sh包含四种运行模式,每种模式的运行数据不同,分别用于测试速度和精度,分别是:
test_python.sh包含四种运行模式,每种模式的运行数据不同,分别用于测试速度和精度,分别是:
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录