Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Stereo Rectification produces rectified images of only the top left quarter of the original image

I took a series of photos with 2 cameras placed side by side in order to perform stereo calibration. I ran the photos through the steps of stereo calibration, got the camera parameters through cv2.stereoCalibrate, ran the parameters through cv2.stereoRectify and got the rotation and coordinate matrices R1, P1, R2, and P2. I put the results through cv2.initUndistortRectifyMap and received the undistortion and rectification maps map1x, map1y, map2x, and map2y. Finally, I applied the maps using cv2.remap on some images. However, the resulting rectified images I get consists of black pixels for 3/4th of the image, only showing valid pixels in the bottom right corner. I realize that the non-black pixels corresponds to the top left corner of my original image. The first image below is my original image, the second is the corresponding "rectified image".

image description

image description

I have not been able to find a similar problem encountered by others using the same procedure. I did not change the size of the image during any of my steps. In stereoRectify and initUndistortRectifyMap, I used the (width, height) I obtained from the original image. Any input on this problem is appreciated. Thank you.

Stereo Rectification produces rectified images of only the top left quarter of the original image

I took a series of photos with 2 cameras placed side by side in order to perform stereo calibration. I ran the photos through the steps of stereo calibration, got the camera parameters through cv2.stereoCalibrate, cv2.stereoCalibrate, ran the parameters through cv2.stereoRectify cv2.stereoRectify and got the rotation and coordinate matrices R1, P1, R2, and P2. I put the results through cv2.initUndistortRectifyMap cv2.initUndistortRectifyMap and received the undistortion and rectification maps map1x, map1y, map2x, and map2y. Finally, I applied the maps using cv2.remap cv2.remap on some images. However, the resulting rectified images I get consists of black pixels for 3/4th of the image, only showing valid pixels in the bottom right corner. I realize that the non-black pixels corresponds to the top left corner of my original image. The first image below is my original image, the second is the corresponding "rectified image".

image description

image description

I have not been able to find a similar problem encountered by others using the same procedure. I did not change the size of the image during any of my steps. In stereoRectify and initUndistortRectifyMap, stereoRectify and initUndistortRectifyMap, I used the (width, height) I obtained from the original image. Any input on this problem is appreciated. Thank you. you.