IRONSOFTWAREHOME
IRONOCRの使い方

How to OCR License Plate in C# (Tutorial)

Kannaopat Udonpant
Kannapat Udonpant
Updated: 2026年1月18日

ナンバープレート認識は、交通管理や駐車システムから法執行や通行料金ソリューションまで、多くの業界で不可欠なツールとなっています。 光学文字認識(OCR) テクノロジを活用することで、開発者は画像からテキストを効率的に抽出し、ナンバープレートの識別プロセスを自動化できます。 このチュートリアルでは、強力な C# OCR ライブラリであるIronOCR を使用して、画像からナンバープレートを正確に読み取る方法を説明します。 IronOCR は、コンピューター ビジョン タスク用の OpenCV ソース コードとシームレスに統合されており、複雑な画像ソースやノイズの多い画像ソースからでもテキストを認識するための堅牢なソリューションを提供します。 このガイドでは、きれいなナンバープレート画像を扱う場合でも、車両全体の写真を扱う場合でも、最新の OCR 技術を使用して信頼性の高いナンバープレート認識システムを構築する手順を説明します。

ナンバープレート認識C#の使い方

1.ナンバープレート認識を使用するためのC#ライブラリをインストールする 2. ナンバープレート画像を新しいOcrImageInputインスタンスにインポートします。 3. C# でのテキスト抽出を改善するために画像フィルターを適用します。 4. 写真内のナンバープレート領域を指定して認識速度を向上します。 5. OcrLicensePlateResultインスタンスを使用して、抽出したテキストを印刷します。

IronOCRを使い始める

IronOCR は、Tesseract OCR エンジン上に構築された C# OCR ライブラリで、.NET アプリケーションのテキスト認識プロジェクトに高い精度と効率をもたらすように特別に設計されています。 ノイズの多い画像や低品質の画像の処理に最適な IronOCR には、自動ノイズ低減やグレースケール変換などの強力な画像前処理機能が含まれており、テキスト抽出の明瞭性が向上します。

IronOCR の優れた機能には次のようなものがあります:

-**高いOCR精度:**さまざまな言語やフォントに最適化されているIronOCRは、複雑なテキストや歪んだテキストを扱う場合でも、優れた精度を発揮します。 -**画像とPDFのサポート:**複数の画像形式とPDFファイルからテキストを読み取ることができるため、さまざまな種類の文書に対応できます。

  • OpenCVとの統合: OpenCVのサポートにより、 IronOCRは画像内の特定のテキスト領域を検出するなどのコンピュータビジョンタスクを実行できます。これは、ナンバープレート認識に特に役立ちます。 -**高度な前処理:**認識精度を向上させるために、グレースケール変換、回転、歪み補正、コントラスト強調などのフィルターが含まれています。 -**柔軟な入力オプション:**複数ページの文書や調整可能な領域をサポートし、開発者は選択した領域にOCR処理を集中させることで、より迅速かつ的確な結果を得ることができます。

これらの機能により、IronOCR は、精度、柔軟性、および他のコンピューター ビジョン ツールとの統合の容易さが求められる OCR アプリケーションを構築するための強力なソリューションとなります。

Visual Studioプロジェクトを作成する

まず、Visual Studio を開いて、"新しいプロジェクトの作成"を選択します。 これにより、ビルドするプロジェクトの種類を選択できるページが表示されます (この場合は、コンソール アプリケーションを作成します)。 希望するアプリケーションの種類を選択し、"次へ"をクリックします。

Visual Studioプロジェクトタイプ

次に、プロジェクトに名前を付け、保存する場所を選択します。

プロジェクト名と場所

最後に、ターゲットの .NET Frameworkを選択し、"作成"ボタンをクリックします。 これにより、以下に示すようにプロジェクトが作成されます。

作成されたプロジェクト

次のステップは、ナンバープレートの処理を開始できるように IronOCR ライブラリをインストールすることです。

IronOCRのインストール

C# プロジェクトで IronOCR を使い始めるには、NuGet から IronOCR パッケージをインストールする必要があります。 IronOCR は .NET Framework および .NET Core と互換性があるため、さまざまな .NET アプリケーションに簡単に統合できます。

ステップ1: パッケージマネージャーコンソールを開く

Visual Studio で、 [ツール] > [NuGet パッケージ マネージャー] > **[パッケージ マネージャー コンソール]**に移動します。

ステップ2: IronOCRパッケージをインストールする

パッケージ マネージャー コンソールに次のコマンドを入力します。

PM > Install-Package IronOcr

