# Is it possible to use evaluateDe​tectionPre​cision to calculate precision and recall at a specific confidence threshold

14 views (last 30 days)
Hi,
So I wanted to use evaluateDetectionPrecision function (here) to evaluate a detector. However, I wanted to obtain precision and recall at a specific confidence threshold, let's say 0.25. How can i do this?
The problem I have is that the precision and recall values that evaluateDetectionPrecision() outputs are the vectors to build the plot of the precision-recall curve. Do I just remove the boxes with confidence < 0.25 to zero before using the function evaluateDetectionPrecision(). And anotate the value of the last element of the recall and precision vector:
[ap, recall, precision] = evaluateDetectionPrecision(results, blds);
my_recall = recall(end)
my_precision = precision(end)

Anshika Chaurasia on 6 Nov 2021
Hi,
To calculate precision and recall at a specific threshold, you can set 'Threshold' as 0.25 (let's say) in detect function of the detector:
results = detect(detector,I,'Threshold',0.25)
[ap, recall, precision] = evaluateDetectionPrecision(results, blds);
The above threshold is detection threshold and hence, detections that have scores less than this threshold value will be removed.
Hi,
So the precision and recall values at that threshold are recall(end) and precison(end)?