【HALCON】add_metrology_object_line_measure 関数について - 直線計測オブジェクトを追加

【HALCON】add_metrology_object_line_measure 関数について - 直線計測オブジェクトを追加

2024-08-23

2024-08-23

HALCONadd_metrology_object_line_measure関数は、2D計測モデルに直線の計測オブジェクトを追加するための機能を提供します。この関数を使用することで、直線に沿ったエッジ検出が可能になり、画像中の特定の直線の計測を正確に行うことができます。計測範囲は、直線の始点と終点の座標で定義され、その範囲内でエッジを検出します。

使用例

以下に、add_metrology_object_line_measure関数を使用して直線の計測オブジェクトを追加する例を示します。

* 計測モデルを作成
create_metrology_model(&MetrologyHandle)

* 直線の計測オブジェクトを追加
add_metrology_object_line_measure(MetrologyHandle, 100, 100, 200, 200, 20, 5, 1.0, 30, [], [], &Index)

* 計測を実行
apply_metrology_model(Image, MetrologyHandle)

* 結果を取得
get_metrology_object_result_contour(&Contours, MetrologyHandle, "all", "all", 1.0)

この例では、create_metrology_model関数で計測モデルを作成し、add_metrology_object_line_measure関数で直線の計測オブジェクトを追加しています。直線の始点と終点の座標を指定し、その間に計測領域を設定します。apply_metrology_model関数で計測を実行し、結果を取得します。

引数

  • MetrologyHandle
    計測モデルのハンドルです。計測モデルの状態を管理します。
  • RowBegin
    直線の始点の行座標です。
  • ColumnBegin
    直線の始点の列座標です。
  • RowEnd
    直線の終点の行座標です。
  • ColumnEnd
    直線の終点の列座標です。
  • MeasureLength1
    計測領域の垂直方向の半辺長を指定します。
  • MeasureLength2
    計測領域の接線方向の半辺長を指定します。
  • MeasureSigma
    スムージングのためのガウス関数の標準偏差を指定します。
  • MeasureThreshold
    エッジの強度を決定するしきい値です。この値を超えるエッジのみが計測に使用されます。
  • GenParamName
    汎用パラメータの名前を指定します。
  • GenParamValue
    汎用パラメータの値を指定します。

戻り値

add_metrology_object_line_measure関数は、追加された直線計測オブジェクトのインデックスを返します。このインデックスを使用して、後続の計測や結果取得が可能です。

応用例

直線計測の応用

この関数を使用して、画像中の複数の直線の計測が可能です。たとえば、建物の輪郭や物体のエッジを検出して計測する場合などに応用できます。

* 複数の直線を同時に計測
add_metrology_object_line_measure(MetrologyHandle, 50, 50, 150, 150, 10, 5, 1.0, 25, [], [], &Index1)
add_metrology_object_line_measure(MetrologyHandle, 100, 100, 200, 200, 20, 5, 1.0, 30, [], [], &Index2)

この例では、2本の直線を同時に計測モデルに追加し、並行して計測を行っています。

注意点

  • MeasureLength1MeasureLength2は、直線に対して適切な値を設定する必要があります。値が不適切だと、エッジ検出が正確に行われないことがあります。
  • MeasureSigmaの値を調整することで、エッジの検出精度を高めることができます。

まとめ

HALCONのadd_metrology_object_line_measure関数は、2D計測モデルに対して直線の計測オブジェクトを追加し、画像中の直線に沿ったエッジ検出を行うための強力なツールです。この関数を使うことで、直線の正確な計測が可能になり、さまざまな画像処理タスクに応用できます。

Recommend