IRONSOFTWAREHOME

IronOCRでナンバープレートをC#で読む方法

Curtis Chau
Curtis Chau
Updated: 2026年6月4日

IronOCR の ReadLicensePlate メソッドは、先進的な OCR テクノロジーを使用して、車両画像からナンバープレート番号を自動的に抽出します。 この単一のメソッド呼び出しは、ナンバープレートを高精度で処理し、自動車両管理システムのためにプレートテキストと信頼度スコアの両方を返すことができます。

大量の車両画像を管理する場合、ナンバープレートを手動で読み取るのは時間がかかり、人為的エラーが発生しやすくなります。 IronOCR のようなツールを使用してこのプロセスを自動化すると、より効率的で正確なソリューションが得られます。 IronOCR の ReadLicensePlate メソッドは、画像からナンバープレート番号をプログラム的に抽出し、データの精度を向上させつつ、大幅な時間を節約できます。

このガイドでは、IronOCRをナンバープレート認識用に使用する方法を、例やカスタマイズ可能な設定を通して説明し、プロセスをシームレスにします。 これらの方法を活用することで、開発者はナンバープレートの読み取りを自動化し、駐車場管理、通行料徴収、セキュリティ監視などのタスクをより効率的に行うことができます。

この機能を使用するには、IronOcr.Extension.AdvancedScan パッケージもインストールする必要があります。

クイックスタート: ナンバープレート番号を瞬時に抽出

IronOCR の ReadLicensePlate を使用して、プログラム的に任意の画像からナンバープレート テキストを抽出できます。 画像を読み込んでメソッドを呼び出すだけで、すぐにプレート番号と信頼度の両方を取得できます。

  1. 1Install IronOCR with NuGet Package Manager

    PM > Install-Package IronOcr

  2. 2このコード スニペットをコピーして実行します。

    OcrLicensePlateResult result = new IronTesseract().ReadLicensePlate(new OcrInput("plate.jpg"));
    C#
  3. 3実際の環境でテストするためにデプロイする

    今日プロジェクトで IronOCR を使い始めましょう無料トライアル
    arrow pointer

C#でナンバープレートを読むには?

IronOCRでナンバープレートを読むには、以下のステップを適用します:

  • 入力に対してOcrInput をパラメーターとして取る ReadLicensePlate メソッドを利用します。 このメソッドは、図書館の標準のReadと比較して、ナンバープレートに対してより最適化されています。
  • オプションとして、IronOCRがナンバープレート中に存在しうる特定の文字をホワイトリストに登録し、ナンバープレート番号の処理を高速化するように設定することができます。

[{私:(

  • この方法は現時点では、英語、中国語、日本語、韓国語、ラテンアルファベットのスクリプトでのみ機能します。
  • .NET Framework で詳細スキャンを使用するには、プロジェクトを x64 アーキテクチャで実行する必要があります。 )}]

入力ナンバープレートはどのように見えますか?

カリフォルニアのナンバープレート"8TRS777"を示す例 - ナンバープレート読み取りデモンストレーション

ナンバープレートの OCR を設定するには?

using IronOcr;
using System;

var ocr = new IronTesseract();
ocr.Configuration.WhiteListCharacters = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_";

using var inputLicensePlate = new OcrInput();
inputLicensePlate.LoadImage("plate.jpeg");

// Read license plate
OcrLicensePlateResult result = ocr.ReadLicensePlate(inputLicensePlate);

// Retrieve license plate number and confidence value
string output = $"{result.Text}\nResult Confidence: {result.Confidence}";

Console.WriteLine(output);

どのような結果が期待できますか?

デバッグコンソールが示すナンバープレートOCR結果:カリフォルニア州、プレート8TRS777、信頼度95.87%

このコードは、画像をReadLicensePlateメソッドを使用してナンバープレートからテキストを抽出する方法を示しています。 出力には、入力画像に表示されているナンバープレートに一致する抽出されたテキストと、OCR の精度を示す信頼度レベルが表示されます。

テキスト: OCR 入力から抽出されたテキスト。

信頼性: これは、各文字の平均の統計的精度信頼性を示すdoubleプロパティであり、1が最高、0が最低です。

OCR プロセスをより正確に制御するには、高度な構成オプションを調べて、文字認識設定を微調整することができます。


車の画像からナンバープレートを抽出するにはどうすればよいですか?

この方法は、ナンバープレートの付いた車が写っている画像にも有効です。 コードは上のものと同じですが、入力画像が変更されています。 画像内でナンバープレートが配置されている領域のピクセル座標を抽出することもできます。

どのようなタイプの車の画像が最も効果的ですか?

ダークグレイのシュコダ車、マハラシュトラナンバープレートMH 20 EE 7602、レンガ舗道に駐車している

