私はopencvを使ってiPhone用のアプリケーションを開発しています。メソッド solvePnPRansac を使用する必要があります。
http://opencv.willowgarage.com/documentation/cpp/camera_calibration_and_3d_reconstruction.html
このメソッドでは、カメラ マトリックスを提供する必要があり
ます
。fx 0 cx |
| | 0 年度 |
|_0 0 1 _|
ここで、cx と cy は画像の中心ピクセル位置を表し、fx と fy は焦点距離を表しますが、ドキュメントに記載されているのはそれだけです。これらの焦点距離に何を提供すればよいかわかりません。iPhone 5の焦点距離は4.1mmですが、この値がそのまま使えるとは思えません。
私は別のウェブサイトをチェックしました:
http://docs.opencv.org/modules/calib3d/doc/camera_calibration_and_3d_reconstruction.html
これは、opencv がカメラ マトリックスを作成する方法を示しています。ここでは、焦点距離はピクセル単位で測定されると述べています。
私は別のウェブサイトをチェックしました:
http://www.velocityreviews.com/forums/t500283-focal-length-in-pixels.html
(約半分下)次の式を使用して、焦点距離をミリメートル単位からピクセルに変換できると書かれています。
私が見つけた別のリンクは、 fx = focusMM * width / (sensorSizeMM); と述べています。fy = focusMM * 長さ / (sensorSizeMM);
これらの方程式と、この行列を適切に作成する方法がわかりません。
正確なカメラ マトリックス (特に iPhone 5 の場合) を作成する方法に関するヘルプ、アドバイス、またはリンクは大歓迎です。
アイザック
ps (fx/fy) または (fy/fx) はカメラの縦横比に等しいと思いますが、それは完全に間違っている可能性があります。
アップデート:
このリンクを使用すると、中心からの距離に対して角度をスケーリングするために使用するため、fx と fy をどのようにフォーマットするかを理解できます。したがって、fx と fy はピクセル/(単位長さ) である可能性がありますが、この単位長が必要かどうかはまだわかりません。x と y が互いにスケーリングされている限り、任意にすることができますか?