背景分割算法评测标准研究

基本概念:

### IOU:

VOC数据集:

1. segmentation accuracy:

计算方式:
segmentation accuracy = true positives /(true positives+ false positives + false negatives)
在像素层面计算,即计算每个类别的IOU和所有类别IOU的平均值
Code:
http://host.robots.ox.ac.uk/pascal/VOC/voc2012/index.html#devkit VOCevalseg.m

2. Average Precision (AP) :

计算方式:
AP指的是precision/recall曲线下的面积,计算流程如下:
1. 根据IOU阈值(一般为0.5)判断检测框是否正确
2. 根据confidence对结果排序,计算top-1, 2, …N对应的precision和recall, N为样本总数
3. 将recall划分为n个区间t in [t1, …, tn]
4. 找出满足recall>=t的最大presicision
5. 最后得到n个最大precision, 求它们的平均值

__注:__VOC2007和VOC2010及之后的版本在步骤3上有一些差别,VOC2007在recall区间上是均等分,如[0,0.1,0.2…,0.9,1.0],但2010之后改为根据正样本进行划分,例如有M个正样本,则将recall划分为[1/M, 1/(M - 1), 1/(M - 2), … 1]。

Code:
http://host.robots.ox.ac.uk/pascal/VOC/voc2012/index.html#devkit VOCevaldet.m

Coco数据集:

### 1. AP,AR
__计算方式:__

AP是以precision为横坐标,recall为纵坐标,得到的precision/recall曲线下的面积
AR是以IOU为横坐标,recall为纵坐标,得到的recall/IoU曲线下的面积

Code:
https://github.com/nightrome/cocoapi/blob/master/PythonAPI/pycocotools/cocoeval.py

2.pixel accuracy,mean accuraccy,meanIU,frequencyweighted IU

计算方式:

pixel accuracy:
所有类别的像素准确预测的像素点个数除以图像像素总数
mean accuraccy :
计算每个类别被正确分类像素数目的比例,然后将所有类别比例相加,最后除以类别数得到所有类的平均正确率
meanIU
计算每个类别的IU(某类别真实的像素总数+某类别预测像素总数-某类别被正确分类像素数目), 然后将所有类别IU相加,最后除以类别数得到所有类的平均IU
frequencyweighted IU
计算每个类别的IU乘以某类别真实的像素总数,将所有类别的结果相加,然后除以图像像素总数。

image.png | center | 546x263

Code:
https://github.com/nightrome/cocoapi/blob/master/PythonAPI/pycocotools/cocostuffeval.py

注:
1. AP,AP50,AP75这三个评测标准来源与coco的detection任务,可能更多偏向检测方向,标准偏向于定位更准确的算法,mask-RCNN采用这一评测标准,但其实验不仅局限于分割算法,还有目标检测,人体关键点检测。
2. pixel accuracy,mean accuraccy,meanIU,frequencyweighted IU这四个评价准则来源于coco的分割任务,FCN也采用,voc采用的是meanIU。

猜你喜欢

转载自blog.csdn.net/u012554092/article/details/80784323