1

別の一連の画像内または Web カメラからのライブ ストリーム ビデオ内で特定の画像を検出するために、SURF (Speeded Up Robust Features) を適用するプロジェクトがあります。

このビデオ内で説明されているものと同様に機能します。

http://www.youtube.com/watch?NR=1&v=uKI9qyi1wMg&feature=fvwrel

問題は、参照画像を囲む長方形が 2D であり、3D に対するその位置を取得したいということです。基本的にこれが画像のノーマルです。

決定された長方形に基づいて画像の法線を取得する方法はありますか?

長方形は次のようなものです:

Top Left = (x1, y1) 
Top Right = (x2, y1)
Bottom Left = (x3, y3)
Bottom Right = (x4, y4)

この座標に基づいて、フレームに対する画像の法線を取得する方法はありますか?

4

1 に答える 1

1

入力ポイントのセットを検出された四角形に一致させる 3D 変換を取得できます。

cv::Mat in = 0, 0
             w, 0
             0, h
cv::Mat ou = x1, y1
             x2, y2
             x3, y3
cv::Mat mat = cv::getAffineTransform(in, ou);

次に、この行列を使用して、入力画像の法線を変換します。

[row, col] = mat * [0, 0, 1]
于 2012-07-17T13:48:12.797 に答える