pastec
Version:
Node module for using a Pastec server.
90 lines (74 loc) • 2.44 kB
JavaScript
var path = require("path");
var me = require("./matchengine-results.json");
var pc = require("./pastec-results.json");
var meMatches = {};
var extra = [];
for (var file in me) {
var aFile = path.basename(file, ".jpg");
me[file].forEach(function(match) {
var matchedFile = path.basename(match.filepath, ".jpg");
//console.log(aFile, matchedFile, match)
var key = [aFile, matchedFile].sort().join(":");
meMatches[key] = [aFile, matchedFile];
});
}
for (var file in pc) {
var aFile = path.basename(file, ".jpg");
pc[file].forEach(function(match) {
if (match.score < 19) {
return;
}
var matchedFile = path.basename(match.filepath, ".jpg");
var key = [aFile, matchedFile].sort().join(":");
if (key in meMatches) {
meMatches[key] = [aFile, matchedFile, true, match.score];
} else {
extra[key] = [aFile, matchedFile, false, match.score];
}
});
}
var total = Object.keys(meMatches).length;
var hits = 0;
var misses = 0;
var extraCount = Object.keys(extra).length;
var hitScores = [];
var extraScores = [];
var byScore = [];
console.log("Misses:");
for (var key in meMatches) {
var result = meMatches[key];
if (result[2] === true) {
hits += 1;
hitScores.push(result[3]);
byScore.push(result);
} else {
misses += 1;
console.log("<li><img src='" + result[0] + ".jpg'><img src='" + result[1] + ".jpg'></li>");
}
}
console.log("Extra:");
Object.keys(extra).forEach(function(key) {
result = extra[key];
extraScores.push(result[3]);
byScore.push(result);
console.log("<li><img src='" + result[0] + ".jpg'><img src='" + result[1] + ".jpg'></li>");
});
//console.log(extra)
console.log("<style>img {max-width: 300px; max-height: 300px;}</style>");
console.log("Total:", total);
console.log("Hits:", hits);
console.log("Misses:", misses);
console.log("Extra:", extraCount);
console.log("Hit Scores:", hitScores.sort(function(a,b) {
return a - b;
}).join(","));
console.log("Extra Scores:", extraScores.sort(function(a,b) {
return a - b;
}).join(","));
/*
byScore.sort(function(a, b) {
return a[3] - b[3];
}).forEach(function(result) {
console.log("<li style='color:" + (result[2] ? "green" : "red") + "'>" + result[3] + " <img src='" + result[0] + ".jpg'><img src='" + result[1] + ".jpg'></li>");
});
*/