フッターコンテンツにスキップ
他のコンポーネントと比較する

Tesseract C# とIronOCR: .NETではどちらの OCR ライブラリを使用すべきでしょうか?

実装の詳細に入る前に、この比較表はオープンソースのTesseract .NETラッパーと商用のIronOCRライブラリの主な特徴と違いを要約しています。 これらの違いは、C#アプリケーションでOCRを構築する.NET開発者の開発速度、デプロイの複雑さ、長期的なメンテナンスコストに影響します。

要約:Tesseractは高性能な無料OCRエンジンですが、手動での設定、外部の前処理パイプライン、および慎重なクロスプラットフォーム管理が必要です。 IronOCRは、Tesseractエンジンに自動画像前処理、ネイティブPDFサポート、およびあらゆるプラットフォームでのインストール時の煩雑さを解消するマネージド.NET APIをパッケージ化しています。

TesseractとIronOCRをひと目で比較するとどう違うのか?

以下の表は、 .NET開発者がOCRオプションを評価する際に、2つのアプローチ間で最も重要な違いをまとめたものです。

Tesseract .NET ラッパーとIronOCRの機能比較
特徴Tesseract .NET ラッパーIronOCR
インストールTesseract NuGetパッケージ + tessdataフォルダ + C++ランタイム`Install-Package IronOCR` (単一パッケージ)
画像前処理手動(外部ツールが必要)内蔵機能(ノイズ除去、デスクスキュー、解像度向上)
画像形式のサポート制限あり(PIX形式への変換が必要)PNG、JPG、TIFF、GIF、BMP、WebP のネイティブサポート
言語サポート100件以上(手動トレーニングデータのダウンロード)127種類以上の言語パック( NuGet経由)
PDF 処理追加のライブラリが必要ですPDFファイル対応機能を内蔵
クロスプラットフォームプラットフォームごとの複雑な構成Windows/Linux/macOS間で一貫性があります
バーコード/QRコード読み取り含まれていません統合
検索可能なPDF出力手動実装検索可能なPDFエクスポート機能を内蔵
商用サポートコミュニティのみバグ修正を含むProfessionalエンジニアリングサポート
ライセンスApache 2.0(無料)商用版(無料トライアルあり)

比較からわかるように、どちらのアプローチにも明確な強みがあります。 Tesseractのオープンソースライセンスは、予算に制約のあるプロジェクトにとって魅力的である一方、IronOCRの機能セットと簡素化された導入方法は、開発速度と本番環境の信頼性を優先するチームにとって魅力的である。

.NETプロジェクトに各OCRライブラリをインストールするにはどうすればよいですか?

.NETプロジェクトでネイティブTesseractをセットアップするには、最初のNuGetインストール以外にも複数のコンフィギュレーションステップが必要です。 NuGet のTesseractOCRパッケージはTesseractエンジンをラップしていますが、.NET開発者は言語ファイルを管理し、Visual C++ランタイムがターゲットマシンにインストールされていることを確認する必要があります。

Visual StudioにTesseractをインストールする

PM> Install-Package TesseractOCR
PM> Install-Package TesseractOCR
$vbLabelText   $csharpLabel

インストール後、 GitHub上のtessdataリポジトリから適切なトレーニングデータをダウンロードし、 .NETプロジェクト内のファイルを構成してください。 tessdataフォルダは実行時にアクセスできる必要があり、通常はこのフォルダへのフルパスを設定するか、実行可能ファイルと同じ出力ディレクトリに配置する必要があります。 .NETラッパーと言語ファイル間のバージョンの不一致は、初期化の失敗を頻繁に引き起こし、Stack Overflowのディスカッションで開発者のフラストレーションの一般的な原因となっています。

また、Tesseractのネイティブ・バイナリは、アプリケーションを実行するマシンにVisual C++ Redistributableがインストールされている必要があります。 この依存関係は、特にコンテナ化された環境や、管理上のインストールが容易ではないクライアントマシンでは、デプロイメントを複雑にする可能性があります。

IronOCRのインストール

PM> Install-Package IronOCR
PM> Install-Package IronOCR
$vbLabelText   $csharpLabel

Tesseract C# vs IronOCR: .NETでの OCR 実装の完全ガイド : 画像 1 - インストール

