7

(これは、この前の質問からのフォローアップです)。

OpenCV / Hough 変換を使用して、写真 (スキャンされたテキスト) の線を検出することに成功しました。最初は多くの行 (テキストの行ごとに少なくとも 1 行) を検出しますが、試行錯誤によって「しきい値」パラメーターを調整することで、「実際の」行のみを検出するようになりました。

(「しきい値」パラメーターは画像サイズに依存します。これは、異なる解像度の画像を処理する必要がある場合に少し問題になりますが、それは別の話です)。

私の問題は、ハフ変換が 1 行しかない場合に 2 行を検出することがあることです。これらの 2 つの線は互いに非常に近く、(明らかに) 平行です。

=> 2 つの線がほぼ平行で、互いに非常に近いことをどのように識別できますか? (1つだけ保持できるように)。

4

2 に答える 2

9

標準またはマルチスケールのハフを使用すると、極座標の線のロー座標とシータ座標になります。Rhoは原点までの距離であり、シータは通常、検出された線とY軸の間の角度です。opencvのハフ変換の詳細を調べなくても、これはこれらの座標の一般的な規則です。次の場合、2つの線はほぼ平行になり、互いに非常に近くなります。 180度近く離れており、それらのローはお互いのネガティブに近い

それが理にかなっていることを願っています。

于 2009-10-14T09:24:57.487 に答える
0

興味深いのは、シータが線と y 軸の間の角度であることです。

一般に、rho 値と theta 値は、x 軸から、問題の線に垂直な線までの角度として視覚化されます。ローは、この垂線の長さです。したがって、theta = 90 および rho = 20 は、原点から 20 ピクセル上にある水平線を意味します。ハフ変換の質問に素敵な画像が表示されます

于 2010-12-09T00:50:43.810 に答える