数字图像融合相关评价指标

数字图像融合质量评价指标:标准差、平均梯度、边缘强度、空间频率、信息熵、交叉熵、互信息、结构相似度等。
-----------------这里只罗列部分代码哦-----------------------
有关于详细论文如下:融合图像质量评价指标的相关性分析及性能评估–张小利

1、标准差:标准差用于表述像素灰度值的离散程度,可以反应图像细节信息的丰富程度,值越大表示,细节越丰富。
2、平均梯度:平均梯度用于表征图像的清晰程度,计算的结果值越大,表明融合图像越清晰。

//这里是MATLAB代码!
/*
author:Anter
*/
function outval = avg_gradient(img)
% OUTVAL = AVG_GRADIENT(IMG)
%  img=im2uint8(img);
if nargin == 1 img = double(img); % Get the size of img [r,c,b] = size(img); dx = 1; dy = 1; for k = 1 : b band = img(:,:,k); [dzdx,dzdy] = gradient(band,dx,dy); s = sqrt((dzdx .^ 2 + dzdy .^2) ./ 2); g(k) = sum(sum(s)) / ((r - 1) * (c - 1)); end outval = mean(g);
else error('Wrong number of input!');
end
end

3、边缘强度:

//这里是MATLAB代码!
/*
author:Anter
*/
function outval = edge_intensity(img)
if nargin == 1 img = double(img); % Create horizontal sobel matrix w = fspecial('sobel'); % Get the size of img [r c k] = size(img); gx = imfilter(img,w,'replicate'); gy = imfilter(img,w','replicate'); for m = 1 : r for n = 1 : c for q = 1 : k g(m,n,q) = sqrt(gx(m,n,q)*gx(m,n,q) + gy(m,n,q)*gy(m,n,q)); end end end outval = mean(mean(mean(g))); else error('Wrong number of input!'); end
end

4、峰值信噪比:
峰值信噪比是用来衡量结果图中有效信息和噪声比例的变量,可以定量的表述融合图像的失真程度。

//这里是MATLAB代码!
/*
author:Anter*/
function psnr=PSNR(A,F)if size(A,3)==3A=rgb2gray(A);
end
if size(F,3)==3F=rgb2gray(F);
end
[height width]=size(A);
A = im2double(A);
F = im2double(F);sigma1=0;
for i=1:heightfor j=1:widthsigma1=sigma1+(A(i,j)-F(i,j))^2;end
endMSE=(sigma1/(height*width));  %均方误差
psnr=10*log10((255^2)/MSE)

4、空间频率
空间频率主要反应图像灰度变化率,是图像边缘信息量的评判指标。

//这里是MATLAB代码!
function SF=space_frequency(X)
% X=im2uint8(X);
X=double(X);
[n0,n1]=size(X);%%%%   X是一个方阵
X=double(X);                          %空间频率;
RF=0;
CF=0;for fi=1:n0for fj=2:n1RF=RF+(X(fi,fj)-X(fi,fj-1)).^2;end
endRF=RF/(n0*n1);for fj=1:n1for fi=2:n0CF=CF+(X(fi,fj)-X(fi-1,fj)).^2;end
endCF=CF/(n0*n1);%%%%可以思考,空间频率是不是只描述一个方阵SF=sqrt(RF+CF)
end

5、信息熵
信息熵用于衡量图像中信息的丰富程度,属于正向指标,值越大,表示融合图像包含的信息越丰富。

//这里是MATLAB代码!function S = shannon(img) % img=im2uint8(img);
I=img;
%I=double(I);
[C,R]=size(I);      %求图像的规格
Img_size=C*R;       %图像像素点的总个数
L=256;              %图像的灰度级
H_img=0;
nk=zeros(L,1);
for i=1:Cfor j=1:RImg_level=I(i,j)+1;                 %获取图像的灰度级           nk(Img_level)=nk(Img_level)+1;      %统计每个灰度级像素的点数end
end
for k=1:LPs(k)=nk(k)/Img_size;                  %计算每一个灰度级像素点所占的概率if Ps(k)~=0;                           %去掉概率为0的像素点H_img=-Ps(k)*log2(Ps(k))+H_img;        %求熵值的公式S=H_img;end
end
end

6、结构相似度(SSIM)
结构相似性用于表述结果图与源图像结构的相似程度,主要由亮度、对比度损失和相关性损失三部分构成,融合图像对源图像的结构保存越多,结构相似性越大。

//这里是MATLAB代码!
if size(img1,3)==3img1=rgb2gray(img1);
end
if size(img2,3)==3img2=rgb2gray(img2);
end
[M N] = size(img1);img1 = double(img1);
img2 = double(img2);
K = [0.01 0.03]; window = fspecial('gaussian', 11, 1.5);L = 255;
% automatic downsampling
f = max(1,round(min(M,N)/256));
%downsampling by f
%use a simple low-pass filter
if(f>1)lpf = ones(f,f);lpf = lpf/sum(lpf(:));img1 = imfilter(img1,lpf,'symmetric','same');img2 = imfilter(img2,lpf,'symmetric','same');img1 = img1(1:f:end,1:f:end);img2 = img2(1:f:end,1:f:end);
endC1 = (K(1)*L)^2;
C2 = (K(2)*L)^2;
window = window/sum(sum(window));mu1   = filter2(window, img1, 'valid');
mu2   = filter2(window, img2, 'valid');
mu1_sq = mu1.*mu1;
mu2_sq = mu2.*mu2;
mu1_mu2 = mu1.*mu2;
sigma1_sq = filter2(window, img1.*img1, 'valid') - mu1_sq;
sigma2_sq = filter2(window, img2.*img2, 'valid') - mu2_sq;
sigma12 = filter2(window, img1.*img2, 'valid') - mu1_mu2;if (C1 > 0 & C2 > 0)ssim_map = ((2*mu1_mu2 + C1).*(2*sigma12 + C2))./((mu1_sq + mu2_sq + C1).*(sigma1_sq + sigma2_sq + C2));
elsenumerator1 = 2*mu1_mu2 + C1;numerator2 = 2*sigma12 + C2;denominator1 = mu1_sq + mu2_sq + C1;denominator2 = sigma1_sq + sigma2_sq + C2;ssim_map = ones(size(mu1));index = (denominator1.*denominator2 > 0);ssim_map(index) = (numerator1(index).*numerator2(index))./(denominator1(index).*denominator2(index));index = (denominator1 ~= 0) & (denominator2 == 0);ssim_map(index) = numerator1(index)./denominator1(index);
end
SSIM = mean2(ssim_map)

7、边缘信息评价因子
Q用于衡量融合图像中有多少边缘信息量来源于源图像,其值越接近1,表示来源于源图像的边缘信息转移就越多。

function Qabf =QABF(pA,pB,pF)
% strA and strB is the source images and strF is the fusion result
% model parametersL=1; Tg=0.9994;kg=-15;Dg=0.5;Ta=0.9879;ka=-22;Da=0.8;
% Sobel Operator
h1=[1 2 1;0 0 0;-1 -2 -1]; h2=[0 1 2;-1 0 1;-2 -1 0]; h3=[-1 0 1;-2 0 2;-1 0 1];
% if y is the response to h1 and x is the response to h3;
% then the intensity is sqrt(x^2+y^2) and orientation is arctan(y/x);
if size(pA,3)==3pA=rgb2gray(pA);
end
if size(pB,3)==3pB=rgb2gray(pB);
end
if size(pF,3)==3pF=rgb2gray(pF);
end
pA = im2double(pA);
pB = im2double(pB);
pF = im2double(pF);SAx = conv2(pA,h3,'same'); SAy = conv2(pA,h1,'same');
gA = sqrt(SAx.^2 + SAy.^2);
[M,N] = size(SAx); aA = zeros(M,N);
for i=1:Mfor j=1:Nif ( SAx(i,j) == 0 ) aA(i,j) = pi/2;elseaA(i,j) = atan(SAy(i,j)/SAx(i,j));endend
endSBx = conv2(pB,h3,'same'); SBy = conv2(pB,h1,'same');
gB = sqrt(SBx.^2 + SBy.^2);
[M,N] = size(SBx); aB = zeros(M,N);
for i=1:Mfor j=1:Nif ( SBx(i,j) == 0 ) aB(i,j) = pi/2;elseaB(i,j) = atan(SBy(i,j)/SBx(i,j));endend
endSFx = conv2(pF,h3,'same'); SFy = conv2(pF,h1,'same');
gF = sqrt(SFx.^2 + SFy.^2);
[M,N] = size(SAx); aF = zeros(M,N);
for i=1:Mfor j=1:Nif ( SFx(i,j) == 0 ) aF(i,j) = pi/2;elseaF(i,j) = atan(SFy(i,j)/SFx(i,j));endend
end% the relative strength and orientation value of GAF,GBF and AAF,ABF;
GAF = zeros(M,N); AAF = zeros(M,N); QgAF = zeros(M,N); QaAF = zeros(M,N); QAF = zeros(M,N);
for i=1:Mfor j=1:Nif ( gA(i,j) > gF(i,j))  GAF(i,j) = gF(i,j)/gA(i,j);elseif ( gA(i,j) == gF(i,j) )  GAF(i,j) = gF(i,j);elseGAF(i,j) = gA(i,j) / gF(i,j);endend AAF(i,j) = 1 - abs(aA(i,j)-aF(i,j))/(pi/2);QgAF(i,j) = Tg / (1 + exp(kg*( GAF(i,j) - Dg )));QaAF(i,j) = Ta / (1 + exp(ka*( AAF(i,j) - Da )));QAF(i,j) = QgAF(i,j) * QaAF(i,j);end
endGBF = zeros(M,N); ABF = zeros(M,N); QgBF = zeros(M,N); QaBF = zeros(M,N); QBF = zeros(M,N);
for i=1:Mfor j=1:Nif ( gB(i,j) > gF(i,j))  GBF(i,j) = gF(i,j)/gB(i,j);elseif ( gB(i,j) == gF(i,j) )  GBF(i,j) = gF(i,j);elseGBF(i,j) = gB(i,j) / gF(i,j);endend ABF(i,j) = 1 - abs(aB(i,j)-aF(i,j))/(pi/2);QgBF(i,j) = Tg / (1 + exp(kg*( GBF(i,j) - Dg )));QaBF(i,j) = Ta / (1 + exp(ka*( ABF(i,j) - Da )));QBF(i,j) = QgBF(i,j) * QaBF(i,j);end
end% compute the QABF
deno = sum(sum( gA + gB ));
nume = sum(sum( QAF.*gA + QBF.*gB ));
Qabf = nume / deno

----------以上是图像融合部分评价指标,亲测有效哦!----------------

数字图像融合相关评价指标相关推荐

  1. 【radar】毫米波雷达-相机-激光雷达融合相关论文汇总(特征融合、RPN融合、弱监督融合、决策融合、深度估计、跟踪)(5)

    [radar]毫米波雷达-相机-激光雷达融合相关论文汇总(特征融合.RPN融合.弱监督融合.决策融合.深度估计.跟踪)(5) Radar Camera Fusion Feature-level Fus ...

  2. GNSS算法相关开源代码(含多传感器融合相关项目)

    开源代码总览 名称 传感器类型 组合类型 滤波方法 其余相关 RTKLIB GNSS - 卡尔曼滤波 GAMP/rtklibexplorer GPSTK GNSS - 卡尔曼滤波 BNC GNSS - ...

  3. 推荐系统[四]:精排-详解排序算法LTR (Learning to Rank): poitwise, pairwise, listwise相关评价指标,超详细知识指南。

    搜索推荐系统专栏简介:搜索推荐全流程讲解(召回粗排精排重排混排).系统架构.常见问题.算法项目实战总结.技术细节以及项目实战(含码源) 专栏详细介绍:搜索推荐系统专栏简介:搜索推荐全流程讲解(召回粗排 ...

  4. 视线估计、凝视目标估计相关评价指标

    1.TP.TN.FP.FN \qquad T.F表示待分类目标的GT值 \qquad P.N表示预测到目标的正反例 在目标检测类任务中: \qquad TP:表示正确检测到待检测目标 \qquad T ...

  5. 目标检测等相关评价指标(AP AR Average Precision和Average Recall)

    https://cocodataset.org/#detection-eval COCO 提供了 12 种用于衡量目标检测器性能的评价指标. [1] - 除非特别说明,AP 和 AR 一般是在多个 I ...

  6. 云网融合相关研究现状

    云网融合是一种将云计算技术与网络技术相结合的概念,目的是实现资源共享和优化网络性能.目前,云网融合研究主要集中在以下几个方面: 资源调度:研究如何在云网融合环境中有效地调度和分配资源. 网络优化:研究 ...

  7. EEG-fMRI 融合相关软件推荐

    文章来源于微信公众号(茗创科技),欢迎有兴趣的朋友搜索关注 SPM SPM用于脑成像数据序列分析,序列可以是来自不同队列的一系列图像,也可以是来自同一被试的时间序列.这里可用于EEG与fMRI的数据预 ...

  8. vins-fusion gps融合相关总结

    1 . 简介: VINS Fusion在VINS Mono的基础上,添加了GPS等可以获取全局观测信息的传感器,使得VINS可以利用全局信息消除累计误差,进而减小闭环依赖. 相比于局部传感器,全局传感 ...

  9. 雷达传感器融合相关调研

    一.主流雷达简介 1.微波雷达 简介:微波是波长很短的无线电波,微波的方向性很好,速度等于光速.微波遇到车辆立即被反射回来,再被雷达测速计接收.这样一来一回,不过几十万分之一秒的时间,数码管上就会显示 ...

最新文章

  1. JavaScript创建对象的6种方式
  2. LZMA demo挑选使用备忘
  3. How Tomcat Works(八)
  4. delegate和event(转载too)
  5. 高可用 kubernetes 集群部署实践
  6. 【PetShop 4.0学习】4.数据库结构
  7. mui ajax方法
  8. 计算机科学与技术专业的英文作文,计算机专业英语:科技交流与科技论文写作...
  9. Theine for Mac(电脑休眠工具)
  10. Spring Data R2DBC 响应式数据库操作使用
  11. bat计算机清理原理,如何一键清除系统垃圾bat,教您如何清理
  12. 《嵌入式 – GD32开发实战指南》第15章 低功耗(电源管理)
  13. Element plus设置日历每周第一天从周一开始
  14. LaTeX数学公式 合集
  15. 如何选购电风扇,一本电风扇选购攻略都在这里!
  16. WEB测试项目实战——2.产品需求与设计评审
  17. 强大的word查找替换功能
  18. 保研之路——复旦计算机学院预推免
  19. 电脑PC端微信提示:你的微信崩溃次数较多,建议使用最新版本
  20. 山东大学项目实训十六——可控音乐变压器Controllable Music Transformer

热门文章

  1. PDF文档怎么添加水印?手机就能轻松操作
  2. Python Turtle绘图[难度2星]:旋转风车(静态/动态,单色/多色)
  3. 圆头像 微信小程序 绘图_微信小程序canvas画圆头像
  4. HTML学生个人网站作业设计:动漫网站设计——小黄人(5页) HTML+CSS+JavaScript 简单DIV布局个人介绍网页模板代码 DW学生个人网站制作成品下载
  5. DRM 架构简要说明
  6. 为什么“业财融合”下,不懂业务的财务将被无情淘汰?
  7. Android图像处理系列:OpenGL混合模式的使用
  8. OpenGL混合模式
  9. springboot+vue学生寝室宿舍管理系统
  10. openssl 生成证书 server.key server.crt