IronOCRは、すべてを単一のマネージド.NETパッケージにバンドルすることで、設定の複雑さを排除します。 C#ランタイム、tessdataフォルダ管理、プラットフォーム固有のネイティブDLLを追跡する必要はありません。 言語パックは必要に応じて個別のNuGetパッケージとしてインストールされ、標準の.NET依存関係管理と統合されます。 Iron Softwareはこのアプローチを、インフラストラクチャの煩雑さを伴わずにOCR機能を必要とする.NET開発者向けに特別に設計しました。 IronOCRの利用開始方法について詳しくはこちらをご覧ください。

各ライブラリを使用してどのように画像からテキストを抽出しますか?

入力画像の読み込みやプレーンテキストの抽出といった基本的なOCRワークフローは、TesseractとIronOCRのAPI設計の大きな違いを強調しています。 これらの違いを理解することは、.NET開発者が各アプローチの学習曲線と実装の労力を予測するのに役立ちます。 どちらのライブラリも最終的には同じコア機能を実行しますが、開発者の体験は大きく異なります。

Tesseractによるテキスト抽出の例

Tesseractエンジンを使った以下の画像処理ワークフローを考えてみましょう。このコードは、PNGファイルからテキストを抽出する基本的なOCRを示しています:

using TesseractOCR;
using TesseractOCR.Enums;
// Initialize the engine with tessdata path and language
using var engine = new Engine(@"./tessdata", Language.English, EngineMode.Default);
// Load input image using Pix format
using var img = Pix.LoadFromFile("document.png");
// Process the image and create a page
using var page = engine.Process(img);
// Extract plain text from recognized text
Console.WriteLine(page.GetText());
using TesseractOCR;
using TesseractOCR.Enums;
// Initialize the engine with tessdata path and language
using var engine = new Engine(@"./tessdata", Language.English, EngineMode.Default);
// Load input image using Pix format
using var img = Pix.LoadFromFile("document.png");
// Process the image and create a page
using var page = engine.Process(img);
// Extract plain text from recognized text
Console.WriteLine(page.GetText());
$vbLabelText   $csharpLabel

このアプローチでは、tessdataフォルダのパスを管理し、適切なファイルパーミッションを確保し、Tesseractエンジンが期待するPixイメージフォーマットを処理する必要があります。トレーニングデータファイルがない場合や互換性がない場合、エンジンの初期化は例外をスローします。 Tesseractのネイティブリソースは、管理されていないコードからのリークを防ぐために適切に処分されなければならないため、メモリの使用には注意が必要です。 初期化に関する問題に遭遇した開発者向けに、 IronOCRのトラブルシューティングガイドでは、Tesseractでよく発生する問題とその解決策について解説しています。

IronOCRテキスト抽出の例

以下のコードは、 IronOCRが同じテキスト抽出タスクをどのように簡素化するかを示しています。

using IronOcr;
// Initialize the OCR engine
var ocr = new IronTesseract();
// Load and process the input image
using var input = new OcrInput();
input.LoadImage("document.png");
// Read text with automatic optimization
var result = ocr.Read(input);
Console.WriteLine(result.Text);
using IronOcr;
// Initialize the OCR engine
var ocr = new IronTesseract();
// Load and process the input image
using var input = new OcrInput();
input.LoadImage("document.png");
// Read text with automatic optimization
var result = ocr.Read(input);
Console.WriteLine(result.Text);
$vbLabelText   $csharpLabel

IronTesseract クラスは、メモリ使用量を自動的に処理するマネージド ラッパーを提供します。 OcrInput クラスは、フォーマット変換の必要なく、ファイル パス、バイト配列、ストリーム、または System.Drawing オブジェクトから画像ファイルを直接受け入れます。 結果として得られる result オブジェクトには、信頼度スコア、単語の位置、段落境界などの構造化データが含まれており、これらはすべて高度な文書処理パイプラインを構築する際に役立ちます。 より高度な機能については、 画像からテキストへの変換に関するチュートリアル全文をご覧ください。

入力

Tesseract C# vs IronOCR: .NETでの OCR 実装の完全ガイド : 画像 2 - サンプル画像入力

出力

Tesseract C# vs IronOCR: .NETでの OCR 実装の完全ガイド : 画像 3 - コンソール出力

