OpenCV经验详解DAY(2)

164 阅读1分钟

1.点的表示:Point类  

Point类数据结构表示了二维坐标系下的点,即由其图像坐标的x和y指定的2D点。    

用法主要是:

Point point; point.x = 10; point.y = 8; //或者 Point point =point(10,8);

2.颜色表示:Scalar类


Scalar()表示具有4个元素的数组。在Opencv中大量用于传递像素值,比如RGB颜色值。而RGB颜色值为三个参数。

Scalar(a,b,c)

3.尺寸的表示:Size类

Size_(_TP _width,_TP _height);


4.矩形的表示:Rect类

Rect类的成员变量有x、y、width、height,分别为左上角点的坐标和矩形的宽和高。

Rect rect = rect1 &rect2;     Rect rect = rect1 |rect2;


5.颜色空间转换:cvtColor()函数

cvtColor()函数是OpenCV里的颜色空间转换函数,可以实现RGB颜色向HSV、HSI等颜色空间的转换,也可以转换成灰色图像。

函数的原型为:c++: void cvtColor(InputArray src,OutputArray dst, int code,int dstCn=0)

第一个参数为输入图像,第二个参数为输出图像,第三个参数为颜色空间转换的标识符,第四个参数为目标图像的通道数,若该参数为0,表示目标图像取原图像的通道数。


cvtColor(srcImage,dstImage,COLOR_GRAT2BGR);


DrawEllipse()函数绘线代码

void DrawEllipse(Mat img,double angle){
int tickness =2;
int lineType=8;
ellipse(img,  
Ponit(WINDOW_WIDTH/2,WINDOW_WIDTH/2),
Size(WINDOW_WIDTH/4,WINDOW_WIDTH/16),angle,0,360,Scalar(255,129,0),thickness,lineType);
}