I'm working on stereo vision and I am using data from http://www.cvlibs.net/datasets/kitti/ The calibration parameters they use are very different from the parameters that the stereo camera calibrator toolbox produce and I couldn't find a way to use their data in MATLAB.
I also tried to use their calibration images in stereo camera calibrator toolbox which looks like this:
But when I run the calibration it fails saying:
Please help me if you have any idea on how to solve this

댓글 수: 2

Dima Lisin
Dima Lisin 2016년 2월 28일
편집: Dima Lisin 2016년 3월 11일
What do the Kitti calibration parameters look like?
it looks like this

댓글을 달려면 로그인하십시오.

 채택된 답변

Dima Lisin
Dima Lisin 2016년 2월 29일
편집: Dima Lisin 2016년 3월 11일

0 개 추천

The file calib_cam_to_cam.txt contains parameters for 3 cameras.
  • S_0x: is the image size. You do not really need it for anything.
  • K_0x: is the intrinsics matrix. You can use it to create a cameraParameters object in MATLAB, but you have to transpose it, and add 1 to the camera center, because of MATLAB's 1-based indexing.
  • D_0x: are the distortion coefficients in the form [k1, k2, p1, p2, k3]. k1, k2, and k3 are the radial coefficients, and p1 and p2 are the tangential distortion coefficients.
  • R_0x and T_0x are the camera extrinsics. They seem to be a transformation from a common world coordinate system into each of the cameras' coordinate system.
  • S_rect_0x, R_rect_0x, and P_rect_0x are the parameters of the rectified images.
Given all that, here's what you should do.
  • Pick two cameras of the three, that you want to use.
  • Create a cameraParameters object for each camera using the intrinsics and the distortion parameters (K_0x and D_0x). Don't forget to transpose K and adjust for 1-based indexing.
  • From the extrinsics of the two cameras (R_0x's and T_0x's) compute the rotation and translation between the two cameras. (R and t).
  • Use the two cameraParameters objects together with R and t to create a stereoParameters object.

댓글 수: 4

Thank you so much this is very help full. Note that the camera index, where 0 represents the left grayscale, 1 the right grayscale, 2 the left color and 3 the right color camera.
I am using 2 and 3 as left and right I tried to calculate the R and t of right camera with respect to left camera but I couldn't get accurate estimation, do you have an idea on how should I calculate R and t? Thanks
James Kiel
James Kiel 2016년 3월 3일
Same problem here. Would like a more in-depth explanation on calculating the R and t.
Estimating R and t with Reference images and feature points (Fundamental Matrix and then, R and t) seems to be a roundabout method, when individual camera R and t are already available. Getting, the R and t of second camera wrt first camera by a direct method would be very helpful.
Bashima Islam
Bashima Islam 2017년 9월 16일
편집: Bashima Islam 2017년 9월 16일
I still did not understand how can I get the stereo camera calibration parameters. I am totally new in computer vision. It will be really helpful if you can explain to me how to get the stereo parameters. I want to run the example code for point-cloud generation in Matlab on this dataset.

댓글을 달려면 로그인하십시오.

추가 답변 (2개)

Chris Monaco
Chris Monaco 2016년 3월 20일

1 개 추천

Where did you find the checkerboard size for the KITTI calibration images?

댓글 수: 3

As far as I am aware the checkerboard size is not given with the KITTI calibration data. You have to use the calibration data to manually make a stereoParameters object using the information mentioned above, the information in about the KITTI calibration data here: http://www.cvlibs.net/publications/Geiger2013IJRR.pdf and the information in the matlab documentation here: http://www.mathworks.com/help/vision/ref/stereoparameters-class.html
I'm working on this still but I'll post a more complete how-to once I figure it out completely. If anyone has tips on how to make the rotation matrix and translation vector between cameras 2 and 3 that would be very helpful.
James Kiel
James Kiel 2016년 3월 22일
I believe the Rotational Matrix and Translation Vector are values with respect to Camera 0. Unless I am mistaken it would then be the difference of Camera 2 and Camera 3 from Camera 0.
Figured this out. The checkerboard size is given as "corner_dist," representing the distance between two adjacent checkerboard corners.

댓글을 달려면 로그인하십시오.

Rafa Z
Rafa Z 2017년 10월 16일

0 개 추천

Can you someone explain how to in more details (kind of new to this field so step by step instruction will be highly appreciated)? I still can not understand how to get cameraParameters1 and cameraParameters2

카테고리

도움말 센터File Exchange에서 MATLAB Support Package for USB Webcams에 대해 자세히 알아보기

질문:

2016년 2월 28일

답변:

2017년 10월 16일

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by