#显著性目标检测模型评价指标 之 平均绝对误差(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]。
$ MAE=\dfrac{1}{W\times H}\sum{W}_{x=1}\sum{H}_{y=1}| \overline{S}(x,y)-\overline{G}(x,y) | $
三、 Matlab代码
function [MAE]=MAE_computating
%本程序的功能是对显著性特征提取的结果计算Mean absolute error(MAE)值。
%by hanlestudy@163.com
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.