Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
PaddleOCR
提交
aa7e9ac3
P
PaddleOCR
项目概览
PaddlePaddle
/
PaddleOCR
大约 1 年 前同步成功
通知
1525
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看板
体验新版 GitCode,发现更多精彩内容 >>
提交
aa7e9ac3
编写于
9月 03, 2020
作者:
T
tink2123
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
polish code
上级
bc1ad207
变更
3
隐藏空白更改
内联
并排
Showing
3 changed file
with
35 addition
and
36 deletion
+35
-36
tools/infer/predict_rec.py
tools/infer/predict_rec.py
+30
-26
tools/infer/utility.py
tools/infer/utility.py
+4
-6
tools/infer_rec.py
tools/infer_rec.py
+1
-4
未找到文件。
tools/infer/predict_rec.py
浏览文件 @
aa7e9ac3
...
...
@@ -196,32 +196,36 @@ class TextRecognizer(object):
norm_img_batch
.
append
(
norm_img
[
0
])
norm_img_batch
=
np
.
concatenate
(
norm_img_batch
,
axis
=
0
)
encoder_word_pos_list
=
np
.
concatenate
(
encoder_word_pos_list
)
gsrm_word_pos_list
=
np
.
concatenate
(
gsrm_word_pos_list
)
gsrm_slf_attn_bias1_list
=
np
.
concatenate
(
gsrm_slf_attn_bias1_list
)
gsrm_slf_attn_bias2_list
=
np
.
concatenate
(
gsrm_slf_attn_bias2_list
)
starttime
=
time
.
time
()
norm_img_batch
=
fluid
.
core
.
PaddleTensor
(
norm_img_batch
)
encoder_word_pos_list
=
fluid
.
core
.
PaddleTensor
(
encoder_word_pos_list
)
gsrm_word_pos_list
=
fluid
.
core
.
PaddleTensor
(
gsrm_word_pos_list
)
gsrm_slf_attn_bias1_list
=
fluid
.
core
.
PaddleTensor
(
gsrm_slf_attn_bias1_list
)
gsrm_slf_attn_bias2_list
=
fluid
.
core
.
PaddleTensor
(
gsrm_slf_attn_bias2_list
)
inputs
=
[
norm_img_batch
,
encoder_word_pos_list
,
gsrm_slf_attn_bias1_list
,
gsrm_slf_attn_bias2_list
,
gsrm_word_pos_list
]
self
.
predictor
.
run
(
inputs
)
norm_img_batch
=
norm_img_batch
.
copy
()
if
self
.
loss_type
==
"srn"
:
encoder_word_pos_list
=
np
.
concatenate
(
encoder_word_pos_list
)
gsrm_word_pos_list
=
np
.
concatenate
(
gsrm_word_pos_list
)
gsrm_slf_attn_bias1_list
=
np
.
concatenate
(
gsrm_slf_attn_bias1_list
)
gsrm_slf_attn_bias2_list
=
np
.
concatenate
(
gsrm_slf_attn_bias2_list
)
starttime
=
time
.
time
()
norm_img_batch
=
fluid
.
core
.
PaddleTensor
(
norm_img_batch
)
encoder_word_pos_list
=
fluid
.
core
.
PaddleTensor
(
encoder_word_pos_list
)
gsrm_word_pos_list
=
fluid
.
core
.
PaddleTensor
(
gsrm_word_pos_list
)
gsrm_slf_attn_bias1_list
=
fluid
.
core
.
PaddleTensor
(
gsrm_slf_attn_bias1_list
)
gsrm_slf_attn_bias2_list
=
fluid
.
core
.
PaddleTensor
(
gsrm_slf_attn_bias2_list
)
inputs
=
[
norm_img_batch
,
encoder_word_pos_list
,
gsrm_slf_attn_bias1_list
,
gsrm_slf_attn_bias2_list
,
gsrm_word_pos_list
]
self
.
predictor
.
run
(
inputs
)
else
:
self
.
input_tensor
.
copy_from_cpu
(
norm_img_batch
)
self
.
predictor
.
zero_copy_run
()
if
self
.
loss_type
==
"ctc"
:
rec_idx_batch
=
self
.
output_tensors
[
0
].
copy_to_cpu
()
...
...
tools/infer/utility.py
浏览文件 @
aa7e9ac3
...
...
@@ -59,10 +59,10 @@ def parse_args():
parser
.
add_argument
(
"--det_sast_polygon"
,
type
=
bool
,
default
=
False
)
#params for text recognizer
parser
.
add_argument
(
"--rec_algorithm"
,
type
=
str
,
default
=
'
SR
N'
)
parser
.
add_argument
(
"--rec_algorithm"
,
type
=
str
,
default
=
'
CRN
N'
)
parser
.
add_argument
(
"--rec_model_dir"
,
type
=
str
)
parser
.
add_argument
(
"--rec_image_shape"
,
type
=
str
,
default
=
"3,
64, 256
"
)
parser
.
add_argument
(
"--rec_char_type"
,
type
=
str
,
default
=
'
en
'
)
parser
.
add_argument
(
"--rec_image_shape"
,
type
=
str
,
default
=
"3,
32, 320
"
)
parser
.
add_argument
(
"--rec_char_type"
,
type
=
str
,
default
=
'
ch
'
)
parser
.
add_argument
(
"--rec_batch_num"
,
type
=
int
,
default
=
30
)
parser
.
add_argument
(
"--max_text_length"
,
type
=
int
,
default
=
25
)
parser
.
add_argument
(
...
...
@@ -107,11 +107,9 @@ def create_predictor(args, mode):
# use zero copy
config
.
delete_pass
(
"conv_transpose_eltwiseadd_bn_fuse_pass"
)
#config.switch_use_feed_fetch_ops(False)
config
.
switch_use_feed_fetch_ops
(
True
)
config
.
switch_use_feed_fetch_ops
(
False
)
predictor
=
create_paddle_predictor
(
config
)
input_names
=
predictor
.
get_input_names
()
print
(
input_names
)
for
name
in
input_names
:
input_tensor
=
predictor
.
get_input_tensor
(
name
)
output_names
=
predictor
.
get_output_names
()
...
...
tools/infer_rec.py
浏览文件 @
aa7e9ac3
...
...
@@ -162,10 +162,7 @@ def main():
fluid
.
io
.
save_inference_model
(
"./output/"
,
feeded_var_names
=
[
'image'
,
'encoder_word_pos'
,
'gsrm_slf_attn_bias1'
,
'gsrm_slf_attn_bias2'
,
'gsrm_word_pos'
],
feeded_var_names
=
[
'image'
],
target_vars
=
target_var
,
executor
=
exe
,
main_program
=
eval_prog
,
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录