【HALCON】circularity 関数について - 円形度の計算

【HALCON】circularity 関数について - 円形度の計算

2024-08-24

2024-08-24

HALCONcircularity関数は、画像内の物体の円形度を計算し、物体がどれだけ円に近いかを評価するために使用されます。円形度は、形状解析において物体の対称性や均一性を評価するための重要な指標です。この関数は、製品検査や物体認識において、特定の形状が期待される形にどれだけ近いかを判断する際に役立ちます。

circularity 関数とは

circularity関数は、画像内の物体の円形度を計算するための関数です。円形度は、物体の境界の形状が円にどれだけ近いかを示す指標で、値が1に近いほど、物体の形状は円に近いことを意味します。円形度の計算には、物体の面積と周囲の長さが使用されます。

基本的な使用例

以下は、circularity関数を使用して画像内の物体の円形度を計算する基本的な例です。

* 画像を読み込み、領域を抽出
read_image (Image, 'example_image.png')
threshold (Image, Region, 128, 255)

* 円形度を計算
circularity (Region, CircularityValue)

* 円形度の結果を表示
dev_display (Region)
write_string (WindowHandle, 'Circularity  
  ' + CircularityValue)

この例では、read_imageで画像を読み込み、しきい値処理を用いて対象領域を抽出しています。その後、circularity関数を使用して領域の円形度を計算し、結果を表示しています。円形度は、物体の形状がどれほど円に近いかを示す数値として出力されます。

引数の詳細

  • Region
    円形度を計算する対象領域
  • CircularityValue
    計算された円形度の値(出力)

円形度の計算の用途

円形度の計算は、次のような場面で特に役立ちます。

  • 製品検査
    製品の形状が円形に近いかどうかを確認し、品質基準を満たしているかを判断するために使用されます。

  • 形状解析
    物体認識や分類で、特定の形状を持つ物体を正確に検出するために、円形度が利用されます。

  • 画像解析とモーフォロジー
    画像内の物体が幾何学的に対称か、または期待される形状に近いかを評価するために円形度を活用します。

応用例

次の例では、製品検査において、製品が円形かどうかを確認するために円形度を計算しています。

* 画像を読み込み、製品の領域を抽出
read_image (ProductImage, 'product_image.png')
threshold (ProductImage, ProductRegion, 128, 255)

* 製品の円形度を計算
circularity (ProductRegion, CircularityValue)

* 結果に基づいて製品の品質を評価
if (CircularityValue > 0.9)
    write_string (WindowHandle, 'Product is circular and meets quality standards.')
else
    write_string (WindowHandle, 'Product does not meet circularity standards.')
endif

この例では、製品画像を処理し、circularity関数で円形度を計算しています。円形度が0.9を超えた場合、製品が品質基準を満たすと判断されます。

circularity 関数の利点

  • 形状の対称性評価
    円形度を使用して物体の対称性や均一性を評価し、期待される形状に対する適合性を確認できます。

  • 製品品質の向上
    製品検査において、形状が基準に合っているかどうかを自動的に判断し、品質を確保します。

  • 簡単な計算
    物体の領域に基づいて円形度を簡単に計算でき、迅速に結果を得ることができます。

まとめ

HALCONcircularity関数は、物体の円形度を計算し、その形状が円にどれだけ近いかを評価するための強力なツールです。円形度は、製品検査や物体認識において、形状が期待される基準に合致しているかを評価する重要な指標です。この機能を活用して、形状解析を効果的に行い、精度の高い検査や解析を実現しましょう。

Recommend