Where do I add a scale factor to the Essential Matrix to produce a real world translation value
I have the same problem.I think the monocular camera may need a object known the 3D coordinate.That may help .
I'm working with OpenCV and python and would like to obtain the real world translation between two cameras. I'm using a single calibrated camera which is moving. I've already worked through feature matching, calculation of F via RANSAC, and calculation of E. To get the translation between cameras, I think I can use: w, u, vt = cv2.SVDecomp and then my t vector could be: t = u[:,2] An example output is:
[[ -1.16399893   9.78967574   1.40910252]
 [ -7.79802049  -0.26646268 -13.85252956]
 [ -2.67690676  13.89538682   0.19209676]]
t vector: [ 0.81586158  0.0750399  -0.57335756]
I think I understand how the translation is not in real world scale so I need to provide that scale somehow if I want a real world translation. If I do know the distance between the cameras, can I just apply it directly to my t vector by multiplication? I think I'm missing something here...