You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
#include "utils.h"
|
|
|
|
|
#include "kernel_function.cuh"
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class MI_VisionInterface
|
|
|
|
|
{
|
|
|
|
|
public:
|
|
|
|
|
~MI_VisionInterface() = default;
|
|
|
|
|
|
|
|
|
|
// <20><>ʼ<EFBFBD><CABC>engine
|
|
|
|
|
virtual bool initEngine(const std::string& _onnxFileName) = 0;
|
|
|
|
|
// <20><><EFBFBD><EFBFBD>ģ<EFBFBD><C4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
virtual bool check() = 0;
|
|
|
|
|
// <20><><EFBFBD><EFBFBD>
|
|
|
|
|
virtual bool doTRTInfer(const std::vector<MN_VisionImage::MS_ImageParam>& _bufImg, std::vector<trtUtils::MR_Result>* _detectRes, int* _user) = 0;
|
|
|
|
|
// <20><><EFBFBD><EFBFBD>
|
|
|
|
|
virtual bool doTRTInfer(const std::vector<cv::Mat>& _matImgs, std::vector<trtUtils::MR_Result>* _detectRes, int* _user) = 0;
|
|
|
|
|
// <20><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
|
|
|
|
virtual std::string getError() = 0;
|
|
|
|
|
// <20>ͷ<EFBFBD><CDB7><EFBFBD><EFBFBD><EFBFBD>/<2F>ڴ<EFBFBD>
|
|
|
|
|
virtual void freeMemeory() = 0;
|
|
|
|
|
|
|
|
|
|
// <20>ᾶ<EFBFBD><E1BEB6><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD>ӿ<EFBFBD>
|
|
|
|
|
virtual bool measureAxis(std::vector<double>& measureRes, const MN_VisionImage::MS_ImageParam& _bufImg) = 0;
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
// <20><><EFBFBD><EFBFBD><EFBFBD>ӿ<EFBFBD><D3BF><EFBFBD>
|
|
|
|
|
MI_ALGORITHM_EXPORT MI_VisionInterface* getInterfacePtr(const trtUtils::InitParameter& _params);
|
|
|
|
|
|