Graphics Reference
In-Depth Information
y
θ
x
r
(a)
(b)
y
θ
x
r
(d)
Figure 5.18 Sampling rays in a 2D light slab. (a) Six samples in each of the two lines corresponds to
a reasonably dense sampling in 2D line space, shown in (b). (c) An arrangement of four
slabs covers the square fairly well, as shown in (d). (After [Levoy and Hanrahan 96].)
(c)
about 16 MB. In the second stage, the codebook and the collection of indices are
then compressed together using Lempel-Ziv compression (the algorithm used in
“gzip”) . This second stage reduces the toy-lion data to 3.4 MB.
5.4.3 Light Field Rendering
Light field rendering is the process of creating an image of the scene represented
by the light field as it appears from an arbitrary viewpoint. Conceptually, render-
ing an image from a light field amounts to taking a 2D slice of the 4D data, but
in practice it is more complicated. Before the light field can be used, it has to be
uncompressed; only the second compression stage needs to be undone. Given a
virtual camera, the value of pixel
on the image plane is the radiance car-
ried along the line through that pixel to the viewpoint. This line has coordinates
(
(
x
,
y
)
in the line space of an appropriate light slab, so the value can simply be
looked up in the light field. This requires determining the appropriate light slab
if there is more than one. If there is no appropriate slab, then the pixel cannot
be rendered.
Of course, as with any table lookup, the value for the exact parameter set
u
,
v
,
s
,
t
)
(
is not likely to exist in the table. Therefore the value must be inter-
polated from nearby values. The method of interpolation is critical to the qual-
ity of the resulting image, as poor interpolation will result in aliasing artifacts.
u
,
v
,
s
,
t
)
Search WWH ::




Custom Search