Apollo 11.0
自动驾驶开放平台
apollo::perception::inference::rpn_proposal_ssd_op结构体 参考

#include <perception_inference_migraphx_plugins.h>

apollo::perception::inference::rpn_proposal_ssd_op 的协作图:

Public 成员函数

std::string name () const
 
migraphx::shape compute_shape (const std::vector< migraphx::shape > &inputs) const
 
migraphx::argument compute (migraphx::context &gctx, const migraphx::shape &, const std::vector< migraphx::argument > &args) const
 
int output_alias (const std::vector< migraphx::shape > &shapes) const
 

静态 Public 成员函数

template<class Self , class F >
static auto reflect (Self &self, F f)
 

Public 属性

size_t batch_size
 
std::function< std::shared_ptr< RPNProposalSSDPlugin >()> get_plugin {}
 

详细描述

在文件 perception_inference_migraphx_plugins.h 第 137 行定义.

成员函数说明

◆ compute()

migraphx::argument apollo::perception::inference::rpn_proposal_ssd_op::compute ( migraphx::context &  gctx,
const migraphx::shape &  ,
const std::vector< migraphx::argument > &  args 
) const
inline

在文件 perception_inference_migraphx_plugins.h 第 164 行定义.

167 {
168 std::vector<const void*> inputs_data{args[0].data(), args[1].data(),
169 args[2].data()};
170
171 std::vector<void*> outputs_data{args[3].data()};
172
173 auto& ctx = migraphx::any_cast<migraphx::gpu::context>(gctx);
174
175 auto plugin = get_plugin();
176 plugin->enqueue(batch_size, inputs_data.data(), outputs_data.data(),
177 nullptr /*workspace*/, ctx.get_stream().get());
178 return args[3];
179 }
std::function< std::shared_ptr< RPNProposalSSDPlugin >()> get_plugin

◆ compute_shape()

migraphx::shape apollo::perception::inference::rpn_proposal_ssd_op::compute_shape ( const std::vector< migraphx::shape > &  inputs) const
inline

在文件 perception_inference_migraphx_plugins.h 第 147 行定义.

148 {
149 migraphx::check_shapes{inputs, *this}.has(4).standard();
150
151 CHECK_EQ(inputs[0].lens()[0], batch_size); // rpn_cls_prob_reshape
152 CHECK_EQ(inputs[1].lens()[0], batch_size); // rpn_bbox_pred
153 CHECK_EQ(inputs[2].lens()[0], batch_size); // im_info
154
155 auto plugin = get_plugin();
156 auto out_dims = plugin->getOutputDimensions(0, nullptr, 0);
157
158 return migraphx::shape{
159 migraphx::shape::float_type,
160 {std::size_t(batch_size), std::size_t(out_dims.d[0]),
161 std::size_t(out_dims.d[1]), std::size_t(out_dims.d[2])}};
162 }

◆ name()

std::string apollo::perception::inference::rpn_proposal_ssd_op::name ( ) const
inline

在文件 perception_inference_migraphx_plugins.h 第 145 行定义.

145{ return "rpn_proposal_ssd"; }

◆ output_alias()

int apollo::perception::inference::rpn_proposal_ssd_op::output_alias ( const std::vector< migraphx::shape > &  shapes) const
inline

在文件 perception_inference_migraphx_plugins.h 第 181 行定义.

181 {
182 return shapes.size() - 1;
183 }

◆ reflect()

template<class Self , class F >
static auto apollo::perception::inference::rpn_proposal_ssd_op::reflect ( Self &  self,
F  f 
)
inlinestatic

在文件 perception_inference_migraphx_plugins.h 第 141 行定义.

141 { // NOLINT
142 return migraphx::pack(f(self.batch_size, "batch_size"));
143 }
double f

类成员变量说明

◆ batch_size

size_t apollo::perception::inference::rpn_proposal_ssd_op::batch_size

在文件 perception_inference_migraphx_plugins.h 第 138 行定义.

◆ get_plugin

std::function<std::shared_ptr<RPNProposalSSDPlugin>()> apollo::perception::inference::rpn_proposal_ssd_op::get_plugin {}

在文件 perception_inference_migraphx_plugins.h 第 139 行定义.

139{};

该结构体的文档由以下文件生成: