Point类:点的表示
Point类表示的是一个二维坐标下的点,其图像由其图像坐标X和Y指定的2D点。用法示例如下:
Point point1,point2;
point1.x=10;
point.y=12;
point2=Point(12,23);
另外,Point_,Point2i,Point互相等价,Point_,Point2f互相等价,因为查看OpenCV库中的core.hpp发现有如下定义:
Scalar类:颜色的表示
Scalar()是一个具有四个元素的数组,在OpenCV中被大量用于传递像素值,比如RGB颜色。但RGB颜色值为三个参数,对于Scalar函数来说,如果用不到第四个参数,则不需要写出来。对于下面这行代码:
Scalar(a, b, c);
那么定义RGB的颜色值,红色的分量为c,绿色的分量为b,蓝色的分量为a。
需要注意的一点是,Scalar的源头是Scalar_类,而Scalar_类是Vec4x的一个变种,我们常用的Scalar类其实就是Scalar_。这也就是为什么很多函数的参数输入可以是Mat,也可以是Scalar。
Size类:尺寸的表示
先看Size类的源码,如下:
其中Size_是个模版类,可以看出其实Size2i和Size是等价的,找到Size_模版类的定义如下: