public void OcrQuickOrientationTest()
{
// Init Drive
var relpath = Path.Combine(Dir.OcrDirectory, Dir.OcrOrientationTesting);
var drive = new Drive(relpath, Drive.Reason.Read);
var regs = drive.Files("img").ToList();
var revs = drive.Files("rev").ToList();
// Sort them so that the names align correctly
regs.Sort();
revs.Sort();
// Zip and Diff
var difference = regs.Zip(revs, (reg, rev) =>
{
var imgReg = new Bitmap(reg);
var regData = OCR.Recognize(imgReg, Accuracy.High);
var imgRev = new Bitmap(rev);
var revData = OCR.Recognize(imgRev, Accuracy.High);
Console.WriteLine("-----------------------------------------------");
Console.WriteLine(OCR.StripNewLine(regData.Text + " vs " + revData.Text));
Console.WriteLine(regData.Cost + " vs " + revData.Cost);
Console.WriteLine("Diff: " + (regData.Cost - revData.Cost));
Console.WriteLine();
return regData.Cost - revData.Cost;
}).ToList();
difference.ForEach(diff => Console.WriteLine("Diff : " + diff));
difference.ForEach(diff => Assert.IsTrue(diff < 0));
Assert.IsTrue(difference.Aggregate((long) 0, (total, item) => total + item) < 0);
}