We have implemented image-based warping as described in [16]. (This implementation is not used in the examples shown in this report, since those examples are planar.) McMillan does not describe how to compute disparity values for the new image. Here is a derivation, following McMillan's notation in Chapter 3.
Let P1 and P2 be projection matrices for the original and target
camera position, and t be the translation between the camera
centers. (P2 = R P1, where R is the rotation between cameras.)
Let r1 and r2 be the distances from a scene point to
each camera center. Let x1 and x2 be the image coordinates of
.We therefore have:
(This is similar to McMillan's Equation 3-2). Substituting the Equation before
Equation 3-10 (),
and rearranging, gives:
Taking the magnitude of both sides gives:
Note that , since R is orthonormal. (Rotating a vector doesn't
change the magnitude.)
The LDI [22] formulation of image based rendering is much simpler (it is essentially based on depth), and can transfer depth much faster.