cvLine()
関数は、2つの点P1(x1、y1)とP2(x2、y2)が与えられた直線を描くことができます。私が立ち往生しているのは、すぐにそれを描くのではなく、この行のポイントを得ることです。OpenCVでラインからポイントを取得するには?
私は、線(緑色)ABと別の線ACを描画するとします。私がラインAB上のすべてのピクセルをたどると、Bに達する前に黒いピクセル(Aを囲む円の境界線)に遭遇するポイントがあります。
再びACライン上のピクセルに沿って移動すると、二度遭遇する。
基本的に私は(緑)のライン上のポイントを取得しようとしているが、任意の点列構造を返すようにcvLine()
いないようです。 OpenCVを使ってこれらのポイントを得る方法はありますか?
むしろダムアプローチは、その後、別の画像上cvLine()
を使用して線を引くことで輪郭を見つけ、次に点についてその輪郭のCvSeq*
(引かれた線)を横断するであろう。スクラッチ画像と元の画像は同じサイズのものであり、ポイントの位置を取得しています。私が言ったように、ちょっとばかな。どんな啓発的なアプローチも素晴らしいでしょう!
ありがとうございました。何とかドキュメントでそれを逃した! – AruniRC
リンクが壊れているようです。これは今のところ働いていますhttp://docs.opencv.org/modules/core/doc/drawing_functions.html#lineiterator –
ありがとう@CalebDoucet私は私の答えを更新しました。 –