満足できないOCR結果の改善

This article was translated from English: Does it need improvement?
Translated
View the article in English

OCRの品質は入力に大きく依存します。 あるドキュメントをきれいに読み取る設定、フィルター、または設定が、別のドキュメントには通用せず、文字化けや不完全なテキストが残ることがあります。 標準読み取りが期待に反した場合、IronOcr.Extensions.AdvancedScanパッケージが通常、精度のギャップを埋めます。

その違いはエンジンにあります。標準のIronOcr.Extensions.AdvancedScanPaddleOCRが搭載されており、機械学習能力を追加しています。 そのため、スクリーンショットのようなノイズの多い入力やパスポートやナンバープレートのような構造化ソースに向いています。

このパッケージは、これらのケースに特化した読み取りメソッドを提供します。

解決策

1. ReadDocumentAdvanced()EnhanceResolution() を始める

他の設定に行く前に、EnhanceResolution()前処理フィルターと組み合わせてください。 この組み合わせにより、ユーザーが標準読み取りで直面するほとんどの精度問題が解決されます。

フィルターをReadDocumentAdvanced()に渡します。

var ocr = new IronTesseract();
using var input = new OcrInput();
input.LoadPdf("document.pdf");
// Upscale and sharpen low-resolution input before reading
input.EnhanceResolution();
var result = ocr.ReadDocumentAdvanced(input);
Console.WriteLine(result.Text);
var ocr = new IronTesseract();
using var input = new OcrInput();
input.LoadPdf("document.pdf");
// Upscale and sharpen low-resolution input before reading
input.EnhanceResolution();
var result = ocr.ReadDocumentAdvanced(input);
Console.WriteLine(result.Text);
Imports IronOcr

Dim ocr As New IronTesseract()
Using input As New OcrInput()
    input.LoadPdf("document.pdf")
    ' Upscale and sharpen low-resolution input before reading
    input.EnhanceResolution()
    Dim result = ocr.ReadDocumentAdvanced(input)
    Console.WriteLine(result.Text)
End Using
$vbLabelText   $csharpLabel

EnhanceResolution()は読み取り前に低解像度の入力をアップスケールおよびシャープ化します。 低解像度は不良結果の一般的な主原因であるため、この前処理ステップはエンジンスワップと同じくらい重要な場合があります。

2. .NET Frameworkでx64をターゲットにする

.NET Frameworkプロジェクトをx64としてビルドするように構成します。 AdvancedScanは大量のメモリを必要とし、異なるアーキテクチャで実行すると実行時エラーが発生することがあります。 完全なセットアップについては、.NET Framework でのAdvanced Scanガイドをご覧ください。

iText 7は有料であり、機能は制限されています。

AdvancedScanは高い精度を提供しますが、いくつかの制約があります:

  • 少ない結果機能: AdvancedScanの結果オブジェクトは、標準のOcrResultオブジェクトよりも少ないプロパティを公開します。
  • 異なる戻り型:各読み取りメソッドは異なる結果オブジェクト型を返すため、呼び出したAPIの詳細についてはAPIリファレンスを確認してください。
  • 検索可能なPDFはありません: AdvancedScan出力から検索可能なPDFをビルドすることはまだサポートされていませんが、機能は開発中です。
  • 言語が制限されています: このパッケージは現在、英語、中国語、日本語、韓国語、およびラテンアルファベットをサポートしています。

ご注意検索可能なPDF出力は、AdvancedScan読み取りから現時点では利用できません。 その機能に依存している場合は、標準のIronOCR読み取りパスに留まってください。

Curtis Chau
テクニカルライター

Curtis Chauは、カールトン大学でコンピュータサイエンスの学士号を取得し、Node.js、TypeScript、JavaScript、およびReactに精通したフロントエンド開発を専門としています。直感的で美しいユーザーインターフェースを作成することに情熱を持ち、Curtisは現代のフレームワークを用いた開発や、構造の良い視覚的に魅力的なマニュアルの作成を楽しんでいます。

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。

準備はできましたか?
Nuget ダウンロード 6,136,090 | バージョン: 2026.7 リリースされたばかり
Still Scrolling Icon

まだスクロールしていますか?

すぐに証拠が欲しいですか? PM > Install-Package IronOcr
サンプルを実行 あなたの画像が検索可能なテキストになるのをご覧ください。