【HALCON】align_metrology_model 関数について - 計測モデルの位置合わせ

【HALCON】align_metrology_model 関数について - 計測モデルの位置合わせ

2024-08-23

2024-08-23

HALCONalign_metrology_model関数は、計測モデルの位置を画像座標系に合わせて調整するための関数です。この関数は、計測モデルを指定された行・列の座標と回転角度に基づいて回転・平行移動し、計測対象のオブジェクトに対してモデルを正確に位置合わせします。

使用例

以下は、align_metrology_model関数を使用して計測モデルの位置を調整する具体例です。

* 計測モデルの位置合わせ
create_metrology_model(&MetrologyHandle)
set_metrology_model_image_size(MetrologyHandle, Width, Height)
add_metrology_object_generic(MetrologyHandle, 'circle', CircleParam, 20, 5, 1, 30, [], [], &CircleIndices)
align_metrology_model(MetrologyHandle, RowAlign, ColAlign, AngleAlign)
apply_metrology_model(CurrentImage, MetrologyHandle)

この例では、計測モデルを作成し、指定された座標RowAlignColAlignと回転角度AngleAlignに基づいてモデルの位置を調整しています。

引数

  • MetrologyHandle
    計測モデルのハンドル。計測モデルを識別するために使用されます。

  • Row
    計測モデルの配置先の行座標。画像内での垂直方向の位置を指定します。

  • Column
    計測モデルの配置先の列座標。画像内での水平方向の位置を指定します。

  • Angle
    計測モデルの回転角度。この角度に基づいて計測モデルが回転されます。

戻り値

align_metrology_model関数は、指定された座標と回転角度に基づいて計測モデルを配置した結果を返します。この位置合わせにより、モデルが正しい位置に配置され、計測が正確に行われます。

応用例

形状モデルを使用した計測モデルの位置合わせ

align_metrology_model関数は、形状モデルとの併用にも適しています。以下の例では、形状モデルを使用して計測モデルを自動的に位置合わせする方法を示しています。

* 形状モデルを使用した計測モデルの位置合わせ
find_shape_model(CurrentImage, ShapeModelID, 0, rad(360), 0.5, 1, 0, 'least_squares', 5, 0.9, RowAlign, ColAlign, AngleAlign)
align_metrology_model(MetrologyHandle, RowAlign, ColAlign, AngleAlign)
apply_metrology_model(CurrentImage, MetrologyHandle)

この例では、形状モデルによって検出された座標RowAlignColAlignおよびAngleAlignに基づいて、計測モデルを自動的に配置しています。

注意点

  • align_metrology_model関数は、画像の座標系に基づいて計測モデルを配置します。画像の左上隅が(0,0)である座標系を前提とするため、モデルを配置する際には正確な座標を指定する必要があります。
  • 計測モデルの位置合わせを繰り返し実行する場合、前回の配置設定が上書きされるため、必要に応じて保存や管理を行うことが重要です。

まとめ

HALCONalign_metrology_model関数は、計測モデルを画像内で正確な位置に配置し、オブジェクトの計測を効果的に行うために使用されます。この関数を利用することで、回転や平行移動を伴う精密な計測タスクが効率的に実行可能です。

Recommend