OpenCVSharp4 Rect转IronOCR CropRectangle异常,OCR识别区域不符
OpenCVSharp.Rect转System.Drawing.Rectangle后IronOCR识别区域异常
开发项目时,使用IronOCR读取OpenCVSharp4定义的区域,遇到如下问题:IronOCR的CropRectangle方法依赖System.Drawing.Rectangle,将OpenCvSharp.Rect转换后调用Input.Add(Image, ContentArea),识别结果不符合预期。推测是转换后的裁剪区域异常导致部分文字被截断,扩大裁剪区域的宽高后识别恢复正常。
相关代码如下:
var Ocr = new IronTesseract(); String[] splitText; using (var Input = new OcrInput()) { //OpenCv OpenCvSharp.Rect rect = new OpenCvSharp.Rect(55, 107, 219, 264); //IronOCR Rectangle ContentArea = new Rectangle() { X = rect.TopLeft.X, Y = rect.TopLeft.Y, Height = rect.Height, Width = rect.Width }; CropRectangle r = new CropRectangle(ContentArea); CordBox.Text = r.Rectangle.ToString(); //OpenCv resizedMat.Rectangle(rect.TopLeft, rect.BottomRight, Scalar.Blue, 3); resizedMat.Rectangle(new OpenCvSharp.Point(55, 107), new OpenCvSharp.Point(219, 264), Scalar.Brown, 3); Cv2.ImShow("resizedMat", resizedMat); //IronOCR Input.Add(@"C:\Projects\AnExperiment\WpfApp1\Images\TestSave.PNG", r); Input.EnhanceResolution(); var Result = Ocr.Read(Input); ResultBox.Text = Result.Text; splitText = ResultBox.Text.Split('\n'); }
当前效果截图:
内容的提问来源于stack exchange,提问作者CJP
相关产品推荐
相关产品推荐

