From 3271580a1e1c489e72b77d88630445ecf23cc07f Mon Sep 17 00:00:00 2001 From: maxluli Date: Wed, 5 Apr 2023 15:53:50 +0200 Subject: [PATCH] Added detection of driver positions --- OCR_Decode/DriverPositionWindow.cs | 14 +++++++++++++- OCR_Decode/Window.cs | 12 +++++++++++- 2 files changed, 24 insertions(+), 2 deletions(-) diff --git a/OCR_Decode/DriverPositionWindow.cs b/OCR_Decode/DriverPositionWindow.cs index 84971e5..827c88d 100644 --- a/OCR_Decode/DriverPositionWindow.cs +++ b/OCR_Decode/DriverPositionWindow.cs @@ -15,7 +15,19 @@ namespace OCR_Decode } public override object DecodePng() { - return 0; + string result = GetStringFromPng(true); + + int position; + try + { + position = Convert.ToInt32(result); + } + catch + { + position = -1; + WindowImage.Save(Reader.DEBUG_DUMP_FOLDER + "FailedPosition"+".png"); + } + return position; } } } diff --git a/OCR_Decode/Window.cs b/OCR_Decode/Window.cs index 68c7858..92a9a34 100644 --- a/OCR_Decode/Window.cs +++ b/OCR_Decode/Window.cs @@ -137,10 +137,20 @@ namespace OCR_Decode page.Dispose(); return result; } - protected string GetStringFromPng() + protected string GetStringFromPng(bool onlyDigit = false) { string result = ""; + if (onlyDigit) + { + Engine.SetVariable("tessedit_char_whitelist", "0123456789"); + } + else + { + Engine.SetVariable("tessedit_char_whitelist", ""); + } + + Bitmap rawData = WindowImage; Bitmap enhancedImage = new OcrImage(rawData).Enhance();