どのような画像前処理オプションが OCR の精度を向上させますか?

実世界の文書がまっさらな状態で届くことはめったにありません。 スキャンした文書が回転していたり、写真に影があったり、ファックスで送信されたPDFにノイズや歪みが見られることがよくあります。 画像前処理機能は、実稼働環境におけるOCRの精度に直接影響を与え、ネイティブのTesseractを使用する場合と市販のOCRソリューションを使用する場合の最も重要な違いの1つです。

Tesseractの前処理の限界

Tesseractエンジンは、高解像度できれいな画像ファイルを、テキストを正確に処理できるように設計されています。 回転した画像やノイズの多い画像を処理すると、OCRエンジンが文字化けした出力を返したり、テキストを完全に認識できなかったりすることがよくあります。 これらの画像品質の問題に対処するには、ImageMagick、OpenCV、またはOCRエンジンに画像を渡す前に実行する必要があるカスタム前処理コードのような外部ツールが必要です。

この前処理のオーバーヘッドにより、.NETの開発時間が大幅に増加します。ドキュメントの種類ごとに異なる修正ルーチンが必要になることもあり、さまざまな入力に対して最適な結果を得るためにこれらのパイプラインをチューニングすることは、それ自体がプロジェクトになります。 この作業量を過小評価するチームは、Tesseractの"無料"コストが、数週間にわたる前処理作業によって相殺されることに気づくことが多い。

IronOCRビルトイン画像前処理

using IronOcr;
var ocr = new IronTesseract();
using var input = new OcrInput();
input.LoadImage("skewed-scan.png");
// Apply automatic corrections for high accuracy
input.Deskew();  // Correct skew on rotated images
input.DeNoise(); // Remove digital noise
var result = ocr.Read(input);
Console.WriteLine(result.Text);
using IronOcr;
var ocr = new IronTesseract();
using var input = new OcrInput();
input.LoadImage("skewed-scan.png");
// Apply automatic corrections for high accuracy
input.Deskew();  // Correct skew on rotated images
input.DeNoise(); // Remove digital noise
var result = ocr.Read(input);
Console.WriteLine(result.Text);
$vbLabelText   $csharpLabel

IronOCRは、一般的な文書品質の問題を自動的に解決する画像補正フィルターをサポートしています。 Deskew() メソッドは、テキスト行の角度を検出し、補正回転を適用することで、歪みを補正します。 DeNoise() メソッドは、スキャンによるアーティファクトやデジタルノイズを除去し、テキスト認識を混乱させる可能性のある問題を解決します。 その他のフィルターには、低 DPI 画像を改善する EnhanceResolution()、ぼやけた文書に対処する Sharpen()、色あせたテキストを復元する Contrast()、暗い背景に明るい文字の文書を処理する Invert() があります。 これらの内蔵画像前処理ツールにより、ほとんどの文書処理シナリオにおいて、外部画像処理ライブラリは不要になります。

入力

Tesseract C# vs IronOCR: .NETでの OCR 実装の完全ガイド : 画像 4 - サンプル入力

出力

Tesseract C# vs IronOCR: .NETでの OCR 実装の完全ガイド : 画像 5 - 傾いたコンソール出力

各ライブラリはどの画像形式をサポートしていますか?

文書処理ワークフローでは、高解像度スキャンからモバイルカメラで撮影した画像、従来のファックスまで、さまざまな形式の画像ファイルに遭遇します。 ネイティブ形式のサポートは、前処理コードを削減し、OCR精度を低下させる変換エラーを排除します。

Tesseractフォーマットの要件

Tesseractの基礎となるLeptonicaライブラリは、内部的にPIXフォーマットの画像を扱います。 .NETラッパーはいくつかの変換を自動的に処理しますが、複数ページのTIFFやPDFドキュメントのような複雑な画像形式は、追加の処理と多くの場合外部ライブラリが必要です。 .NET開発者は、特に Web アプリケーションやデータベースのブロブ ストレージからの画像を扱う場合、System.Drawing オブジェクトや Stream ソースを Tesseract エンジンが期待する形式に変換する際の問題に頻繁に遭遇します。

複数フレームのGIF画像や複数ページのTIFF画像では、フレームを一つずつ手動で処理する必要があり、本来は単純なテキスト抽出作業であるはずの作業に、定型的なコードを追加しなければならない。

