Ask Your Question
0

Camera Undistortion

asked 2014-02-14 06:02:47 -0500

yamanneameh gravatar image

Hello,

I have the camera calibration Parameters as followings, and it works well for undistortion function, how I can Transfer these parametrs if I changed the angle of camera axes 90 degree to the left or the right?!

uint w= 1040, h= 1392; double disto[5]= { -0.205410121, 0.091357057, 0.000740608, 0.000895488, 0.053117702, };

cv::Mat cameraMatrix;
cv::Mat distCoeffs;
cv::Mat cameraIdeal;
cv::Mat ROTATION(3,3,CV_64F);


ocv_setcam(cameraMatrix, 1286.635225995, 1287.007162383, 520, 730.910560759);
ocv_setcam(cameraIdeal,  1288,           1288,           520,           762);       
vect2ocv(distCoeffs, disto,5);

assert(ROTATION.isContinuous());  
double * R= ((double*) ROTATION.data);

R[0]= 1.0; // col=0 auf row=0
R[1]= 0.0;
R[2]= 0.0;  

R[3]=  0.0;  
R[4]=  1.0; 
R[5]=  0.0;  

R[6]=  0.0;
R[7]=  0.0;  
R[8]=  1.0;
edit retag flag offensive close merge delete

1 answer

Sort by ยป oldest newest most voted
1

answered 2014-02-17 11:44:20 -0500

jensenb gravatar image

The distortion parameters are independent from the camera's extrinsic parameters. In other words the distortion parameters do not change if you move the camera around. The only time the distortion parameters change is if you change the lens settings of your camera.

edit flag offensive delete link more

Comments

Thank you for this explaination

yamanneameh gravatar imageyamanneameh ( 2014-02-19 01:08:31 -0500 )edit
Login/Signup to Answer

Question Tools

Stats

Asked: 2014-02-14 06:02:47 -0500

Seen: 337 times

Last updated: Feb 17 '14