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.