【HALCON】do_ocr_single_class_mlp 関数について - MLPアルゴリズムを用いた単一領域OCR処理

【HALCON】do_ocr_single_class_mlp 関数について - MLPアルゴリズムを用いた単一領域OCR処理

2024-09-05

2024-09-05

HALCONdo_ocr_single_class_mlp関数は、MLP(多層パーセプトロン)アルゴリズムを使用して単一の領域に対して光学文字認識(OCR)を行うための関数です。MLP はニューラルネットワークの一種であり、複雑なパターンの学習に優れているため、高精度な OCR が可能です。主に製造業や自動化システムにおいて、シリアル番号やラベル情報の読み取りなどで広く利用されています。

do_ocr_single_class_mlp 関数の概要

do_ocr_single_class_mlpは、事前にトレーニングされた MLP OCR モデルを使用して、指定された単一領域内の文字を認識するための関数です。MLP は、複数の層を持つニューラルネットワークを活用し、手書きや印字された文字を高精度に分類・認識します。この関数は、シンプルかつ精度の高い OCR が必要なタスクに最適です。

使用方法

do_ocr_single_class_mlp関数の基本的な使用方法は以下の通りです。

do_ocr_single_class_mlp(OCRHandle, Image, Region, Class, Confidence)
  • OCRHandle
    トレーニング済みの MLP OCR モデルのハンドル。
  • Image
    OCR を実行する入力画像。
  • Region
    文字認識を行う単一の領域。
  • Class
    認識された文字列を返す変数。
  • Confidence
    認識結果の信頼度を示す値。

この関数は、指定された領域の文字を MLP モデルを使用して OCR 処理し、結果をClassに、認識信頼度をConfidenceに格納します。

具体例

以下に、do_ocr_single_class_mlp関数を使用して単一領域に対する OCR を実行する具体例を示します。

* 画像の読み込み
read_image(Image, 'text_image')

* 文字領域の生成
gen_rectangle1(Region, 100, 50, 150, 100)

* MLP OCRモデルの読み込み
read_ocr_class_mlp('Industrial_0-9A-Z_NoRej.omc', OCRHandle)

* OCRの実行
do_ocr_single_class_mlp(OCRHandle, Image, Region, Class, Confidence)

* 結果を表示
disp_message(WindowHandle, Class, 'window', 12, 12, 'black', 'true')

この例では、画像text_imageの特定の領域(Region)に対して OCR を実行しています。do_ocr_single_class_mlp関数を使用して領域内の文字を認識し、結果をClass変数に保存し、画面に表示します。

応用例

do_ocr_single_class_mlpは、以下のような場面で利用されます。

  • シリアル番号の認識
    製造ラインで製品に刻印されたシリアル番号を認識し、自動的にデータベースに保存するシステムに使用されます。

  • ラベルの検査
    製品のラベルに記載された文字情報を OCR で読み取り、正確に印字されているか検査します。

  • 書類のデジタル化
    書類内の特定フィールドの文字を読み取ってデジタルデータとして保存し、効率的にデジタル化を進めます。

注意点

do_ocr_single_class_mlpを使用する際は、OCR モデルが対象の文字データに対して適切にトレーニングされていることが重要です。フォントや文字の大きさ、画像の解像度によって認識精度が変わるため、事前にモデルの最適化が必要です。また、正確な文字領域の指定も、結果の精度に影響します。

まとめ

HALCONdo_ocr_single_class_mlp関数は、MLP アルゴリズムを使用した高精度な OCR 処理を単一領域で実行するためのツールです。シリアル番号やラベル情報の認識といったタスクにおいて、MLP の強力な学習能力を活用して高い精度を実現します。製造業や自動化システムでの OCR タスクに幅広く応用可能です。

Recommend