显著性目标检测模型评价指标(一)——平均绝对误差:Mean Absolute Error(MAE)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/StupidAutofan/article/details/79556087

显著性目标检测模型评价指标 之 平均绝对误差(MAE)原理与实现代码

目录


一、显著性目标检测简介

显著性目标(Salient Object):

当我们在看一张图片时,注意力首先会落在我们所感兴趣的物体部分。比如我们看到一张画有羊吃草的图像时,我们一般会先注意草坪上的羊,而不是羊的背景,所以我们把该图中的羊就定义为图像的显著性目标。

显著性目标检测(Salient Object Detection):

即让计算机学会跟人类一样,自动检测并提取输入图像中的显著性目标。

评价指标(Evaluation Metrics):

显著性目标检测算法常用的评价指标有:平均绝对误差(Mean Absolute Error, MAE),PR曲线(Precision-Recall curves)以及F度量值(F-measure)

这些度量指标我会依次介绍并编程实现,在本篇博客中,主角是平均绝对误差(Mean Absolute Error, MAE)。

二、Mean Absolute Error(MAE) 原理

MAE就是直接计算模型输出的显著性图谱与Ground-truth 之间的平均绝对误差,首先将两者进行二值化,然后用下面的公式进行计算 [1]。

M A E = 1 W × H x = 1 W y = 1 H | S ¯ ( x , y ) G ¯ ( x , y ) |

三、 Matlab代码

function [MAE]=MAE_computating
%本程序的功能是对显著性特征提取的结果计算Mean absolute error(MAE)值。
%by [email protected]
clc
clear
imnames=dir(path_output);  
imnames2=dir(path_Targets);  
num=length(imnames);
MAES=zeros(num,1);
for j=1:num
    Target=imread(imnames2(j).name); %读图
    target=(Target)>0;        %二值化
    Output=imread(imnames(j).name);
    output=(Output)>0;
    dis=abs(target-output);
    MAES(j,1)=mean(mean(mean(dis)));
end
MAE=mean(MAES) 

著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

参考文献

[1]: A. Borji, M.-M. Cheng, H. Jiang, and J. Li. Salient object detection: A benchmark. IEEE TIP, 24(12):5706–5722, 2015.

猜你喜欢

转载自blog.csdn.net/StupidAutofan/article/details/79556087