霍山做网站,济南品牌网站建设低价,网站开发兴趣组,德州网站网站建设添加函数体。将SSIM函数添加至命名空间后。该函数主要功能是时哟功能ssim算法对两张图像进行比较#xff0c;并将图像在各通道比较的结果以scalar形式返回。
Scalar getMSSIM(char * imagePatha,char * imagePathb)
{
Mat i1imread(imagePatha);
Mat i2imread(imagePathb);
co…添加函数体。将SSIM函数添加至命名空间后。该函数主要功能是时哟功能ssim算法对两张图像进行比较并将图像在各通道比较的结果以scalar形式返回。
Scalar getMSSIM(char * imagePatha,char * imagePathb)
{
Mat i1imread(imagePatha);
Mat i2imread(imagePathb);
const double C1 6.5025, C2 58.5225;
int d CV_32F;
Mat I1, I2;
i1.convertTo(I1, d);
i2.convertTo(I2, d);
Mat I2_2 I2.mul(I2);
Mat I1_2 I1.mul(I1);
Mat I1_I2 I1.mul(I2);
Mat mu1, mu2;
GaussianBlur(I1, mu1, Size(11, 11), 1.5);
GaussianBlur(I2, mu2, Size(11, 11), 1.5);
Mat mu1_2 mu1.mul(mu1);
Mat mu2_2 mu2.mul(mu2);
Mat mu1_mu2 mu1.mul(mu2);
Mat sigma1_2, sigma2_2, sigma12;
GaussianBlur(I1_2, sigma1_2, Size(11, 11), 1.5);
sigma1_2 - mu1_2;
GaussianBlur(I2_2, sigma2_2, Size(11, 11), 1.5);
sigma2_2 - mu2_2;
GaussianBlur(I1_I2, sigma12, Size(11, 11), 1.5);
sigma12 - mu1_mu2;
Mat t1, t2, t3;
t1 2 * mu1_mu2 C1;
t2 2 * sigma12 C2;
t3 t1.mul(t2);
t1 mu1_2 mu2_2 C1;
t2 sigma1_2 sigma2_2 C2;
t1 t1.mul(t2);
Mat ssim_map;
divide(t3, t1, ssim_map);
Scalar mssim mean( ssim_map );
return mssim;
}