From f74323fc82c5e656ae8d54dffbe19884c3d747cd Mon Sep 17 00:00:00 2001 From: Josh Klontz Date: Wed, 7 Aug 2013 15:56:58 -0400 Subject: [PATCH] added eval landmarking shell code --- app/br/br.cpp | 4 ++++ openbr/core/eval.cpp | 7 +++++++ openbr/core/eval.h | 1 + openbr/openbr.cpp | 5 +++++ openbr/openbr.h | 8 ++++++++ 5 files changed, 25 insertions(+), 0 deletions(-) diff --git a/app/br/br.cpp b/app/br/br.cpp index 475e81f..f3e1208 100644 --- a/app/br/br.cpp +++ b/app/br/br.cpp @@ -137,6 +137,9 @@ public: } else if (!strcmp(fun, "evalDetection")) { check((parc >= 2) && (parc <= 3), "Incorrect parameter count for 'evalDetection'."); br_eval_detection(parv[0], parv[1], parc == 3 ? parv[2] : ""); + } else if (!strcmp(fun, "evalLandmarking")) { + check((parc >= 2) && (parc <= 3), "Incorrect parameter count for 'evalLandmarking'."); + br_eval_detection(parv[0], parv[1], parc == 3 ? parv[2] : ""); } else if (!strcmp(fun, "evalRegression")) { check(parc >= 2 && parc <= 4, "Incorrect parameter count for 'evalRegression'."); br_eval_regression(parv[0], parv[1], parc >= 3 ? parv[2] : "", parc >= 4 ? parv[3] : ""); @@ -218,6 +221,7 @@ private: "-evalClassification \n" "-evalClustering \n" "-evalDetection [{csv}]\n" + "-evalLandmarking [{csv}]\n" "-evalRegression \n" "-plotDetection ... {destination}\n" "-plotMetadata ... \n" diff --git a/openbr/core/eval.cpp b/openbr/core/eval.cpp index a87807e..567c99d 100644 --- a/openbr/core/eval.cpp +++ b/openbr/core/eval.cpp @@ -476,6 +476,13 @@ float EvalDetection(const QString &predictedInput, const QString &truthInput, co return averageOverlap; } +void EvalLandmarking(const QString &predictedInput, const QString &truthInput, const QString &csv) +{ + (void) predictedInput; + (void) truthInput; + (void) csv; +} + void EvalRegression(const QString &predictedInput, const QString &truthInput, QString predictedProperty, QString truthProperty) { qDebug("Evaluating regression of %s against %s", qPrintable(predictedInput), qPrintable(truthInput)); diff --git a/openbr/core/eval.h b/openbr/core/eval.h index b4f199d..a3d8266 100644 --- a/openbr/core/eval.h +++ b/openbr/core/eval.h @@ -28,6 +28,7 @@ namespace br float Evaluate(const cv::Mat &scores, const cv::Mat &masks, const QString &csv = ""); void EvalClassification(const QString &predictedInput, const QString &truthInput, QString predictedProperty="", QString truthProperty=""); float EvalDetection(const QString &predictedInput, const QString &truthInput, const QString &csv = ""); // Return average overlap + void EvalLandmarking(const QString &predictedInput, const QString &truthInput, const QString &csv = ""); void EvalRegression(const QString &predictedInput, const QString &truthInput, QString predictedProperty="", QString truthProperty=""); } diff --git a/openbr/openbr.cpp b/openbr/openbr.cpp index 09ca043..491b91d 100644 --- a/openbr/openbr.cpp +++ b/openbr/openbr.cpp @@ -87,6 +87,11 @@ float br_eval_detection(const char *predicted_gallery, const char *truth_gallery return EvalDetection(predicted_gallery, truth_gallery, csv); } +void br_eval_landmarking(const char *predicted_gallery, const char *truth_gallery, const char *csv) +{ + return EvalLandmarking(predicted_gallery, truth_gallery, csv); +} + void br_eval_regression(const char *predicted_gallery, const char *truth_gallery, const char * predicted_property, const char * truth_property) { EvalRegression(predicted_gallery, truth_gallery, predicted_property, truth_property); diff --git a/openbr/openbr.h b/openbr/openbr.h index 6a26a77..2fc5c2b 100644 --- a/openbr/openbr.h +++ b/openbr/openbr.h @@ -169,6 +169,14 @@ BR_EXPORT void br_eval_clustering(const char *csv, const char *gallery); BR_EXPORT float br_eval_detection(const char *predicted_gallery, const char *truth_gallery, const char *csv = ""); /*! + * \brief Evaluates and prints landmarking accuracy to terminal. + * \param predicted_gallery The predicted br::Gallery. + * \param truth_gallery The ground truth br::Gallery. + * \param csv Optional \c .csv file to contain performance metrics. + */ +BR_EXPORT void br_eval_landmarking(const char *predicted_gallery, const char *truth_gallery, const char *csv = ""); + +/*! * \brief Evaluates regression accuracy to disk. * \param predicted_gallery The predicted br::Gallery. * \param truth_gallery The ground truth br::Gallery. -- libgit2 0.21.4