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

パスポートOCR SDK(開発者向けチュートリアル)

パスポートは個人のアイデンティティです; 私たちはパスポートを使って旅行したり、生活に欠かせないものを登録したりします。 しかし、パスポートのフォーマットは必ずしも読みやすいとは限りません。 旅行やレジャーのホリデーシーズンに、突然多くの旅行者が現れることを想像してみてください。 入国管理局の職員は、手作業によるデータ入力で大量のデータを処理し、正しい情報を手作業で取り出すことができるでしょうか?

そのため、多くのアプリケーションや企業は、開発者が印刷されたテキストやデジタル画像をすばやく抽出できる光学式文字認識(OCR)に注目しています。

同様に、パスポートOCRは、光学式文字認識(OCR)ソフトウェアを使用して、パスポートから意味のある情報を抽出する技術です; また、すべてのパスポートの機械可読ゾーンを利用し、入国審査を通過しようとする個人を迅速に識別するための情報を取得します。 パスポート情報を迅速に認識する必要があるシナリオや、パスポートデータの抽出を自動化するプロセスでは、パスポートOCRは不可欠であり、空港や入国審査における効率性とスピードの要となります。

パスポートOCRソフトウェアと技術は、長年にわたってますます発展していますが、さまざまな要因が文書のスキャンプロセスに影響を与える可能性があります。 パスポートにノイズや汚れがあるデジタル画像は、パスポートの精度に大きく影響します。 さらに、OCRライブラリは、機械可読ゾーンが一意の構造化データセットであるため、パスポートを操作する際に混乱することがあります。 開発者は、データを抽出することはできても、パラメータを独自に並べ替える必要があるかもしれません。 しかし、IronOCRでは、特別なメソッドがパスポートを読むために最適化されています; その結果、開発者は情報を素早く入手して操作できるようになり、大量のスキャンや自動化に最適です。

この記事では、IronOCRを使用してパスポート情報を取得・操作し、データ抽出を自動化する方法について簡単に説明し、IronOCRがパスポートとどのように相互作用するかについてさらに詳しく説明する。

IronOCR: A C# OCR Library

パスポートOCR SDK(開発者向けチュートリアル):図1 - IronOCR: C# OCRライブラリ.

IronOCRは、すべてのOCR関連のニーズに使いやすいメソッドと柔軟な機能を提供するC#ライブラリです。 IronOCRは、標準的な技術に加え、開発者がTesseractをフルに活用し、カスタマイズすることを可能にします。

以下は、最も注目すべき機能の簡単な概要です:

1.クロスコンパチビリティ: IronOCRは、.NET 8、7、6、5を含むほとんどの.NETプラットフォームと互換性があり、.NET Framework 4.6.2以降をサポートしています。 このライブラリでは、Windows、macOS、Azure、さらにはLinuxまで、すべてのオペレーティングシステムをサポートしているため、開発者は相互互換性を心配する必要はありません。 2.柔軟性: OCR入力は多くのフォーマットで提供されるため、ライブラリが真に柔軟であるためには、あらゆる種類のフォーマットを処理する必要があります。 IronOCRはすべての一般的な画像フォーマット(jpg, png, gif)を受け入れると同時に、C#のネイティブ "System.Drawing.Objects "をサポートし、既存のコードベースへの統合を容易にします。 3.サポートと使いやすさ:IronOCRはよく文書化されており、広範なAPIとあらゆる機能を示すチュートリアルがあります。 さらに、開発者が常にサポートされるように、24時間365日のサポートがあります。 4.多言語サポート:OCRは最大125言語をサポートし、カスタム言語もサポートします。

IronOCRでパスポートを読む

</h3

ライセンスキー

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がパスポートの画像を取り込み、ライブラリーのパスポートOCR SDKを使用して関連するすべての情報を抽出する方法を示しています。

入力イメージ

パスポートOCR SDK(開発者向けチュートリアル):図2 - 入力画像</a

using IronOcr;
using System;

class Program {
    public static void Main() {
        // Instantiate OCR engine
        var ocr = new IronTesseract();
        using var inputPassport = new OcrInput();
        inputPassport.AddImage("Passport.jpg");

        // Perform OCR to read the passport
        OcrResult result = ocr.Read(inputPassport);

        // Output passport information
        Console.WriteLine("Given Names: " + result.Passport?.GivenNames);
        Console.WriteLine("Country: " + result.Passport?.Country);
        Console.WriteLine("Passport Number: " + result.Passport?.PassportNumber);
        Console.WriteLine("Surname: " + result.Passport?.Surname);
        Console.WriteLine("Date of Birth: " + result.Passport?.DateOfBirth.ToString("yyyy-MM-dd"));
        Console.WriteLine("Date of Expiry: " + result.Passport?.DateOfExpiry.ToString("yyyy-MM-dd"));
    }
}
using IronOcr;
using System;