最適な結果を得るためには、車の画像に以下のような特徴があることを確認してください:

  • ナンバープレートの明確な視認性
  • 良好な照明条件(まぶしさや影を避けること)
  • 最小限の角度の歪み
  • 適切な解像度(低解像度の画像については、DPI設定の調整を検討してください。)

ナンバープレートの位置座標を取得するにはどうすればよいですか?

using IronOcr;
using IronSoftware.Drawing;
using System;

var ocr = new IronTesseract();
using var inputLicensePlate = new OcrInput();
inputLicensePlate.LoadImage("car_license.jpg");

// Read license plate
OcrLicensePlateResult result = ocr.ReadLicensePlate(inputLicensePlate);

// Retrieve license plate coordinates
RectangleF rectangle = result.Licenseplate;

// Write license plate value and coordinates in a string
string output = $"License Plate Number:\n{result.Text}\n\n"
              + $"License Plate Area_\n"
              + $"Starting X: {rectangle.X}\n"
              + $"Starting Y: {rectangle.Y}\n"
              + $"Width: {rectangle.Width}\n"
              + $"Height: {rectangle.Height}";

Console.WriteLine(output);

結果にはどのような情報が含まれますか?

Visual Studioデバッグ出力が、検出されたナンバープレートMH20EE7602を帯域ボックスの座標と寸法で示している

この例では、ReadLicensePlateメソッドが車の画像にどのように適用されるかを示しています。 このメソッドは、画像内でナンバープレートが配置されている場所の長方形座標も返します。

この方法は、単一のナンバープレートのみを見つけるために最適化されており、ストック画像内で検索することができます。

複数のナンバープレートを処理するにはどうすればよいですか?

複数の車両画像を扱う場合、バッチ処理を使用すると効率的に処理できます:

using IronOcr;
using System.IO;
using System.Threading.Tasks;

public async Task ProcessMultipleLicensePlates(string[] imagePaths)
{
    var ocr = new IronTesseract();
    
    // Configure for optimal performance
    ocr.Configuration.WhiteListCharacters = "ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
    ocr.Configuration.PageSegmentationMode = TesseractPageSegmentationMode.SingleBlock;
    
    var tasks = imagePaths.Select(async path => 
    {
        using var input = new OcrInput();
        input.LoadImage(path);
        
        var result = await Task.Run(() => ocr.ReadLicensePlate(input));
        
        return new { 
            FilePath = path, 
            PlateNumber = result.Text, 
            Confidence = result.Confidence 
        };
    });
    
    var results = await Task.WhenAll(tasks);
    
    // Process results
    foreach (var result in results)
    {
        Console.WriteLine($"File: {result.FilePath}");
        Console.WriteLine($"Plate: {result.PlateNumber} (Confidence: {result.Confidence:P})");
    }
}

大規模処理の場合は、マルチスレッド機能を実装してパフォーマンスを最大化することを検討してください。

ナンバープレート認識の精度を向上させるにはどうすればよいですか?

ナンバープレート検出の精度を高めるには、以下の最適化テクニックを検討してください:

画像前処理フィルタを適用する

using IronOcr;

var ocr = new IronTesseract();
using var input = new OcrInput();

// Load and preprocess the image
input.LoadImage("blurry_plate.jpg");
input.Deskew();  // Correct image rotation
input.DeNoise(); // Remove background noise
input.EnhanceResolution(225); // Upscale for better clarity
input.Sharpen(); // Enhance edge definition

var result = ocr.ReadLicensePlate(input);

入力画像を最適化するために利用可能な 画像フィルタ画像補正テクニック の詳細をご覧ください。

さまざまな照明条件に対応する

困難な照明シナリオについては、適切な補正を適用します:

using IronOcr;

var ocr = new IronTesseract();
using var input = new OcrInput();

input.LoadImage("dark_plate.jpg");
input.Contrast(1.5); // Increase contrast
input.Binarize(); // Convert to black and white for clarity

var result = ocr.ReadLicensePlate(input);
C#

OCRのパフォーマンスを監視するにはどうすればよいですか?

大量のナンバープレートを処理する場合、進捗状況を追跡することで、システムリソースの管理に役立ちます:

using IronOcr;

var ocr = new IronTesseract();

// Subscribe to progress events
ocr.OcrProgress += (sender, e) => 
{
    Console.WriteLine($"Processing: {e.ProgressPercent}% complete");
};

using var input = new OcrInput();
input.LoadImage("large_parking_lot.jpg");

var result = ocr.ReadLicensePlate(input);

詳細なパフォーマンス監視については、IronOCRの進捗追跡機能をご覧ください。

他のドキュメントリーディングと比較してどうですか?

IronOCRの専門的な文書読み取り能力は、ナンバープレートだけにとどまりません。 ナンバープレート検出に力を与えているのと同じコンピュータ ビジョン テクノロジーを適用することができます:

一般的な使用例とは

