next up previous contents
Next: Experiments Up: Lightfield modeling and rendering Previous: Fixed plane approximation   Contents

View-dependent geometry approximation

The results can be further improved by considering local depth maps. Spending more time for each view, we can calculate the approximating plane of geometry for each triangle in dependence on the actual view. This improves the accuracy further as the approximation is not done for the whole scene but just for that part of the image which is seen through the actual triangle. The depth values are given as functions $D_i$ of the coordinates in the recorded images $D_i (x, y)$. They describe the distance of a point to the projection center. Using this depth function, we calculate the 3D coordinates of those scene points which have the same 2D image coordinates in the virtual view as the projected camera centers of the real views. The 3D point ${\tt M}_i$ which corresponds to view $i$ can be calculated as
\begin{displaymath}
{\tt M}_i = s D_i ({\bf P}_k{\tt C}_V)n({\tt C}_k - {\tt C}_V) + {\tt C}_k
\end{displaymath} (H6)

where $n({\tt A})=\frac{\tt A}{\Vert{\tt A}\Vert}$ and $s= \mbox{ sign }({\tt P}_{3i}.({\tt C}_k - {\tt C}_V))$ with ${\tt P}_{3i}$ the third row of ${\bf P}_i$ is needed for a correct orientation. We can interpret the points ${\tt M}_i$ as the intersection of the line $\overline{{\tt C}_V{\tt C}_k}$ with the scene geometry. Knowing the 3D coordinates of triangle corners, we can define a plane through them and apply the same rendering technique as described above.

Finally, if the triangles exceed a given size, they can be subdivided into four sub-triangles by splitting the three sides into two parts, each. For each of these sub-triangles, a separate approximative plane is calculated in the above manner. We determine the midpoint of the side and use the same look-up method as used for radiance values to find the corresponding depth. After that, we reconstruct the 3D point and project it into the virtual camera resulting in a point near the side of the triangle. Of course, further subdivision can be done in the same manner to improve accuracy. Especially, if just few triangles contribute to a single virtual view, this subdivision is really necessary. It should be done in a resolution according to performance demands and to the complexity of geometry.


next up previous contents
Next: Experiments Up: Lightfield modeling and rendering Previous: Fixed plane approximation   Contents
Marc Pollefeys 2002-11-22