class Program {
    public static void Main() {
        // Instantiate OCR engine
        var ocr = new IronTesseract();
        using var inputPassport = new OcrInput();
        inputPassport.AddImage("Passport.jpg");

        // Perform OCR to read the passport
        OcrResult result = ocr.Read(inputPassport);

        // Output passport information
        Console.WriteLine("Given Names: " + result.Passport?.GivenNames);
        Console.WriteLine("Country: " + result.Passport?.Country);
        Console.WriteLine("Passport Number: " + result.Passport?.PassportNumber);
        Console.WriteLine("Surname: " + result.Passport?.Surname);
        Console.WriteLine("Date of Birth: " + result.Passport?.DateOfBirth.ToString("yyyy-MM-dd"));
        Console.WriteLine("Date of Expiry: " + result.Passport?.DateOfExpiry.ToString("yyyy-MM-dd"));
    }
}
Imports IronOcr
Imports System

Friend Class Program
	Public Shared Sub Main()
		' Instantiate OCR engine
		Dim ocr = New IronTesseract()
		Dim inputPassport = New OcrInput()
		inputPassport.AddImage("Passport.jpg")

		' Perform OCR to read the passport
		Dim result As OcrResult = ocr.Read(inputPassport)

		' Output passport information
		Console.WriteLine("Given Names: " & result.Passport?.GivenNames)
		Console.WriteLine("Country: " & result.Passport?.Country)
		Console.WriteLine("Passport Number: " & result.Passport?.PassportNumber)
		Console.WriteLine("Surname: " & result.Passport?.Surname)
		Console.WriteLine("Date of Birth: " & result.Passport?.DateOfBirth.ToString("yyyy-MM-dd"))
		Console.WriteLine("Date of Expiry: " & result.Passport?.DateOfExpiry.ToString("yyyy-MM-dd"))
	End Sub
End Class
$vbLabelText   $csharpLabel

コードの説明

1.ライブラリのインポート:まずIronOCRをコードベースと他の必要なライブラリにインポートします。 2.OCRエンジンの初期化:新しいIronTesseractオブジェクトを作成し、OCRエンジンを初期化します。 3.パスポート画像のロード:次に、新しいOcrInputを作成し、AddImage()を使用してパスポートを含む画像をロードします。 4.OCRを使用してパスポートを読み取る: Read()メソッドを使用して、入力画像にOCR操作を実行し、結果を保存します。 5.出力結果:私たちは、名前、国、パスポート番号、姓、生年月日、有効期限などの抽出されたパスポート情報を出力します。

コンソール出力

パスポートOCR SDK(開発者チュートリアル):図3 - コンソール出力</a

機械可読ゾーン

IronOCRは国際民間航空機関(ICAO)標準に従って、パスポートの下2行から機械可読ゾーン(MRZ)情報を抽出することができます。 MRZデータは2つの行で構成され、それぞれに固有の情報が含まれています。

以下に簡単な表を示します:

パスポートOCR SDK(開発者チュートリアル):図4 - MRZの表

パスポート OCR とデバッグの課題

</p

デジタル画像をスキャンする際、画質は常に問題となります。 歪んだ画質では情報が不明瞭になり、データの正確性を確認することが難しくなります。 さらに、パスポートのようなミッションクリティカルな情報を扱う場合、開発者はデータセキュリティとコンプライアンスを考慮しなければなりません。

IronOCRはまた、デバッグと相互作用情報のためのコンセプトを紹介する方法を提供します。 これらの方法によって、開発者はトラブルシューティングを行い、抽出されたデータに自信を持つことができます。

以下はその簡単な例です:

using IronOcr;
using System;

class DebugExample {
    public static void Main() {
        // Instantiate OCR engine
        var ocr = new IronTesseract();
        using var inputPassport = new OcrInput();
        inputPassport.AddImage("Passport.jpg");

        // Perform OCR
        OcrResult result = ocr.Read(inputPassport);

        // Output Confidence level and raw extracted text
        Console.WriteLine("OCR Confidence: " + result.Confidence);
        Console.WriteLine("Extracted Text: ");
        Console.WriteLine(result.Text);
    }
}
using IronOcr;
using System;

