【问题标题】:Optical Character Recognition (Emgu)光学字符识别 (Emgu)
【发布时间】:2013-12-25 09:32:32
【问题描述】:

您是否尝试过使用下面的代码?使用 VB.net 制作和 OCR。

我遇到的问题是,当我运行程序(它运行)时,图片框向右移动并消失了。请帮助解决我的问题。

代码:

Imports Emgu.CV
Imports Emgu.Util
Imports Emgu.CV.OCR
Imports Emgu.CV.Structure

Public Class Form1

    Dim OCRz As Tesseract = New Tesseract("tessdata", "eng", Tesseract.OcrEngineMode.OEM_TESSERACT_ON­LY)
    Dim pic As Bitmap = New Bitmap(270, 100)
    Dim gfx As Graphics = Graphics.FromImage(pic)

    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
        'If Windows XP

        gfx.CopyFromScreen(New Point(Me.Location.X + PictureBox1.Location.X + 4, Me.Location.Y + PictureBox1.Location.Y + 30), New Point(0, 0), pic.Size)\

        PictureBox1.Image = pic

        'If Windows 7
        'gfx.CopyFromScreen(MousePositi­on, New Point(0, 0), pic.Size)
    End Sub

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        OCRz.Recognize(New Image(Of Bgr, Byte)(pic))
        RichTextBox1.Text = OCRz.GetText
    End Sub

End Class

【问题讨论】:

    标签: vb.net ocr


    【解决方案1】:

    尝试注释这两行:

    gfx.CopyFromScreen(New Point(Me.Location.X + PictureBox1.Location.X + 4, Me.Location.Y + PictureBox1.Location.Y + 30), New Point(0, 0), pic.Size)
    PictureBox1.Image = pic
    

    【讨论】:

      【解决方案2】:

      同样的代码我也遇到了同样的问题。

      首先,需要调整下面代码行中的偏移量以匹配表单的具体情况。我不得不将我的代码从 4 增加到 8。

      gfx.CopyFromScreen(New Point(Me.Location.X + PictureBox1.Location.X + 4, Me.Location.Y + PictureBox1.Location.Y + 30), New Point(0, 0), pic.Size)
      

      我也遇到了一个问题(Windows 7、Visual Basic 2010 Express,图像无法正确刷新。 看完之后,我突然想到我没有理由实际填充图片图像。让它保持透明。评论后,就像一个魅力。

      请注意,OCR 不是很好,但代码现在可以满足我的要求。

      【讨论】:

        【解决方案3】:

        在 timer1_tick 中增加一行

        gfx.CopyFromScreen(新点(Me.Location.X + PictureBox1.Location.X + 4, Me.Location.Y + PictureBox1.Location.Y + 30), 新点(0, 0), pic.Size )

        PictureBox1.Image = 图片

        PictureBox1.Image = 没有

        应该能解决你的问题

        【讨论】:

          猜你喜欢
          • 2011-07-16
          • 2014-04-25
          • 2014-05-27
          • 1970-01-01
          • 2021-10-08
          • 2011-10-30
          • 2020-12-26
          • 2019-05-24
          相关资源
          最近更新 更多