常用数据结构和函数:Point类,Scalar类,Size类,Rect类,cvtColor()函数
一,点的表示:Point类
Point类数据结构表示了二维坐标系下的点,即由其图像坐标x和y指定的2D点。用法如下:
Point point;point.x = 10;point.y = 8 ;
或者Point point = Point (10,8) ;
另外,在 OpenCV中有如下定义:typedef Point_<int> Point2i;typedef Point2i Point;
typedef Point_<float> Point2f;
所以,Point_<int>、Point2i、Point互相等价,Point_<float>、Point2f互相等价。
二,颜色的表示:Scalar类
Scalar()表示具有4个元素的数组,在 OpenCV中被大量用于传递像素值,如RGB颜色值。而RGB颜色值为三个参数,其实对于Scalar 函数来说,如果用不到第四个参数,则不需要写出来;若只写三个参数,OpenCV会认为我们就想表示三个参数。
来看个例子。如果给出以下颜色参数表达式:
Scalar( a,b,c )
那么定义的RGB颜色值:红色分量为c,绿色分量为b,蓝色分量为a。
Scalar类的源头为Scalar_类,而 Scalar_类是 Vec4x的一个变种,我们常用的Scalar其实就是Scalar_<double>。这就解释了为什么很多函数的参数输入可以是Mat,也可以是 Scalar。
三&#