1
Kinectの3Dポイントを使用したキーストーン補正
XNAでは、床に投影される単純な長方形を表示しています。プロジェクタは任意の位置に配置できます。明らかに、投影された長方形は、プロジェクターの位置と角度に応じて歪みます。Kinectは床をスキャンして、四隅を探します。ここでの私の目標は、元の長方形を変形して、長方形を基本的にプリワープすることで投影が歪まないようにすることです。 私の最初のアプローチは、すべてを2Dで行うことでした。まずwarpPerspective()、スキャンしたポイントから内部の四角形のポイントへの透視変換(OpenCVを使用)を計算し、四角形に逆を適用します。これは機能しているように見えましたが、GPUでレンダリングできないため遅すぎました。 2番目のアプローチは、XNAのレンダリング機能を使用するために3Dですべてを行うことでした。最初に、プレーンを表示し、Kinectでコーナーをスキャンして、受信した3Dポイントを元のプレーンにマッピングします。理論的には、2Dアプローチで行ったように、透視変換の逆を平面に適用できます。ただし、XNAはビューと投影行列で機能するwarpPerspective()ため、次のような関数を呼び出して目的の結果を取得することはできません。カメラのビューと投影マトリックスの新しいパラメーターを計算する必要があります。 質問:これらのパラメーターを計算し、2つのマトリックス(ビューとプロジェクション)に分割することは可能ですか?そうでない場合、私が使用できる別のアプローチはありますか?
15
xna
2d
3d
projection
kinect