传送门:http://www.vision.caltech.edu/Image_Datasets/CaltechPedestrians/
环境:ubuntu,matlab
下载toolbox及评估代码
#!/bin/bash
# download toolbox
git clone https://github.com/pdollar/toolbox pdollar_toolbox
# download evaluation/labeling code
wget http://www.vision.caltech.edu/Image_Datasets/CaltechPedestrians/code/code3.2.1.zip
mkdir code
unzip code3.2.1.zip -d code
rm code3.2.1.zip
#download annotations
cd code
mkdir data-USA
cd data-USA
wget http://www.vision.caltech.edu/Image_Datasets/CaltechPedestrians/datasets/USA/annotations.zip
unzip annotations.zip
rm annotations.zip
#download results
mkdir res
cd res
list=("VJ" "HOG" "FPDW" "RPN+BF" "MS-CNN" "SDS-RCNN" "TLL-TFA" "F-DNN2+SS" "F-DNN+SS" "GDFL" "PCN" "F-DNN" "AdaptFasterRCNN" "SA-FastRCNN" "UDN+" "FasterRCNN+ATT")
for method in "${list[@]}"
do
http://www.vision.caltech.edu/Image_Datasets/CaltechPedestrians/datasets/USA/res/${method}.zip
unzip ${method}.zip
rm ${method}.zip
done
评估自己的实验结果
一、通用步骤
1、依照官网要求的格式处理自己的数据,放到code/data-USA/res文件夹下。
官网要求的格式:res/目录下新建一个文件夹命名为自己方法的名字(如:my_method),res/my_method/set06/V000/I00029.txt,每个txt文件内存放对应图片的检测结果,每行的格式为[left, top, width, height]
2、用matlab评估
# 第一次使用
p = genpath('../pdollar_toolbox');
addpath(p);
#画MR-FPPI图
将算法结果放入./data-USA/res/XXX/
修改dbEval.m文件,exps只保留Reasonble,变量algs只保留你需要的方法、然后加上自己的方法,变量dataNames只保留UsaTest
最终生成的结果会存放到code/results文件夹下
二、YOLOv3检测行人的结果
exps = Reasonble时,MR=11%,在所有的方法里面排在第13名。
这个结果是博主自己用yolov3只检测行人,然后在评估代码上跑出来的。
如果需要的可以在这里下载:https://download.youkuaiyun.com/download/qq_33614902/10659040
将下载后的文件解压放到data-USA/res/文件夹下,然后如下修改dbEval.m文件,最后运行dbEval.m
function dbEval
% Evaluate and plot all pedestrian detection results.
%
% Set parameters by altering this function directly.
%
% USAGE
% dbEval
%
% INPUTS
%
% OUTPUTS
%
% EXAMPLE
% dbEval
%
% See also bbGt, dbInfo
%
% Caltech Pedestrian Dataset Version 3.2.1
% Copyright 2014 Piotr Dollar. [pdollar-at-gmail.com]
% Licensed under the Simplified BSD License [see external/bsd.txt]
% List of experiment settings: { name, hr, vr, ar, overlap, filter }
% name - experiment name
% hr - height range to test
% vr - visibility range to test
% ar - aspect ratio range to test
% overlap - overlap threshold for evaluation
% filter - expanded filtering (see 3.3 in PAMI11)
exps = {
'Reasonable', [50 inf], [.65 inf], 0, .5, 1.25
'All', [20 inf], [.2 inf], 0, .5, 1.25
% 'Scale=large', [100 inf], [inf inf], 0, .5, 1.25
'Scale=near', [80 inf], [inf inf], 0, .5, 1.25
'Scale=medium', [30 80], [inf inf], 0, .5, 1.25
'Scale=far', [20 30], [inf inf], 0, .5, 1.25
'Occ=none', [50 inf], [inf inf], 0, .5, 1.25
'Occ=partial', [50 inf], [.65 1], 0, .5, 1.25
'Occ=heavy', [50 inf], [.2 .65], 0, .5, 1.25
% 'Ar=all', [50 inf], [inf inf], 0, .5, 1.25
'Ar=typical', [50 inf], [inf inf], .1, .5, 1.25
'Ar=atypical', [50 inf], [inf inf], -.1, .5, 1.25
% 'Overlap=25', [50 inf], [.65 inf], 0, .25, 1.25
% 'Overlap=50', [50 inf], [.65 inf], 0, .50, 1.25
% 'Overlap=75', [50 inf], [.65 inf], 0, .75, 1.25
% 'Expand=100', [50 inf], [.65 inf], 0, .5, 1.00
% 'Expand=125', [50 inf], [.65 inf], 0, .5, 1.25
% 'Expand=150', [50 inf], [.65 inf], 0, .5, 1.50
};
exps=cell2struct(exps',{'name','hr','vr','ar','overlap','filter'});
% List of algorithms: { name, resize, color, style }
% name - algorithm name (defines data location)
% resize - if true rescale height of each box by 100/128
% color - algorithm plot color
% style - algorithm plot linestyle
n=1000; clrs=zeros(n,3);
for i=1:n, clrs(i,:)=max(.3,mod([78 121 42]*(i+1),255)/255); end
algs = {
'VJ', 0, clrs(1,:), '-'
'HOG', 1, clrs(2,:), '--'
% 'FtrMine', 1, clrs(3,:), '-'
% 'Shapelet', 0, clrs(4,:), '--'
% 'PoseInv', 1, clrs(5,:), '-'
% 'MultiFtr', 0, clrs(6,:), '--'
% 'MultiFtr+CSS', 0, clrs(7,:), '-'
% 'MultiFtr+Motion', 0, clrs(8,:), '--'
% 'HikSvm', 1, clrs(9,:), '-'
% 'Pls', 0, clrs(10,:), '--'
% 'HogLbp', 0, clrs(11,:), '-'
% 'LatSvm-V1', 0, clrs(12,:), '--'
% 'LatSvm-V2', 0, clrs(13,:), '-'
% 'ChnFtrs', 0, clrs(14,:),