opencv学习之常用函数

来源:互联网 发布:青蛙寿命 知乎 编辑:程序博客网 时间:2024/06/05 21:35

Matlab中对imread载入的图像矩阵求取均值时,步骤相对opencv较麻烦一些。

例如:研究图像显著性检测算法FT中,需要计算图像LAB空间均值,以下是matlab和opencv的实现方式。

matlab:

img=imread("图像");

cform = makecform('srgb2lab', 'AdaptedWhitePoint', whitepoint('d65'));//转化到LAB空间
lab = applycform(img,cform);

//分别计算均值

l = double(lab(:,:,1)); lm = mean(mean(l));
a = double(lab(:,:,2)); am = mean(mean(a));
b = double(lab(:,:,3)); bm = mean(mean(b));

opencv:

Mat src=imread("图像.jpg");

src.converTo(img3f,CV_32F,1.0/255);

GaussianBlur(img3f, tImg, Size(3, 3), 0);
cvtColor(tImg, tImg, CV_BGR2Lab);
Scalar colorM = mean(tImg);

则colorM [0],colorM[1],colorM[2]就分别是l、a、b的均值。




0 0
原创粉丝点击