public void Error(string msg, bool writeIntoFile) { richText?.AppendLineThreadSafe(msg, Color.Red); if (writeIntoFile) { AppendIntoFile(ConfigMgr.GetInstance().ErrorLogPath, msg); } }
public void Error(Exception ex) { var msg = ex.InnerException?.Message ?? ex.Message; richText?.AppendLineThreadSafe(msg, Color.Red); if (IsSelfOrChildrenNoTrackTraceException(ex)) { return; } AppendIntoFile(ConfigMgr.GetInstance().ErrorLogPath, msg); }
public void DisplayImage(string key, Mat mat) { var cacheDir = ConfigMgr.GetInstance().CacheDir; var storePath = Tools.GetInstance().JoinPath(cacheDir, $"{key}.png"); if (key == "DoCapture") { mat.SaveImage(storePath); } else { //Cv2.ImShow(key, mat); mat.SaveImage(storePath); } }
public string OCRWithTesseract(Mat mat, string lans) { var configMgr = ConfigMgr.GetInstance(); var randStr = DateTime.Now.ToString("yyMMddHHmmssffff") + mat.GetHashCode().ToString(); var tempImgStorePath = configMgr.GetCacheFileFullPath($"tesseract_{randStr}.png"); var resName = $"tesseract_result_{randStr}"; var tempResPathForTess = configMgr.GetCacheFileFullPath($"{resName}"); var tempResStorePath = configMgr.GetCacheFileFullPath($"{resName}.txt"); mat.SaveImage(tempImgStorePath); var tesseratPath = ConfigMgr.GetInstance().TesseractPath; var startInfo = new ProcessStartInfo() { FileName = tesseratPath, Arguments = string.Format("{0} {1} -l {2} --psm 6", tempImgStorePath, tempResPathForTess, lans), WindowStyle = ProcessWindowStyle.Hidden, //RedirectStandardOutput = true, //RedirectStandardError = true, //UseShellExecute = false, }; var s = ""; try { var proc = Process.Start(startInfo); proc.WaitForExit(); //var output = proc.StandardOutput.ReadToEnd(); //var error = proc.StandardError.ReadToEnd(); s = File.ReadAllText(tempResStorePath); s = FilterTesseractResult(s); LogTools.GetInstance().Info("OCR:" + s); } catch (Exception e) { throw e; } finally { File.Delete(tempImgStorePath); File.Delete(tempResStorePath); } return(s); }
public string GetAdbServerExePath() { return(ConfigMgr.GetInstance().AdbServerExePath); }
public string OCRWithTesseract(Mat mat) { return(OCRWithTesseract(mat, ConfigMgr.GetInstance().OCRLans)); }
public string OCRWithTesseract(Bitmap bitmap) { return(OCRWithTesseract(bitmap.ToOpenCvMat(), ConfigMgr.GetInstance().OCRLans)); }