Scalar 是什么
Scalar 表示 4 元素向量,分别对应图片的 4 个通道,B、G、R、A,在 Opencv 中广泛用于传递像素值,是一种含 4 个 double 值的结构体类型
typedef struct Scalar
{
double val[4];
}Scalar;
Scalar 功能
给图像所有像素点的相同通道赋相同的值,常用在 Mat 初始化对象时,给图像像素点赋值
示例
Scalar(5, 50) 表示第 1 个通道全为 5,第 2 个通道全为 50
Mat M(7,7,CV_32FC2,Scalar(1,3)) 创建一个2通道,且每个通道的值都为(1,3),深度为32,7行7列的图像矩阵。CV_32F表示每个元素的值的类型为32位浮点数,C2表示通道数为2,Scalar(1,3)表示对矩阵每个元素都赋值为(1,3),第一个通道中的值都是1,第二个通道中的值都是3.
图像是单通道的,val[0] 中存储数据,图像是3通道的,val[0],val[1],val[2]中存储数据
Scalar(255, 0, 0) 图片全蓝
Scalar(0, 255, 0) 图片全绿
Scalar(0, 0, 255) 图片全红
参考
https://blog.csdn.net/mvtechnology/article/details/7878182
https://blog.csdn.net/laohu_tiger/article/details/17359777
https://blog.csdn.net/liuweiyuxiang/article/details/76929534