問題タブ [tessnet2]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
251 参照

.net - Tessract (.NET の場合は tessnet2) - 小数点以下 2 桁以上

テーブルからデータを読み取る問題に取り組んでいます。数値が小数点以下 2 桁までの場合はすべて問題ないように見えますが、数値が小数点以下 3 桁の場合は小数点が表示されません。(5.575 を取得する代わりに、5575 を取得しています)。

! ここに画像の説明を入力

https://github.com/charlesw/tesseractから tesseract 3.02 も試しましたが、読みたいソースからデータを読み取る信頼性が低いことがわかりました。そのため、古い tessnet2 を使用しています。

次の白い文字リストを使用しています: ocr.SetVariable("tessedit_char_whitelist", "0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.,");

および言語パック: バージョン 2up の英語。

より正確な値を得るために何を変更すればよいかアドバイスはありますか?

ありがとう、ジャック

0 投票する
1 に答える
2193 参照

c# - MemoryStream から BitmapImage へ

MemoryStreamに変換するのに少し苦労していBitmapImageます。似たような状況で質問が多いのですが、いろいろSO試してみたところ解決できなかったので、お世話になりました。私がMagick.NET(ImageMagick.NET) を使用していることに注意してくださいTessnet2。これがそのコードの一部です。

私はBitmapクラスを使用して、Magick.NET と Tessnet2 でほとんどの作業を行います。 BitmapImage表示目的で使用されます。

まず、PDF を読み込み、最初のページからトリミングされたビットマップを抽出します。

それは、ビットマップを .csv ファイルに保存するときMemoryStreamです。ロードしたらMemoryStream、作業に移ります。をインスタンス化して、関連する作業にBitmap使用できるようにしてから、インスタンス化を試みます。Tessnet2BitmapImage

これは私が問題を抱えているところです。そのブロックがなければDisplayImage、プログラムは正常に実行され、表示された画像が表示されません。Bitmap( TargetImage) を問題なくファイルに保存することもできます。ただし、DisplayImageブロックを使用すると、次のようになりますSystem.NullReferenceException

ImageStream検査するとオブジェクトが「きれい」に見えるため、正確に発生する場所を特定することはできません。StreamSourceこれにはデータが含まれており、位置は 0 です。 toとして割り当てた後、それを閉じようとするか、何かを実行しようとすると、そのようなアクションを実行しようとする行で例外が発生しますDisplayImagenullそれが問題かどうかを確認するために、2 つの異なるストリームを作成してみました。ただし、まったく同じ動作をしていました。特定の行を指していないことを考えると、これをデバッグするのはちょっと面倒です。MemoryStreamこれとの間には明らかに問題がありBitmapImageます。この特定の状況では、2つの間MemoryStreamに何らかのフォーマット/変換の問題がある可能性はありますか?Bitmap

ファイル ルートを試してみました。ファイルに保存してからMagickImageロードしたところ、問題なく動作しました。ただし、これをメモリ内で実行できるようにしたいと考えています。ちなみに、MemoryStream に position を設定しても、 (適切にロードされる) または(同じ例外)のいずれにも影響を与えないようです。BitmapImageUri0BitmapBitmapImage

私が現在使用している一時的な修正は、 ではなくを作成DisplayImageすることです。BitmapSourceBitmapImage

0 投票する
1 に答える
6237 参照

c# - Tesseract Engine を使用する Tessnet2 - 非常に悪い出力が得られるのはなぜですか?

C# で Tesseract エンジンを使用して Tessnet2 を使用しようとしています。私が Tessnet2 に与えたテスト イメージの多くは、出力が非常に悪く、ほとんど何も正しくありません。

これは、C# コンソール プロジェクト、Program.cs クラスの私のコードです。

たとえば、これはサンプル (大きなバイナリ 300 dpi) のテスト イメージ "eurotext.tif" です。 ここに画像の説明を入力

これは、このイメージの Tessnet2 出力です。 ここに画像の説明を入力

私はこの Web サイトを使用して、Tessnet2 を使用する手順を学習しています: https://code.msdn.microsoft.com/windowsdesktop/How-to-use-Tessnet2-library-716be12f

