• 大小: 5KB
    文件类型: .zip
    金币: 1
    下载: 0 次
    发布日期: 2021-05-09
  • 语言: Matlab
  • 标签: Matlab  图像  .m代码  

资源简介

Matlab实现常见的图像质量评价指标:信噪比;峰值信噪比;能量梯度;方差;结构相似性;平均梯度;图像熵;Brenner梯度;空间频率

资源截图

代码片段和文件信息

function AVEGRAD=avegrad(img)
%%%%%%%%%%%%%%%%%%%%%%%%%
%%%% this function is used to calculate
%%%% the average gradient of an image.
%%%% editor: denghaibo Email:denghblzu07@gmail.com
%%%% date : 2009-4-15
%%%% 平均梯度可敏感地反映图像对微小细节反差表达的能力,可用来评价图像的模糊程度
%%%% 在图像中,某一方向的灰度级变化率大,它的梯度也就大。因此,可以用平均梯度值
%%%% 来衡量图像的清晰度,还同时反映出图像中微小细节反差和纹理变换特征。

img=double(img);
[MN]=size(img);
gradval=zeros(MN); %%% save the gradient value of single pixel
diffX=zeros(MN);    %%% save the differential value of X orient
diffY=zeros(MN);    %%% save the differential value of Y orient

tempX=zeros(MN);
tempY=zeros(MN);
tempX(1:M1:(N-1))=img(1:M2:N);
tempY(1:(M-1)1:N)=img(2:M1:N);

diffX=img-tempX;
diffY=img-tempY;
diffX(1:MN)=0;       %%% the boundery set to 0
diffY(M1:N)=0;
diffX=diffX.*diffX;
diffY=diffY.*diffY;
AVEGRAD=sum(sum(diffX+diffY));
AVEGRAD=sqrt(AVEGRAD/2);
AVEGRAD=AVEGRAD/((M-1)*(N-1));
disp(AVEGRAD);

end 


 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----
     文件        1988  2018-03-17 21:14  SSIM.m
     文件        1054  2018-07-17 19:38  avegrad.m
     文件         544  2018-03-18 16:33  imPSNR.m
     文件         709  2018-03-19 16:38  imSNR.m
     文件         167  2019-04-18 21:40  img_Bre.m
     文件         265  2019-04-18 21:39  img_EOG.m
     文件         356  2019-04-18 21:39  img_SF.m
     文件        1088  2019-04-18 21:40  img_entro.m
     文件         305  2019-04-18 21:39  img_var.m

评论

共有 条评论