0

私は、(ほぼ平坦な)ビューの空中映像を持っています(デプスマップは必要ありません)。ビデオからカメラのトレースパスを数学的に取得する方法

カメラセンターが通過した地面の形状を取得したいと思います。

ワイルド・ノースとの対応でパスが正確である必要はなく、ワールド座標を持つ必要はありません。アフィン変換されたとしても、ほぼ同じ形をしています。

私はすでにフレームごとに、そのフレームと前のフレームとの間のアフィン変換を良好な精度で表す行列を持っています。つまり、フレーム内の各ピクセルについて、そのピクセルの位置連続するフレーム内にある。

カメラが動いているとすれば、フレームの中心にある地面の地面の地面の軌跡(時間)をどのようにして得ることができますか?

もっと一般的には、問題は、実際には、各フレームについて、フレームの相対的な中心を最初のフレームに対応させて知ることです。

すべてのリードと回答が私に大きな利益をもたらすでしょう。

+0

パスの開始点を指定すると、相対移動を計算できます。したがって、フレームn + 1の四角形を切り取り、フレームnでこの画像を見つけることができます。次に、相対的な距離と方向を計算することができます。最後に、相対的な動きをまとめて形を作ることができます。 –

答えて

1

はのは、T I + 1フレーム私はとの間の変換を呼ぶことにしましょう。 のがポイントP [i]は=(西、李)を見てみましょうフレーム。私たちが知りたい場合は、この点をフレームになりましたI + 1、我々はちょうどポイントに変換Tを適用する必要がありますP [i]はと新しいポイントを得るP [i + 1] = T(P)である。

カメラの経路を得るために、画像P1 =(行/ 2、col/2)の中心点でフレーム1から開始し、P2 = T(P1)を計算する。フレーム1とフレーム2との間でカメラが行った経路は、フレーム2の中心とP2とを結ぶ線に近似していた。 P3 = T(P2)を計算することによって、フレーム2に対してこれを続けることができます。問題は、ポイントがワールド座標ではなく画像座標にあることです。

これを解決するには、「ワールド座標系」PW1 =(0,0)が最初のフレームの中心であると判断します。新しい「ワールド座標系」の2番目のフレームのカメラの中心は、PW2 =((行/ 2、col/2) - P2) - PW1になります。第3のフレームについては、中心はPW3 =((行/ 2、col/2)-P3)-PW2となり、i番目のフレームPWi + 1 =((行/ 2、col/2)-Pi + 1 ) - PWi。 アイデアはPW_new = movement_of_the_camera_between_frames - last_locationです。

最後に、カメラセンターが行ったパスであるポイントPW1、PW2、..、PWnがあります。スプラインまたは何かをフィットさせ、パスのシェイプを取得します。

+0

ここで累積誤差をどのように扱いますか? – Gulzar

+0

パスの形状について何かを仮定することができれば、パスのようなものは直線であるはずですが、私はポイントの集合に形状をフィットさせるときにこれを使用します。より良い答えを出すためには、連続する各フレームと航空機の速度との間の時間差についてどのような情報があるかについてもっと知る必要があります。 –

関連する問題