@@ -19,7 +19,7 @@ class Classification {
1919 std::shared_ptr<InferenceAdapter> adapter;
2020 VisionPipeline<ClassificationResult> pipeline;
2121
22- Classification (std::shared_ptr<InferenceAdapter> adapter) : adapter(adapter) {
22+ Classification (std::shared_ptr<InferenceAdapter> adapter, const ov::AnyMap& user_config ) : adapter(adapter) {
2323 pipeline = VisionPipeline<ClassificationResult>(
2424 adapter,
2525 [&](cv::Mat image) {
@@ -29,16 +29,19 @@ class Classification {
2929 return postprocess (result);
3030 });
3131
32- auto config = adapter->getModelConfig ();
33- labels = utils::get_from_any_maps (" labels" , config, {}, labels);
34-
35- topk = utils::get_from_any_maps (" topk" , config, {}, topk);
36- multilabel = utils::get_from_any_maps (" multilabel" , config, {}, multilabel);
37- output_raw_scores = utils::get_from_any_maps (" output_raw_scores" , config, {}, output_raw_scores);
38- confidence_threshold = utils::get_from_any_maps (" confidence_threshold" , config, {}, confidence_threshold);
39- hierarchical = utils::get_from_any_maps (" hierarchical" , config, {}, hierarchical);
40- hierarchical_config = utils::get_from_any_maps (" hierarchical_config" , config, {}, hierarchical_config);
41- hierarchical_postproc = utils::get_from_any_maps (" hierarchical_postproc" , config, {}, hierarchical_postproc);
32+ auto model_config = adapter->getModelConfig ();
33+ labels = utils::get_from_any_maps (" labels" , user_config, model_config, labels);
34+
35+ topk = utils::get_from_any_maps (" topk" , user_config, model_config, topk);
36+ multilabel = utils::get_from_any_maps (" multilabel" , user_config, model_config, multilabel);
37+ output_raw_scores = utils::get_from_any_maps (" output_raw_scores" , user_config, model_config, output_raw_scores);
38+ confidence_threshold =
39+ utils::get_from_any_maps (" confidence_threshold" , user_config, model_config, confidence_threshold);
40+ hierarchical = utils::get_from_any_maps (" hierarchical" , user_config, model_config, hierarchical);
41+ hierarchical_config =
42+ utils::get_from_any_maps (" hierarchical_config" , user_config, model_config, hierarchical_config);
43+ hierarchical_postproc =
44+ utils::get_from_any_maps (" hierarchical_postproc" , user_config, model_config, hierarchical_postproc);
4245 if (hierarchical) {
4346 if (hierarchical_config.empty ()) {
4447 throw std::runtime_error (" Error: empty hierarchical classification config" );
@@ -55,7 +58,7 @@ class Classification {
5558 }
5659
5760 static void serialize (std::shared_ptr<ov::Model>& ov_model);
58- static Classification load (const std::string& model_path);
61+ static Classification create_model (const std::string& model_path, const ov::AnyMap& user_config = {} );
5962
6063 ClassificationResult infer (cv::Mat image);
6164 std::vector<ClassificationResult> inferBatch (std::vector<cv::Mat> image);
0 commit comments