【HALCON】do_ocr_single 関数について - 単一領域に対するOCR処理
2024-09-05
2024-09-05
HALCON
のdo_ocr_single
関数は、単一の領域に対して光学文字認識(OCR)を実行するための基本的な関数です。この関数は、シンプルなOCRタスクや単一の文字領域に対して認識を行う場合に最適です。製造業でのラベル検査や製品シリアル番号の読み取りなど、多岐にわたる用途で利用されます。
do_ocr_single 関数の概要
do_ocr_single
関数は、1つの指定された領域に対してOCRを実行し、その領域内の文字を認識します。この関数は、他の複数領域対応のOCR関数と異なり、単一領域に焦点を当てたOCR処理を行います。シンプルかつ高速に処理を行うため、特定のエリアに限定した文字認識タスクに適しています。
使用方法
do_ocr_single
関数の基本的な使用方法は以下の通りです。
do_ocr_single(OCRHandle, Image, Region, Class, Confidence)
OCRHandle
トレーニング済みのOCRモデルのハンドル。Image
OCRを実行する入力画像。Region
文字認識を行う単一の領域。Class
認識された文字列を返す変数。Confidence
認識結果の信頼度を示す値。
この関数は、Region
に指定された領域内の文字をOCRで認識し、結果をClass
変数に、認識の信頼度をConfidence
に格納します。
具体例
以下に、do_ocr_single
関数を使用して単一領域に対するOCRを実行する具体的な例を示します。
* 画像の読み込み
read_image(Image, 'text_image')
* 文字領域の生成
gen_rectangle1(Region, 100, 50, 150, 100)
* OCRモデルの読み込み
read_ocr_class_knn('Industrial_0-9A-Z_NoRej.omc', OCRHandle)
* OCRの実行
do_ocr_single(OCRHandle, Image, Region, Class, Confidence)
* 結果を表示
disp_message(WindowHandle, Class, 'window', 12, 12, 'black', 'true')
この例では、画像text_image
の一部分(Region
)に対してOCRを実行しています。領域内で認識された文字列がClass
に保存され、結果が画面に表示されます。
応用例
do_ocr_single
は、次のようなシンプルなOCRタスクに適しています。
-
製品シリアル番号の読み取り
製造ラインで、製品のシリアル番号やコードを特定の領域から認識し、自動的に管理システムに登録します。 -
ラベル検査
ラベルに記載された情報を検査する際に、特定のエリアに対してOCRを実行し、正確なテキストが印字されているか確認します。 -
フォームや書類の特定フィールドの認識
書類の特定の領域に含まれる文字をOCRで認識し、データベースに保存します。
注意点
do_ocr_single
を使用する際には、OCRモデルのトレーニングデータと、対象とする文字のフォントやサイズが適切であることが重要です。また、文字認識を行う領域の指定が正確であることも、認識精度に影響を与えるため、正しい領域設定が必要です。
まとめ
HALCON
のdo_ocr_single
関数は、単一領域に対して高速でシンプルなOCR処理を実行するための基本的なツールです。製造業やラベル検査、書類処理において、特定の領域に限定した文字認識を効率的に行うことができ、様々なシンプルなOCRタスクに対応可能です。