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

コンピュータビジョンを使用したOCR(例のチュートリアル)

IronOCRによる光学文字認識(OCR)

光学式文字認識 (OCR) は、機械が画像からテキストを読み取って解釈し、データの処理と自動化をより高速かつ効率的にするテクノロジです。 この記事では、IronOCR ライブラリで OCR を使用する方法と、このプロセスを自動化してテキスト認識を強化する方法についてのガイドラインを示します。

OCR が重要な理由

OCR はコンピューター ビジョンと連携して、人工知能と機械学習アルゴリズムの力を活用して、画像からテキスト文字をより正確かつ効率的に認識する、光学式文字認識 (OCR) の高度な形式です。

コンピューター ビジョン画像処理アルゴリズムにより、OCR システムは画像内のテキストのコンテキストとレイアウトを理解し、文字の形状と構造に基づいて文字を認識できるようになります。 OCR とコンピューター ビジョンを組み合わせることで、複数のフォント、スタイル、サイズを持つ複雑な画像からテキストを抽出できるため、ドキュメントのデジタル化、データ抽出、自動化に役立つツールになります。

IronOCR: C# OCRライブラリ

IronOCR は、コンピューター ビジョン技術を使用して画像やドキュメントからテキストを抽出する人気の OCR ライブラリです。 使いやすく、C# や VB.NET を含む複数のプログラミング言語と統合できます。 IronOCR はオンプレミス版とクラウド版の両方で利用でき、画像からテキストを処理および抽出するためのさまざまな機能を提供します。

IronOCRのインストール

IronOCR をインストールするには、NuGet パッケージ マネージャー コンソールで次のコマンドを使用します。

Install-Package IronOcr

IronOCRを使用したOCRシステム

次の画像は、IronOCR を使用してコンピューター ビジョンによる OCR システムをテストするために使用されます。

! コンピュータビジョンによるOCR(例チュートリアル)、図1:OCR検出に使用される画像サンプル OCR検出に使用した画像サンプル

FindTextRegion メソッド

FindTextRegionメソッドは、画像内の単一のテキスト領域を識別するために使用されます。 このメソッドは、 ScaleDilationAmountBinarizeInvertなど、いくつかのオプション パラメータを取ります。

  • Scale 、テキスト認識を向上させるために画像のサイズを調整します。
  • DilationAmountテキストの太さを増やして視認性を高めます。
  • Binarize画像を白黒に変換し、コントラストを向上させます。
  • Invert画像の色を反転します。これは特定の種類の画像に役立ちます。
using IronOcr;
using System;

// Initialize the IronTesseract OCR engine
var ocr = new IronTesseract();

// Create an OcrInput object for the image
using (var inputOCR = new OcrInput("test.jpg")) 
{
    // Identify a text region within the image
    inputOCR.FindTextRegion();

    // Perform OCR on the identified text region
    OcrResult result = ocr.Read(inputOCR);

    // Extract and print the recognized text
    string resultText = result.Text;
    Console.WriteLine(resultText);
}
using IronOcr;
using System;

// Initialize the IronTesseract OCR engine
var ocr = new IronTesseract();

// Create an OcrInput object for the image
using (var inputOCR = new OcrInput("test.jpg")) 
{
    // Identify a text region within the image
    inputOCR.FindTextRegion();

    // Perform OCR on the identified text region
    OcrResult result = ocr.Read(inputOCR);

    // Extract and print the recognized text
    string resultText = result.Text;
    Console.WriteLine(resultText);
}
Imports IronOcr
Imports System

' Initialize the IronTesseract OCR engine
Private ocr = New IronTesseract()

' Create an OcrInput object for the image
Using inputOCR = New OcrInput("test.jpg")
	' Identify a text region within the image
	inputOCR.FindTextRegion()

	' Perform OCR on the identified text region
	Dim result As OcrResult = ocr.Read(inputOCR)

	' Extract and print the recognized text
	Dim resultText As String = result.Text
	Console.WriteLine(resultText)
End Using
$vbLabelText   $csharpLabel

>: コードを実行すると、機械学習プロセスを使用してテキスト領域からテキストが抽出されることがわかります。 出力結果は、高いテキスト認識精度でコンソールに表示されます。

! コンピュータビジョンによるOCR(例のチュートリアル)、図2:テキスト抽出プロセスの結果のコンソール コンソールはテキスト抽出プロセスの結果を表示します

FindMultipleTextRegions メソッド

FindMultipleTextRegionsメソッドはFindTextRegionに似ていますが、画像内に複数のテキスト領域がある場合に使用されます。 各テキスト領域の位置を定義するCropRectangleオブジェクトのリストを返します。 この方法は、複数のテキストセクションを含む画像からテキストを抽出する場合に便利です。

using IronOcr;

// Initialize the IronTesseract OCR engine
var ocr = new IronTesseract();

