Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
weixin_41840029
PaddleOCR
提交
359d81e5
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看板
提交
359d81e5
编写于
5月 28, 2021
作者:
W
WenmuZhou
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
change infer args format from dict to list
上级
eaf38b9b
变更
2
显示空白变更内容
内联
并排
Showing
2 changed file
with
60 addition
and
280 deletion
+60
-280
paddleocr.py
paddleocr.py
+6
-18
tools/infer/utility.py
tools/infer/utility.py
+54
-262
未找到文件。
paddleocr.py
浏览文件 @
359d81e5
...
...
@@ -170,32 +170,20 @@ def maybe_download(model_storage_directory, url):
def
parse_args_whl
(
mMain
=
True
):
import
argparse
extend_args_list
=
[
{
'name'
:
'lang'
,
'type'
:
str
,
'default'
:
'ch'
},
{
'name'
:
'det'
,
'type'
:
str2bool
,
'default'
:
True
},
{
'name'
:
'rec'
,
'type'
:
str2bool
,
'default'
:
True
},
[
'lang'
,
str
,
'ch'
],
[
'det'
,
str2bool
,
True
],
[
'rec'
,
str2bool
,
True
],
]
for
item
in
inference_args_list
:
if
item
[
'name'
]
==
'rec_char_dict_path'
:
item
[
'default'
]
=
None
if
item
[
0
]
==
'rec_char_dict_path'
:
item
[
2
]
=
None
inference_args_list
.
extend
(
extend_args_list
)
if
mMain
:
return
parse_args
()
else
:
inference_args_dict
=
{}
for
item
in
inference_args_list
:
inference_args_dict
[
item
[
'name'
]]
=
item
[
'default'
]
inference_args_dict
[
item
[
0
]]
=
item
[
2
]
return
argparse
.
Namespace
(
**
inference_args_dict
)
...
...
tools/infer/utility.py
浏览文件 @
359d81e5
...
...
@@ -28,283 +28,75 @@ def str2bool(v):
inference_args_list
=
[
# name type defalue
# params for prediction engine
{
'name'
:
'use_gpu'
,
'type'
:
str2bool
,
'default'
:
True
},
{
'name'
:
'ir_optim'
,
'type'
:
str2bool
,
'default'
:
True
},
{
'name'
:
'use_tensorrt'
,
'type'
:
str2bool
,
'default'
:
False
},
{
'name'
:
'use_fp16'
,
'type'
:
str2bool
,
'default'
:
False
},
{
'name'
:
'enable_mkldnn'
,
'type'
:
str2bool
,
'default'
:
False
},
{
'name'
:
'use_pdserving'
,
'type'
:
str2bool
,
'default'
:
False
},
{
'name'
:
'use_mp'
,
'type'
:
str2bool
,
'default'
:
False
},
{
'name'
:
'total_process_num'
,
'type'
:
int
,
'default'
:
1
},
{
'name'
:
'process_id'
,
'type'
:
int
,
'default'
:
0
},
{
'name'
:
'gpu_mem'
,
'type'
:
int
,
'default'
:
500
},
[
'use_gpu'
,
str2bool
,
True
],
[
'use_tensorrt'
,
str2bool
,
False
],
[
'use_fp16'
,
str2bool
,
False
],
[
'use_pdserving'
,
str2bool
,
False
],
[
'use_mp'
,
str2bool
,
False
],
[
'enable_mkldnn'
,
str2bool
,
False
],
[
'ir_optim'
,
str2bool
,
True
],
[
'total_process_num'
,
int
,
1
],
[
'process_id'
,
int
,
0
],
[
'gpu_mem'
,
int
,
500
],
# params for text detector
{
'name'
:
'image_dir'
,
'type'
:
str
,
'default'
:
None
},
{
'name'
:
'det_algorithm'
,
'type'
:
str
,
'default'
:
'DB'
},
{
'name'
:
'det_model_dir'
,
'type'
:
str
,
'default'
:
None
},
{
'name'
:
'det_limit_side_len'
,
'type'
:
float
,
'default'
:
960
},
{
'name'
:
'det_limit_type'
,
'type'
:
str
,
'default'
:
'max'
},
[
'image_dir'
,
str
,
None
],
[
'det_algorithm'
,
str
,
'DB'
],
[
'det_model_dir'
,
str
,
None
],
[
'det_limit_side_len'
,
float
,
960
],
[
'det_limit_type'
,
str
,
'max'
],
# DB parmas
{
'name'
:
'det_db_thresh'
,
'type'
:
float
,
'default'
:
0.3
},
{
'name'
:
'det_db_box_thresh'
,
'type'
:
float
,
'default'
:
0.5
},
{
'name'
:
'det_db_unclip_ratio'
,
'type'
:
float
,
'default'
:
1.6
},
{
'name'
:
'max_batch_size'
,
'type'
:
int
,
'default'
:
10
},
{
'name'
:
'use_dilation'
,
'type'
:
str2bool
,
'default'
:
False
},
{
'name'
:
'det_db_score_mode'
,
'type'
:
str
,
'default'
:
'fast'
},
[
'det_db_thresh'
,
float
,
0.3
],
[
'det_db_box_thresh'
,
float
,
0.5
],
[
'det_db_unclip_ratio'
,
float
,
1.6
],
[
'max_batch_size'
,
int
,
10
],
[
'use_dilation'
,
str2bool
,
False
],
[
'det_db_score_mode'
,
str
,
'fast'
],
# EAST parmas
{
'name'
:
'det_east_score_thresh'
,
'type'
:
float
,
'default'
:
0.8
},
{
'name'
:
'det_east_cover_thresh'
,
'type'
:
float
,
'default'
:
0.1
},
{
'name'
:
'det_east_nms_thresh'
,
'type'
:
float
,
'default'
:
0.2
},
[
'det_east_score_thresh'
,
float
,
0.8
],
[
'det_east_cover_thresh'
,
float
,
0.1
],
[
'det_east_nms_thresh'
,
float
,
0.2
],
# SAST parmas
{
'name'
:
'det_sast_score_thresh'
,
'type'
:
float
,
'default'
:
0.5
},
{
'name'
:
'det_sast_nms_thresh'
,
'type'
:
float
,
'default'
:
0.2
},
{
'name'
:
'det_sast_polygon'
,
'type'
:
str2bool
,
'default'
:
False
},
[
'det_sast_score_thresh'
,
float
,
0.5
],
[
'det_sast_nms_thresh'
,
float
,
0.2
],
[
'det_sast_polygon'
,
str2bool
,
False
],
# params for text recognizer
{
'name'
:
'rec_algorithm'
,
'type'
:
str
,
'default'
:
'CRNN'
},
{
'name'
:
'rec_model_dir'
,
'type'
:
str
,
'default'
:
None
},
{
'name'
:
'rec_image_shape'
,
'type'
:
str
,
'default'
:
'3, 32, 320'
},
{
'name'
:
'rec_char_type'
,
'type'
:
str
,
'default'
:
"ch"
},
{
'name'
:
'rec_batch_num'
,
'type'
:
int
,
'default'
:
6
},
{
'name'
:
'max_text_length'
,
'type'
:
int
,
'default'
:
25
},
{
'name'
:
'rec_char_dict_path'
,
'type'
:
str
,
'default'
:
'./ppocr/utils/ppocr_keys_v1.txt'
},
{
'name'
:
'use_space_char'
,
'type'
:
str2bool
,
'default'
:
True
},
{
'name'
:
'vis_font_path'
,
'type'
:
str
,
'default'
:
'./doc/fonts/simfang.ttf'
},
{
'name'
:
'drop_score'
,
'type'
:
float
,
'default'
:
0.5
},
[
'rec_algorithm'
,
str
,
'CRNN'
],
[
'rec_model_dir'
,
str
,
None
],
[
'rec_image_shape'
,
str
,
'3, 32, 320'
],
[
'rec_char_type'
,
str
,
"ch"
],
[
'rec_batch_num'
,
int
,
6
],
[
'max_text_length'
,
int
,
25
],
[
'rec_char_dict_path'
,
str
,
'./ppocr/utils/ppocr_keys_v1.txt'
],
[
'use_space_char'
,
str2bool
,
True
],
[
'vis_font_path'
,
str
,
'./doc/fonts/simfang.ttf'
],
[
'drop_score'
,
float
,
0.5
],
# params for e2e
{
'name'
:
'e2e_algorithm'
,
'type'
:
str
,
'default'
:
'PGNet'
},
{
'name'
:
'e2e_model_dir'
,
'type'
:
str
,
'default'
:
None
},
{
'name'
:
'e2e_limit_side_len'
,
'type'
:
float
,
'default'
:
768
},
{
'name'
:
'e2e_limit_type'
,
'type'
:
str
,
'default'
:
'max'
},
[
'e2e_algorithm'
,
str
,
'PGNet'
],
[
'e2e_model_dir'
,
str
,
None
],
[
'e2e_limit_side_len'
,
float
,
768
],
[
'e2e_limit_type'
,
str
,
'max'
],
# PGNet parmas
{
'name'
:
'e2e_pgnet_score_thresh'
,
'type'
:
float
,
'default'
:
0.5
},
{
'name'
:
'e2e_char_dict_path'
,
'type'
:
str
,
'default'
:
'./ppocr/utils/ic15_dict.txt'
},
{
'name'
:
'e2e_pgnet_valid_set'
,
'type'
:
str
,
'default'
:
'totaltext'
},
{
'name'
:
'e2e_pgnet_polygon'
,
'type'
:
str2bool
,
'default'
:
True
},
{
'name'
:
'e2e_pgnet_mode'
,
'type'
:
str
,
'default'
:
'fast'
},
[
'e2e_pgnet_score_thresh'
,
float
,
0.5
],
[
'e2e_char_dict_path'
,
str
,
'./ppocr/utils/ic15_dict.txt'
],
[
'e2e_pgnet_valid_set'
,
str
,
'totaltext'
],
[
'e2e_pgnet_polygon'
,
str2bool
,
True
],
[
'e2e_pgnet_mode'
,
str
,
'fast'
],
# params for text classifier
{
'name'
:
'use_angle_cls'
,
'type'
:
str2bool
,
'default'
:
False
},
{
'name'
:
'cls_model_dir'
,
'type'
:
str
,
'default'
:
None
},
{
'name'
:
'cls_image_shape'
,
'type'
:
str
,
'default'
:
'3, 48, 192'
},
{
'name'
:
'label_list'
,
'type'
:
list
,
'default'
:
[
'0'
,
'180'
]
},
{
'name'
:
'cls_batch_num'
,
'type'
:
int
,
'default'
:
6
},
{
'name'
:
'cls_thresh'
,
'type'
:
float
,
'default'
:
0.9
},
[
'use_angle_cls'
,
str2bool
,
False
],
[
'cls_model_dir'
,
str
,
None
],
[
'cls_image_shape'
,
str
,
'3, 48, 192'
],
[
'label_list'
,
list
,
[
'0'
,
'180'
]],
[
'cls_batch_num'
,
int
,
6
],
[
'cls_thresh'
,
float
,
0.9
],
]
def
parse_args
():
parser
=
argparse
.
ArgumentParser
()
for
item
in
inference_args_list
:
parser
.
add_argument
(
'--'
+
item
[
'name'
],
type
=
item
[
'type'
],
default
=
item
[
'default'
])
parser
.
add_argument
(
'--'
+
item
[
0
],
type
=
item
[
1
],
default
=
item
[
2
])
return
parser
.
parse_args
()
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录