class DebugExample {
    public static void Main() {
        // Instantiate OCR engine
        var ocr = new IronTesseract();
        using var inputPassport = new OcrInput();
        inputPassport.AddImage("Passport.jpg");

        // Perform OCR
        OcrResult result = ocr.Read(inputPassport);

        // Output Confidence level and raw extracted text
        Console.WriteLine("OCR Confidence: " + result.Confidence);
        Console.WriteLine("Extracted Text: ");
        Console.WriteLine(result.Text);
    }
}
Imports IronOcr
Imports System

Friend Class DebugExample
	Public Shared Sub Main()
		' Instantiate OCR engine
		Dim ocr = New IronTesseract()
		Dim inputPassport = New OcrInput()
		inputPassport.AddImage("Passport.jpg")

		' Perform OCR
		Dim result As OcrResult = ocr.Read(inputPassport)

		' Output Confidence level and raw extracted text
		Console.WriteLine("OCR Confidence: " & result.Confidence)
		Console.WriteLine("Extracted Text: ")
		Console.WriteLine(result.Text)
	End Sub
End Class
$vbLabelText   $csharpLabel

デバッグ コードの説明

1.確信度: OcrResultConfidence プロパティは、OCR の統計的な精度の確信度を表す浮動小数点数で、すべての文字の平均として計算されます。 値が低いほど、パスポートの画像がぼやけていたり、余分な情報が含まれている可能性があります。 1は最も高い信頼度を表し、0は最も低い信頼度を表します。 2.テキスト: OcrResultTextプロパティは、パスポート画像から抽出された未処理のテキストを保持します。 開発者は、等しいアサーションを行うことによって、パスポート画像から抽出されたテキストを検証するためのユニットテストでそれを使用することができます。

結論

パスポートOCR SDK(開発者向けチュートリアル):図5 - IronOCR.

Passport OCR テクノロジーは、データ抽出を自動化し、業務効率を向上させることで、文書処理を大幅に強化します。 本人確認やKYCのプロセスを合理化し、機密性の高い個人情報を扱いながら高い精度を確保します。 入国管理局や空港は、パスポートOCR APIとしてIronOCRを選択することで、処理時間を短縮し、ワークフローの効率を改善することができます。

IronOCRは、その使いやすいメソッドによって開発者に柔軟性と拡張性を提供します。 これにより、開発者はOcrResultオブジェクトを通して素早く情報を並べ替えることができます。 さらに、IronOCRは開発者が製品の単体テストで使用するために、信頼度レベルや解析されていない生のテキストを含むデバッグ・ツールを提供します。 IronOCRはまた、より高度な使い方のために、パスポート画像入力をメソッドに通す前に消去することで、デジタルノイズを手動で最小化します。

お気軽にIronOCRの無料トライアルライセンスページをご利用ください。

よくある質問

C# でパスポートから情報を抽出するために OCR をどのように使用できますか?

パスポートの画像を処理し、強力な OCR 機能を使用して機械で読み取り可能なゾーンからデータを抽出することで、IronOCR を使用してパスポート情報を抽出できます。

パスポートデータ処理に OCR を使用する利点は何ですか?

パスポートデータ処理のための OCR は、情報の抽出を自動化し、空港や国境管理といった高トラフィックエリアで効率と正確さを飛躍的に向上させます。

OCR 技術で複数の言語を処理することは可能ですか?

はい、IronOCR は最大 125 の言語をサポートしており、カスタム言語の追加も可能で、国際文書の処理において非常に多用途です。

IronOCR はパスポートからの正確なデータ抽出をどのように確保しますか?

IronOCR は OcrResult に「信頼度」プロパティを提供し、統計的な精度を示し、開発者が抽出されたデータの信頼性を確認できるようにします。

パスポートスキャン用に IronOCR がサポートする画像形式は何ですか?

IronOCR は jpg、png、gif などの一般的な画像形式をすべてサポートし、ネイティブ C# System.Drawing.Objects とも連携でき、簡単に統合が可能です。

パスポート OCR の実装で開発者が直面する可能性のある課題は何ですか?

課題には低品質な画像の取り扱い、データセキュリティの確保、敏感なパスポート情報の取り扱いのコンプライアンスが含まれます。

開発者はパスポート OCR に IronOCR を使用することをどのように始めればよいですか?

開発者はプロバイダーのウェブサイトから試用ライセンスキーを取得し、詳細なドキュメントに従って C# アプリケーションに統合することで IronOCR の利用を開始できます。

IronOCR と互換性のあるプラットフォームは何ですか?

IronOCR は、.NET 8、7、6、5 を含むほとんどの .NET プラットフォームに対応しており、.NET Framework 4.6.2 以降と互換性があり、Windows、macOS、Azure、Linux などの主要なオペレーティングシステムをサポートしています。

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