我正在尝试使用Opencv中的Matlab相机校准应用程序中的校准系数 .

我将它们全部转移到:

cameraMatrix1 = stereoParams.CameraParameter1.intrinsicMatrix'
cameraMatrix2 = stereoParams.CameraParameter2.intrinsicMatrix'
distCoeffs1 = [stereoParams.CameraParameter1.RadialDistortion(1:2) stereoParameter.CameraParameters1.TangentialDistortion(1:2)] 
distCoeffs2 = [stereoParams.CameraParameter2.RadialDistortion(1:2) stereoParameter.CameraParameters1.TangentialDistortion(1:2)]
R = stereoParams.RotationOfCamera2'
T = stereoParams.TranslationOfCamera2'

我的代码:

import numpy as np
import cv2 as cv
from matplotlib import pyplot as plt

R1, R2, P1, P2, _, _, _ = cv.stereoRectify(cameraMatrix1, distCoeffs1,cameraMatrix2,distCoeffs2,(1024,1224),R,T,alpha=1,newImageSize=(1600,1000))

left_maps = cv.initUndistortRectifyMap(cameraMatrix1, distCoeffs1, R1, P1, (1024,1224), cv.CV_32FC1)
imgL_rect = cv.remap(imgL_con, left_maps[0], left_maps[1], cv.INTER_LANCZOS4)

right_maps = cv.initUndistortRectifyMap(cameraMatrix2, distCoeffs2, R2, P2, (1024,1224), cv.CV_32FC1)
imgR_rect = cv.remap(imgR_con, right_maps[0], right_maps[1], cv.INTER_LANCZOS4)

但是,经过校正的图像没有得到纠正,但在Matlab中则是如此 . 那么我有一个缺失的步骤吗?或者我是否需要更改Matlab派生的校准系数?