Hi,

I was hoping someone who has a good knowledge of how DAVID works could explain how it uses Tsai Calibration

Ive read the Tsai paper and tried computing the rotational matrix R and translational matrix T followed by principal point (x0,y0) and focal distance f.

Tsai requires the foll parameters :-

Xi,Yi - image coordinates

Xc,Yc,Zc - camera coordinates

Xs,Ys,Zs - scence coordinates

f- principal focus

X0,Y0 - principal point

Ive taken Xs,Ys,Zs as the points given in Calibpoints.dat in the DAVID folder.

Xi,Yi as the coordinates of the red markers after DAVID has calibrated. (I as of now havent tried detecting the points from the image using any algorithm so just fed them manually).

Now i have 25 scene coordinates (i.e. Xs,Ys,Zs) and 25 corresponding image coordinates (i.e. Xi,Yi). Using the equation on page 6 in the Tsai pdf, I have set Ty=1 and converted the homogenous system to non-homogenous system and solved for sr11,sr12,sr13,stx,r21,r22,r23 using 7 points (points 0,4,10,12,14,20,24 as marked by the DAVID calibpoints).

I havent done that least squares method for overdeterministic set of equations as of now.

I then find out the scale factor c and also s.

I then multiplied sr11,sr12,sr13,stx,r21,r22,r23 by c and divided sr11,sr12,sr13 by s.

Now i have r11,r12,r13

r21,r22,r23

NOTE: the above are after multiplying by c

To find last row of rotation vector r31,r32,r33 , i normalized the first two rows and did their cross product as told.

Finally to find ‘f’ and ‘tz’ i used one of the 25 points in calibpoints.dat and solved the two equations.

-----------------------------------------

Here is my problem

When i use point 0 (i.e 147.00000 20.00000 0.00000)

i got principal focus f = 0 and tz = around 69 approx.

f=0 didnt make sense to me. possibly ive interpreted the Tsai paper wrongly or gone wrong along the way .

If someone could help me out, it would be greatly appreciated.

I have attached the paper i referred to.

Following are the Xi and Yi(found manually from the DAVID window) that i fed to corresponding calibpoints

0 610 474

1 613 322

2 591 206

3 572 110

4 557 28

5 513 516

6 500 381

7 488 268

8 480 172

9 470 91

10 405 561

11 402 431

12 400 323

13 397 229

14 395 149

15 275 560

16 286 430

17 293 321

18 299 228

19 302 147

20 167 517

21 186 378

22 201 265

23 214 169

24 226 89

Calibpoints.dat :-

0 147.00000 20.00000 0.00000

1 160.00000 80.00000 0.00000

2 160.00000 140.00000 0.00000

3 160.00000 200.00000 0.00000

4 160.00000 260.00000 0.00000

5 100.00000 20.00000 0.00000

6 100.00000 80.00000 0.00000

7 100.00000 140.00000 0.00000

8 100.00000 200.00000 0.00000

9 100.00000 260.00000 0.00000

10 40.00000 20.00000 0.00000

11 40.00000 80.00000 0.00000

12 40.00000 140.00000 0.00000

13 40.00000 200.00000 0.00000

14 40.00000 260.00000 0.00000

15 0.00000 20.00000 40.00000

16 0.00000 80.00000 40.00000

17 0.00000 140.00000 40.00000

18 0.00000 200.00000 40.00000

19 0.00000 260.00000 40.00000

20 0.00000 20.00000 100.00000

21 0.00000 80.00000 100.00000

22 0.00000 140.00000 100.00000

23 0.00000 200.00000 100.00000

24 0.00000 260.00000 100.00000