IronOCRフォーマットの柔軟性

using IronOcr;
var ocr = new IronTesseract();
using var input = new OcrInput();
// Load various image formats directly
input.LoadImage("photo.jpg");
input.LoadImage("screenshot.png");
input.LoadImage("fax.tiff");
input.LoadPdf("scanned-contract.pdf");
var result = ocr.Read(input);
Console.WriteLine(result.Text);
using IronOcr;
var ocr = new IronTesseract();
using var input = new OcrInput();
// Load various image formats directly
input.LoadImage("photo.jpg");
input.LoadImage("screenshot.png");
input.LoadImage("fax.tiff");
input.LoadPdf("scanned-contract.pdf");
var result = ocr.Read(input);
Console.WriteLine(result.Text);
$vbLabelText   $csharpLabel

IronOCRは、JPG、PNG、GIF、TIFF、BMP、WebPなど、主要な画像フォーマットすべてに対応しています。このライブラリは、複数ページのTIFFおよびGIF画像を自動的に処理し、各フレームを個別のページとして扱います。 文書のデジタル化において、図書館はPDFファイルを直接処理し、別途PDF処理ライブラリや画像変換の手順を必要とせずに、スキャンされたページからテキストを抽出します。

出力

Tesseract C# vs IronOCR: .NETでの OCR 実装の完全ガイド : 画像 6 - 複数画像のコンソール出力

多言語 OCR 処理はどのように設定しますか?

グローバルな.NETアプリケーションは、アラビア語、中国語、日本語、韓国語など、ラテン文字以外の文字体系を持つ言語を含む、複数の言語のテキストを認識する必要があります。 言語設定は、OCRの精度と.NETアプリケーションの展開の複雑さの両方に影響します。

Tesseract言語設定

using TesseractOCR;
using TesseractOCR.Enums;
// Requires downloading fra.traineddata to tessdata folder
using var engine = new Engine(@"./tessdata", Language.French, EngineMode.Default);
using TesseractOCR;
using TesseractOCR.Enums;
// Requires downloading fra.traineddata to tessdata folder
using var engine = new Engine(@"./tessdata", Language.French, EngineMode.Default);
$vbLabelText   $csharpLabel

各言語では、 Tesseract GitHubリポジトリから対応する .traineddata ファイルをダウンロードし、正しい tessdata フォルダに配置する必要があります。 多言語ドキュメントの場合は、初期化時に複数の言語を指定します。 開発環境、ステージング環境、本番環境にわたってこれらの言語ファイルを管理し、すべての展開先の出力ディレクトリに正しいバージョンが存在することを確認することは、運用上の複雑さを増大させ、言語要件が増えるにつれてその複雑さはさらに増します。

IronOCR言語パックの設定

using IronOcr;
var ocr = new IronTesseract();
// Install IronOcr.Languages.French NuGet package first
ocr.Language = OcrLanguage.French;
// Process multi-language documents
ocr.AddSecondaryLanguage(OcrLanguage.German);
using IronOcr;
var ocr = new IronTesseract();
// Install IronOcr.Languages.French NuGet package first
ocr.Language = OcrLanguage.French;
// Process multi-language documents
ocr.AddSecondaryLanguage(OcrLanguage.German);
$vbLabelText   $csharpLabel

IronOCRは言語パックをNuGetパッケージとして配布し、標準的な.NET依存関係管理ツールと統合します。 手書き文字や特定の文字体系に対応した特殊なバリエーションを含む127以上の言語をサポートするこのライブラリは、多言語文書をスムーズに処理します。 ビルド中のパッケージ復元により、必要なすべての言語ファイルが自動的にデプロイされるため、手動でのファイル管理やバージョン管理に関する心配は不要です。

クロスプラットフォーム展開の考慮事項とは

最新の.NET開発は、Windows、Linux、macOS、およびAzureやAWSなどのクラウド環境を対象としています。 OCRライブラリの互換性は、 .NETアプリケーションの導入の複雑さと運用保守に大きな影響を与える。

Tesseractプラットフォームの課題

