activitynet / ActivityNet

This repository is intended to host tools and demos for ActivityNet
MIT License
943 stars 330 forks source link

To visualize PR curve #81

Closed P-DX closed 3 years ago

P-DX commented 3 years ago

Thank you for your work. If there is an API to visualize the PR curve of temporal detection? or maybe i can use "reacall_cumsum" and "precision_cumsum in fuction https://github.com/activitynet/ActivityNet/blob/82304fa9f4a7219421df13dae6347a445c4cf5bc/Evaluation/eval_detection.py#L182

to visualize the PR cureve.

escorciav commented 3 years ago

Thanks for your interest in AactivityNet.

@HumamAlwassel do you remember this? I had a hard time understanding the code last November. That time you helped me out. Perhaps give some general pointers to ease the job of the person.

What do I remember? the code computes Prec and Rec per class. So try reverse-engineering the prec and rec values for plotting the curve. AFAIK, it's PR PASCAL-VOC style. Thus, read the corresponding IJCV & scikit-learn documentation.

Consider checking our DETAD work. I don't remember if we plot PR curves. But, Humam put a lot of effort into that code.

Good luck, Victor

HumamAlwassel commented 3 years ago

@P-DX Thanks for your interest in ActivityNet.

Unfortunately, the current ActivityNet toolkit does not visualize the PR curves. However, as you correctly pointed out, you can use the variables recall_cumsum and precesion_cumsum in the function compute_average_precision_detection() to plot the PR curve of a given label class.

We do not plot PR curves in DETAD. However, we highly recommend that you make use of the diagnostic tools in DETAD to help you understand the error sources of your detection method.

Cheers!