Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
PaddlePaddle
PaddleClas
提交
f3b2b2f4
P
PaddleClas
项目概览
PaddlePaddle
/
PaddleClas
大约 1 年 前同步成功
通知
115
Star
4999
Fork
1114
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
19
列表
看板
标记
里程碑
合并请求
6
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
PaddleClas
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
19
Issue
19
列表
看板
标记
里程碑
合并请求
6
合并请求
6
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
未验证
提交
f3b2b2f4
编写于
8月 29, 2023
作者:
Z
zhangyubo0722
提交者:
GitHub
8月 29, 2023
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[uapi]Save predict result (#2926)
* sava predict result
上级
ae96c979
变更
3
显示空白变更内容
内联
并排
Showing
3 changed file
with
40 addition
and
1 deletion
+40
-1
ppcls/engine/engine.py
ppcls/engine/engine.py
+4
-1
ppcls/utils/__init__.py
ppcls/utils/__init__.py
+1
-0
ppcls/utils/save_result.py
ppcls/utils/save_result.py
+35
-0
未找到文件。
ppcls/engine/engine.py
浏览文件 @
f3b2b2f4
...
@@ -38,7 +38,7 @@ from ppcls.utils.amp import AutoCast, build_scaler
...
@@ -38,7 +38,7 @@ from ppcls.utils.amp import AutoCast, build_scaler
from
ppcls.utils.ema
import
ExponentialMovingAverage
from
ppcls.utils.ema
import
ExponentialMovingAverage
from
ppcls.utils.save_load
import
load_dygraph_pretrain
,
load_dygraph_pretrain_from_url
from
ppcls.utils.save_load
import
load_dygraph_pretrain
,
load_dygraph_pretrain_from_url
from
ppcls.utils.save_load
import
init_model
from
ppcls.utils.save_load
import
init_model
from
ppcls.utils
import
save_load
from
ppcls.utils
import
save_load
,
save_predict_result
from
ppcls.data.utils.get_image_list
import
get_image_list
from
ppcls.data.utils.get_image_list
import
get_image_list
from
ppcls.data.postprocess
import
build_postprocess
from
ppcls.data.postprocess
import
build_postprocess
...
@@ -477,6 +477,9 @@ class Engine(object):
...
@@ -477,6 +477,9 @@ class Engine(object):
results
.
extend
(
result
)
results
.
extend
(
result
)
batch_data
.
clear
()
batch_data
.
clear
()
image_file_list
.
clear
()
image_file_list
.
clear
()
save_path
=
self
.
config
[
"Infer"
].
get
(
"save_dir"
,
None
)
if
save_path
:
save_predict_result
(
save_path
,
results
)
return
results
return
results
def
export
(
self
):
def
export
(
self
):
...
...
ppcls/utils/__init__.py
浏览文件 @
f3b2b2f4
...
@@ -26,3 +26,4 @@ from .metrics import multi_hot_encode
...
@@ -26,3 +26,4 @@ from .metrics import multi_hot_encode
from
.metrics
import
precision_recall_fscore
from
.metrics
import
precision_recall_fscore
from
.misc
import
AverageMeter
from
.misc
import
AverageMeter
from
.save_load
import
init_model
,
save_model
from
.save_load
import
init_model
,
save_model
from
.save_result
import
save_predict_result
ppcls/utils/save_result.py
0 → 100644
浏览文件 @
f3b2b2f4
# Copyright (c) 2023 PaddlePaddle Authors. All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
import
os
import
json
from
.
import
logger
def
save_predict_result
(
save_path
,
result
):
if
os
.
path
.
splitext
(
save_path
)[
-
1
]
==
''
:
if
save_path
[
-
1
]
==
"/"
:
save_path
=
save_path
[:
-
1
]
save_path
=
save_path
+
'.json'
elif
os
.
path
.
splitext
(
save_path
)[
-
1
]
==
'.json'
:
save_path
=
save_path
else
:
logger
.
warning
(
f
"
{
save_path
}
is invalid input path, only files in json format are supported."
)
if
os
.
path
.
exists
(
save_path
):
logger
.
warning
(
f
"The file
{
save_path
}
will be overwritten."
)
with
open
(
save_path
,
'w'
,
encoding
=
'utf-8'
)
as
f
:
json
.
dump
(
result
,
f
)
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录