Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
weixin_41840029
PaddleOCR
提交
e0b62a5a
P
PaddleOCR
项目概览
weixin_41840029
/
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看板
提交
e0b62a5a
编写于
10月 18, 2021
作者:
M
MissPenguin
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
update doc
上级
440feccf
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
32 addition
and
26 deletion
+32
-26
tests/docs/test_cpp.md
tests/docs/test_cpp.md
+16
-15
tests/docs/test_python.md
tests/docs/test_python.md
+9
-8
tests/readme.md
tests/readme.md
+7
-3
未找到文件。
tests/docs/test_cpp.md
浏览文件 @
e0b62a5a
...
...
@@ -2,20 +2,19 @@
C++预测功能测试的主程序为
`test_cpp.sh`
,可以测试基于C++预测库的模型推理功能。
## 测试结论汇总
##
1.
测试结论汇总
| 算法名称 | 模型名称 |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 | 支持 |
基于训练是否使用量化,进行本测试的模型可以分为
`正常模型`
和
`量化模型`
,这两类模型对应的C++预测功能汇总如下:
| 模型类型 |device | batchsize | tensorrt | mkldnn | cpu多线程 |
| ---- | ---- | ---- | :----: | :----: | :----: |
| 正常模型 | GPU | 1/6 | fp32/fp16 | - | - |
| 正常模型 | CPU | 1/6 | - | fp32 | 支持 |
| 量化模型 | GPU | 1/6 | int8 | - | - |
| 量化模型 | CPU | 1/6 | - | | 支持 |
##
1.
功能测试
## 2. 测试流程
##
# 2.1
功能测试
先运行
`prepare.sh`
准备数据和模型,然后运行
`test_cpp.sh`
进行测试,最终在
```tests/output```
目录下生成
`cpp_infer_*.log`
后缀的日志文件。
```
shell
...
...
@@ -28,14 +27,14 @@ bash tests/test_cpp.sh ./tests/configs/ppocr_det_mobile_params.txt '1'
```
##
2.
精度测试
##
# 2.2
精度测试
使用compare_results.py脚本比较模型预测的结果是否符合预期,主要步骤包括:
-
提取日志中的预测坐标;
-
从本地文件中提取保存好的坐标结果;
-
比较上述两个结果是否符合精度预期,误差大于设置阈值时会报错。
### 使用方式
###
#
使用方式
运行命令:
```
shell
python3.7 tests/compare_results.py
--gt_file
=
./tests/results/cpp_
*
.txt
--log_file
=
./tests/output/cpp_
*
.log
--atol
=
1e-3
--rtol
=
1e-3
...
...
@@ -47,7 +46,7 @@ python3.7 tests/compare_results.py --gt_file=./tests/results/cpp_*.txt --log_fi
-
atol: 设置的绝对误差
-
rtol: 设置的相对误差
### 运行结果
###
#
运行结果
正常运行效果如下图:
<img
src=
"compare_cpp_right.png"
width=
"1000"
>
...
...
@@ -55,5 +54,7 @@ python3.7 tests/compare_results.py --gt_file=./tests/results/cpp_*.txt --log_fi
出现不一致结果时的运行输出:
<img
src=
"compare_cpp_wrong.png"
width=
"1000"
>
***
## 3. 更多教程
本文档为功能测试用,更详细的c++预测使用教程请参考:
[
服务器端C++预测
](
https://github.com/PaddlePaddle/PaddleOCR/tree/dygraph/deploy/cpp_infer
)
tests/docs/test_python.md
浏览文件 @
e0b62a5a
...
...
@@ -2,7 +2,7 @@
Python功能测试的主程序为
`test_python.sh`
,可以测试基于Python的模型训练、评估、推理等基本功能,包括裁剪、量化、蒸馏。
## 测试结论汇总
##
1.
测试结论汇总
-
训练相关:
...
...
@@ -25,8 +25,8 @@ Python功能测试的主程序为`test_python.sh`,可以测试基于Python的
| 量化模型 | GPU | 1/6 | int8 | - | - |
| 量化模型 | CPU | 1/6 | - | int8 | 支持 |
##
1.
安装依赖
## 2. 测试流程
##
# 2.1
安装依赖
-
安装PaddlePaddle >= 2.0
-
安装PaddleOCR依赖
```
...
...
@@ -43,7 +43,7 @@ Python功能测试的主程序为`test_python.sh`,可以测试基于Python的
```
##
2.
功能测试
##
# 2.2
功能测试
先运行
`prepare.sh`
准备数据和模型,然后运行
`test_python.sh`
进行测试,最终在
```tests/output```
目录下生成
`infer_*.log`
格式的日志文件。
test_python.sh包含四种运行模式,每种模式的运行数据不同,分别用于测试速度和精度,分别是:
...
...
@@ -82,14 +82,14 @@ bash tests/test_python.sh tests/configs/ppocr_det_mobile_params.txt 'klquant_in
```
##
3.
精度测试
##
# 2.3
精度测试
使用compare_results.py脚本比较模型预测的结果是否符合预期,主要步骤包括:
-
提取日志中的预测坐标;
-
从本地文件中提取保存好的坐标结果;
-
比较上述两个结果是否符合精度预期,误差大于设置阈值时会报错。
### 使用方式
###
#
使用方式
运行命令:
```
shell
python3.7 tests/compare_results.py
--gt_file
=
./tests/results/python_
*
.txt
--log_file
=
./tests/output/python_
*
.log
--atol
=
1e-3
--rtol
=
1e-3
...
...
@@ -101,7 +101,7 @@ python3.7 tests/compare_results.py --gt_file=./tests/results/python_*.txt --log
-
atol: 设置的绝对误差
-
rtol: 设置的相对误差
### 运行结果
###
#
运行结果
正常运行效果如下图:
<img
src=
"compare_right.png"
width=
"1000"
>
...
...
@@ -109,7 +109,8 @@ python3.7 tests/compare_results.py --gt_file=./tests/results/python_*.txt --log
出现不一致结果时的运行输出:
<img
src=
"compare_wrong.png"
width=
"1000"
>
***
## 3. 更多教程
本文档为功能测试用,更丰富的训练预测使用教程请参考:
[
模型训练
](
https://github.com/PaddlePaddle/PaddleOCR/blob/dygraph/doc/doc_ch/training.md
)
[
基于Python预测引擎推理
](
https://github.com/PaddlePaddle/PaddleOCR/blob/dygraph/doc/doc_ch/inference.md
)
tests/readme.md
浏览文件 @
e0b62a5a
# 推理部署导航
## 1. 简介
飞桨除了基本的模型训练和预测,还提供了支持多端多平台的高性能推理部署工具。本文档提供了PaddleOCR中所有模型的推理部署导航,方便用户查阅每种模型的推理部署打通情况,并可以进行一键测试。
<div
align=
"center"
>
<img
src=
"docs/guide.png"
width=
"1000"
>
</div>
## 2. 汇总信息
打通情况汇总如下,已填写的部分表示可以使用本工具进行一键测试,未填写的表示正在支持中。
**字段说明:**
-
基础训练预测:
必选支持功能,
包括模型训练、Paddle Inference Python预测。
-
其他:
可选支持功能,包括Paddle Inference C++预测、Paddle Serving部署、Paddle-Lite部署
。
-
基础训练预测:包括模型训练、Paddle Inference Python预测。
-
其他:
包括Paddle Inference C++预测、Paddle Serving部署、Paddle-Lite部署等
。
| 算法论文 | 模型名称 | 模型类型 | 基础训练预测 | 其他 |
...
...
@@ -44,7 +48,7 @@
## 一键测试工具使用
##
3.
一键测试工具使用
### 目录介绍
```
shell
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录