Ask Your Question

How do you classify true negatives ?

asked 2013-04-29 00:18:18 -0500

sub_o gravatar image

I'm gathering results from my image detector algorithm. So basically what I do is that, from a set of images (with the size of 320 x 480), I would run a sliding window of 64x128 thru it, and also under a number of predefined scales.

I understand that:

  • True Positives = when my detected window overlaps (within defined intersection size / centroid) with the ground-truth (annotated bounding boxes)
  • False Positives = when the algorithm gives me positive windows, which are outside of the grond truth.
  • False Negatives = when it failed me to give positive window, while the ground truth annotation states that there's an object.

But what about True Negatives ? Are these true negatives all the windows that my classifier gives me negative results ? That sounds weird, since I'm sliding a small window (64x128) by 4 pixels at a time, and I've around 8 different scales used in detection. If I were to do that, then I'd have lots of true negatives per image.

Or do I prepare a set of pure negative images (no objects / human at all), where I just slide thru, and if there's one or more positive detections in each of these images, I'd count it as False Negative, and vice versa ?

Here's an example image (with green rects as the ground truth)

Example image, not real result

edit retag flag offensive close merge delete

2 answers

Sort by ยป oldest newest most voted

answered 2013-04-29 07:04:19 -0500

In order to avoid the problem of defining the TN rate to create a ROC curve for your algorithm, people in the research departments are often using a precision-recall curve.

Looking at the formulas for both, you can see that the TN rate is the one that isn't used, due to it not saying anything interesting about the algorithm.

Precision: TP / (TP + FP)

Recall: TP / (TP + FN)

More information on this link.

edit flag offensive delete link more

answered 2013-04-29 01:42:45 -0500

Siegfried gravatar image

Hi, in my opinion you should count true negatives (TN) for each location where you apply your HoG classifier. Because, you can also get for each location where you apply your classifier a true positive (TP), false positive (FP) or a false negative (FN).

Typically you count the results to evaluate the classifier quality by building some statistics (Receiver Operating Characteristic, Detection rate vs. false positive, ...). This statistics should be independent from the image size. Dalal and Triggs compare their HoG detector with other algorithms in a DET curve (miss rate against false positive per window).

If you want to evaluate the quality of your system on image level you can plot the detection rate against the false positive per window. But this kind of statistic depends heavily on the size of the image.

edit flag offensive delete link more

Question Tools


Asked: 2013-04-29 00:18:18 -0500

Seen: 2,372 times

Last updated: Apr 29 '13