IronOCRによるナンバープレート認識は様々なアプリケーションを可能にします:

  • 駐車場管理:入出庫ロギングと支払い処理の自動化
  • 料金徴収:料金所での車両識別のスピードアップ
  • セキュリティ監視:制限区域での車両の動きを追跡する
  • フリート管理:社用車と物流を監視する
  • 法執行:対象車両をすばやく特定する

IronOCRは高精度でリアルタイムに画像を処理できるため、バッチ処理にもライブアプリケーションにも適しています。

よくある質問

C#で画像からナンバープレートを読み取るには?

IronOCRのReadLicensePlateメソッドを使ってC#でナンバープレートを読むことができます。IronTesseractインスタンスを作成し、ナンバープレート画像を含むOcrInputを指定してReadLicensePlateを呼び出すだけです。このメソッドは、抽出されたナンバープレートのテキストと信頼度スコアのOcrLicensePlateResultを返します。

ナンバープレート認識にはどのパッケージをインストールする必要がありますか?

IronOCRのナンバープレート認識機能を使用するには、NuGetからIronOCRのメインパッケージとIronOcr.Extension.AdvancedScanパッケージの両方をインストールする必要があります。AdvancedScanエクステンションは専用のReadLicensePlateメソッドを提供する。

たった1行のコードでナンバープレートを抽出できますか?

はい、IronOCRは1行のコードでナンバープレートのテキストを抽出することができます:OcrLicensePlateResult result = new IronTesseract().ReadLicensePlate(new OcrInput("plate.jpg")); これでナンバープレートと信頼度スコアが即座に返されます。

ナンバープレート認識でサポートされている言語は?

IronOCRのReadLicensePlateメソッドは現在、英語、中国語、日本語、韓国語、ラテンアルファベットのナンバープレートをサポートしています。このメソッドはこれらの文字セット専用に最適化されています。

ナンバープレートの読み取り精度を向上させるにはどうすればよいですか?

IronOCRでは、ナンバープレートに現れる特定の文字をホワイトリストに登録し、ヘッダーやフッターを含まないナンバープレートだけを画像に含ませ、高品質の画像を使用することで精度を向上させることができます。ReadLicensePlateメソッドはすでにナンバープレート認識専用に最適化されています。

.NET Frameworkでのナンバープレート認識のシステム要件は何ですか?

.NET Framework上でReadLicensePlateを含むIronOCRの高度なスキャン機能を使用する場合、プロジェクトはx64アーキテクチャ上で実行する必要があります。この要件はナンバープレート認識機能の最適なパフォーマンスを保証します。

ナンバープレート認識はどのような情報を返しますか?

IronOCRのReadLicensePlateメソッドは、抽出されたナンバープレートテキストと信頼度スコアを含むOcrLicensePlateResultオブジェクトを返します。これにより、ナンバープレートの取得とOCR結果の信頼性評価の両方が可能になります。

What are common use cases for license plate recognition with IronOCR?

Common use cases include parking management, toll collection, security surveillance, fleet management, and law enforcement — all benefiting from IronOCR's high accuracy and real-time processing capabilities.

What type of images provide the best results for IronOCR?

Images with clear visibility of the license plate, good lighting conditions, minimal angle distortion, and adequate resolution provide the best results when using IronOCR for license plate recognition.

How can I monitor IronOCR's performance during license plate recognition?

You can monitor IronOCR's performance by subscribing to its `OcrProgress` event, which provides real-time progress information during the processing of large batches of license plate images.

Curtis Chau
テクニカルライター

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

...
詳しく読む

準備はできましたか?

Nuget Downloads 6,236,385バージョン:2026.9リリースされたばかり

無料をゲット

30日間の試用キーをすぐに取得。

bullet_checkedクレジットカードやアカウントの作成は不要です。
bullet_test製品版でのテスト
透かしなし
bullet_calendar30日間
完全機能の製品
bullet_support試用期間中の
24/5テクニカルサポート
あなたの無料30日間の試用キーをすぐに入手。
クレジットカードやアカウントの作成は不要です。
PDF用C# NuGetライブラリ
NuGetでインストール

バージョン: 2026.9

PM > Install-Package IronOcr
nuget.org/packages/IronOcr/
  1. ソリューションエクスプローラーで参照を右クリックし、NuGetパッケージを管理を選択
  2. 「参照」を選択して「IronOCR」を検索
  3. パッケージを選択してインストール
C# PDF DLL
DLLをダウンロード

バージョン: 2026.9

または、Windowsインストーラーをこちらからダウンロード。

  1. IronOCRをダウンロードして、ソリューションディレクトリ内の~/Libsなどの場所に解凍します
  2. Visual Studioソリューションエクスプローラーで、リファレンスを右クリックします。「参照」、「IronOCR.dll」を選択

$999からのライセンス

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日間の試用キーをすぐに入手。
クレジットカードやアカウントの作成は不要です。