フッターコンテンツにスキップ
IRONOCRの使い方

OCRソフトウェアデモのコード例を用いてIronOCRでOCRを実行する方法を探ります。

領収書とオートメーション

領収書は今日の急速な世界で不可欠です。 食料品を買ったり、レストランで食事をしたりする際、領収書は支出額を追跡し、予算計画に役立ちます。 同時に、食料品店は販売データを分析するために領収書スキャナーを使用し、需要を予測するのに役立てることができます。

しかし、領収書は読みづらく、合計がどのように計算されているかが不明瞭なことがあります。 予算目的での領収書からの手動データ入力は退屈でエラーが発生しやすく、特に多くの商品が含まれている場合に苦しいものです。 領収書をなくすと、月の予算を超えた理由が突然不明瞭になるときがあります。

この問題に対処するために、予算と金融アプリはOCR(光学文字認識)技術を採用しました。 領収書をスキャンしてデジタル形式に変換することで、OCRは人的エラーを最小限にし、データ入力を自動化し、経費を追跡し、購買行動に関する洞察を提供します。

OCR技術は、機械学習アルゴリズムを使用して画像からテキストや数字を特定し、抽出します。 しかし、OCRシステムは完璧ではなく、ぼやけや汚れなどのノイズの影響を受けた画像を扱う際に、誤ったデータの抽出につながることがあります。 したがって、効率的に処理し、読取り方法を最適化できる信頼性の高いOCRライブラリを選択することが重要です。

なぜIronOCRなのか?

IronOCRは<Tesseract Ocrエンジンのカスタマイズ版に基づくC#ライブラリです。以下はその主な特徴です:

  1. クロス互換性: .NETプラットフォームと完全に互換性があり、.NET 8、7、6、5、およびFramework 4.6.2以降を含みます。 Windows、macOS、Azure、およびLinuxをサポートしています。
  2. 柔軟性とスケーラビリティ: jpg、png、gifなどの様々な入力フォーマットを扱います。 C#のネイティブ"System.Drawing"オブジェクトとスムーズに統合します。
  3. 使いやすさとサポート: よく文書化されており、堅牢なAPIと24/5のサポートが利用可能です。
  4. 多言語対応: 最大125の言語をサポートしており、国際的なドキュメントに最適です。 領収書処理に不可欠な製品名と価格の認識に優れています。

領収書OCRの実装

ライセンスキー

IronOCRを使用する前に、ライセンスキーを取得してください。 無料試用版はこちらで利用可能です。

// Replace the license key variable with the trial key you obtained
IronOcr.License.LicenseKey = "REPLACE-WITH-YOUR-KEY";
// Replace the license key variable with the trial key you obtained
IronOcr.License.LicenseKey = "REPLACE-WITH-YOUR-KEY";
' Replace the license key variable with the trial key you obtained
IronOcr.License.LicenseKey = "REPLACE-WITH-YOUR-KEY"
$vbLabelText   $csharpLabel

例: スーパーマーケットの領収書の読み取り

IronOCRを使って、スマートフォンでスーパーマーケットの領収書をスキャンし、製品名や価格などのデータを抽出して合計購入額に基づいてポイントを獲得する方法を見てみましょう。

入力画像

スーパーマーケットの領収書の例

C#コード実装

using IronOcr;

class ReceiptScanner
{
    static void Main()
    {
        // Set the license key for IronOCR
        IronOcr.License.LicenseKey = "YOUR-KEY";

        // Instantiate OCR engine
        var ocr = new IronTesseract();

        using var inputPhoto = new OcrInput();
        inputPhoto.LoadImage("supermarketexample.jpg");

        // Perform OCR on the loaded image
        OcrResult result = ocr.Read(inputPhoto);

        // Output the text extracted from the receipt
        string text = result.Text;
        Console.WriteLine(text);
    }
}
using IronOcr;

class ReceiptScanner
{
    static void Main()
    {
        // Set the license key for IronOCR
        IronOcr.License.LicenseKey = "YOUR-KEY";

        // Instantiate OCR engine
        var ocr = new IronTesseract();

        using var inputPhoto = new OcrInput();
        inputPhoto.LoadImage("supermarketexample.jpg");

        // Perform OCR on the loaded image
        OcrResult result = ocr.Read(inputPhoto);

        // Output the text extracted from the receipt
        string text = result.Text;
        Console.WriteLine(text);
    }
}
Imports IronOcr

Friend Class ReceiptScanner
	Shared Sub Main()
		' Set the license key for IronOCR
		IronOcr.License.LicenseKey = "YOUR-KEY"

		' Instantiate OCR engine
		Dim ocr = New IronTesseract()

		Dim inputPhoto = New OcrInput()
		inputPhoto.LoadImage("supermarketexample.jpg")

		' Perform OCR on the loaded image
		Dim result As OcrResult = ocr.Read(inputPhoto)

		' Output the text extracted from the receipt
		Dim text As String = result.Text
		Console.WriteLine(text)
	End Sub
