Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
s920243400
PaddleDetection
提交
37572ab7
P
PaddleDetection
项目概览
s920243400
/
PaddleDetection
与 Fork 源项目一致
Fork自
PaddlePaddle / PaddleDetection
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
P
PaddleDetection
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
未验证
提交
37572ab7
编写于
7月 13, 2021
作者:
W
wangguanzhong
提交者:
GitHub
7月 13, 2021
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
fix output in cpp infer (#3676)
上级
d9db5cfc
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
11 addition
and
20 deletion
+11
-20
deploy/cpp/src/main.cc
deploy/cpp/src/main.cc
+11
-20
未找到文件。
deploy/cpp/src/main.cc
浏览文件 @
37572ab7
...
...
@@ -248,15 +248,17 @@ void PredictImage(const std::vector<std::string> all_img_paths,
int
item_start_idx
=
0
;
for
(
int
i
=
0
;
i
<
left_image_cnt
;
i
++
)
{
std
::
cout
<<
all_img_paths
.
at
(
idx
*
batch_size
+
i
)
<<
" bbox_num "
<<
bbox_num
[
i
]
<<
std
::
endl
;
if
(
bbox_num
[
i
]
<=
1
)
{
continue
;
}
cv
::
Mat
im
=
batch_imgs
[
i
]
;
std
::
vector
<
PaddleDetection
::
ObjectResult
>
im_result
;
int
detect_num
=
0
;
for
(
int
j
=
0
;
j
<
bbox_num
[
i
];
j
++
)
{
PaddleDetection
::
ObjectResult
item
=
result
[
item_start_idx
+
j
];
if
(
item
.
confidence
<
threshold
)
{
if
(
item
.
confidence
<
threshold
||
item
.
class_id
==
-
1
)
{
continue
;
}
detect_num
+=
1
;
im_result
.
push_back
(
item
);
if
(
item
.
rect
.
size
()
>
6
){
is_rbox
=
true
;
printf
(
"class=%d confidence=%.4f rect=[%d %d %d %d %d %d %d %d]
\n
"
,
...
...
@@ -281,20 +283,9 @@ void PredictImage(const std::vector<std::string> all_img_paths,
item
.
rect
[
3
]);
}
}
std
::
cout
<<
all_img_paths
.
at
(
idx
*
batch_size
+
i
)
<<
" The number of detected box: "
<<
detect_num
<<
std
::
endl
;
item_start_idx
=
item_start_idx
+
bbox_num
[
i
];
}
// Visualization result
int
bbox_idx
=
0
;
for
(
int
bs
=
0
;
bs
<
batch_imgs
.
size
();
bs
++
)
{
if
(
bbox_num
[
bs
]
<=
1
)
{
continue
;
}
cv
::
Mat
im
=
batch_imgs
[
bs
];
std
::
vector
<
PaddleDetection
::
ObjectResult
>
im_result
;
for
(
int
k
=
0
;
k
<
bbox_num
[
bs
];
k
++
)
{
im_result
.
push_back
(
result
[
bbox_idx
+
k
]);
}
bbox_idx
+=
bbox_num
[
bs
];
// Visualization result
cv
::
Mat
vis_img
=
PaddleDetection
::
VisualizeResult
(
im
,
im_result
,
labels
,
colormap
,
is_rbox
);
std
::
vector
<
int
>
compression_params
;
...
...
@@ -304,10 +295,10 @@ void PredictImage(const std::vector<std::string> all_img_paths,
if
(
output_dir
.
rfind
(
OS_PATH_SEP
)
!=
output_dir
.
size
()
-
1
)
{
output_path
+=
OS_PATH_SEP
;
}
std
::
string
image_file_path
=
all_img_paths
.
at
(
idx
*
batch_size
+
bs
);
std
::
string
image_file_path
=
all_img_paths
.
at
(
idx
*
batch_size
+
i
);
output_path
+=
image_file_path
.
substr
(
image_file_path
.
find_last_of
(
'/'
)
+
1
);
cv
::
imwrite
(
output_path
,
vis_img
,
compression_params
);
printf
(
"Visualized output saved as %s
\n
"
,
output_path
.
c_str
());
printf
(
"Visualized output saved as %s
\n
"
,
output_path
.
c_str
());
}
}
det_t
[
0
]
+=
det_times
[
0
];
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录