質問

画面に画像が表示されており、CVINITUNDISTORTMAP&CVREMAP(カメラのキャリブレーションを行った)を介して歪みません。ユーザーは画像の機能をクリックします。そのため、機能の(u、v)ピクセル座標があり、内因性マトリックスと歪みマトリックスもあります。

私が探しているのは、ユーザーがクリックした機能が嘘をつく必要があるカメラ/現実世界の座標の3Dラインの方程式です。私はすでにカメラのイメージプレーンと機能の間に垂直な距離を持っているので、それを前述の方程式と組み合わせて、空間の特徴の(x、y、z)座標を与えることができます。

簡単に聞こえます(逆本質的なマトリックスか何か?)が、どこでも段階的な指示が見つかりません。 C ++またはC#コードが望ましい。

役に立ちましたか?

解決

これは少し古い質問ですが、それでも誰かにとって有用かもしれません。すべての行はポイント(0,0,0)を通過するので、:

line.x0 = 0; line.y0 = 0; line.z0 = 0;

方向ベクトルは次のとおりです。Line.A=(U/FX) - (CX/FX); line.b =(v/fy) - (cy/fy); line.c = 1;

CX、CY、FX、FYは、カメラマトリックスのパラメーターです。方程式は、「学習OpenCV」ブックで説明されています。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top