Next: Conclusion
Up: Refining structure and motion
Previous: Levenberg-Marquardt iteration
  Contents
Bundle adjustment
The observed points
being fixed, a specific residual
is only dependent on the point
-th point and the
-th projection matrix. This results in a very sparse matrix for the Jacobian. This is illustrated in figure 5.6 for 3 views and 4 points.
Figure 5.6:
Sparse structure of Jacobian for bundle adjustment.
 |
Because of the block structure of the Jacobian solving the normal equations
have a structure as seen in figure 5.7.
Figure 5.7:
Block structure of normal equations.
 |
It is possible to write down explicit formulas for each block. Let us first introduce the following notation:
 |
 |
 |
(E16) |
 |
 |
 |
(E17) |
 |
 |
 |
(E18) |
 |
 |
 |
(E19) |
 |
 |
 |
(E20) |
with
and
matrices containing the partial derivatives from the coordinates of
to the parameters of
and
respectively. In this case the normal equations can be rewritten as
![\begin{displaymath}
\left[\begin{array}{cc} {\bf U} & {\bf W} \\
{\bf W}^\top &...
...{c} \epsilon({\bf P}) \\ \epsilon({\tt M}) \end{array} \right]
\end{displaymath}](img608.gif) |
(E21) |
where the matrices
and
are composed of the blocks defined previously.
Assuming
is invertible both sides of equation 5.21 multiplied on the left with
to obtain
![\begin{displaymath}
\left[ \begin{array}{cc} {\bf U-WV}^{-1}{\bf W}^\top & {\bf0...
...^{-1}\epsilon({\tt M})
\\ \epsilon({\tt M}) \end{array}\right]
\end{displaymath}](img612.gif) |
(E22) |
This can be separated in two groups of equations. The first one is
 |
(E23) |
and can be used to solve for
. The solution can be substituted in the other group of equations:
 |
(E24) |
Note that due to the sparse block structure of
its inverse can be computed very efficiently.
The only computationally expensive step consist of solving equation 5.23. This is however much smaller than the original problem. For 20 views and 2000 points the problem is reduced from solving 6000 unknowns concurrently to more or less 200 unknowns. To simplify the notations the normal equations were used in this presentation. It is however simple to extend this to the augmented normal equations.
Next: Conclusion
Up: Refining structure and motion
Previous: Levenberg-Marquardt iteration
  Contents
Marc Pollefeys
2000-07-12