Commit 9b1a51056993f137cba0e287360b47d62cf159fa
1 parent
f6272818
Construct target and query FileLists inside matches block.
Showing
2 changed files
with
10 additions
and
8 deletions
openbr/core/eval.cpp
| ... | ... | @@ -100,7 +100,7 @@ static cv::Mat constructMatchingMask(const cv::Mat &scores, const FileList &targ |
| 100 | 100 | |
| 101 | 101 | float Evaluate(const cv::Mat &scores, const FileList &target, const FileList &query, const QString &csv, int partition) |
| 102 | 102 | { |
| 103 | - return Evaluate(scores, constructMatchingMask(scores, target, query, partition), target, query, csv, 10); | |
| 103 | + return Evaluate(scores, constructMatchingMask(scores, target, query, partition), QString(), QString(), csv, 0); | |
| 104 | 104 | } |
| 105 | 105 | |
| 106 | 106 | float Evaluate(const QString &simmat, const QString &mask, const QString &csv, int matches) |
| ... | ... | @@ -137,10 +137,10 @@ float Evaluate(const QString &simmat, const QString &mask, const QString &csv, i |
| 137 | 137 | truth = format->read(); |
| 138 | 138 | } |
| 139 | 139 | |
| 140 | - return Evaluate(scores, truth, TemplateList::fromGallery(target).files(), TemplateList::fromGallery(query).files(), csv, matches); | |
| 140 | + return Evaluate(scores, truth, target, query, csv, matches); | |
| 141 | 141 | } |
| 142 | 142 | |
| 143 | -float Evaluate(const Mat &simmat, const Mat &mask, const FileList &target, const FileList &query, const QString &csv, int matches) | |
| 143 | +float Evaluate(const Mat &simmat, const Mat &mask, const QString &target, const QString &query, const QString &csv, int matches) | |
| 144 | 144 | { |
| 145 | 145 | if (simmat.size() != mask.size()) |
| 146 | 146 | qFatal("Similarity matrix (%ix%i) differs in size from mask matrix (%ix%i).", |
| ... | ... | @@ -265,14 +265,16 @@ float Evaluate(const Mat &simmat, const Mat &mask, const FileList &target, const |
| 265 | 265 | |
| 266 | 266 | QString filePath = Globals->path; |
| 267 | 267 | if (matches != 0) { |
| 268 | + FileList targetFiles = TemplateList::fromGallery(target).files(); | |
| 269 | + FileList queryFiles = TemplateList::fromGallery(query).files(); | |
| 268 | 270 | for (int i=0; i<topImpostors.size(); i++) { |
| 269 | - lines.append("TI,"+QString::number(topImpostors[i].score)+","+target[topImpostors[i].target].get<QString>("Label")+":" | |
| 270 | - +filePath+"/"+target[topImpostors[i].target].name+":"+query[topImpostors[i].query].get<QString>("Label")+":"+filePath+"/"+query[topImpostors[i].query].name); | |
| 271 | + lines.append("TI,"+QString::number(topImpostors[i].score)+","+targetFiles[topImpostors[i].target].get<QString>("Label")+":" | |
| 272 | + +filePath+"/"+targetFiles[topImpostors[i].target].name+":"+queryFiles[topImpostors[i].query].get<QString>("Label")+":"+filePath+"/"+queryFiles[topImpostors[i].query].name); | |
| 271 | 273 | } |
| 272 | 274 | std::reverse(botGenuines.begin(), botGenuines.end()); |
| 273 | 275 | for (int i=0; i<botGenuines.size(); i++) { |
| 274 | - lines.append("BG,"+QString::number(botGenuines[i].score)+","+target[botGenuines[i].target].get<QString>("Label")+":" | |
| 275 | - +filePath+"/"+target[botGenuines[i].target].name+":"+query[botGenuines[i].query].get<QString>("Label")+":"+filePath+"/"+query[botGenuines[i].query].name); | |
| 276 | + lines.append("BG,"+QString::number(botGenuines[i].score)+","+targetFiles[botGenuines[i].target].get<QString>("Label")+":" | |
| 277 | + +filePath+"/"+targetFiles[botGenuines[i].target].name+":"+queryFiles[botGenuines[i].query].get<QString>("Label")+":"+filePath+"/"+queryFiles[botGenuines[i].query].name); | |
| 276 | 278 | } |
| 277 | 279 | } |
| 278 | 280 | ... | ... |
openbr/core/eval.h
| ... | ... | @@ -25,7 +25,7 @@ namespace br |
| 25 | 25 | { |
| 26 | 26 | float Evaluate(const QString &simmat, const QString &mask = "", const QString &csv = "", int matches = 0); // Returns TAR @ FAR = 0.001 |
| 27 | 27 | float Evaluate(const cv::Mat &scores, const FileList &target, const FileList &query, const QString &csv = "", int parition = 0); |
| 28 | - float Evaluate(const cv::Mat &scores, const cv::Mat &masks, const FileList &target, const FileList &query, const QString &csv = "", int matches = 0); | |
| 28 | + float Evaluate(const cv::Mat &scores, const cv::Mat &masks, const QString &target = "", const QString &query = "", const QString &csv = "", int matches = 0); | |
| 29 | 29 | float InplaceEval(const QString & simmat, const QString & target, const QString & query, const QString & csv = ""); |
| 30 | 30 | |
| 31 | 31 | void EvalClassification(const QString &predictedGallery, const QString &truthGallery, QString predictedProperty = "", QString truthProperty = ""); | ... | ... |