pytracking
pytracking copied to clipboard
Attribute wise evaluation of datasets
Hi, Thanks very much for the amazing repo. Was wondering if there is a way to plot graphs attribute-wise for the tracking evaluation.
@2006pmach Can you check this?
Hey,
I just released code to do attribute-wise evaluation in our repo. You can either generate a table or a spider/radar plot.
from pytracking.analysis.plot_results import print_results_per_attribute, plot_attributes_radar
from pytracking.evaluation import trackerlist , get_dataset_attributes
trackers = []
trackers.extend(trackerlist('dimp', 'super_dimp', range(0,5), 'Super DiMP'))
print_results_per_attribute(trackers, get_dataset_attributes('lasot', mode='short'), 'lasot',
merge_results=True, force_evaluation=False,
skip_missing_seq=True,
exclude_invalid_frames=False)
plot_attributes_radar(trackers,
get_dataset_attributes('lasot', mode='long'), 'lasot',
merge_results=True, force_evaluation=False,
skip_missing_seq=True,
plot_opts=None, exclude_invalid_frames=False)
Currently lasot, otb, avist and uav are supported you can choose between long (full attribute names) or short (abbreviated attribute names).
Or if you want to plot the curves for each attribute the following should work
from pytracking.analysis.plot_results import plot_results
from pytracking.evaluation import trackerlist , get_dataset_attributes
trackers = []
trackers.extend(trackerlist('dimp', 'super_dimp', range(0,5), 'Super DiMP'))
for key, dataset in get_dataset_attributes('lasot', mode='short').items():
print(key)
plot_results(trackers, dataset, 'lasot' + key, merge_results=True, force_evaluation=False, skip_missing_seq=False, plot_types=('success'))