Tesseract .NETラッパー実装は、特定のプラットフォーム用にコンパイルされたネイティブC#++ライブラリに依存しています。 DLLまたは共有ライブラリファイルは、Windows、Linux、macOS、および32ビットアーキテクチャと64ビットアーキテクチャで異なります。 Linuxにデプロイするには、Windowsとは異なるバイナリが必要で、デプロイ環境で適切なライブラリパスを設定する必要があります。

クラウドのデプロイメントには、さらなる課題があります。 Azure App Services、AWS Lambda、コンテナ環境では、ネイティブのTesseractが必要とするVisual C++ランタイムがない場合があります。 これらの依存関係をDockerコンテナやサーバーレス機能にインストールすると、ビルドパイプラインが複雑になり、イメージサイズが大きくなります。 多くの.NET開発者は、ネイティブ依存関係が適切にパッケージ化されていない場合、ローカルのVisual Studio開発環境では問題なく動作していたにもかかわらず、デプロイ時に失敗するという事態に遭遇します。

IronOCRのクロスプラットフォーム一貫性

IronOCRは純粋なマネージド.NETライブラリとして動作し、外部ネイティブの依存関係はありません。 同じNuGetパッケージは、Windows、macOS、Linux、 Azure App ServicesAWS Lambda 、およびDocker コンテナ間で一貫して動作します。 このアーキテクチャは、CI/CDパイプラインを劇的に簡素化し、プラットフォーム固有の設定を調整することなく、ローカルでビルドして本番環境に確実にデプロイできるようにします。

OCR結果データはライブラリ間でどのように比較されますか?

プレーンテキスト抽出だけでなく、構造化OCR出力により、高度な文書処理ワークフローが可能になります。 各ライブラリが提供するデータを理解することで、アーキテクトは.NETアプリケーションに適した後処理ロジックを設計できるようになります。

Tesseractの結果へのアクセス

using var page = engine.Process(img);
// Basic OCR text output
string text = page.Text;
// Confidence score (mean across all recognized text)
float confidence = page.GetMeanConfidence();
using var page = engine.Process(img);
// Basic OCR text output
string text = page.Text;
// Confidence score (mean across all recognized text)
float confidence = page.GetMeanConfidence();
$vbLabelText   $csharpLabel

Tesseractは、認識されたテキストと総合的な信頼度スコアを提供します。 個々の単語の位置や文字ごとの確信度のような、より細かいデータにアクセスするには、追加のAPI呼び出しと、結果構造による慎重な反復が必要です。 APIインターフェースは機能的には問題ないものの、本番環境のドキュメントパイプラインで一般的に必要とされる階層的な結果モデルが欠けている。

信頼スコア付きIronOCR構造化結果

using IronOcr;
var ocr = new IronTesseract();
using var input = new OcrInput();
input.LoadImage("document.png");
var result = ocr.Read(input);
// Full text extraction
Console.WriteLine(result.Text);
// Iterate through structured elements with confidence scores
foreach (var page in result.Pages)
{
    foreach (var paragraph in page.Paragraphs)
    {
        Console.WriteLine($"Paragraph: {paragraph.Text}");
        Console.WriteLine($"Confidence: {paragraph.Confidence}%");
    }
}
using IronOcr;
var ocr = new IronTesseract();
using var input = new OcrInput();
input.LoadImage("document.png");
var result = ocr.Read(input);
// Full text extraction
Console.WriteLine(result.Text);
// Iterate through structured elements with confidence scores
foreach (var page in result.Pages)
{
    foreach (var paragraph in page.Paragraphs)
    {
        Console.WriteLine($"Paragraph: {paragraph.Text}");
        Console.WriteLine($"Confidence: {paragraph.Confidence}%");
    }
}
$vbLabelText   $csharpLabel

OcrResultクラスは、ページ、段落、行、単語、および個々の文字への階層的なアクセスを提供します。 各要素には境界ボックスの座標と信頼度スコアが含まれており、 .NETアプリケーションは認識されたテキスト領域を強調表示したり、特定の領域からコンテンツを抽出したり、認識品質を検証したり、信頼度の低いセクションにフラグを付けて人間のレビューを依頼したりすることができます。 IronOCRは、アーカイブや検索インデックス作成のために、検索結果を検索可能なPDF形式またはhOCR/HTML形式に直接エクスポートすることもできます。

出力

