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.
60 lines
1.9 KiB
C++
60 lines
1.9 KiB
C++
#ifndef _H_ICOMPAREMODEL_H_
|
|
#define _H_ICOMPAREMODEL_H_
|
|
#include <opencv2/opencv.hpp>
|
|
#include <opencv2/opencv_modules.hpp>
|
|
#include <string>
|
|
#include <vector>
|
|
|
|
/*ÂÖì±Ä£°åÆ¥ÅäÀà½Ó¿Ú*/
|
|
using namespace cv;
|
|
using namespace std;
|
|
class ICompareModel
|
|
{
|
|
public:
|
|
explicit ICompareModel() {};
|
|
virtual ~ICompareModel() {};
|
|
virtual double compare(Mat srcImage, Mat* pRImg = NULL, int levelNum = 1, bool isFilterSize = true, int flag = 0,
|
|
double md_diameter = 0, double md_height = 0) = 0;
|
|
|
|
virtual Mat getBaseImg() const = 0;
|
|
virtual void setIsEnableCache(bool val) = 0;
|
|
virtual double getDisThre() const = 0;
|
|
virtual void setDisThre(double val) = 0;
|
|
virtual void saveImages(string dirPath) = 0;
|
|
virtual bool save2file(string filePath) = 0;
|
|
virtual bool readFromFile(string filePath) = 0;
|
|
virtual void train(const vector<Mat>& vec) = 0;
|
|
|
|
virtual int getRepeatNum() const = 0;
|
|
virtual void setRepeatNum(int val) = 0;
|
|
|
|
virtual string getName() const = 0;
|
|
virtual void setName(string val) = 0;
|
|
|
|
virtual double getDisStdDev() const = 0;
|
|
virtual double getDisMean() const = 0;
|
|
virtual double getDisMin() const = 0;
|
|
virtual double getDisMax() const = 0;
|
|
|
|
virtual double getInnerCircleNum() const = 0;
|
|
|
|
virtual double getFalseSampleMinDis() const = 0;
|
|
virtual double getMeanDiamter() const = 0;
|
|
|
|
virtual int computeRepeatNum() = 0;
|
|
virtual int computeRepeatNum(const Mat& img) = 0;
|
|
|
|
virtual double filterTrainImage(const Mat &img) = 0;
|
|
virtual void weightOptimization(const vector<Mat>& falseSamples) = 0;
|
|
virtual void calculateAllParams(const vector<Mat>& imgVec) = 0;
|
|
virtual void computeDisThre(const vector<Mat>& imgVec, double* pMinDis = NULL, double md_diameter = 0, double md_height = 0) = 0;
|
|
|
|
virtual cv::Mat getM8uMaskImg() const = 0;
|
|
virtual void setM8uMaskImg(cv::Mat val) = 0;
|
|
virtual cv::Mat getM32fMaskImg() const = 0;
|
|
virtual void setM32fMaskImg(cv::Mat val) = 0;
|
|
};
|
|
|
|
#endif
|
|
|