End Class
$vbLabelText   $csharpLabel
  1. IronOcrライブラリをインポートします。
  2. OCRエンジン(IronTesseract)をインスタンス化します。
  3. 領収書の画像をロードするために新しいOcrInputを作成します。
  4. IronTesseractReadメソッドを使用してテキストを抽出します。
  5. コンソールに結果を出力します。

デバッグと信頼性テスト

一貫性を確保するため、抽出されたデータの信頼レベルを確認します。この信頼レベルはその正確さを決定します。

OcrResult result = ocr.Read(inputPhoto);
string text = result.Text;
Console.WriteLine(text);
Console.WriteLine($"Confidence: {result.Confidence}");
OcrResult result = ocr.Read(inputPhoto);
string text = result.Text;
Console.WriteLine(text);
Console.WriteLine($"Confidence: {result.Confidence}");
Dim result As OcrResult = ocr.Read(inputPhoto)
Dim text As String = result.Text
Console.WriteLine(text)
Console.WriteLine($"Confidence: {result.Confidence}")
$vbLabelText   $csharpLabel

Confidenceプロパティは統計的な正確性の尺度を提供します。 この範囲は0(低信頼度)から1(高信頼度)です。 これらの信頼レベルに基づいてデータ処理戦略を調整し、信頼性を確保します。

ノイズ除去とフィルタリング

画像処理を行う前に、以下の方法を使用して画像をクリーニングし、OCR結果を向上させるための準備をします:

inputPhoto.DeNoise();      // Removes noise from the image
inputPhoto.ToGrayScale();  // Converts image to grayscale
inputPhoto.DeNoise();      // Removes noise from the image
inputPhoto.ToGrayScale();  // Converts image to grayscale
inputPhoto.DeNoise() ' Removes noise from the image
inputPhoto.ToGrayScale() ' Converts image to grayscale
$vbLabelText   $csharpLabel

これらの前処理ステップはデータ抽出の精度を向上させます。

結論

IronOCR

領収書OCR技術は、予算作成や取引詳細の検証による不正防止、自動データ収集の支援など、企業や個人にとって貴重な資産です。 IronOCRはその正確性、速度、既存プラットフォームとの統合の容易さで際立ち、領収書スキャニングソリューションを実装しようとする開発者に最適な選択肢を提供します。

IronOCRの試用ライセンスを試して、その機能を探索してください。

よくある質問

OCR技術はスーパーマーケットのレシート処理をどのように自動化できますか?

OCR技術は、スキャンされたレシートをデジタルデータに変換することでスーパーマーケットのレシート処理を自動化できます。IronOCRを使用することで、レシートを読み取ってテキストを自動的に抽出でき、手動でのデータ入力の必要性を減らし、人為的なミスを最小限に抑えられます。

IronOCRはスーパーマーケットのレシート処理にどのような利点を提供しますか?

IronOCRは、クロスプラットフォーム互換性、複数の画像形式のサポート、簡単な統合のための強力なAPI、125言語までの処理能力など、スーパーマーケットのレシート処理にいくつかの利点を提供し、国際的なレシートに理想的となっています。

スーパーマーケットのレシートを読み取るためにIronOCRをC#アプリケーションにどのように統合しますか?

IronOCRをC#アプリケーションに統合するには、ライセンスキーを取得し、IronOcrライブラリをインポートして、IronTesseractエンジンを使用してスーパーマーケットのレシートの画像からテキストを読み取り、抽出します。

レシートスキャンでOCRの精度を向上させる前処理技術は何ですか?

IronOCRは、DeNoiseToGrayScaleなどの前処理技術を提供し、OCRの精度を向上させます。これらの技術は、画像のノイズを除去し、画像をグレースケールに変換することで、レシートからのテキスト抽出を強化します。

OCRで信頼性テストが重要なのはなぜで、どのように適用されますか?

IronOCRにおける信頼性テストは、抽出されたデータの正確性を測定するため重要であり、値は0(低)から1(高)までの範囲です。これにより、ユーザーはOCRの結果の信頼性を評価し、データ処理の決定に役立てることができます。

IronOCRは多言語スーパーマーケットレシートを処理できますか?

はい、IronOCRは最大125言語でOCR処理をサポートしており、多言語スーパーマーケットレシートを効率的に処理することができます。

IronOCRに興味のある開発者向けに試用版はありますか?

はい、IronOCRの無料トライアルが開発者向けに用意されており、購入前にその機能や能力を探索できます。

IronOCRはレシートスキャンにどのプラットフォームをサポートしていますか?

IronOCRは.NETプラットフォーム、包括.NET 8, 7, 6, 5, およびFramework 4.6.2以降と互換性があり、Windows、macOS、Azure、およびLinux環境での操作をサポートしています。

IronOCRはアプリケーションにレシートスキャンを統合するためにどのように適していますか?

IronOCRは、その高精度、使いやすさ、クロスプラットフォームサポート、さまざまな入力形式および言語をシームレスに処理する能力により、アプリケーションにレシートスキャンを統合するのに適しています。

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