public void TestConnectedLettersDistnignuish() { var folder = Path.Combine(DATA.testFolder, "Test Defense"); var qwe = new ImageMatrix(new Bitmap(Image.FromFile(Path.Combine(folder, "qwe.png")))); var q = new ImageMatrix(new Bitmap(Image.FromFile(Path.Combine(folder, "q.png")))); var w = new ImageMatrix(new Bitmap(Image.FromFile(Path.Combine(folder, "w.png")))); var e = new ImageMatrix(new Bitmap(Image.FromFile(Path.Combine(folder, "e.png")))); qwe = qwe.CopyMatrix(new MatrixTools(qwe).TrimWhiteAreaAround()); q = q.CopyMatrix(new MatrixTools(q).TrimWhiteAreaAround()); w = w.CopyMatrix(new MatrixTools(w).TrimWhiteAreaAround()); e = e.CopyMatrix(new MatrixTools(e).TrimWhiteAreaAround()); qwe = MatrixTools.Scale(qwe, 150, 50); q = MatrixTools.Scale(q); w = MatrixTools.Scale(w); e = MatrixTools.Scale(e); var result = DefenseMechanism.SplitToSingleLetters(qwe, new List <ImageMatrix> { q, w, e }); if (result.Count != 3) { LogFail("Connected letters distinguish", "Received: " + result.Count.ToString() + " Expected: 3"); } else { LogPass("Connected letters distinguish"); } }
public void TestRecursiveCatch() { var testMatrix = new ImageMatrix(new Bitmap(Image.FromFile(Path.Combine(DATA.testFolder, "DefenseTest1png.png")))); var matrices = DefenseMechanism.RecursiveDistinguish(testMatrix); if (matrices.Count != 5) { Console.WriteLine("TEST_RecursiveCatch: Count of found matrices is incorrect, received count: " + matrices.Count.ToString()); ImageCreator crt = new ImageCreator(); crt.CreateImageOutOfMatrix(testMatrix).Save(Path.Combine(DATA.testFolder, "TestRecursive.png")); int i = 0; foreach (var m in matrices) { crt.CreateImageOutOfMatrix(m).Save(Path.Combine(DATA.testFolder, "TestRecursive" + i++.ToString() + ".png")); } } else { Console.WriteLine("TEST_RecursiveCatch: Passed"); } }