Tesseract C# vs IronOCR: .NETでの OCR 実装の完全ガイド : 画像 7 - 信頼度スコア出力

プロジェクトに最適なOCRソリューションはどれでしょうか?

最適な選択は、プロジェクトの制約、文書画像の品質に関する期待、および長期的なメンテナンスに関する考慮事項によって異なります。 どちらのライブラリも絶対的に優れているわけではなく、最終的には自分の具体的な要件に合ったツールを選ぶことが重要です。

Tesseractが最適な選択肢となる場合

Tesseractは、そのトレードオフが許容範囲内であるような、特定のシナリオにおいてはうまく機能します。

予算上の制約から、オープンソースのApache 2.0ライセンスのソリューションが必要となる。

  • クリーンで高品質なデジタル文書(デジタルネイティブのPDF、スクリーンショットなど)のみを処理します。 開発チームはC++の相互運用とネイティブライブラリ管理の経験を有しています。
  • プロジェクトの要件は、高度な機能を含まない基本的なOCRテキスト抽出に限定されます。
  • ターゲットデプロイメントは、依存関係を一貫して管理できる制御された環境です。

IronOCRがより良い結果をもたらす場合

IronOCRは、本番環境のワークロードにおいてより優れた選択肢です。

  • OCRの精度がビジネス成果に影響を与える本番環境向け.NETアプリケーションの構築
  • スキャン、写真、ファックス、モバイルキャプチャなど、さまざまな品質のドキュメントを処理します。
  • 一貫性が重要な複数のプラットフォームやクラウド環境への展開
  • 定期的なバグフィックスと機能アップデートを伴うプロフェッショナルなテクニカルサポートが必要。 設定や前処理の課題に取り組む時間的余裕のない開発スケジュール
  • 要件には、 PDFファイルの処理バーコードおよびQRコードの読み取り、または構造化された結果データが含まれます。

これまでTesseractベースのパイプラインを構築してきたチームで、移行を検討している場合は、 IronOCR移行ガイドで主要なAPIの違いと移行手順について説明しています。

次のステップは何ですか?

Google Tesseractは、優れたオープンソースのOCR基盤を提供しており、特定の用途においては依然として妥当な選択肢である。 しかし、その構成要件と限られた画像前処理機能は、実稼働アプリケーションにおける.NET開発に大きな負担をかける。 インストール時の問題のトラブルシューティング、前処理パイプラインの構築、クロスプラットフォーム展開の管理に費やす時間は、商用ライセンスを回避することで得られる節約額を上回ることが多い。

IronOCRはTesseractエンジンをベースに、インストール時の煩雑さを解消し、画像補正フィルターを追加し、 .NETプロジェクトが本番環境で必要とするProfessionalサポートを提供します。 最小限の設定で信頼性の高いOCR性能を求める.NET開発者にとって、 IronOCRは実際の文書の複雑さにすぐに対応できるソリューションです。

IronOCRのライセンスオプションを検討して、 .NETプロジェクトに最適なプランを見つけるか、無料トライアルを開始して、ご自身のドキュメントでライブラリを評価してください。

Tesseract C# vs IronOCR: .NETでの OCR 実装の完全ガイド : 画像 8 - ライセンス

ご注意Tesseract は、それぞれの所有者の登録商標です。 本サイトは、Tesseractと提携しているわけでも、Tesseractが推奨しているわけでも、Tesseractがスポンサーしているわけでもありません。 すべての製品名、ロゴ、およびブランドは各所有者の所有物です。 比較は情報提供のみを目的としており、執筆時点で公開されている情報を反映しています。

よくある質問

Tesseract C#とIronOCRの違いは何ですか?

Tesseract C#は、オープンソースのTesseract OCRエンジン for .NETラッパーです。このエンジンでは、手動によるTessdataファイルの管理、Visual C++ランタイムへの依存関係、外部の前処理パイプラインが必要です。IronOCRは、同じTesseractエンジンをベースに構築された商用.NET OCRライブラリで、組み込みの画像前処理、ネイティブPDFサポート、127以上のNuGet配布言語パック、そしてネイティブ依存関係を必要としないフルマネージドAPIを備えています。

C# .NETプロジェクトに Tesseract OCR をインストールするにはどうすればよいですか?

