Tesseractの詳細設定
OCRの場合、ドキュメントからテキストをアプローチして抽出するためのオプションと柔軟性を持つことが重要です。 OCRの実行はコストが高いため、特定のドキュメントに対して使用するパフォーマンスと方法を制御できることが、OCRを利用するアプリケーションをスケーラブルかつ効率的にするために必要です。
IronTesseractは、開発者にさまざまなプロパティとオプションを提供し、いじることができます。 たとえば、特定の文字をブラックリストに追加したり、ドキュメント内のバーコードを読み取ったり、OCRエンジンがページを読む方法を指示したりしたい場合、これらすべては IronTesseract
クラスで可能です。
IronOCRをTesseract 5と使用するための5ステップガイド
var ocrTesseract = new IronTesseract();
ocrTesseract.Language = OcrLanguage.EnglishBest;
ocrTesseract.Configuration.ReadBarCodes = false;
ocrTesseract.Configuration.BlackListCharacters = "`ë ^";
ocrTesseract.Configuration.TesseractVariables["tessedit_parallelize"] = false;
IronTesseract
クラスを初期化した後、すぐに変更したい重要なオプションがいくつか利用可能です。 最初に構成するプロパティは Language
です。 デフォルトでは、言語は英語です。 ただし、IronTesseract
は最大125の言語をサポートしており、UseMultipleLanguages
メソッドを使用することで複数言語にも対応できます。 詳細については、参照してくださいこれ.
次に設定したいプロパティは、TesseractConfiguration
クラスです。 このクラスを使用すると、Tesseract エンジンがテキストの可能性のあるブロックをドキュメント内でどのようにスキャンするかを変更できます。 まず、Tesseractエンジンの言語をOcrLanguage.EnglishBest
に設定して言語を変更します。 このバリエーションは、OCRを使用した形状認識戦略であるLTSMとOEMを組み合わせています。 これら2つの戦略を組み合わせることで、OCRはより正確な結果を生み出すことができます。 その後、OCRプロセス中にバーコードを読み込まないように、ReadBarCodes
を false に設定します。
また、文書上で特定の文字をブラックリストに追加することで、抽出したい文字をさらにカスタマイズして指定します。 この例では、バックティックやアクセント、キャレット記号を含むテキストの抽出を避けるために、文字をブラックリストに登録します。 最後に、TessreactVariables
を設定します。["tessedit_parallelize"]をfalseに設定して、当面の間並列処理を無効にします。 この最後のものは非常に強力な機能で、Tesseractエンジンに直接話しかけます。[Here](https://ironsoftware.com/csharp/ocr/how-to/iron-tesseract/)TesseractエンジンがOCRを実行する際の動作をさらにカスタマイズするために、開発者が利用できる
TesseractVariables`の完全なリストです。
例やサンプルコード、ファイルを含むハウツーガイドをご覧になるには、こちらをクリックしてください。