我有一对水平对齐的立体相机,使用完整尺寸的图像进行校准 .
我正在通过调用cv2.initUndistortRectifyMap来获取每个摄像头的 Map ,然后是cv2.remap
使用全尺寸图像时,看起来像:
map1, map2 = cv2.initUndistortRectifyMap(camera_matrix_1, dist_coeffs_1, R1, P1, (w, h), cv2.CV_16SC2)
map3, map4 = cv2.initUndistortRectifyMap(camera_matrix_2, dist_coeffs_2, R2, P2, (w, h), cv2.CV_16SC2)
rectified1 = cv2.remap(img1, map1, map2, cv2.INTER_LINEAR)
rectified2 = cv2.remap(img2, map3, map4, cv2.INTER_LINEAR)
cv2.initUndistortRectifyMap
的参数是 cv2.stereoCalibrate
和 cv2.stereoRectify
的输出
然而,为了提高处理速度,在处理之前,图像将被裁剪(并且可能被装箱),然后才能被整流 . 这意味着整改过程不能使用图像的全尺寸 .
在整改完成之前,需要更改什么才能使代码与图像的裁剪(和分级)一起工作?