template<typename T, typename V> void ImageClassificationAdapter<T, V>::create()
{
- _image_classification = make_unique<ImageClassificationDefault>(_config);
+ _config->loadMetaFile(make_unique<ImageClassificationParser>());
+ mv_inference_data_type_e dataType = _config->getInputMetaMap().begin()->second->dataType;
+
+ switch (dataType) {
+ case MV_INFERENCE_DATA_UINT8:
+ _image_classification = make_unique<ImageClassificationDefault<unsigned char> >(_config);
+ break;
+ case MV_INFERENCE_DATA_FLOAT32:
+ _image_classification = make_unique<ImageClassificationDefault<float> >(_config);
+ break;
+ default:
+ throw InvalidOperation("Invalid image classification data type.");
+ }
}
template<typename T, typename V>