// Create an OcrInput object for the image
using (var input = new OcrInput("test.jpg"))
{
    // Identify multiple text regions within the image
    input.FindMultipleTextRegions(Scale: 2.0, DilationAmount: -1, Binarize: true, Invert: false);

    // Perform OCR on the pre-processed image
    OcrResult result = ocr.Read(input);

    // Extract and print the recognized text
    string resultText = result.Text;
    Console.WriteLine(resultText);
}
using IronOcr;

// Initialize the IronTesseract OCR engine
var ocr = new IronTesseract();

// Create an OcrInput object for the image
using (var input = new OcrInput("test.jpg"))
{
    // Identify multiple text regions within the image
    input.FindMultipleTextRegions(Scale: 2.0, DilationAmount: -1, Binarize: true, Invert: false);

    // Perform OCR on the pre-processed image
    OcrResult result = ocr.Read(input);

    // Extract and print the recognized text
    string resultText = result.Text;
    Console.WriteLine(resultText);
}
Imports IronOcr

' Initialize the IronTesseract OCR engine
Private ocr = New IronTesseract()

' Create an OcrInput object for the image
Using input = New OcrInput("test.jpg")
	' Identify multiple text regions within the image
	input.FindMultipleTextRegions(Scale:= 2.0, DilationAmount:= -1, Binarize:= True, Invert:= False)

	' Perform OCR on the pre-processed image
	Dim result As OcrResult = ocr.Read(input)

	' Extract and print the recognized text
	Dim resultText As String = result.Text
	Console.WriteLine(resultText)
End Using
$vbLabelText   $csharpLabel

>説明:上記のコードスニペットは、IronOCRライブラリを使用して画像ファイルのOCRを実行する方法の例です。まず、IronOCRライブラリをインポートし、 IronTesseractクラスの新しいインスタンスを作成します。 次に、入力画像ファイルのパスを使用してOcrInputオブジェクトを初期化し、 FindMultipleTextRegionsメソッドを使用して画像補正のためのいくつかの前処理手法を適用します。

IronOCRの出力

IronOCR の出力は、複数のフォント、サイズ、テキスト スタイルを含む複雑な画像を扱う場合でも非常に正確です。

抽出されたテキストはデータ分析、手動データ入力、機械学習、自然言語処理などの追加処理に使用されることが多いため、画像からデータを抽出する際には OCR の精度が非常に重要です。 抽出されたテキストにエラーが含まれていると、下流で問題が発生する可能性があります。 さらに、IronOCR では結果オブジェクトを調査して信頼レベルを確認できます

OCRコンピュータビジョンのユースケース

光学文字認識 (OCR) 技術は、印刷されたテキストの取り扱い方法に革命をもたらしました。 OCR ツールは、ドキュメント処理とデータ抽出に欠かせないものとなっています。 光学式文字認識ソフトウェアの使用例をいくつか紹介します。

OCRナンバープレート認識

ナンバープレート認識は、交通管理、駐車システム、法執行活動の自動化において重要な役割を果たします。 C# で OCR コンピューター ビジョンを実装することで、開発者は画像やライブ ビデオ フィードからナンバー プレートを迅速かつ正確に識別するアプリケーションを作成できます。 この技術は次の用途に使用できます。

  • 交通違反を監視し、犯罪行為に関与する車両を特定します。
  • 駐車システムを自動化し、入退場管理を容易にし、請求プロセスを合理化します。
  • 制限区域内での車両の動きを追跡・監視することでセキュリティ対策を強化します。

請求書からのテキスト抽出

C# の OCR コンピューター ビジョンを利用して、請求書やその他の財務文書からのテキストの抽出を自動化する OCR アプリケーションを開発できます。 このプロセスにより、手作業によるデータ入力エラーが大幅に削減され、会計業務が効率化されます。 主な利点は次のとおりです:

  • データ入力プロセスを自動化することで生産性が向上します。
  • OCR により人為的エラーの可能性が減るため、精度が向上します。
  • 会計ソフトウェアおよびシステムとのシームレスな統合により、効率的なデータ管理を実現します。

OCR字幕生成

動画の字幕作成は時間と労力を要する作業です。C#のOCRコンピュータービジョンは、画面上のテキストを自動的に検出・転写することでこのプロセスを簡素化し、開発者に次のようなメリットをもたらします。

  • 映画、テレビ番組、オンライン ビデオの正確な字幕を作成します。
  • 聴覚障害のある人や異なる言語を話す人のためのアクセシビリティを強化します。
  • ビデオプラットフォームに検索可能でインデックス可能なコンテンツを提供することで SEO の取り組みを強化します

OCR PDF処理

PDF はドキュメントの共有や保存に広く使用されていますが、そこからテキストを抽出するのは難しい場合があります。 C# の OCR コンピューター ビジョンは、開発者が PDF ファイルを簡単に処理してそのコンテンツを抽出するOCR アプリケーションを構築するのに役立ちます。これにより、次のことが可能になります。

