#ifndef __DETECTOR_YOLOV3_H__ #define __DETECTOR_YOLOV3_H__ #include #include #include #include using namespace std; using namespace cv; using namespace migraphx; namespace migraphxSamples { typedef struct _YOLOV3Parameter { int numberOfClasses; float confidenceThreshold; float nmsThreshold; float objectThreshold; }YOLOV3Parameter; class DetectorYOLOV3 { public: DetectorYOLOV3(); ~DetectorYOLOV3(); ErrorCode Initialize(InitializationParameterOfDetector initializationParameterOfDetector); ErrorCode Detect(const cv::Mat &srcImage, std::vector &resultsOfDetection); private: ErrorCode DoCommonInitialization(InitializationParameterOfDetector initializationParameterOfDetector); private: cv::FileStorage configurationFile; InitializationParameterOfDetector initializationParameter; FILE *logFile; migraphx::program net; cv::Size inputSize; string inputName; migraphx::shape inputShape; bool useFP16; vector classNames; YOLOV3Parameter yolov3Parameter; }; } #endif