标签:engine item show gif load source for system rip
using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Drawing; using System.Linq; using System.Text; using System.Threading.Tasks; using System.Windows.Forms; using Emgu.CV; //3.2.02 using Emgu.CV.VideoStab; using Emgu.CV.ML; using Emgu.CV.OCR; using Emgu.CV.Structure; //https://github.com/iobrains/OpenCV namespace CharacterRecognition { /// <summary> /// geovindu edit /// </summary> public partial class MainWnd : Form { string path; public MainWnd() { InitializeComponent(); } /// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void loadImageToolStripMenuItem_Click(object sender, EventArgs e) { rtbOcrResult.Clear(); OpenFileDialog ofd = new OpenFileDialog(); ofd.Title = "Select an image"; ofd.Filter = "Image Files(*.png; *.jpg; *.bmp; *.gif)|*.png; *.jpg; *.bmp; *.gif"; if (ofd.ShowDialog() == DialogResult.OK) { path = System.IO.Path.GetFullPath(ofd.FileName); picBox.Image = new Bitmap(path); picBox.SizeMode = PictureBoxSizeMode.Zoom; statusLabelOCR.Text = path + " loaded."; } } /// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void exitToolStripMenuItem_Click(object sender, EventArgs e) { Close(); } /// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void btnAnalyzeImage_Click(object sender, EventArgs e) { if(picBox.Image == null) { MessageBox.Show("Load an image first!"); } else { statusLabelOCR.Text = "Analyzing invoice image..."; Task.Run(() => { using (var img = new Image<Bgr, byte>(path)) { //https://github.com/tesseract-ocr/tessdata/ //Environment.GetEnvironmentVariable("EMGU_ROOT") + string tessdata = @"D:\open source\face\tessdata"; using (var ocrProvider = new Tesseract(tessdata, "eng", OcrEngineMode.TesseractOnly)) //TesseractCubeCombined { ocrProvider.SetImage(img); //Recognize string text = ocrProvider.GetUTF8Text().TrimEnd(); //GetText rtbOcrResult.Invoke((MethodInvoker)delegate { statusLabelOCR.Text = "Analysis completed."; rtbOcrResult.AppendText(text); }); } } }); } } /// <summary> /// /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void MainWnd_Load(object sender, EventArgs e) { } } }
csharp: Emgu.CV.OCR and Tesseract.OCR Optical Character Recognition
标签:engine item show gif load source for system rip
原文地址:https://www.cnblogs.com/geovindu/p/13255964.html