Commit c3c1ecbc authored by André Anjos's avatar André Anjos 💬

Merge branch '24-bug-in-roc-curves' into 'master'

Changed the ROC curve to implement what is required by 'The Handbook of Face Recognition'

Closes #24 

I have implemented the correct way to compute FRR values based on The Handbook of Face Recognition, i.e., counting positive scores that are exactly at the threshold to be correctly classified.

See merge request !24
parents c055afa9 fe73cee0
Pipeline #5938 failed with stages
in 2 minutes and 17 seconds
......@@ -385,7 +385,7 @@ blitz::Array<double,2> bob::measure::roc_for_far(const blitz::Array<double,1>& n
// do some fast magic to compute the FRR values ;-)
// check whether the current positive value is less than the current negative one
if (*pos_it <= *neg_it){
if (*pos_it < *neg_it){
// increase the positive count
// go to the next positive value
......@@ -192,9 +192,9 @@ def test_plots():
# This example will test the ROC for FAR plot calculation functionality.
far = [0.01, 0.1, 1]
ref = [0.48, 0.22, 0]
ref = [0.42, 0.12, 0]
xy = roc_for_far(negatives, positives, far)
# uncomment the next line to save a reference value
assert numpy.array_equal(xy[0], far)
assert numpy.array_equal(xy[1], ref)
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment