フッターコンテンツにスキップ
OCRツール

Microsoft OCRツール(C#での代替案)

OCR(光学文字認識)は、あらゆる規模の企業にとって重要な技術です。 これにより、データの効率的なスキャン、保存、分析が可能となり、従来は時間がかかり複雑だった作業を簡単に処理することができます。

MicrosoftのOCRツールは、デジタルトランスフォーメーションプロセスを簡素化するための堅牢なオプションを提供します。 これらのツールは、より迅速で効率的な文書処理を可能にし、ビジネス成長の重要なタスクに集中するための時間を解放します。 この記事では、強力なMicrosoft OCRツールを活用して業務を効率化する方法を探ります。

OneNote: Microsoft Tool

画像からテキストを抽出したい場合、Microsoft OneNoteは便利なツールです。 OneNoteは、テキスト、画像、音声、ビデオを含む様々な形式で情報をキャプチャし、保存し、整理するためのプラットフォームを提供する多用途のメモ取りアプリケーションです。 また、画像やファイルの印刷アウトからテキストをコピーするための貴重なツールでもあり、テキストを手動で入力する必要がなくなることで時間と労力を節約できます。

Extract Text using OneNote

OneNoteを使用して画像からテキストを抽出するには、次の手順を行います。

  1. OneNoteアプリケーションを起動します。
  2. 「挿入」オプションを使用して画像ファイルを挿入するか、画像ファイルをOneNoteウィンドウにドラッグ&ドロップします。

    class="content-img-align-center"> OneNote Insert ribbon

    class="content__image-caption">OneNote Insert Ribbon

  3. 画像を右クリックし、メニューから「画像からテキストをコピー」を選択します。

    class="content-img-align-center"> Copy Text from Picture in the context menu

    class="content__image-caption">Copy Text from Picture in the context menu

  4. 最後に、コピーしたテキストを希望の場所に貼り付けて、スキャンした画像から抽出されたテキストにアクセスします。

    class="content-img-align-center"> Text sourced from text copied from an image

    class="content__image-caption">Text sourced from text copied from an image

これが、OneNoteを使用して画像をスキャンする方法です。

Microsoft Vision Studio

Microsoft Cognitive Servicesは、AIを利用して画像をスキャンし、正確にテキストを検出する「画像からテキストを抽出」機能を提供しています。 このサービスはユーザーフレンドリーで、画像またはPDFファイルをアップロードするだけで済みます。情報は高精度で転記され、抽出されたテキストが画像またはPDFファイルの内容を正確に表すことを保証します。

さらに、抽出されたテキストはさまざまな言語で提供され、世界中のユーザーが利用できるサービスです。 Microsoft Cognitive Servicesの「画像からテキストを抽出」により、画像からの貴重なデータ抽出が簡素化され、効率的な分析と効果的なタスク完了が可能となります。

Extract Text using Microsoft Vision Studio

「画像からテキストを抽出」機能を使用するには、Microsoft AzureのVision Studioウェブサイトにアクセスできます。 ただし、このサービスにはAzureのサブスクリプションが必要です。 サブスクリプションを購入すると、スキャンした文書から抽出されたテキストにアクセスできます。 以下は参考用のサンプル出力画像です。

class="content-img-align-center"> Image scanned for its text

class="content__image-caption">Image scanned for its text

A9T9 Microsoft Free OCR Software

A9T9 Free OCR Softwareは、Windowsユーザーが紙の文書をデジタルテキストに簡単に変換できる多用途のツールです。 シンプルなドラッグアンドドロップ機能により、英語、ドイツ語、中国語、韓国語、インド語を含む複数の言語でのテキストの即時認識が可能です。 このソフトウェアは、スキャンした画像やPDF文書からデータを抽出し、編集可能で検索可能な形式に変換することができます。

このソフトウェアは、リッチテキスト、TXT、またはCSVなどのさまざまな出力形式、およびBMP、TIF、またはPDFなどの画像形式をサポートします。 また、自動文書スキュー機能も備えています。 このソフトウェアは、透過背景を持つものやさまざまな言語の画像のテキストを迅速かつ正確に認識できます。 A9T9はその高い正確性、手ごろな価格、インストールの容易さにより、無料のOCRソフトウェアソリューションを探しているWindowsユーザーにとって最適な選択肢です。

Copy Text using A9T9

Microsoft StoreからA9T9ソフトウェアをダウンロードできます。 インストール後、A9T9ソフトウェアを開いて画像またはPDFファイルをアップロードします。

class="content-img-align-center"> Image scanned for its text

class="content__image-caption">Copy Text using A9T9

画像または文書が読み込まれると、「OCRの開始」ボタンをクリックします。 これにより、スキャンした文書や画像からテキストが抽出され、右側のテキストエリアに表示されます。

class="content-img-align-center"> The text is shown on the right hand side

class="content__image-caption">The text is shown on the right-hand side

OCR言語を選択し、テキストをコピーしたり、Wordドキュメントとして保存したりできます。

Office Lens

Office Lensは、ノート、ホワイトボード、メニュー、標識、およびその他の種類の書かれたまたは視覚的な情報をキャプチャおよび整理するために設計された高度なツールです。 このアプリは従来のメモ取りの優れた代替手段を提供し、手書きメモの必要性をなくし、重要な情報を失う可能性を排除します。

Office Lensは、スケッチ、手書きメモ、図面、方程式を簡単にキャプチャし、影や歪んだ角度を補正して読みやすさを向上させます。 また、OCR(光学文字認識)を特徴とし、画像内のテキストをデジタル化および編集できます。

残念ながら、MicrosoftはWindows版のOffice Lensを中止しました。 現在はモバイルデバイスのみで利用可能です。 さらに、Microsoft Office Document ImagingはMicrosoft Word 2010から削除されました。

マイクロソフトOCRソフトウェア(更新リスト):図5

IronOCRは、.NET開発者向けの強力なOCRライブラリです。 スキャンした文書や画像に完全なOCR機能を提供し、開発者が文書ベースのワークフローを自動化するのを容易にします。 シンプルなAPIと最小限の設定で、IronOCRは既存のシステムに簡単に統合できます。

ライブラリはシンプルなAPIを提供し、最小限の構成で既存のシステムに簡単に統合できます。 JPEG、TIFF、GIF、BMP、PDF、マルチページTIFF、および複数の文書スキャンを含む広範な入力ファイル形式をサポートしており、異なる向きの画像からテキストを読み取ることができます。

IronOCRの高度な機能には、ノイズ除去が含まれ、画像の歪みを減らし、テキスト抽出結果の精度を向上させます。 英語、フランス語、ドイツ語、スペイン語、日本語を含む125以上の言語をサポートしており、手動介入なしで高品質なOCR結果が必要なほぼすべてのアプリケーションに適しています。

Extract Text using IronOCR

PDFファイルからテキストを簡単に抽出でき、特定のページ番号を指定したり、文書のすべてのページからテキストを抽出したりできます。 適切なツールを使用することで、プロセスは効率的に簡素化されます。

using IronOcr;
using System;

var ocrTesseract = new IronTesseract();

using (var ocrInput = new OcrInput())
{
    // Add the entire PDF for OCR processing
    ocrInput.AddPdf("example.pdf");

    // Alternatively, OCR selected page numbers from a password-protected PDF
    ocrInput.AddPdfPages("example.pdf", new [] { 1, 2, 3 }, "password");

    // Perform OCR and get the result
    var ocrResult = ocrTesseract.Read(ocrInput);

    // Output the extracted text
    Console.WriteLine(ocrResult.Text);
}
using IronOcr;
using System;

var ocrTesseract = new IronTesseract();

using (var ocrInput = new OcrInput())
{
    // Add the entire PDF for OCR processing
    ocrInput.AddPdf("example.pdf");

    // Alternatively, OCR selected page numbers from a password-protected PDF
    ocrInput.AddPdfPages("example.pdf", new [] { 1, 2, 3 }, "password");

    // Perform OCR and get the result
    var ocrResult = ocrTesseract.Read(ocrInput);

    // Output the extracted text
    Console.WriteLine(ocrResult.Text);
}
Imports IronOcr
Imports System

Private ocrTesseract = New IronTesseract()

Using ocrInput As New OcrInput()
	' Add the entire PDF for OCR processing
	ocrInput.AddPdf("example.pdf")

	' Alternatively, OCR selected page numbers from a password-protected PDF
	ocrInput.AddPdfPages("example.pdf", { 1, 2, 3 }, "password")

	' Perform OCR and get the result
	Dim ocrResult = ocrTesseract.Read(ocrInput)

	' Output the extracted text
	Console.WriteLine(ocrResult.Text)
End Using
$vbLabelText   $csharpLabel

ここに出力があります:

class="content-img-align-center"> The output inside the Visual Studio Debug Console

class="content__image-caption">The output inside the Visual Studio Debug Console

PDFファイルからテキストを抽出するのに加えて、バーコードを簡単に読み取ることもできます。 ライブラリはバーコードを読み取るためのシンプルなコード実装を提供し、さまざまな文書ベースのワークフローにとって多目的なツールです。 次のコードを参照してください。

using IronOcr;
using System;

var ocrTesseract = new IronTesseract();
ocrTesseract.Configuration.ReadBarCodes = true;

// Read barcodes from an image file
using (var ocrInput = new OcrInput(@"images\imageWithBarcode.png"))
{
    var ocrResult = ocrTesseract.Read(ocrInput);

    // Iterate through the detected barcodes and print their values
    foreach (var barcode in ocrResult.Barcodes)
    {
        Console.WriteLine(barcode.Value);
    }
}
using IronOcr;
using System;

var ocrTesseract = new IronTesseract();
ocrTesseract.Configuration.ReadBarCodes = true;

// Read barcodes from an image file
using (var ocrInput = new OcrInput(@"images\imageWithBarcode.png"))
{
    var ocrResult = ocrTesseract.Read(ocrInput);

    // Iterate through the detected barcodes and print their values
    foreach (var barcode in ocrResult.Barcodes)
    {
        Console.WriteLine(barcode.Value);
    }
}
Imports IronOcr
Imports System

Private ocrTesseract = New IronTesseract()
ocrTesseract.Configuration.ReadBarCodes = True

' Read barcodes from an image file
Using ocrInput As New OcrInput("images\imageWithBarcode.png")
	Dim ocrResult = ocrTesseract.Read(ocrInput)

	' Iterate through the detected barcodes and print their values
	For Each barcode In ocrResult.Barcodes
		Console.WriteLine(barcode.Value)
	Next barcode
End Using
$vbLabelText   $csharpLabel
class="content-img-align-center"> Input/Output of the code

class="content__image-caption">Input/Output of the code

IronOCRは、低DPIやノイズの多い画像を処理前に強化することでサポートできます。

using IronOcr;
using System;

var ocrTesseract = new IronTesseract();

// Process a noisy image by deskewing and denoising it
using (var ocrInput = new OcrInput(@"images\image.png"))
{
    ocrInput.Deskew(); // Corrects for skewness in the image
    ocrInput.DeNoise(); // Reduces visual noise for better recognition

    // Perform OCR and print the text
    var ocrResult = ocrTesseract.Read(ocrInput);
    Console.WriteLine(ocrResult.Text);
}
using IronOcr;
using System;

var ocrTesseract = new IronTesseract();

// Process a noisy image by deskewing and denoising it
using (var ocrInput = new OcrInput(@"images\image.png"))
{
    ocrInput.Deskew(); // Corrects for skewness in the image
    ocrInput.DeNoise(); // Reduces visual noise for better recognition

    // Perform OCR and print the text
    var ocrResult = ocrTesseract.Read(ocrInput);
    Console.WriteLine(ocrResult.Text);
}
Imports IronOcr
Imports System

Private ocrTesseract = New IronTesseract()

' Process a noisy image by deskewing and denoising it
Using ocrInput As New OcrInput("images\image.png")
	ocrInput.Deskew() ' Corrects for skewness in the image
	ocrInput.DeNoise() ' Reduces visual noise for better recognition

	' Perform OCR and print the text
	Dim ocrResult = ocrTesseract.Read(ocrInput)
	Console.WriteLine(ocrResult.Text)
End Using
$vbLabelText   $csharpLabel

結論

結論として、光学文字認識(OCR)はすべての規模のビジネスに大いに役立つ重要なツールであり、スキャン、保存、処理が効率的であり、従来は手動で管理するには複雑で時間がかかる情報を簡単に管理できます。 Microsoftは、OneNote、Microsoft Vision Studio、A9T9 Free OCR Softwareなど、プロセスを効率化し、時間を節約できるさまざまなOCRツールを提供しています。

IronOCRは豊富な機能を備えたOCRライブラリで、利用可能なOCRツールの中でも突出した選択肢です。 C#とVB.NETアプリケーションと簡単に統合でき、多言語や画像形式の優れた精度と認識を提供し、無料試用期間があり、ライセンス費用は$799からです。 IronOCRは、デジタルトランスフォーメーションを改善しようとする企業にとって貴重な投資です。 これらのOCRツールはそれぞれユニークな機能を提供し、異なるニーズに対応できるため、デジタルトランスフォーメーションの改善を目指す企業にとって貴重な資産です。

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