IronOCRで手書き画像を読み取る方法

This article was translated from English: Does it need improvement?
Translated
View the article in English

画像から手書きテキストを自動的に読み取ることは、人によって書き方が異なるため、非常に困難です。 このような大規模な不整合により、OCRでデータを正確に取り込むことが難しくなっています。 このため、古い記録、患者の取り込みフォーム、顧客調査などの重要な文書は依然として手作業で処理しなければならず、エラーの発生しやすいプロセスでデータの完全性が損なわれています。

IronOcrは、手書き画像を確実に理解し、デジタル化するための特別な方法を導入することで、この問題を解決し、効率化します。

ハウツーガイドでは、IronOCRライブラリを使って手書き画像を正確に読み取るための簡単なステップバイステップのチュートリアルを説明します。

IronOCRを使い始める

今日あなたのプロジェクトでIronOCRを無料トライアルで使用開始。

最初のステップ:
green arrow pointer


この機能を使用するには、まずIronOcr.Extensions.AdvancedScanパッケージをインストールする必要があります。 ReadHandwritingメソッドは現在英語のみサポートしています。

手書き画像を読み取る

IronOCRで手書き画像を読むのは簡単です。 まずOCRエンジンをインスタンス化し、次にLoadImageで画像を読み込み、最後に手書き画像を読み取るために設計された専用のメソッドReadHandwritingを使用します。 次に、抽出したテキストを印刷し、その正確さと内容を確認します。

手書き画像入力

入力サンプル画像
:path=/static-assets/ocr/content-code-examples/how-to/read-handwritten-image.cs
using IronOcr;

// Instantiate OCR engine
var ocr = new IronTesseract();

// Load handwriting image
var inputHandWriting = new OcrInput();
inputHandWriting.LoadImage("handwritten.png");

// Perform OCR on the handwriting image
OcrHandwritingResult result = ocr.ReadHandwriting(inputHandWriting);

// Output the recognized handwritten text
Console.WriteLine(result.Text);
// Output the confidence score of the OCR result
Console.WriteLine(result.Confidence);
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

出力

MICR出力

ReadHandWritingメソッドは90.6%という高い信頼スコアを達成し、テキストの大部分と、冒頭のフレーズ "My name is Erin Fish." などの主要なアイデアを正しく識別しました。

これは、入力が単純な印刷テキストではなく、難易度の高い手書きスクリプトであるため、強力な結果となりました。 このエンジンは、文字間隔や文字のつながりに苦労しましたが、段落の核となるメッセージは見事に抽出されました。 これはIronOCRが複雑で非標準的なテキストを扱う能力が高いことを示しています。

ReadHandwritingの非同期例

IronOCRはさらにReadHandwritingメソッドの非同期バージョン、ReadHandwritingAsyncをサポートしています。 これは、操作を実行する前に入力画像を取得する必要がある非同期コードを扱う場合に非常に便利です。 先ほどと同じ入力を使って、asyncメソッドを使って同じ結果を出力する方法を示すコード例を示します:

:path=/static-assets/ocr/content-code-examples/how-to/read-handwritten-image-async.cs
using IronOcr;
using System.Threading.Tasks;

// Instantiate OCR engine
var ocr = new IronTesseract();

// Load handwriting image
var inputHandWriting = new OcrInput();
inputHandWriting.LoadImage("handwritten.png");

// Perform OCR using the async method with 'await'.
// The compiler automatically infers this top-level code block as an 'async Task Main()' method.
OcrHandwritingResult result = await ocr.ReadHandwritingAsync(inputHandWriting);

// Output the recognized handwriting text
Console.WriteLine(result.Text);
// Output the confidence score of the OCR result
Console.WriteLine(result.Confidence);
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

また、オプションの2番目のパラメータtimeoutMsに整数を指定すると、操作が自動的にキャンセルされるまでの指定されたミリ秒数を待つことができます。 デフォルトでは、このパラメータの値は-1で、時間制限がなく、操作が完了するまで実行されることを意味します。

