CvScalar

来源:互联网 发布:ddc控制器编程 编辑:程序博客网 时间:2024/05/22 01:31



typedef struct CvScalar{  double val[4];  }CvScalar;

它是opencv常用的结构体,在于仕琪的《学习opencv》中指出,其意义是RGBA值。当然这个结构体也可以用于其他用处,因为如果把CvScalar看做是一个普通的结构体时 ,其内部只不过是存储了四个double型的值,分别为val[0],val[1],val[2],val[3],我们通常用的是前三个,val[0],val[1],val[2]的含义分别是彩色照片的三个通道,R,G,B通道。R是红色分量,G是绿色分量,B是蓝色分量,a是alpha。

函数cvScalar是一个特殊的例子:它有3个构造函数。第一个是cvScalar函数,它需要一个、两个、三个或者四个参数并将这些参数传递给数组val[]中的相应元素;第二个构造函数是cvRealScalar(),它需要一个参数,它被传递给val[0],而val[]数组别的值被赋为0;最后一个是cvScalarAll(),它需要一个参数并且val[]中的4个元素都会设置为这个参数。比如:

cvRectangle(                    //画一个矩形        myImg,                  //在哪一幅图片中画矩形        cvPoint(5,10),          //矩形的左上角点        cvPoint(20,30),         //矩形的右下角点        cvScalar(255,255,255)   //表示矩形区域全白);


0 0
原创粉丝点击