计算图像的均值、标准差

 

  • 均值反映了图像的亮度,均值越大说明图像亮度越大,反之越小;
  • 标准差反映了图像像素值与均值的离散程度,标准差越大说明图像的质量越好;

meanStdDev()函数用于计算一个矩阵的均值和标准差,它的声明如下:

void cv::meanStdDev (
    InputArray  src, 
    OutputArray     mean,
    OutputArray     stddev,
    InputArray  mask = noArray() 
)   



函数参数

  • src:输入的源图像或矩阵
  • mean:输出的均值矩阵
  • stddev:输出的标准差矩阵
  • mask:可选的掩码矩阵
#include
#include
#include
#include

using namespace cv;
using namespace std;


int main()
{
	Mat image,gray;
	image = imread("d:\\lena.bmp", 1);
	if (image.empty())
	{
		printf("no images");
		return -1;
	}
	cvtColor(image, gray, CV_RGB2GRAY);
	Mat mat_mean, mat_stddev;
	meanStdDev(gray, mat_mean, mat_stddev);
	double a = mat_mean.at(0, 0);
	double d = mat_stddev.at(0, 0);
	cout << a << endl;
	cout << d << endl;

	
	waitKey(0);
	return 0;
}
  •  

你可能感兴趣的:(图像处理,opencv)