#pragma once #include #include #include #include "CameraArguments.h" using namespace std; using namespace cv; typedef unsigned char byte; class CoreAlgorithm { private: Mat image, tmp; vector channel,hsv; const int neighborhood = 5; int minX = 0, maxX = 0, minY = 1280, maxY = 0; CameraArguments* cArg; private: CoreAlgorithm(std::string path); ~CoreAlgorithm(); Mat OSTU(Mat src); vector Debruijn(int k, int n); vector Hsv(int r,int g,int b); Mat Reconstruction(Mat featurePoint, int num,Mat Hc1,Mat Hp2,Mat map); template size_t argmin(ForwardIterator first, ForwardIterator last); template size_t argmax(ForwardIterator first, ForwardIterator last); template std::vector convertMat2Vector(const cv::Mat& mat); public: void run(); };