diff --git a/TrackTrends/DriverTyresWindow.cs b/TrackTrends/DriverTyresWindow.cs index b4c23ce..535b44c 100644 --- a/TrackTrends/DriverTyresWindow.cs +++ b/TrackTrends/DriverTyresWindow.cs @@ -15,6 +15,7 @@ namespace TrackTrends { public class DriverTyresWindow:Window { + private static Random rnd = new Random(); //Those are the colors I found but you can change them if they change in the future like in 2019 public static Color SOFT_TYRE_COLOR = Color.FromArgb(0xff, 0x00, 0x00); public static Color MEDIUM_TYRE_COLOR = Color.FromArgb(0xf5, 0xbf, 0x00); @@ -41,6 +42,9 @@ namespace TrackTrends /// A tyre object containing tyre infos private Tyre GetTyreInfos() { + //DEBUG + //WindowImage.Save("./Tyre/raw_"+rnd.Next(0,99999)+".png"); + Bitmap tyreZone = GetSmallBitmapFromBigOne(WindowImage, FindTyreZone()); Tyre.Type type = Tyre.Type.Undefined; type = GetTyreTypeFromColor(OcrImage.GetAvgColorFromBitmap(tyreZone)); diff --git a/TrackTrendsTests/OcrImageTests.cs b/TrackTrendsTests/OcrImageTests.cs index 8ce79df..ad44e34 100644 --- a/TrackTrendsTests/OcrImageTests.cs +++ b/TrackTrendsTests/OcrImageTests.cs @@ -59,6 +59,45 @@ namespace TrackTrends.Tests } } [TestMethod()] + public void TyresOCR_Test() + { + string directory = @"./../../TestImages/Tyres/"; + foreach (string file in Directory.GetFiles(directory)) + { + Bitmap image = (Bitmap)Image.FromFile(file); + DriverTyresWindow tyreWindow = new DriverTyresWindow(image, new Rectangle(0, 0, image.Width, image.Height), true); + string[] paths = file.Split('/'); + string fileName = paths[paths.Length - 1]; + fileName = fileName.Replace(".png", ""); + + string[] fileInfos = fileName.Split('_'); + string expectedType = fileInfos[0]; + int expectedLap = Convert.ToInt32(fileInfos[1]); + + Tyre foundTyre = (Tyre)tyreWindow.DecodePng(); + + switch (foundTyre.Coumpound) + { + case Tyre.Type.Soft: + Assert.AreEqual("SOFT",expectedType.ToUpper()); + break; + case Tyre.Type.Inter: + Assert.AreEqual("INTER", expectedType.ToUpper()); + break; + case Tyre.Type.Hard: + Assert.AreEqual("HARD", expectedType.ToUpper()); + break; + case Tyre.Type.Wet: + Assert.AreEqual("WET", expectedType.ToUpper()); + break; + case Tyre.Type.Medium: + Assert.AreEqual("MEDIUM", expectedType.ToUpper()); + break; + } + Assert.AreEqual(expectedLap,foundTyre.NumberOfLaps); + } + } + [TestMethod()] public void GapToLeaderOCR_Test() { string directory = @"./../../TestImages/Gaps/"; diff --git a/TrackTrendsTests/TestImages/Tyres/Hard_8.png b/TrackTrendsTests/TestImages/Tyres/Hard_8.png new file mode 100644 index 0000000..40a24a7 Binary files /dev/null and b/TrackTrendsTests/TestImages/Tyres/Hard_8.png differ diff --git a/TrackTrendsTests/TestImages/Tyres/Hard_9.png b/TrackTrendsTests/TestImages/Tyres/Hard_9.png new file mode 100644 index 0000000..2c50569 Binary files /dev/null and b/TrackTrendsTests/TestImages/Tyres/Hard_9.png differ diff --git a/TrackTrendsTests/TestImages/Tyres/Inter_17.png b/TrackTrendsTests/TestImages/Tyres/Inter_17.png new file mode 100644 index 0000000..a0f52d0 Binary files /dev/null and b/TrackTrendsTests/TestImages/Tyres/Inter_17.png differ diff --git a/TrackTrendsTests/TestImages/Tyres/Inter_20.png b/TrackTrendsTests/TestImages/Tyres/Inter_20.png new file mode 100644 index 0000000..37f1b45 Binary files /dev/null and b/TrackTrendsTests/TestImages/Tyres/Inter_20.png differ diff --git a/TrackTrendsTests/TestImages/Tyres/Inter_4.png b/TrackTrendsTests/TestImages/Tyres/Inter_4.png new file mode 100644 index 0000000..2803617 Binary files /dev/null and b/TrackTrendsTests/TestImages/Tyres/Inter_4.png differ diff --git a/TrackTrendsTests/TestImages/Tyres/Inter_5.png b/TrackTrendsTests/TestImages/Tyres/Inter_5.png new file mode 100644 index 0000000..8b2a81a Binary files /dev/null and b/TrackTrendsTests/TestImages/Tyres/Inter_5.png differ diff --git a/TrackTrendsTests/TestImages/Tyres/Medium_9.png b/TrackTrendsTests/TestImages/Tyres/Medium_9.png new file mode 100644 index 0000000..b0f0d9f Binary files /dev/null and b/TrackTrendsTests/TestImages/Tyres/Medium_9.png differ diff --git a/TrackTrendsTests/TestImages/Tyres/Wet_11.png b/TrackTrendsTests/TestImages/Tyres/Wet_11.png new file mode 100644 index 0000000..fbcd0d4 Binary files /dev/null and b/TrackTrendsTests/TestImages/Tyres/Wet_11.png differ diff --git a/TrackTrendsTests/TestImages/Tyres/raw_132483.png b/TrackTrendsTests/TestImages/Tyres/raw_132483.png deleted file mode 100644 index f990332..0000000 Binary files a/TrackTrendsTests/TestImages/Tyres/raw_132483.png and /dev/null differ diff --git a/TrackTrendsTests/TestImages/Tyres/raw_13768.png b/TrackTrendsTests/TestImages/Tyres/raw_13768.png deleted file mode 100644 index 6385b42..0000000 Binary files a/TrackTrendsTests/TestImages/Tyres/raw_13768.png and /dev/null differ diff --git a/TrackTrendsTests/TestImages/Tyres/raw_158602.png b/TrackTrendsTests/TestImages/Tyres/raw_158602.png deleted file mode 100644 index e85eaf4..0000000 Binary files a/TrackTrendsTests/TestImages/Tyres/raw_158602.png and /dev/null differ diff --git a/TrackTrendsTests/TestImages/Tyres/raw_165803.png b/TrackTrendsTests/TestImages/Tyres/raw_165803.png deleted file mode 100644 index 69ec8af..0000000 Binary files a/TrackTrendsTests/TestImages/Tyres/raw_165803.png and /dev/null differ diff --git a/TrackTrendsTests/TestImages/Tyres/raw_225154.png b/TrackTrendsTests/TestImages/Tyres/raw_225154.png deleted file mode 100644 index 1030fa2..0000000 Binary files a/TrackTrendsTests/TestImages/Tyres/raw_225154.png and /dev/null differ diff --git a/TrackTrendsTests/TestImages/Tyres/raw_225810.png b/TrackTrendsTests/TestImages/Tyres/raw_225810.png deleted file mode 100644 index 0e0fa3f..0000000 Binary files a/TrackTrendsTests/TestImages/Tyres/raw_225810.png and /dev/null differ diff --git a/TrackTrendsTests/TestImages/Tyres/raw_306080.png b/TrackTrendsTests/TestImages/Tyres/raw_306080.png deleted file mode 100644 index bc0f637..0000000 Binary files a/TrackTrendsTests/TestImages/Tyres/raw_306080.png and /dev/null differ diff --git a/TrackTrendsTests/TestImages/Tyres/raw_309061.png b/TrackTrendsTests/TestImages/Tyres/raw_309061.png deleted file mode 100644 index 464bf3f..0000000 Binary files a/TrackTrendsTests/TestImages/Tyres/raw_309061.png and /dev/null differ diff --git a/TrackTrendsTests/TestImages/Tyres/raw_872581.png b/TrackTrendsTests/TestImages/Tyres/raw_872581.png deleted file mode 100644 index 10a1675..0000000 Binary files a/TrackTrendsTests/TestImages/Tyres/raw_872581.png and /dev/null differ diff --git a/TrackTrendsTests/TestImages/Tyres/raw_956963.png b/TrackTrendsTests/TestImages/Tyres/raw_956963.png deleted file mode 100644 index 13e3f3b..0000000 Binary files a/TrackTrendsTests/TestImages/Tyres/raw_956963.png and /dev/null differ diff --git a/TrackTrendsTests/TestImages/Tyres/raw_987957.png b/TrackTrendsTests/TestImages/Tyres/raw_987957.png deleted file mode 100644 index 59fea0e..0000000 Binary files a/TrackTrendsTests/TestImages/Tyres/raw_987957.png and /dev/null differ