From 82fa59c1a73c5aa0f901cf78431e08b4923d8303 Mon Sep 17 00:00:00 2001 From: Brendan Klare Date: Sun, 9 Feb 2014 21:36:01 -0500 Subject: [PATCH] Handle FTEs without crash in landmark eval --- openbr/core/eval.cpp | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/openbr/core/eval.cpp b/openbr/core/eval.cpp index 97df2e5..d2f2f67 100644 --- a/openbr/core/eval.cpp +++ b/openbr/core/eval.cpp @@ -572,6 +572,7 @@ float EvalLandmarking(const QString &predictedGallery, const QString &truthGalle const QStringList predictedNames = File::get(predicted, "name"); const QStringList truthNames = File::get(truth, "name"); + int skipped = 0; QList< QList > pointErrors; for (int i=0; i predictedPoints = predicted[i].file.points(); const QList truthPoints = truth[truthIndex].file.points(); - if (predictedPoints.size() != truthPoints.size()) qFatal("Points size mismatch for file: %s", qPrintable(predictedName)); + if (predictedPoints.size() != truthPoints.size()) { + skipped++; + continue; + } while (pointErrors.size() < predictedPoints.size()) pointErrors.append(QList()); if (normalizationIndexA >= truthPoints.size()) qFatal("Normalization index A is out of range."); @@ -588,6 +592,7 @@ float EvalLandmarking(const QString &predictedGallery, const QString &truthGalle for (int j=0; j averagePointErrors; averagePointErrors.reserve(pointErrors.size()); for (int i=0; i