• 大小: 3KB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2021-05-16
  • 语言: Matlab
  • 标签:

资源简介

使用matlab,计算目标图片与图片的相似性度量,包括:PSNR和SSIM值,简单好用。

资源截图

代码片段和文件信息

function [PSNR MSE] = psnr(X Y)
%%%%%%%%%%%%%%%%%%%%%%%%%%%
%
% 计算峰值信噪比PSNR
% 将RGB转成YCbCr格式进行计算
% 如果直接计算会比转后计算值要小2dB左右(当然是个别测试)
%
%%%%%%%%%%%%%%%%%%%%%%%%%%%
 if size(X3)~=1   %判断图像时不是彩色图,如果是,结果为3,否则为1
   org=rgb2ycbcr(X);
   test=rgb2ycbcr(Y);
   Y1=org(::1);
   Y2=test(::1);
   Y1=double(Y1);  %计算平方时候需要转成double类型,否则uchar类型会丢失数据
   Y2=double(Y2);
 else              %灰度图像,不用转换
     Y1=double(X);
     Y2=double(Y);
 end
 
if nargin<2    
   D = Y1;
else
  if any(size(Y1)~=size(Y2))
    error(‘The input size is not equal to each other!‘);
  end
 D = Y1 - Y2; 
end
MSE = sum(D(:).*D(:)) / numel(Y1); 
PSNR = 10*log10(255^2 / MSE);

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件        764  2015-08-28 15:47  PSNR和SSIM—matlab\psnr.m

     文件       7325  2015-08-28 16:32  PSNR和SSIM—matlab\ssim.m

     文件         22  2015-08-28 16:34  PSNR和SSIM—matlab\程序说明.txt

     目录          0  2015-08-28 16:37  PSNR和SSIM—matlab

----------- ---------  ---------- -----  ----

                 8111                    4


评论

共有 条评论