determine camera rotation and translation matrix from essential matrix

痞子三分冷 提交于 2020-01-04 02:58:34

问题


I am trying to extract rotation matrix and translation matrix from essential matrix. I took these answers as reference:

Correct way to extract Translation from Essential Matrix through SVD

Extract Translation and Rotation from Fundamental Matrix

Now I've done the above steps applying SVD to essential matrix, but here comes the problem. According to my understanding about this subject, both R and T has two answers, which leads to 4 possible solutions of [R|T]. However only one of the solutions would fit in the physical situation.

My question is how can I determine which one of the 4 solutions is the correct one?

I am just a beginner on studying camera position. So if possible, please make the answer be as clear (but simple) as possible. Any suggestion would be appreciated, thanks.


回答1:


The simplest is testing a point 3D position using the possible solution, that is, a reconstructed point will be in front of both cameras in only one of the possible 4 solutions. So assuming one camera matrix is P = [I|0], you have 4 options for the other camera, but only one of the pairs will place such point in front them.

More details in Hartley and Zisserman's multiple view geometry (page 259)

If you can use Opencv (version 3.0+), you count with a function called "recoverPose", this function will do that job for you.

Ref: OpenCV documentation, http://docs.opencv.org/trunk/modules/calib3d/doc/calib3d.html



来源:https://stackoverflow.com/questions/25778417/determine-camera-rotation-and-translation-matrix-from-essential-matrix

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!