ヒュートランスフォームは、画像内の線や円などの幾何学的な形状を検出するために使用される画像処理で人気のある技術です。 形状がより簡単に識別することができるパラメータ空間にポイントを変換することによって動作します。 この記事では、ラインと円の検出のためのHough Transformを導き、適用する方法について説明します。

ラインのヘフトランスフォーメーションの継承

基本的な考え方は、パラメータのセットとして画像の行を表すことです。最も一般的なフォームは、通常のフォームです。[]]ρ = x cos θ + y シンθ]、 ]]] [は、原点から線までの垂直距離であり、 θ]は、任意の行を渡すことができる範囲で、すべての点で、通常の投票の角度です。

ライン検出のためのハードトランスフォームを適用

線を検出するには、アルゴリズムには次の手順が含まれます。

  • Cannyのようなエッジ検出方法を使用して、画像をバイナリエッジマップに変換します。
  • 積分配列を初期化(ρ, θ) パラメータ。
  • 各エッジポイントでは、全ての可能な(ρ、θ)のペアを計算し、対応するアキュラセルを増分します。
  • 検出された行に対応するアキュメンテーション配列でピークを特定します。

サークルのHough Transformのデリベーションと応用

円検出は、半径パラメータを追加することで線検出を拡張します。円は[(x - a)^2 +(y - b)^2 = r^2]として表現できます。 ここで(a,b)は中心であり、rは半径です。パラメータスペースは3次元になります。(a,b,r)。各エッジポイントでは、各サークルセンターは様々な半径に計算され、この3D空間に蓄積されます。

円検出用Hough Transformを適用

手順は次のとおりです。

  • エッジ検出を画像に実行します。
  • 円を検索するラジの範囲を選択します。
  • 各エッジポイントと各半径に対して、潜在的な円センターを計算し、蓄積者を更新します。
  • サークルセンターと半径を示す3Dアキュムレータでピークを見つけます。