【发布时间】:2018-03-20 23:41:21
【问题描述】:
我希望将 MATLAB stereoParameters 结构转换为内在和外在矩阵,以便在 OpenCV 的 stereoRectify 中使用。
如果我理解 http://docs.opencv.org/2.4/modules/calib3d/doc/camera_calibration_and_3d_reconstruction.html 和 http://mathworks.com/help/vision/ref/stereoparameters-class.html ,则 stereoParameters.CameraParameters1 和 stereoParameters.CameraParameters2 存储内部矩阵,而 stereoParameters 的其他成员存储外部矩阵。
我想我得到了这个映射
内在函数:
- cameraMatrix1 = stereoParameters.CameraParameters1.IntrinsicMatrix'
- cameraMatrix2 = stereoParameters.CameraParameters2.IntrinsicMatrix'
- distCoeffs1 = [stereoParameters.CameraParameters1.RadialDistortion(1:2), stereoParameters.CameraParameters1.TangentialDistortion, stereoParameters.CameraParameters1.RadialDistortion(3)]
- distCoeffs2 = [stereoParameters.CameraParameters2.RadialDistortion(1:2), stereoParameters.CameraParameters2.TangentialDistortion, stereoParameters.CameraParameters2.RadialDistortion(3)]
外在因素:
- R = stereoParameters.RotationOfCamera2'
- T = stereoParameters.TranslationOfCamera2'
到目前为止,正确吗?
还是不知道怎么弄
- R1 (3x3)
- R2 (3x3)
- P1 (3x4)
- P2 (3x4)
- Q (4x4)
来自其余 stereoParameters 的矩阵。
我可以使用现有的转换器吗?如果没有,公式是什么?
【问题讨论】:
-
我在 stackoverflow.com/a/28317841 找到了 Q 的公式。
-
我想做相反的事情,从 OpenCV 转换为 Matlab yml 文件。你找到转换了吗?在这一点上,任何事情都会有所帮助。
标签: matlab opencv camera-calibration stereo-3d stereoscopy