私はこのウェブサイトを使用して、SetVariable(...) 関数を正しく使用して目的を達成しようとしましたが、運が悪く、出力に大きな違いはありませんでした: http://www.sk-spell.sk.cx /tesseract-ocr-ja

エンジンのエラーを減らすための Tesseract ガイドラインを見つけました: http://code.google.com/p/tesseract-ocr/wiki/ImproveQuality

  • 「Tesseract は、少なくとも 300 dpi の DPI を使用するテキストで最適に動作します」と表示されます。このサンプル画像は 300 dpi です

  • このサンプル画像もバイナリであり、さまざまな Web サイトで多くの人からアドバイスされているように、より良い出力が得られるはずです。

精度を高めることができる解決策をどこでも探しましたが、多くの投稿や同様の問題を抱えている人々を見つけましたが、有効な解決策はありませんでした.

この問題の原因は何ですか? どうすれば解決できますか?

私はこのトピックの初心者なので、解決策が簡単すぎる場合はご容赦ください。

ありがとう!

0 投票する
0 に答える
270 参照

c# - DoOCR C# でアクティブなアプリケーションを閉じる

OCRについてC#でアプリケーションを開発しています。

Tessnet2 を OCR エンジンとして使用しています。コードは次のとおりです。

このコードが実行されると、アプリケーションはエラーなしですぐに閉じます。どなたかアドバイスをお願いします。ありがとう

0 投票する
1 に答える
93 参照

c# - リストから値を読み取る>

C# プロジェクトに次のコードがあります。

List<List<Word>> RecognizedPlates このコードを実行した後、I get Nothing in richTextBoxからのテキストを読むのを手伝ってもらえませんか。

0 投票する
1 に答える
69 参照

.net - 画像内の少数の単語のみのサイズを返すOCR

画像内の一部の単語のみの座標を読み取る OCR ツールはありますか。たとえば、添付の画像を参照すると、1) "Measurements" 2) "999999.9mi" の 2 つの単語だけの座標が必要です。ここに画像の説明を入力

これは達成可能ですか?

必要な単語を Tessnet2 などの OCR ツールへの入力として渡すことを考えることができましたが、適切な関数が見つかりませんでした。他の提案があれば役立ちます..

0 投票する
0 に答える
228 参照

c# - 最新の Tesseract 用の C# ラッパーを作成します (tessnet が行ったように)

私はしばらくの間、自分のプロジェクトに tessnet 2.0 を使用しています。しかし、最近、同僚が作成したソフトウェアを使用する必要がありました。.NET 2.0 を使用する tessnet 2.0 dll と互換性がありません。.NET 4.0 C# ラッパーを作成する方法を見つける必要があると思います。しかし、私はラッパーの知識/経験がまったくありません。

Tesseract のすべてのソース コードはhereにありますが、どのように使用すればよいでしょうか?

どこからどのように始めればよいかを調べるために、たくさんのグーグル検索を試みましたが、本当に迷っています。私は C# と C++ のコードを書くための中間的な知識を持っています。誰かが私を正しい方向に向けることができれば、それは本当に役に立ちます。ありがとうございました!

p/s: ニューラル ネットワークなどの複雑な機能は必要ありません。

編集 1: 返信ありがとうございます。私は間違いなくマルチスレッドの問題に気づいていませんでした。OCR を使用して数字を読み取るだけでよいので、Tesseract は実際に仕事を完璧に行うことができます。同僚と話し合った結果、外部で実行することにしました。どうすればそれを行うことができますか?

0 投票する
1 に答える
2182 参照

c# - Tessnet2 OCR: すべての文字、単語、数字のみを認識するように OCR を調整する方法は?

tessnet2 C# simple exampleで説明されているように、tessnet2 を使用しています。

しかし、英単語と数字、または英単語のみを含む画像を入力として与えると。数字のみを返します(画像に存在する数字といくつかの余分な数字)。3行目にコメントしてみましたが、数字すら認識しません。C#でtessnet2を使用して、すべての文字、単語、数字を読み取る方法を知っている人はいますか。