Hi !
I am using artifical datas that i produce with a matlab script. And the calibration a obtain is quite strange... The datas are not noisy, so I don't understand why I don't have good results.
First of all I compute the camera calibration matrix by applying the P2KRtC fuction from the core functions on the P matix in the *.Pmat.cal files --> Am I doing it right ?
I tried with 7 and 5 cameras with differents internal parametters with 700 and 900 piont, from a mean of 90% of points seen by each camera to 70% on points seen by each camera. The focal length are distributed from 8 to 12mm.
Those are the best results I got :
Calibration matrix I was expecting :
K =
[1,1] =
450.40308 0.00000 585.00000
0.00000 456.74396 381.00000
0.00000 0.00000 1.00000
[1,2] =
1.2966e+03 0.0000e+00 6.7800e+02
0.0000e+00 1.2839e+03 3.9600e+02
0.0000e+00 0.0000e+00 1.0000e+00
[1,3] =
9.8436e+02 0.0000e+00 6.1700e+02
0.0000e+00 1.0384e+03 4.0700e+02
0.0000e+00 0.0000e+00 1.0000e+00
[1,4] =
533.37837 0.00000 595.00000
0.00000 445.89059 326.00000
0.00000 0.00000 1.00000
[1,5] =
1.0578e+03 0.0000e+00 7.1600e+02
0.0000e+00 8.6711e+02 3.8900e+02
0.0000e+00 0.0000e+00 1.0000e+00
[1,6] =
544.10940 0.00000 535.00000
0.00000 525.22185 358.00000
0.00000 0.00000 1.00000
[1,7] =
2.0015e+03 0.0000e+00 6.2200e+02
0.0000e+00 1.7788e+03 3.1200e+02
0.0000e+00 0.0000e+00 1.0000e+00
Calibration matrix I got (with a good reprojection error and Square_Pixels: 1)
K2 =
{
[1,1] =
-73.01112 -292.88129 -728.41268
0.00000 -203.27019 -87.84830
-0.00000 0.00000 -1.00000
[1,2] =
-506.72115 -44.60617 -754.17705
0.00000 -529.75402 -206.86508
0.00000 0.00000 -1.00000
[1,3] =
5.7276e+02 -2.2779e+02 -1.4421e+03
0.0000e+00 -1.2195e+03 -2.1008e+02
-5.5511e-17 -3.4694e-18 -1.0000e+00
[1,4] =
-2.4990e+02 8.4287e+00 -6.1523e+02
1.4211e-14 -2.0970e+02 -2.4071e+02
5.5511e-17 -2.7756e-17 -1.0000e+00
[1,5] =
516.49032 710.43828 -18.03180
0.00000 -762.98946 138.73418
0.00000 0.00000 -1.00000
[1,6] =
-199.32738 -1.51103 -552.76619
0.00000 -202.31882 -387.76460
-0.00000 0.00000 -1.00000
[1,7] =
-803.70727 89.97739 -421.81710
0.00000 -749.74615 -28.55961
0.00000 -0.00000 -1.00000
Many things are unsettling : The skew factor should be equal to 0, and then the whole rest, it feels like totally random results. Considering the fact that my datas are not noisy, it should give me verry good results !
Can you help me through this ? The configuration wasn't degenerate, my cameras where not even lying on a shpere, and the point cloud was dense and in 3D.