Skip to content

Commit 74c9800

Browse files
committed
update params parser
1 parent 03c8942 commit 74c9800

File tree

1 file changed

+30
-31
lines changed

1 file changed

+30
-31
lines changed

onboard/preprocessor/parameters_parser.cpp

Lines changed: 30 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -63,15 +63,14 @@ common::E2EParams parseParams(const std::string& model_cfg_path) {
6363
YAML::Node img_preprocessor_node = common::getYamlSubNode(sparse_e2e_node, "ImgPreprocessor");
6464

6565
/// STEP-5.1: Parse Node: `ImgPreprocessor/RawImgShape_CHW` in YAML.
66-
YAML::Node raw_img_shape_chw_node = common::getYamlSubNode(img_preprocessor_node, "RawImgShape_CHW");
66+
YAML::Node raw_img_shape_chw_node = common::getYamlSubNode(img_preprocessor_node[0], "RawImgShape_CHW");
6767
std::vector<std::uint32_t> raw_img_shape_chw = raw_img_shape_chw_node.as<std::vector<std::uint32_t>>();
6868

6969
/// STEP-5.2: Parse Node: `ImgPreprocessor/ModelInputImgShape_CHW` in YAML.
70-
std::vector<std::uint32_t> model_input_img_shape_chw_tmp;
71-
YAML::Node model_input_img_shape_chw_node = common::getYamlSubNode(img_preprocessor_node, "ModelInputImgShape_CHW");
70+
YAML::Node model_input_img_shape_chw_node =
71+
common::getYamlSubNode(img_preprocessor_node[1], "ModelInputImgShape_CHW");
7272
std::vector<std::uint32_t> model_input_img_shape_chw =
7373
model_input_img_shape_chw_node.as<std::vector<std::uint32_t>>();
74-
model_input_img_shape_chw_tmp.assign(model_input_img_shape_chw.begin(), model_input_img_shape_chw.end());
7574

7675
/// @attention Calculate image preprocess's parameters: `resize_ratio/crop_height/crop_width` based on the given
7776
/// configuration parameters in YAML.
@@ -96,30 +95,30 @@ common::E2EParams parseParams(const std::string& model_cfg_path) {
9695

9796
/// STEP-7.1: Parse Node: `Sparse4dExtractFeatTrtEngine/EnginePath` in YAML.
9897
YAML::Node sparse4d_extract_feat_trt_engine_path_node =
99-
common::getYamlSubNode(sparse4d_extract_feat_trt_engine_node, "EnginePath");
98+
common::getYamlSubNode(sparse4d_extract_feat_trt_engine_node[0], "EnginePath");
10099
std::string sparse4d_extract_feat_trt_engine_path = sparse4d_extract_feat_trt_engine_path_node.as<std::string>();
101100

102101
/// STEP-7.2 : Parse Node: `Sparse4dExtractFeatTrtEngine/EngineInputNames` in YAML.
103102
YAML::Node sparse4d_extract_feat_trt_engine_input_names_node =
104-
common::getYamlSubNode(sparse4d_extract_feat_trt_engine_node, "EngineInputNames");
103+
common::getYamlSubNode(sparse4d_extract_feat_trt_engine_node[1], "EngineInputNames");
105104
std::vector<std::string> sparse4d_extract_feat_trt_engine_input_names =
106105
sparse4d_extract_feat_trt_engine_input_names_node.as<std::vector<std::string>>();
107106

108107
/// STEP-7.3 : Parse Node: `Sparse4dExtractFeatTrtEngine/EngineOutputNames` in YAML.
109108
YAML::Node sparse4d_extract_feat_trt_engine_output_names_node =
110-
common::getYamlSubNode(sparse4d_extract_feat_trt_engine_node, "EngineOutputNames");
109+
common::getYamlSubNode(sparse4d_extract_feat_trt_engine_node[2], "EngineOutputNames");
111110
std::vector<std::string> sparse4d_extract_feat_trt_engine_output_names =
112111
sparse4d_extract_feat_trt_engine_output_names_node.as<std::vector<std::string>>();
113112

114113
/// STEP-7.4: Parse Node: `Sparse4dExtractFeatTrtEngine/Sparse4dExtractFeatShape_LC` in YAML.
115114
YAML::Node sparse4d_extract_feat_shape_lc_node =
116-
common::getYamlSubNode(img_preprocessor_node, "Sparse4dExtractFeatShape_LC");
115+
common::getYamlSubNode(sparse4d_extract_feat_trt_engine_node[3], "Sparse4dExtractFeatShape_LC");
117116
std::vector<std::uint32_t> sparse4d_extract_feat_shape_lc =
118117
sparse4d_extract_feat_shape_lc_node.as<std::vector<std::uint32_t>>();
119118

120119
/// STEP-7.5 Parse Node: `Sparse4dExtractFeatTrtEngine/Sparse4dExtractFeatSpatialShapes_LD` in YAML.
121120
YAML::Node sparse4d_extract_feat_spatial_shapes_ld_node =
122-
common::getYamlSubNode(img_preprocessor_node, "Sparse4dExtractFeatSpatialShapes_LD");
121+
common::getYamlSubNode(sparse4d_extract_feat_trt_engine_node[4], "Sparse4dExtractFeatSpatialShapes_LD");
123122
std::vector<std::uint32_t> sparse4d_extract_feat_spatial_shapes_ld =
124123
sparse4d_extract_feat_spatial_shapes_ld_node.as<std::vector<std::uint32_t>>();
125124

@@ -156,70 +155,70 @@ common::E2EParams parseParams(const std::string& model_cfg_path) {
156155

157156
/// STEP-8.1 Parse Node:`Sparse4dHeadFirstFrameEngine/EnginePath` in YAML.
158157
YAML::Node sparse4d_head1st_engine_path_node =
159-
common::getYamlSubNode(sparse4d_head_first_frame_engine_node, "EnginePath");
158+
common::getYamlSubNode(sparse4d_head_first_frame_engine_node[0], "EnginePath");
160159
std::string sparse4d_head1st_engine_path = sparse4d_head1st_engine_path_node.as<std::string>();
161160

162161
/// STEP-8.2 : Parse Node: `Sparse4dHeadFirstFrameEngine/EngineInputNames` in YAML.
163162
YAML::Node sparse4d_head1st_engine_input_names_node =
164-
common::getYamlSubNode(sparse4d_head_first_frame_engine_node, "EngineInputNames");
163+
common::getYamlSubNode(sparse4d_head_first_frame_engine_node[1], "EngineInputNames");
165164
std::vector<std::string> sparse4d_head1st_engine_input_names =
166165
sparse4d_head1st_engine_input_names_node.as<std::vector<std::string>>();
167166

168167
/// STEP-8.3 : Parse Node: `Sparse4dHeadFirstFrameEngine/EngineOutputNames` in YAML.
169168
YAML::Node sparse4d_head1st_engine_output_names_node =
170-
common::getYamlSubNode(sparse4d_head_first_frame_engine_node, "EngineOutputNames");
169+
common::getYamlSubNode(sparse4d_head_first_frame_engine_node[2], "EngineOutputNames");
171170
std::vector<std::string> sparse4d_head1st_engine_output_names =
172171
sparse4d_head1st_engine_output_names_node.as<std::vector<std::string>>();
173172

174-
/// @brief STEP-9 Parse Node: `Sparse4dSecondFrameEngine` in YAML.
173+
/// @brief STEP-9 Parse Node: `Sparse4dHeadSecondFrameEngine` in YAML.
175174
YAML::Node sparse4d_head_second_frame_engine_node =
176-
common::getYamlSubNode(sparse_e2e_node, "Sparse4dSecondFrameEngine");
175+
common::getYamlSubNode(sparse_e2e_node, "Sparse4dHeadSecondFrameEngine");
177176

178-
/// STEP-9.1 Parse Node:`Sparse4dSecondFrameEngine/EnginePath` in YAML.
177+
/// STEP-9.1 Parse Node:`Sparse4dHeadSecondFrameEngine/EnginePath` in YAML.
179178
YAML::Node sparse4d_head2nd_engine_path_node =
180-
common::getYamlSubNode(sparse4d_head_second_frame_engine_node, "EnginePath");
179+
common::getYamlSubNode(sparse4d_head_second_frame_engine_node[0], "EnginePath");
181180
std::string sparse4d_head2nd_engine_path = sparse4d_head2nd_engine_path_node.as<std::string>();
182181

183-
/// STEP-9.2 : Parse Node: `Sparse4dSecondFrameEngine/EngineInputNames` in YAML.
182+
/// STEP-9.2 : Parse Node: `Sparse4dHeadSecondFrameEngine/EngineInputNames` in YAML.
184183
YAML::Node sparse4d_head2nd_engine_input_names_node =
185-
common::getYamlSubNode(sparse4d_head_second_frame_engine_node, "EngineInputNames");
184+
common::getYamlSubNode(sparse4d_head_second_frame_engine_node[1], "EngineInputNames");
186185
std::vector<std::string> sparse4d_head2nd_engine_input_names =
187186
sparse4d_head2nd_engine_input_names_node.as<std::vector<std::string>>();
188187

189-
/// STEP-9.3 : Parse Node: `Sparse4dSecondFrameEngine/EngineOutputNames` in YAML.
188+
/// STEP-9.3 : Parse Node: `Sparse4dHeadSecondFrameEngine/EngineOutputNames` in YAML.
190189
YAML::Node sparse4d_head2nd_engine_output_names_node =
191-
common::getYamlSubNode(sparse4d_head_second_frame_engine_node, "EngineOutputNames");
190+
common::getYamlSubNode(sparse4d_head_second_frame_engine_node[2], "EngineOutputNames");
192191
std::vector<std::string> sparse4d_head2nd_engine_output_names =
193192
sparse4d_head2nd_engine_output_names_node.as<std::vector<std::string>>();
194193

195194
///@brief STEP-10 Parse Node: `InstanceBankParams` in YAML.
196195
YAML::Node instance_bank_params_node = common::getYamlSubNode(sparse_e2e_node, "InstanceBankParams");
197196

198-
YAML::Node num_querys_node = common::getYamlSubNode(instance_bank_params_node, "NumQuerys");
197+
YAML::Node num_querys_node = common::getYamlSubNode(instance_bank_params_node[0], "NumQuerys");
199198
std::uint32_t num_querys = num_querys_node.as<std::uint32_t>();
200199

201-
YAML::Node query_dims_node = common::getYamlSubNode(instance_bank_params_node, "QueryDims");
200+
YAML::Node query_dims_node = common::getYamlSubNode(instance_bank_params_node[1], "QueryDims");
202201
std::uint32_t query_dims = query_dims_node.as<std::uint32_t>();
203202

204-
YAML::Node topk_querys_node = common::getYamlSubNode(instance_bank_params_node, "TopKQuerys");
203+
YAML::Node topk_querys_node = common::getYamlSubNode(instance_bank_params_node[2], "TopKQuerys");
205204
std::uint32_t topk_querys = topk_querys_node.as<std::uint32_t>();
206205

207-
YAML::Node max_time_interval_node = common::getYamlSubNode(instance_bank_params_node, "MaxTimeInterval");
206+
YAML::Node max_time_interval_node = common::getYamlSubNode(instance_bank_params_node[3], "MaxTimeInterval");
208207
float max_time_interval = max_time_interval_node.as<float>();
209208

210-
YAML::Node default_time_interval_node = common::getYamlSubNode(instance_bank_params_node, "DefaultTimeInterval");
209+
YAML::Node default_time_interval_node = common::getYamlSubNode(instance_bank_params_node[4], "DefaultTimeInterval");
211210
float default_time_interval = default_time_interval_node.as<float>();
212211

213-
YAML::Node confidence_decay_node = common::getYamlSubNode(instance_bank_params_node, "ConfidenceDecay");
212+
YAML::Node confidence_decay_node = common::getYamlSubNode(instance_bank_params_node[5], "ConfidenceDecay");
214213
float confidence_decay = confidence_decay_node.as<float>();
215214

216215
///@brief STEP-11 Parse Node: `PostProcess` in YAML.
217216
YAML::Node post_process_node = common::getYamlSubNode(sparse_e2e_node, "PostProcess");
218217

219-
YAML::Node post_process_out_nums_node = common::getYamlSubNode(post_process_node, "PostProcessOutNums");
218+
YAML::Node post_process_out_nums_node = common::getYamlSubNode(post_process_node[0], "PostProcessOutNums");
220219
std::uint32_t post_process_out_nums = post_process_out_nums_node.as<std::uint32_t>();
221220

222-
YAML::Node post_process_threshold_node = common::getYamlSubNode(instance_bank_params_node, "PostProcessThreshold");
221+
YAML::Node post_process_threshold_node = common::getYamlSubNode(post_process_node[1], "PostProcessThreshold");
223222
float post_process_threshold = post_process_threshold_node.as<float>();
224223

225224
///@brief STEP-12 Construct E2EParams::params based on the the parsed parameters.
@@ -228,9 +227,9 @@ common::E2EParams parseParams(const std::string& model_cfg_path) {
228227
preprocessor_params.raw_img_c = raw_img_shape_chw[0];
229228
preprocessor_params.raw_img_h = raw_img_shape_chw[1];
230229
preprocessor_params.raw_img_w = raw_img_shape_chw[2];
231-
preprocessor_params.model_input_img_c = model_input_img_shape_chw_tmp[0];
232-
preprocessor_params.model_input_img_h = model_input_img_shape_chw_tmp[1];
233-
preprocessor_params.model_input_img_w = model_input_img_shape_chw_tmp[2];
230+
preprocessor_params.model_input_img_c = model_input_img_shape_chw[0];
231+
preprocessor_params.model_input_img_h = model_input_img_shape_chw[1];
232+
preprocessor_params.model_input_img_w = model_input_img_shape_chw[2];
234233
preprocessor_params.resize_ratio = resize_ratio;
235234
preprocessor_params.crop_height = crop_height;
236235
preprocessor_params.crop_width = crop_width;

0 commit comments

Comments
 (0)