Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Pinoxchio
apollo
提交
4c750920
A
apollo
项目概览
Pinoxchio
/
apollo
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
A
apollo
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
4c750920
编写于
3月 16, 2020
作者:
J
Jiangtao Hu
提交者:
Calvin Miao
3月 16, 2020
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
planning: add an inference demo for one planning demo pytorch model.
上级
3b14c9a3
变更
2
显示空白变更内容
内联
并排
Showing
2 changed file
with
71 addition
and
0 deletion
+71
-0
modules/planning/tools/BUILD
modules/planning/tools/BUILD
+9
-0
modules/planning/tools/inference_demo.cc
modules/planning/tools/inference_demo.cc
+62
-0
未找到文件。
modules/planning/tools/BUILD
浏览文件 @
4c750920
...
...
@@ -14,4 +14,13 @@ cc_binary(
],
)
cc_binary
(
name
=
"inference_demo"
,
srcs
=
[
"inference_demo.cc"
],
deps
=
[
"@com_github_gflags_gflags//:gflags"
,
"//third_party:libtorch"
,
],
)
cpplint
()
modules/planning/tools/inference_demo.cc
0 → 100644
浏览文件 @
4c750920
/******************************************************************************
* Copyright 2019 The Apollo 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.
*****************************************************************************/
#include <gflags/gflags.h>
#include "torch/script.h"
#include "torch/torch.h"
DEFINE_string
(
model_file
,
"/apollo/modules/planning/tools/planning_demo_model.pt"
,
"pytorch model file."
);
int
main
(
int
argc
,
char
**
argv
)
{
google
::
ParseCommandLineFlags
(
&
argc
,
&
argv
,
true
);
torch
::
jit
::
script
::
Module
model
;
torch
::
Device
device
(
torch
::
kCPU
);
torch
::
set_num_threads
(
1
);
model
=
torch
::
jit
::
load
(
FLAGS_model_file
,
device
);
std
::
vector
<
torch
::
jit
::
IValue
>
torch_inputs
;
int
input_dim
=
2
*
3
*
224
*
224
+
2
*
14
;
std
::
vector
<
double
>
feature_values
(
input_dim
,
0.5
);
std
::
vector
<
torch
::
jit
::
IValue
>
inputs
;
std
::
vector
<
torch
::
jit
::
IValue
>
tuple
;
tuple
.
push_back
(
torch
::
zeros
({
2
,
3
,
224
,
224
}));
tuple
.
push_back
(
torch
::
zeros
({
2
,
14
}));
inputs
.
push_back
(
torch
::
ivalue
::
Tuple
::
create
(
tuple
));
auto
torch_output
=
model
.
forward
(
inputs
);
std
::
cout
<<
torch_output
<<
std
::
endl
;
std
::
cout
<<
"isDoubleList:"
<<
torch_output
.
isDoubleList
()
<<
std
::
endl
;
std
::
cout
<<
"isTensorList:"
<<
torch_output
.
isTensorList
()
<<
std
::
endl
;
std
::
cout
<<
"isTensor:"
<<
torch_output
.
isTensor
()
<<
std
::
endl
;
auto
torch_output_tensor
=
torch_output
.
toTensor
();
std
::
cout
<<
"tensor dim:"
<<
torch_output_tensor
.
dim
()
<<
std
::
endl
;
std
::
cout
<<
"tensor sizes:"
<<
torch_output_tensor
.
sizes
()
<<
std
::
endl
;
std
::
cout
<<
"tensor toString:"
<<
torch_output_tensor
.
toString
()
<<
std
::
endl
;
std
::
cout
<<
"tensor [0,0,0] element:"
<<
torch_output_tensor
[
0
][
0
][
0
]
<<
std
::
endl
;
std
::
cout
<<
"tensor [0,0,1] element:"
<<
torch_output_tensor
[
0
][
0
][
1
]
<<
std
::
endl
;
return
0
;
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录