4

アドバイスが必要です。Tessnet2 lib を使用して画像のテキストを認識しようとしています。

画像は 5 文字 (文字と数字) の文字列で構成されます。

  1. http://www.pixel-technology.com/freeware/tessnet2/から lib をダウンロードしました。

  2. 私のプロジェクトでこのライブラリに参照を追加します。

  3. 次に、言語データ定義ファイルを ( http://code.google.com/p/tesseract-ocr/downloads/listから) ダウンロードし、tessdata ディレクトリに配置しました。

データ定義ファイルはexeファイルと同じディレクトリにあります。

これが私のコードです:

try
{ //download image from server
    System.Net.WebRequest request =
        System.Net.WebRequest.Create(
        textBox1.Text);
    System.Net.WebResponse response = request.GetResponse();
    System.IO.Stream responseStream =
        response.GetResponseStream();
    Bitmap  image = new Bitmap(responseStream);

    pictureBox1.Image =image;

    tessnet2.Tesseract ocr = new tessnet2.Tesseract();

    ocr.SetVariable("tessedit_char_whitelist", "0123456789"); 

    ocr.Init(@"C:\Users\Tan\Documents\Visual Studio 2010\Projects\TestProject\bin\Release", "eng", false); // To use correct tessdata

    List<tessnet2.Word> result = ocr.DoOCR(image, Rectangle.Empty);
    foreach (tessnet2.Word word in result)
    {
        richTextBox1.Text = string.Format("{0} : {1}", word.Confidence, word.Text);
    }

}
catch (System.Net.WebException)
{
    MessageBox.Show("There was an error opening the image file."
       + "Check the URL");
}

問題は、このコードを呼び出すと、アプリが閉じられることです。エラーメッセージは何も表示されません。理由はわかりません。誰でも私を助けることができますか?ありがとうございました。

4

5 に答える 5

3

Tesseract 3 をインストールしましたか?

その場合は、それをアンインストールし、tessdata で何かという名前の環境変数を削除して、再起動します。

于 2010-11-19T13:29:00.940 に答える
0

この場合に何をすべきかを知りたい場合は、次のようにします。

私は同じ問題を抱えていましたが、このリンクを使用して修正し、tessdata ディレクトリを init 関数に渡すことができました。(メイン関数に1つ、OCRクラスに2つあります。)最新のv3.0xの代わりにv2.00言語ファイルをダウンロードする必要があったため、上記のリンクが役に立ちました...

よろしくお願いします

于 2013-02-28T21:37:36.467 に答える
0

ocr.Init 行にエラーがあると思います。パスが正しいことを確認してください。また、exeファイルを含む同じフォルダーのtessdataディレクトリにすべてのデータを常に配置する必要があるため、パスは必要ないことを覚えているので、nullを渡すようにしてください。

于 2010-10-20T12:03:08.410 に答える
0

リリース ソリューション構成に対して Visual Studio でデバッグ ソリューション構成を使用してみてください。一部のデバッグ情報はリリース構成に含まれていません。そして、そのようなバグを撃ちます。

于 2011-01-31T12:11:17.840 に答える
0

問題は ocr.Init() にあります。ディレクトリ "C:\Users\Tan\Documents\Visual Studio 2010\Projects\TestProject\bin\Release" に必要なファイルが含まれていることを確認します。

eng.DangAmbigs

eng.freq-dawg

eng.inttemp

eng.normproto

eng.pffmテーブル

eng.unicharset

eng.user-words

eng.word-dawg

于 2011-10-20T13:43:02.513 に答える