我有两个不同分辨率的相机,但是stereoCalibrate函数只有一个图片尺寸的选项。
如果我理解正确,stereoCalibrate函数会从相机1到相机2计算刚体变换矩阵。如果是这样的话,那么我应该将哪个相机的尺寸作为输入参数传递给stereoCalibrate函数呢?
我有两个不同分辨率的相机,但是stereoCalibrate函数只有一个图片尺寸的选项。
如果我理解正确,stereoCalibrate函数会从相机1到相机2计算刚体变换矩阵。如果是这样的话,那么我应该将哪个相机的尺寸作为输入参数传递给stereoCalibrate函数呢?
imageSize
参数仅用于初始化内部摄像机矩阵。
我建议使用cv::calibrateCamera()
分别对每个相机进行独立校准,以获取每个相机的摄像机矩阵和畸变系数。然后使用带有标志CV_CALIB_FIX_INTRINSIC
的cv::stereoCalibrate()
(带有预估的相机矩阵和畸变系数)来估计相机坐标系之间的转换(旋转R
和平移t
)。
这样,imageSize
参数就不再重要了。