【HALCON】find_1d_bar_code_region 関数について - 特定領域内の1Dバーコードの検出と読み取り

【HALCON】find_1d_bar_code_region 関数について - 特定領域内の1Dバーコードの検出と読み取り

2024-09-04

2024-09-04

HALCONfind_1d_bar_code_region関数は、指定された領域内で1Dバーコードを検出し、内容を読み取るためのツールです。この関数を使用することで、画像全体を処理するのではなく、特定の領域に限定してバーコードの検出と読み取りを行うことができ、処理の効率化や精度向上が期待できます。

find_1d_bar_code_region 関数の概要

find_1d_bar_code_region関数は、入力画像の中で指定された領域に限定して1Dバーコードを検出し、内容を読み取ります。この領域指定により、不要な部分を排除し、必要な情報だけを効率的に処理することができます。例えば、大きな画像の中でバーコードが存在する可能性の高い特定のエリアのみをターゲットにする場合などに有効です。

使用方法

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

find_1d_bar_code_region(Image, Region, SymbolName, BarCodeHandle, CodeType, DecodedData)
  • Image
    検出と読み取りを行う対象の画像。
  • Region
    バーコードを検出する領域を指定します。
  • SymbolName
    検出されたバーコードのシンボル名が格納される変数。
  • BarCodeHandle
    バーコード検索用のハンドル。
  • CodeType
    読み取るバーコードの種類(例: ‘EAN13’, ‘CODE128’ など)。
  • DecodedData
    読み取られたバーコードの内容が格納される変数。

具体例

以下に、find_1d_bar_code_region関数を使用して、特定の領域内で1Dバーコードを検出し、読み取る例を示します。

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

* バーコードが存在する可能性のある領域の定義
gen_rectangle1(Region, 100, 100, 300, 400)

* バーコード検索用ハンドルの生成
create_bar_code_model(BarCodeHandle)

* 指定領域内での1Dバーコードの検出と読み取り
find_1d_bar_code_region(Image, Region, SymbolName, BarCodeHandle, 'EAN13', DecodedData)

* 結果の表示
disp_message(WindowHandle, 'Decoded Data: ' + DecodedData, 'window', 12, 12, 'black', 'true')

この例では、入力画像内の指定された矩形領域(Region)内に存在する1Dバーコード(EAN13形式)を検出し、その内容を読み取ります。読み取られたバーコードのデータはDecodedData変数に格納されます。

応用例

find_1d_bar_code_region関数は、以下のようなシナリオで特に有用です。

  • 産業オートメーション
    生産ラインで、製品の特定部分に存在するバーコードをターゲットにして読み取ります。
  • 物流
    パッケージの特定の領域に配置されたバーコードを効率的に読み取ります。
  • 製品検査
    製品の一部領域に付けられたバーコードをターゲットにして検出し、製品の品質管理やトレーサビリティを強化します。特に、大量の製品が流れる中で効率的にバーコードを読み取ることが求められる場面で役立ちます。
  • 在庫管理
    倉庫での在庫管理時に、特定の棚やエリアに絞ってバーコードをスキャンすることで、処理時間を短縮し、在庫の追跡を効率化します。
  • パレットやコンテナの管理
    パレットやコンテナに貼られたバーコードが複数存在する場合、特定のエリアに限定して検出・読み取りを行い、管理業務の精度を向上させます。

まとめ

HALCONfind_1d_bar_code_region関数は、指定された領域内で1Dバーコードを効率よく検出・読み取るためのツールです。画像全体を処理するのではなく、特定の領域に限定することで、処理時間を短縮しつつ、精度を高めることができます。特に、産業オートメーションや物流、製品検査など、正確かつ迅速なバーコードの読み取りが求められるシーンで非常に有用です。

Recommend