#pragma once #include "MI_Interface.h" using namespace cv; class MF_VisionMeasureBase : public MI_VisionInterface { public: explicit MF_VisionMeasureBase(); ~MF_VisionMeasureBase(); virtual bool measureAxis(std::vector& measureRes, const MN_VisionImage::MS_ImageParam& _bufImg); protected: bool buffer2Mat(const MN_VisionImage::MS_ImageParam& _inImg, cv::Mat& _mat); Mat getRotationMatrix(Point2f center, float angle, float scale); cv::Point getMiddleBlackPixelInRow(const cv::Mat& binaryImage, int row); double CalculatingAngle(Point middleBlackPixelFirstRow, Point middleBlackPixelLastRow); };