⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 square.h

📁 用于系统跟踪的程序
💻 H
字号:
#include "cv.h"
#include "ConnArea.h"
class MyRect
{
	public:
		int Top;
		int Left;
		int Bottom;
		int Right;
};

class Square
{
	public:
		bool isIDSquare;
		bool isIdentified;
		int width;
		int height;
		long InnerID;
		unsigned char IDMatrix[3][3];
		int	BorderIDs[4];
	




		int NearedSquare[4];
		int row;
		int col;

		//int	BorderIDInDeasil[4];
		//int	ConnerIDInDeasil[4];
		CvPoint ConnerPoint[4];
		int X;
		int Y;
		bool isDeasil;//四个顶点顺序是否顺时针方向
		MyRect rect;

		Square();
		void drawConner(IplImage* img);
		void drawBorder(IplImage* img,int r,int g,int b);
		void drawAll(IplImage* img,int r,int g,int b);
		bool isInSquare(int Point_x,int Point_y); 
		void drawWithIDPoint(IplImage* img);
		void addIDPoint(int Point_x,int Point_y);
		void updateInnerID(ConnArea* points,int ID);
		void drawWithDirection(IplImage* img,int r,int g,int b);
		void clear();


		double Compute_X;
		double Compute_Y;
		double Compute_Z;
		double Compute_Alpha;
		double Compute_Beta;
		double Compute_Gama;
 
private:
	void switch2Point(CvPoint &pt1,CvPoint &pt2);
	void switch2Border(int &BorderID1,int &BorderID2);
	int  getNearedSquare(ConnArea* points,int BorderID1,int BorderID2,int CurrentID);
	 
};


bool isInSquares(Square* square,int& squareCount,int X, int Y);
void ScanSquare(IplImage* img,ConnArea* points,int id,int PointCount,int& level,int Index0,int IDList[5],Square* square,int& squareCount);
bool transferSquareID(Square* square,ConnArea* points,int squareCount, int CurrentID,int row,int col);

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -