5

ここに画像の説明を入力

添付の画像は Opencv 2.4.2 の Hough Transform の出力です

これらの線分から最適な四角形 (必ずしも長方形ではない) の形状を検出するための最適なアルゴリズムを教えてください。

一部のコーナーは画像の境界の外側にありますが、それでもそれらを検出する必要があります

どうもありがとう

4

1 に答える 1

2

実際にこれを試す時間がなくても、次のようなイメージができました。

  1. すべての線を繰り返し、勾配を計算します。
  2. 傾きで線を並べ替える
  3. 2 本の線がほぼ同様の傾きを持っている場合、それらは平行であるか、ギャップのある同じ線です (たとえば、左側のほぼ垂直な線)。どちらを把握するには、x 軸または y 軸と交差する場所を計算します。それらが同じポイントでインターセプトする場合、それらは同じラインであり、1 つのラインにマージする必要があります。そうでない場合は、それらを(ほぼ)平行線のセットに入れます。
  4. 平行線の各セットを他のセットと比較し、それらが交差するかどうかを計算します (おそらく画面外)。
  5. アプリケーションに依存するいくつかの基準を適用して、最適なものを選択します。

この実行時間は、検出された線の数と平行線のセットの数に大きく依存します。最小の長さの線のみを考慮したり、線が平行と見なされるしきい値を調整したりすることで、少し改善できます。

于 2014-06-18T20:37:36.343 に答える