行人检测一般用FPPI而不是mAP作为评估指标,但是网上找了好久都没找到Python版本的代码,原来FPPI官方的代码是matlab的,这里记录一下用官方的代码来绘制FPPI曲线有哪些需要注意的
有两个方法:
- 用matlab的evaluateDetectionMissRate(建议用这个)
- 用官方的工具包(有一些参数我还没弄懂,欢迎清楚的小伙伴来填坑)
1. matlab的evaluateDetectionMissRate
感谢这篇文章提供思路:FPPI曲线绘制记录
matlab官方文档地址:evaluateDetectionMissRate
测试数据下载地址:matlab绘制FPPI测试数据
load fppi.mat
[am, fppi, missRate] = evaluateDetectionMissRate(results, a);
%%
% Plot log average miss rate - FPPI.
figure
loglog(fppi, missRate);
grid on
title(sprintf('log Average Miss Rate = %.5f',am))
成功绘制后图片长这个样子
如果要改成自己数据的话:
预测结果的格式(即代码中的result):
- 第一列为[x, y, width, height]
- 第二列为预测的分数
- 每一行中,第一列和第二列的物体数量要一样,例如第一列是6个物体,那他的shape为6*4,那么第二列也要是6个分数,shape为1*4(不懂的话可以打开
fppi.mat
看下)
label的格式(即代码中的a,名字我随便取的哈哈哈):
- 第一列为[x, y, width,