Khaled
Khaled

Reputation: 563

Asses calibration result using OpenCV vs Matlab

I'm working on a project where i have to calibrate the camera in order to calculate the camera matrix and use it for other processes

I calibrated the camera using Zahng's method (Checkerboard) and performed the calibration using two different tools: 1- Matlab calibration tool 2-OpenCV method (cv2.calibrateCamera())

for both methods i used the same images (16 images).

the result form Matlab

4380.06266797091                0                0 
    0                    4374.31691291339        0
949.990213743877         664.725183192415        1

#Radial Distortion Coefficient
-0.355521260561817  1.30195034883959

#tangational Distortion Coefficient
0   0 

#average REPROJECTION ERROR
0.513903578285060
----------------------------------------------------

The results form OpenCV code

#camera matrix
mtx [[4.38350928e+03 0.00000000e+00 9.73653727e+02]
    [0.00000000e+00 4.37873075e+03 6.68924323e+02]
    [0.00000000e+00 0.00000000e+00 1.00000000e+00]]

#Distortion Coefficients
dist [[-3.59709752e-01  3.91496111e+00  3.43950578e-03  1.01871917e-03
      -6.21911790e+01]]

So my questions are:

1-Which results are considered to be more accurate as the Principal point differs a little bit

2-Why OpenCV considers 5 Distortion Coefficients whereas Matlab considers 4 (two are zero where in Opencv are not!)

Thanks in Advance

Upvotes: 2

Views: 931

Answers (1)

Khaled
Khaled

Reputation: 563

The comments have lead me to the solution of the problem. Credit to @fmw42

Upvotes: 0

Related Questions