手書き画像の読み取りの課題

IronOCRは全体的な構造とテキストを保持する高い信頼性を達成することができますが、OCR全体としてはまだ手書き文字に苦戦しており、局所的なエラーにつながります。 ここでは、抽出されたアウトプットを検証する必要がある一般的な課題をいくつか紹介します:

不規則なスペーシング:印刷の間隔に関しては、文字と文字の間の距離は均一です。 しかし、手書き文字では、筆の間隔や文字のつなぎ方が大きく異なることがあります。 この不均一性により、OCRエンジンが文字を誤って分割してしまい、上記のようなエラーが発生します。ununiformedという単語は、1つの単語ではなく、個々の文字(u n u n i f o c m e d)に分割されてしまいます。

筆跡のバリエーション: 人にはそれぞれ独特の筆跡があり、一人の人でも同じ文字を書くたびに微妙に異なります。文字のつながり方や全体的なパターン自体も大きく異なります。 エンジンは、ストロークの傾き、筆圧、フォルムのばらつきが大きいため、パターンマッチングの信頼性が標準化されたフォントに比べて本質的に低くなる。

あいまいな文字の形:手書き文字では、簡略化されたストロークや急いで書かれたストロークが使われることが多いため、文字の形があいまいになります。たとえば、すばやく書かれた"e"が"C#"のように見えたり、つながった"l"と"i"が誤認されたりすることがあります。

そのため、この方法を使用する場合は、出力が意図された入力と一致していることを確認してください。

ReadHandwritingメソッドは、筆記体に関しては低い精度のOCR抽出しか達成できません。 ブラケットを閉じる

よくある質問

IronOCRとは何ですか?また、手書き画像を読み取るためにどのように使用されますか?

IronOCRはC#用の強力な光学式文字認識ライブラリです。OCRエンジンをセットアップし、手書き画像をインポートし、ReadPhotoメソッドを使用してテキストを抽出することにより、手書き画像を読み取るために使用されます。

IronOCRのOCRエンジンはどのように設定するのですか?

IronOCRでOCRエンジンをセットアップするには、IronOCRライブラリをインストールし、OCRエンジンを初期化し、様々な手書きスタイルと画像フォーマットを認識するように設定する必要があります。

IronOCRで手書き画像をインポートする手順は?

IronOCRで手書き画像をインポートするには、適切なファイルパスまたはストリームを使用して画像ファイルをアプリケーションに読み込み、認識精度を高めるために画像が前処理されていることを確認してください。

IronOCRは異なるスタイルの手書きを認識できますか?

IronOCRは様々なスタイルの手書きを認識するように設計されています。高度なアルゴリズムを使用して異なる手書きスタイルに適応し、正確なテキスト抽出を行います。

IronOCRのReadPhotoメソッドとは何ですか?

IronOCRのReadPhotoメソッドは、OCRエンジンを使って手書きの内容からテキストを抽出するために取り込んだ画像を処理する機能です。

IronOCRで手書き画像のテキスト認識精度を向上させることは可能ですか?

画像を前処理し、OCRエンジンの設定を調整し、高品質の画像入力を使用することで、テキスト認識の精度を向上させることができます。

IronOCRはOCR用の複数の画像ファイル形式をサポートしていますか?

IronOCRはJPEG、PNG、BMP、TIFFを含む様々な画像ファイル形式をサポートしており、様々なOCRニーズに柔軟に対応します。

IronOCRはどのように低品質の手書き画像を処理しますか?

IronOcrは画像強調とノイズ除去の機能を備えており、低品質の手書き画像でもテキスト認識を向上させます。

カーティス・チャウ
テクニカルライター

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

開発以外にも、CurtisはIoT(Internet of Things)への強い関心を持ち、ハードウェアとソフトウェアの統合方法を模索しています。余暇には、ゲームをしたりDiscordボットを作成したりして、技術に対する愛情と創造性を組み合わせています。

準備はできましたか?
Nuget ダウンロード 5,167,857 | Version: 2025.11 リリース