TesseractOCR NuGetパッケージをインストールし、tessdata GitHubリポジトリから適切な.traineddata言語ファイルをダウンロードして、実行時にアクセスできるtessdataフォルダに配置します。また、すべてのターゲットマシンにVisual C++再頒布可能パッケージがインストールされている必要があります。IronOCRは、追加の依存関係なしで、これを単一の`Install-Package IronOCR`コマンドに簡素化します。

IronOCR はPDF ファイルを直接処理できますか?

はい、 IronOCRは`OcrInput.LoadPdf()`を使用してネイティブにPDF入力をサポートしています。このライブラリは、別途PDF処理ライブラリを必要とせずに、スキャンされたPDFページからテキストを抽出します。Tesseractで同じ結果を得るには、追加のライブラリと手動での画像抽出が必要です。

IronOCR はLinux と macOS で動作しますか?

はい、 IronOCR はネイティブ依存関係のない完全に管理された.NETライブラリとして実行されるため、プラットフォーム固有の構成なしで、同じNuGetパッケージが Windows、Linux、macOS、Azure App Services、AWS Lambda、および Docker コンテナーで動作します。

Tesseract とIronOCRでは画像の前処理がどのように異なりますか?

Tesseractは、クリーンで方向が明確な画像向けに設計されており、ノイズや歪みのあるドキュメントの前処理にはImageMagickやOpenCVなどの外部ツールが必要です。IronOCRには、Deskew()、DeNoise()、EnhanceResolution()、Sharpen()、Contrast()、Invert()などの組み込みフィルターが搭載されており、追加のライブラリなしで一般的なドキュメント品質の問題に対処できます。

IronOCRで多言語サポートを追加するにはどうすればよいですか?

関連するIronOcr.Languages.{LanguageName} NuGetパッケージをインストールし、`ocr.Language = OcrLanguage.French`を設定して、多言語ドキュメントの場合は`ocr.AddSecondaryLanguage(OcrLanguage.German)`を呼び出します。Tesseractでは手動で.traineddataファイルを管理する必要がありますが、言語ファイルはNuGetパッケージの復元によって自動的にデプロイされます。

IronOCR はプレーンテキスト以外にどのような構造化データを返しますか?

IronOCR OcrResultオブジェクトは、ページ、段落、行、単語、文字への階層的なアクセスを提供します。各要素には、境界ボックスの座標と信頼度スコアが含まれます。IronOCRは、アーカイブおよび検索インデックス作成のために、結果を検索可能なPDFおよびhOCR/HTML形式でエクスポートすることもできます。

Tesseract C# は商用利用が無料ですか?

はい、Tesseract OCRエンジンはApache 2.0ライセンスに基づいており、商用利用は無料です。IronOCRは有料ライセンスの商用製品ですが、評価用に無料トライアルをご利用いただけます。

IronOCRではなく Tesseract を選択すべきなのはどのような場合ですか?

予算に無料のオープンソース ソリューションが必要で、ドキュメントがクリーンで高品質のデジタル ファイルであり、チームに C++ 相互運用性の経験があり、ネイティブ依存関係を一貫して管理できる制御された環境に展開する場合は、Tesseract を選択してください。

IronOCR はバーコードと QR コードの読み取りをサポートしていますか?

はい、 IronOCR には統合バーコードおよび QR コード読み取り機能が含まれていますが、Tesseract では追加のライブラリなしではこの機能は提供されません。

Kannaopat Udonpant
ソフトウェアエンジニア
ソフトウェアエンジニアになる前に、Kannapatは北海道大学で環境資源の博士号を修了しました。博士号を追求する間に、彼はバイオプロダクションエンジニアリング学科の一部である車両ロボティクスラボラトリーのメンバーになりました。2022年には、C#のスキルを活用してIron Softwareのエンジニアリングチームに参加し、IronPDFに注力しています。Kannapatは、IronPDFの多くのコードを執筆している開発者から直接学んでいるため、この仕事を大切にしています。同僚から学びながら、Iron Softwareでの働く社会的側面も楽しんでいます。コードやドキュメントを書いていない時は、KannapatはPS5でゲームをしたり、『The Last of Us』を再視聴したりしていることが多いです。

アイアンサポートチーム

私たちは週5日、24時間オンラインで対応しています。
チャット
メール
電話してね