SOMS/test/XuAilibTest/NanoDetector.h

32 lines
736 B
C
Raw Normal View History

2024-07-15 10:31:26 +08:00
#pragma once
#include "IObjectDetector.h"
#include <opencv2/opencv.hpp>
class CNanoDetector :public IObjectDetector
{
public:
CNanoDetector(const char* strModelPath, int iBatchSize = 1, int iInferMode = 0, int iDeviceIndex = 0);
virtual ~CNanoDetector();
//<2F><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
virtual bool Init();
//<2F>ͷŶ<CDB7><C5B6><EFBFBD>
virtual bool UnInit();
//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
virtual const char* GetType();
//ִ<><D6B4>infer
virtual bool Execute(cv::Mat& inputImage);
//<2F><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD>
virtual bool GetResults(std::vector<DetectorResult>& vecDetectorResults);
private:
bool m_bInit;
int m_iBatchSize;
int m_iInferMode;
int m_iDeviceInedx;
std::string m_strModelFile;
void* m_pInfer;
std::vector<DetectorResult> m_vecDetectResult;
};