1.1点的表示
Point类数据结构表示了二维坐标系的点,例如:
Point point;
point.x=1;
point.y=2;
或者
Point point=Point(1,2);
1.2颜色表示
Scalar()表示具有4个元素的数组,常用于被大量传递像素值,如RGB颜色值,RGB为三个参数,如果用不到第四个参数,则不需要写出来,若只写三个参数则默认为是RGB三个分量。例如:
Scalar(a,b,c);
默认为红色为c,绿色为b,蓝色为a.(因为RGB在存储时的顺序是BGR)
1.3尺寸的表示
Size()函数表示尺寸,例如:
Size(2,2);//构造出的Size宽度和高度都为2,即xxx.width和xxx.height都为5.
1.4矩形表示
Rect类的成员变量有想x、y、width、height,分别表示左上角点的坐标和矩形的宽和高。常用的成员函数有:Size()返回值为Size;area()返回值为矩形的面积;contains(Point)判断点是否早矩形内;inside(Rect)函数判断矩形是否在该矩形内;tl()返回左上角点的坐标;br()返回右下角点的坐标。
矩形的交集和并集:
Rect rect =rect1&rect2;
Rect rect =rect1|rect2;
矩形的平移和缩放:
Rect rectShift = rect +point;
Rect rectScale= rect+size;
2.1颜色空间转换函数
cvtColor()是opencv中的转换函数,具体用法为:
void cvtColor(InputArray src,OutputArray dst,int code,int dstCn=0)
其中第一个参数为输入图像,第二个图像为输出图像,第三个参数为颜色空间转换的标识符,第四个参数为目标图像的通道数,若该参数为0,表示目标的图像取原图像的通道数。
一般的常用标识符为,RGB转换Gray的为COLOR_RGB2GRAY、COLOR_GRAY2RGB,更多的标识符可以用的时候再去查找。
2.2基本图形绘制函数
(1)绘制直线函数line();
(2)绘制椭圆函数ellipsee();
(3)绘制矩形函数rectangle();
(4)绘制圆的函数circle();
(5)绘制填充多边形的fillPoly();