【HALCON】align_metrology_model 関数について - 計測モデルの位置合わせ
2024-08-23
2024-08-23
HALCON
のalign_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)
この例では、計測モデルを作成し、指定された座標RowAlign
、ColAlign
と回転角度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)
この例では、形状モデルによって検出された座標RowAlign
、ColAlign
およびAngleAlign
に基づいて、計測モデルを自動的に配置しています。
注意点
align_metrology_model
関数は、画像の座標系に基づいて計測モデルを配置します。画像の左上隅が(0,0)である座標系を前提とするため、モデルを配置する際には正確な座標を指定する必要があります。- 計測モデルの位置合わせを繰り返し実行する場合、前回の配置設定が上書きされるため、必要に応じて保存や管理を行うことが重要です。
まとめ
HALCON
のalign_metrology_model
関数は、計測モデルを画像内で正確な位置に配置し、オブジェクトの計測を効果的に行うために使用されます。この関数を利用することで、回転や平行移動を伴う精密な計測タスクが効率的に実行可能です。