このコマンドは、プロジェクトで OCR 関数を実行するために必要なすべての依存関係を含む IronOCR ライブラリをインストールします。 当社のアプリケーションはコンピュータビジョンを使用したナンバープレート検出のような高度な機能を必要とするため、オプションのIronOcr.ComputerVision.Windowsパッケージをこの方法でインストールすることもできます。

PM > Install-Package IronOcr.ComputerVision.Windows

強力なReadLicensePlateメソッドを使用できるように、 IronOcr.Extensions.AdvancedScan拡張機能がインストールされていることを確認してください。

PM > Install-Package IronOcr.Extensions.AdvancedScan

または、 [ツール] > [NuGet パッケージ マネージャー] > **[ソリューションの NuGet パッケージの管理]**を使用してパッケージをインストールし、必要なパッケージを検索することもできます。

NuGetパッケージマネージャー

コードの設定

最後に、必要なインポートと using ステートメントをコードの先頭に追加する必要があります。

using IronOcr;

光学式文字認識によるナンバープレートの読み取り

このセクションでは、画像からテキストを抽出することに優れた Tesseract OCR エンジンであるIronOCRを使用して、ナンバープレートを読み取るプログラムを作成します。 車両検出を実装するために、追加の機械学習ライブラリを組み込むこともできます。 特に、IronOCR は主要なオープンソース コンピューター ビジョン ライブラリである OpenCV と統合されており、車両やナンバー プレートの識別などのオブジェクト検出タスクを実行できます。

ナンバープレート画像の例

私たちは次のナンバープレートを扱います:

ナンバープレートの例

ナンバープレートのOCRを実行するサンプルコード

using IronOcr;

var ocr = new IronTesseract();

using (var input = new OcrImageInput("licensePlate.jpeg"))
{
    // Fixes digital noise and makes the image easier to read
    input.DeNoise();
    input.ToGrayScale();

    // Reads the license plate information and stores it for further use
    OcrLicensePlateResult result = ocr.ReadLicensePlate(input);

    // Saves the license plate text to a string variable
    string output = result.Text;

    // Outputs the license plate text to the console
    Console.WriteLine(output);
}

OCR出力

コードの内訳:

  • 初期化: IronTesseractクラスの新しいインスタンスを作成します。

  • 画像入力: OcrImageInputオブジェクトを作成します。 このオブジェクトは、OCR 処理用の画像データを保持するように設計されています。

-画像前処理:

  • input.DeNoise();はデジタルノイズリダクションフィルターを適用して画像の品質を向上させ、OCRエンジンがテキストを読み取りやすくします。

  • input.ToGrayScale();は画像をグレースケールに変換し、認識精度と処理速度を向上させることができます。

  • ナンバープレート認識: OcrLicensePlateResultオブジェクトに格納します。

  • 出力ストレージ: ナンバープレートテキストは、outputに保存されます。

  • コンソール出力: 最後にConsole.WriteLine(output);は抽出したナンバープレートテキストをコンソールに印刷して確認します。

車のナンバープレートのスキャン

ナンバープレートだけではなく車全体の画像がある場合は、ナンバープレートの領域に焦点を合わせるために長方形の領域を指定できます。 System.Drawing.Rectangleを使用して、この領域をピクセル単位で定義できます。

元の画像

この例では、次の画像ファイルを使用します。

ナンバープレートのある車

関心領域を指定することにより、処理速度が向上し、不要なテキストの抽出を回避できます。

実装コード

using IronOcr;
using System.Drawing;

var ocr = new IronTesseract();

using (var input = new OcrInput())
{
    var contentArea = new Rectangle(x: 252, y: 282, width: 148, height: 47);
    input.LoadImage("CarPlate.jpeg", contentArea);
    OcrLicensePlateResult result = ocr.ReadLicensePlate(input);
    Console.WriteLine(result.Text);
}

フォーカスしたOCR出力

コードの内訳:

  • 初期化: IronTesseractクラスの新しいインスタンスを作成します。
  • OCR入力: OcrInputオブジェクトを作成します。
  • 関心領域の定義: var contentArea = new Rectangle(x: 252, y: 282, width: 148, height: 47);は画像内の長方形領域(contentArea)を定義します。 この四角形は、ナンバープレートが配置されると予想される座標と寸法 (幅と高さ) を指定します。
  • 画像の読み込み: input.LoadImage("CarPlate.jpeg", contentArea);は指定された画像ファイル("CarPlate.jpeg")を読み込み、指定された長方形(contentArea)に焦点を合わせ、OCR処理をその特定の領域に限定します。
  • ナンバープレートの読み取り: ReadLicensePlateメソッドを呼び出します。
  • 出力: Console.WriteLine(result.Text);はナンバープレートから認識されたテキストをコンソールに印刷します。

