public static MedalType DetermineMedalOnCard(Bitmap card)
{
ExhaustiveTemplateMatching tm = new ExhaustiveTemplateMatching(0);
var goldSimilarity = tm.ProcessImage(card, Image.FromFile("TemplateImages/gold_medal.png"), new Rectangle(80, 40, 200, 200))[0].Similarity;
if (goldSimilarity > 0.95f)
{
return(MedalType.Gold);
}
var silverSimilarity = tm.ProcessImage(card, Image.FromFile("TemplateImages/silver_medal.png"), new Rectangle(80, 40, 200, 200))[0].Similarity;
if (silverSimilarity > 0.95f)
{
return(MedalType.Silver);
}
var bronzeSimilarity = tm.ProcessImage(card, Image.FromFile("TemplateImages/bronze_medal.png"), new Rectangle(80, 40, 200, 200))[0].Similarity;
if (bronzeSimilarity > 0.95f)
{
return(MedalType.Bronze);
}
var noMedalSimilarity = tm.ProcessImage(card, Image.FromFile("TemplateImages/no_medal.png"), new Rectangle(80, 40, 200, 200))[0].Similarity;
if (noMedalSimilarity > 0.95f)
{
return(MedalType.None);
}
return(MedalType.Uncertain);
}