印刷されたテキストのデジタル化

OCR ソフトウェアは、文書画像から印刷されたテキストをデジタル化するために広く使用されています。 OCR ツールは、スキャンされたデジタル ドキュメント、 PDFさまざまな形式の画像からテキストを抽出できます。 これは、テキストベースのドキュメントを簡単に検索、保存、共有できるドキュメント管理に特に役立ちます。

データ抽出

OCR テクノロジーは、請求書、領収書、フォームなどの入力データからデータを抽出するために広く使用されています。 OCR モデルは、名前、住所、日付、金額などの主要なデータ フィールドを認識して抽出できます。 これにより、手動でのデータ入力が不要になり、データ処理におけるエラーが削減されます。

画像検索

OCR 技術は画像検索にも使用され、画像に含まれるテキストに基づいて画像を検索できます。 これは、手動での検索に時間がかかる大規模な画像ライブラリの場合に特に便利です。

翻訳

OCR ソフトウェアを使用すると、ある言語の文書からテキストを抽出し、別の言語に翻訳できます。 これは、文書を迅速かつ正確に翻訳する必要がある国際的なビジネスに特に役立ちます。

まとめ

光学文字認識 (OCR) は、コンピューターが画像からテキストを読み取ることを可能にする技術です。 OCR とコンピューター ビジョンの組み合わせが重要なのは、機械が視覚世界を理解して解釈できるようになるためです。これは、自動運転車、ロボット工学、自動ドキュメント処理などのアプリケーションに不可欠です。

IronOCR は、コンピューター ビジョンを使用して OCR を適用し、テキストを正確に認識して画像からテキストを抽出できる強力な OCR エンジンです。 FindTextRegionFindMultipleTextRegionsGetTextRegionsなど、テキスト領域を検索および抽出するためのさまざまなメソッドを提供します。 各方法には独自のパラメータ セットがあり、それらを使用してOCR プロセスを微調整し、高い OCR 精度を実現できます。

IronOCR を使用すると、同時実行性カスタマイズされた構成を使用して、入力画像からスキャンされたテキストを迅速かつ正確に抽出できるため、大量の入力画像データを処理する際の時間と労力を節約できます。 スキャンした文書、写真、スクリーンショットなどを扱う場合でも、IronOCR を使用すると、そこに含まれるテキストのロックを解除できます。

IronOCR は、購入を決定する前にソフトウェアをテストしたいユーザーに無料トライアルを提供しています。 IronOCR のライセンスは$799から始まり、1 年間のサポートとアップデートが含まれます。 強力な機能とリーズナブルな価格設定を備えた IronOCR は、高い OCR 精度を備えた信頼性の高い OCR ソリューションを探している人にとって最適な選択肢です。

よくある質問

C#を使用して画像をテキストに変換するにはどうすればいいですか?

IronOCRのOCR機能を使用してC#で画像をテキストに変換することができます。ReadReadAsyncメソッドなどを利用することで、効率的に画像を処理してテキストを抽出できます。

コンピュータービジョンと一緒にOCRを使用する利点は何ですか?

コンピュータービジョンと一緒にOCRを使用することで、複雑な画像レイアウト、フォント、およびスタイルからのより正確なテキスト認識が可能になります。IronOCRはAIと機械学習を活用してテキスト抽出を強化し、データ処理を自動化します。

C#でOCRの精度を向上させるにはどうすればいいですか?

IronOCRは、設定の調整、並行性の使用、信頼度レベルのための結果オブジェクトの検査など、OCRの精度を向上させるためのさまざまな方法を提供します。これにより、より良い結果のためにOCRプロセスを微調整できます。

画像の複数の領域からテキストを抽出するプロセスは何ですか?

IronOCRを使用して画像の複数の領域からテキストを抽出するには、FindMultipleTextRegionsメソッドを使用できます。このメソッドは、各テキスト領域の位置を示すCropRectangleオブジェクトのリストを返します。

OCR技術はナンバープレート認識に使用できますか?

はい、IronOCRが提供するようなOCR技術はナンバープレート認識に応用できます。ナンバープレートの画像を処理することで、IronOCRはさまざまなアプリケーションのためのテキストを抽出できます。

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

NuGetパッケージマネージャーコンソールを使用してC#プロジェクトにIronOCRをインストールできます。Install-Package IronOcrコマンドを実行してプロジェクトにライブラリを追加します。

C#のOCRライブラリを試すためのトライアルバージョンはありますか?

はい、IronOCRは試用ライブラリの機能を試すことができる無料トライアルバージョンを提供しています。

C#用のOCRライブラリのライセンスオプションにはどのようなものがありますか?

IronOCRは、1年間のサポートと更新を含む$liteLicenseから始まるさまざまなライセンスオプションを提供しており、さまざまなプロジェクトのニーズと予算に対応しています。

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