自動ナンバープレート認識

IronOCR は OpenCV を活用し、さまざまな画像処理技術を使用して画像内のテキスト領域を識別します。 この機能により、プログラムは画像内のテキスト領域を見つけて、Tesseract を使用してそれらの領域を読み取ることで、ナンバープレートを検出できます。

インストール

ナンバープレート検出モデルを有効にするには、パッケージ マネージャー コンソールから必要なパッケージをインストールします。

ナンバープレートの自動領域検出を使用する例:

var ocr = new IronTesseract();

using (var input = new OcrImageInput("CarPlate.jpeg"))
{
    input.FindTextRegion();
    OcrLicensePlateResult result = ocr.ReadLicensePlate(input);
    Console.WriteLine(result.Text);
}

自動OCR出力

コードの内訳:

  • 初期化: Tesseractエンジンを使用した光学文字認識(OCR)に使用されるIronTesseractクラスのインスタンスが作成されます。
  • 画像入力: 指定された画像ファイル("CarPlate.jpeg")を持つ新しいOcrImageInputオブジェクトがインスタンス化されます。 このオブジェクトはOCRプロセスの入力として機能し、適切なリソース管理を確保するためにusing文で囲まれています。
  • テキスト領域検出: inputオブジェクトに対して呼び出されます。 この方法では、コンピューター ビジョン技術を使用して、特にナンバー プレートを対象に、画像内のテキストが含まれる可能性のある領域を自動的に識別します。
  • ナンバープレート認識: ReadLicensePlateメソッドが呼び出され、検出されたテキスト領域を分析してナンバープレート番号を抽出します。 結果は認識されたテキストと関連するメタデータを保持するOcrLicensePlateResultオブジェクトに保存されます。 -**出力:**検出されたナンバープレートのテキストがコンソールに表示され、ユーザーは抽出されたナンバープレート番号を確認できます。

IronOCRライセンス

IronOCR を自分で試してみたい方のために、IronOCR では、提供されるすべてのツールにアクセスできる無料トライアルを提供しています。つまり、ライセンスを購入する前に、独自のプロジェクトで試すことができます。 無料トライアル期間が終了すると、 IronOCR のライセンスは、ライト ライセンスの $999 から開始されます。 また、ロイヤリティフリーの再配布範囲、中断のないサポート、継続的な製品アップデートなどのオプションのアドオンも追加料金で提供しています。

さらに、PDF 関連のタスクには IronPDF、Word 文書を操作するには IronWord など、IronOCR 以外の Iron Software 製品も使用する必要がある場合は、Iron Software ではIron Suiteも提供されており、手頃な価格ですべてのツールにアクセスできる優れた方法です。

結論

このガイドでは、 IronOCRを使用して C# で信頼性の高いナンバープレート認識システムを構築する方法について説明しました。 強力なテキスト抽出機能と OpenCV との統合により、IronOCR は車両画像からの正確なテキスト認識を必要とするアプリケーションに効率的で使いやすいソリューションを提供します。 画像の前処理から特定の検出領域の設定まで、IronOCR は交通情報や監視映像のナンバープレートなど、ノイズの多い画像や複雑な画像に合わせたツールを使用して OCR プロセスを簡素化します。

交通監視、駐車違反取り締まり、または自動ナンバープレート認識を必要とするアプリケーションを開発している場合でも、IronOCR は .NET 環境にシームレスに統合される包括的なライブラリを提供します。 これらの手順に従うことで、さまざまな実際のシナリオで効率と精度を向上させる OCR を活用したソリューションを展開できるようになります。 領域選択やノイズ低減などの追加機能により、IronOCR はナンバープレート認識タスクを最適化し、最良の結果を実現します。

関連する記事

Key in blue circle

無料の30日間トライアルキーをすぐに入手してください。

Your trial license will be sent to your email address

制限なし。100% ロック解除済み。クレジットカード不要。

bullet_checkedクレジットカードやアカウントの作成は不要です。制限なし。100% ロック解除済み。クレジットカード不要。
  • Logo Aetna
  • Logo NASA
  • Logo GE
  • Logo Porsche
  • Logo USDA
  • Logo Qatar
Join Millions of Engineers who’ve tried IronPDF
義務のない相談を受ける
下記のフォームを記入するか、sales@ironsoftware.comにメールしてください。
あなたの詳細は常に守秘されます。
世界中の数百万人のエンジニアから信頼されています。
ライセンスはより安く
あなたの無料30日間の試用キーをすぐに入手。
クレジットカードやアカウントの作成は不要です。