The stability of the linear and non-linear algorithms have been investigated to determine their robustness in the presence of Gaussian noise. A synthetic set of point data was generated by randomly selecting a number of world points with mean zero and with a standard deviation of 1.0 . The cameras were positioned 5 units away from the synthetic point data, and the rotations of the cameras and a small perturbation of their position was chosen randomly. Image points from P and P' were projected into each of the intermediate images, and the geometric distance between the projected points and the correct locations was measured.
The mean and standard deviation of the geometric point error for a 20 point dataset is shown for both the linear and non-linear algorithms in figures 5 and figure 6, respectively. An analysis of the effect of the size of the matched point set on the non-linear algorithm is shown in figure 7.
A sequence of six images, of a calibration grid, was captured using a
single PULNIX camera with an 8mm lens. The Harris Harris88
corner detector was used to locate features in each of the six images,
and the features were manually matched. Since not all of the corners were
accurately located, a robust computation of the trifocal tensor was
used (Torr and Zisserman Torr97 ). The mean
geometric distances using the linear algorithm are listed in table
\ref{table_pmatrix}. The final matrices are shown in figure
\ref{fig_calibration_grid}. Epipolar lines and their corresponding
point matches have been marked on the image. The mean geometric
distance from each point to its epipolar lines is 0.6 pixels.
| Image | Mean Distance (all 30 matches) | Mean Distance (25 inliers) |
| reference | 2.41 | 1.52 |
| 2 | 3.76 | 2.5 |
| 3 | 3.20 | 1.8 |
| 4 | 2.26 | 1.4 |
| 5 | 1.28 | 0.99 |
The algebraic minimisation algorithm has a number of advantages over a conventional bundle adjustment. A bundle adjustment requires 11 N parameters to be optimised. If the derivatives are approximated this requires 11 N computations of the geometric point error for each iteration. By perturbing just one of the matrices, and using the linear solution to the intermediate images, the optimisation problem is reduced to 12 parameters.
It is interesting to compare the results of the linear and non-linear algorithms. It can be seen that the non-linear solution is significantly more robust to noise than the linear solution. The 5 pixels of noise produced only 2 pixels of error in the standard deviation. The reason for the poor stability of the linear solution is that small errors in P' cause large errors in the intermediate images (see figure 5). By varying P' the non-linear algorithm becomes significantly more robust to noise.