@@ -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