Commit cc9e43b7ed8e67a5e0d94bc8eb034ebbfe1bf5c6

Authored by Scott Klum
2 parents 6d6f3b8a 0a0eb914

Merge pull request #447 from biometrics/eval_detection

EvalDetection change.
Showing 1 changed file with 10 additions and 9 deletions
openbr/core/eval.cpp
... ... @@ -970,9 +970,10 @@ static int associateGroundTruthDetections(QList<ResolvedDetection> &resolved, QL
970 970 int count = 0, totalTrueDetections = 0;
971 971  
972 972 foreach (Detections detections, all.values()) {
973   - totalTrueDetections += detections.truth.size();
974   - // Try to associate ground truth detections with predicted detections
  973 + for (int i=0; i<detections.truth.size(); i++)
  974 + if (!detections.truth[i].ignore) totalTrueDetections++;
975 975  
  976 + // Try to associate ground truth detections with predicted detections
976 977 QList<SortedDetection> sortedDetections; sortedDetections.reserve(detections.truth.size() * detections.predicted.size());
977 978 for (int t = 0; t < detections.truth.size(); t++) {
978 979 const Detection truth = detections.truth[t];
... ... @@ -1062,12 +1063,12 @@ float EvalDetection(const QString &amp;predictedGallery, const QString &amp;truthGallery
1062 1063 filteredDetections.predicted.append(detections.predicted[i]);
1063 1064 }
1064 1065 }
1065   -
  1066 +
1066 1067 for (int i = 0; i < detections.truth.size(); i++) {
1067 1068 QRectF box = detections.truth[i].boundingBox;
1068   - if (min(box.width(), box.height()) > minSize) {
1069   - filteredDetections.truth.append(detections.truth[i]);
1070   - }
  1069 + if (min(box.width(), box.height()) < minSize)
  1070 + detections.truth[i].ignore = true;
  1071 + filteredDetections.truth.append(detections.truth[i]);
1071 1072 }
1072 1073 if (!filteredDetections.truth.empty()) allFilteredDetections[key] = filteredDetections;
1073 1074 }
... ... @@ -1090,9 +1091,9 @@ float EvalDetection(const QString &amp;predictedGallery, const QString &amp;truthGallery
1090 1091  
1091 1092 for (int i = 0; i < detections.truth.size(); i++) {
1092 1093 QRectF box = detections.truth[i].boundingBox;
1093   - if (min(box.width(), box.height()) < maxSize) {
1094   - filteredDetections.truth.append(detections.truth[i]);
1095   - }
  1094 + if (min(box.width(), box.height()) > maxSize)
  1095 + detections.truth[i].ignore = true;
  1096 + filteredDetections.truth.append(detections.truth[i]);
1096 1097 }
1097 1098 if (!filteredDetections.truth.empty()) allFilteredDetections[key] = filteredDetections;
1098 1099 }
... ...