CvScalar是opencv常用的结构体
typedef struct CvScalar
{
double val[4];
}CvScalar;
c接口中定义为结构体CvScalar;c++接口中定义为类Scalar。
这个 CvScalar就是一个可以用来存放4个double数值的数组,分别为val[0],val[1],val[2],val[3],我们通常用的是前三个,val[0],val[1],val[2]的含义分别是彩色照片的三个通道,R,G,B通道;一般用来存放像素值(不一定是灰度值)的,最多可以存放4个通道的。
示例:
cvScalar(255,255,255) //表示矩形区域全白
Scalar(0, 0, 0)
示例2:
Mat mat4;
mat4 = Mat(1024, 768, CV_8UC3, cv::Scalar(0, 0, 0));
imshow("Scalar", mat4);//全黑图像
示例3:
Mat mat4;
mat4 = Mat(1024, 768, CV_8UC3, cv::Scalar(0, 0, 255));
imshow("Scalar", mat4);//全红