Open Collections

UBC Theses and Dissertations

UBC Theses Logo

UBC Theses and Dissertations

Properties of tabulated bidirectional reflectance distribution functions DeYoung, Joel M. 1996

Your browser doesn't seem to have a PDF viewer, please download the PDF to view this item.

Item Metadata

Download

Media
831-ubc_1996-0451.pdf [ 3.45MB ]
Metadata
JSON: 831-1.0051518.json
JSON-LD: 831-1.0051518-ld.json
RDF/XML (Pretty): 831-1.0051518-rdf.xml
RDF/JSON: 831-1.0051518-rdf.json
Turtle: 831-1.0051518-turtle.txt
N-Triples: 831-1.0051518-rdf-ntriples.txt
Original Record: 831-1.0051518-source.json
Full Text
831-1.0051518-fulltext.txt
Citation
831-1.0051518.ris

Full Text

Properties of Tabulated Bidirectional Reflectance Distribution Functions by Joel M . DeYoung B . S . , Harding University, 1994  A THESIS S U B M I T T E D IN P A R T I A L F U L F I L L M E N T O F THE REQUIREMENTS  FORTHE DEGREE OF  Master of Science in T H E F A C U L T Y O F G R A D U A T E STUDIES (Department of Computer Science)  We accept this thesis as conforming to the required standard  The University of British Columbia August 1996 © Joel M . DeYoung, 1996  In  presenting  degree at the  this  thesis in  partial  University of  fulfilment  of  of  department  this thesis for or  by  his  requirements  British Columbia, I agree that the  freely available for reference and study. I further copying  the  her  representatives.  an advanced  Library shall make  it  agree that permission for extensive  scholarly purposes may be  or  for  It  is  granted  by the  understood  that  head of copying  my or  publication of this thesis for financial gain shall not be allowed without my written permission.  Department  of  Compi/v.{;er  ScteiACg-  The University of British Columbia Vancouver, Canada  DE-6 (2/88)  Abstract  One way to overcome the limitations imposed by analytical models of reflection is to use discretely sampled reflectance data directly. T h r o u g h either empirical measurement or simulation, a bidirectional reflectance distribution function ( B R D F ) is acquired that is represented by a table of numbers. T h e generality of these measured B R D F s is useful for generating realistic images, but the inevitable inaccuracy associated w i t h the data gathering process can lead to a B R D F that is more general than it needs to be, or that lacks certain physical properties. This thesis proposes measures for several properties of B R D F s :  reci-  procity, energy conservation, isotropy, and separability. Techniques to transform tabulated B R D F s to match one or more of these properties are also described. These transformations allow compression of the B R D F data, elimination of noise, improved computation time i n some rendering tasks, and improved compliance with physical laws.  11  Contents  Abstract  ii  Contents  iii  List of Tables  vi  List of Figures  vii  Acknowledgements  ix  1 Introduction  1  1.1  Bidirectional Reflectance Distribution Functions  1  1.2  Properties of B R D F s  4  1.3  Outline of the Rest of the Thesis  5  2 Related Work  6  2.1  A n a l y t i c a l Reflection Models  6  2.2  Tabulated B R D F s  8  2.2.1  8  Gonioreflectometers  iii  2.2.2  Ward's Gonioreflectometer  9  2.2.3  V i r t u a l Gonioreflectometers  11  3 Representing and Using Tabulated BRDFs  15  3.1  Tabulated B R D F Samples  16  3.2  B R D F Representation and Interpolation  17  3.2.1  Naive Storage  17  3.2.2  Interpolating Spline  18  3.2.3  B-spline  19  3.2.4  Hierarchical B-spline  19  3.2.5  Spherical Harmonics  20  3.2.6  A d a p t i v e Geodesic Sphere  21  3.2.7  Wavelets  23  4 Measuring BRDF Properties  24  4.1  Characteristics of the Measurements  24  4.2  Properties  26  4.2.1  Reciprocity  26  4.2.2  Energy Conservation  27  4.2.3  Isotropy  29  4.2.4  Separability  30  5 Transforming BRDFs 5.1  34  Transformations  35  5.1.1  35  Reciprocity  iv  5.2  5.1.2  Energy Conservation  36  5.1.3  Isotropy  38  5.1.4  Separability  38  Experiments and Results  39  6 Conclusion  46  6.1  Contributions of this thesis  46  6.2  Future Research  47  Appendix A Principles of Radiometry A.l  A.2  A.3  48  Measuring Light  48  A . 1.1  Radiometry and Photometry  49  A . 1.2  Radiometric Units  49  A.1.3  Foreshortening i n Radiance  51  Reflection from Surfaces  . .  54  A.2.1  The B S S R D F  54  A.2.2  The B R D F  56  A.2.3  Other Measures of Reflectance  57  Further Reading  59  Appendix B Glossary of Notation  61  Bibliography  66  v  List of Tables A.l  S u m m a r y of radiometric units  51  A . 2 Names of the nine types of reflectance  59  B. l  61  Glossary of Notation  vi  List of Figures  1.1  Shading geometry  2  2.1  A simplified version of a gonioreflectometer  9  2.2  T h e imaging gonioreflectometer constructed by Greg W a r d  2.3  Sawtooth microgeometry  13  2.4  Plots of the sawtooth B R D F  13  2.5  A plane rendered with the sawtooth B R D F  13  2.6  Velvet microgeometry  14  2.7  Velvet chair  14  3.1  T h e first few real spherical harmonics  22  5.1  T w o plots of a Phong B R D F (reciprocity)  41  5.2  T w o spheres rendered with the B R D F s from Figure 5.1 . . .  5.3  T w o plots of a P h o n g B R D F (energy conservation)  42  5.4  T w o plots of a Phong B R D F (energy conservation)  42  5.5  T w o spheres rendered w i t h the B R D F s from Figures 5.3 and 5.4. 42  5.6  T w o teapots rendered with an anisotropic B R D F  vii  . .  .  10  41  43  5.7  Plots of three brushed metal B R D F s  43  5.8  Three velvet chairs  44  5.9  Measure of ^-separability of the velvet B R D F  45  A.l  Radiance demonstrated w i t h projected area  52  A.2  Radiance demonstrated w i t h projected solid angle  53  A.3  Geometry of the B S S R D F  55  A.4  Geometry of the B R D F  57  A.5  Directional, conical, and hemispherical solid angles  viii  . . . . . .  58  Acknowledgements First of all, I wish to thank A l a i n Fournier, m y research supervisor, for agreeing to supervise me even while on sabbatical. A l a i n suggested the topic of this thesis and has provided invaluable help w i t h the results. I have learned much from A l a i n ' s way of looking at the world, as he is never afraid to hold conventional wisdom up to the scrutiny of common sense. P a u l Lalonde provided a great deal of help during a l l stages of this work. His patient answers to m y many questions have been a great benefit. P a u l also served as the student reader for this thesis.  John Amanatides of  York University was the second reader for this thesis. M y thanks go to John for his useful feedback and comments. K e v i n Coughlan and Marcelo Walter also deserve my thanks for reading over an almost finished draft. M a n y other members of the Imager Lab were very helpful when I presented various ideas and problems to them. Bob Lewis assisted me with issues relating to physical plausibility, and was also extremely handy with several tools used to prepare the thesis document.  Jean-Luc Duprat always seemed to have the answers to m y many  L^TEXquestions. J i m Varah provided help w i t h details of the singular value  ix  decomposition algorithm. Greg W a r d of Lawrence Berkeley Labs helped w i t h feedback on both gonioreflectometers and B R D F interpolation. Thanks are due to m y office mates: Sijian Zhang, Joseph W u , Jean-Luc Duprat, R o n a l d Beirouti, and B r i a n Fuller, for indulging me w i t h many interesting conversations on topics that were rarely related to computer graphics. Such sessions provided needed diversions from school work. I promised the producers of the C B C Stereo program, Realtime, that I would mention their show i n m y thesis if they would send me a t-shirt. Y o u can hear it Saturday evenings, coast to coast. Check your local listings. T h e y should feel good for helping to clothe a grad student. I wish to thank m y parents for endowing me w i t h a desire to learn, and providing much needed encouragement during every stage of m y education. Finally, thanks to my wife and best friend Michelle, for not only working several jobs to put me through grad school, but also for her enduring support of everything I do. These last two years would scarcely have been possible without her help—and I know they would not have been nearly as fun.  JOEL  The University August 1996  of British  Columbia  M .  D E Y O U N G  Chapter 1 Introduction The computation of reflectance is one of the most fundamental operations in realistic image synthesis. Realistically characterizing how light reflects off surfaces is also one of the most challenging aspects of creating photorealistic computer graphics images. One way to represent the reflectance of a surface is w i t h a reflectance distribution function,  bidirectional  or B R D F . T h i s thesis is written i n the context  of this approach. Section 1.1 gives a more precise definition of the B R D F , and Section 1.2 provides a motivation for the results presented here.  1.1  Bidirectional  Reflectance  Distribution  Functions Consider the geometry in Figure 1.1. Light arriving at a differential surface area dA through a solid angle du>i from direction uj{ is reflected i n some other 1  Figure 1.1: Shading geometry direction uS . T h e amount of reflected radiance L is proportional to the incir  r  dent irradiance E: dL <xdE r  (1.1)  T h e differential incident irradiance dE can be rewritten i n terms of the radiance from U{ and the solid angle gL;,:  dE = Li cos 9idui  (1.2)  T h e constant of proportionality in Equation 1.1 is called the bidirectional reflectance  distribution function, or B R D F . Using the substitution from Equa-  tion 1.2, the B R D F f  r  can be expressed as:  The B R D F is a function i n four variables (a polar and a z i m u t h angle for each of the incident and reflected directions). It is often written as f (0i,4>ii6ri<t>r) to express this dependency explicitly. Note that i n this form, r  f almost fully characterizes the anisotropic reflection of a surface, w i t h several r  simplifying assumptions. The first simplification made i n E q u a t i o n 1.3 is to express the B R D F as independent of wavelength. This is physically incorrect, and means that reflection from surfaces that cause the light to shift i n frequency, such as t h i n film interference, is not included i n this model. Furthermore,, this definition of the B R D F ignores phenomena caused by subsurface scattering, as well as changes in the phase and polarization of the light. It is also assumed that the time between the arrival of the incident light and the emittance of the reflected light is negligible, even though this is not the case i n fluorescent materials. It also should be noted that the B R D F can only characterize opaque surfaces since its domain is the hemisphere above the surface normal. T h e b i directional transmittance distribution function, or B T D F , describes how light travels through a surface. A l l of the results persented here that operate on B R D F s can be analogously applied to B T D F s . Integrating u>, over the hemisphere fi/v surrounding dA results i n the fundamental  reflectance equation, since it expresses reflected radiance i n terms  of incident radiance:  (1.4)  3  1.2  Properties of BRDFs  The simplest and fastest way to obtain a B R D F that can be used i n realistic image synthesis is to derive a closed-form illumination model. Several such models have been widely used for a number of years. However, they often make non-trivial assumptions about the surface reflectance, m a k i n g them incapable of representing some surfaces. As an alternative to using a closed-form i l l u m i n a t i o n model, B R D F s can be measured from physical samples. Since they are obtained experimentally from real surfaces, these measured B R D F s are much more general w i t h regards to the kinds of surfaces they can represent. However, they suffer from the disadvantages associated w i t h physical measurements, including both mechanically and experimentally induced errors. It would be useful to eliminate or reduce the impact of these errors before the measured B R D F s are used i n rendering tasks. For this reason, it would be useful to examine properties of a B R D F that indicated how much error was introduced by the measurement process, so the B R D F data could be corrected. Since measured B R D F s are often very large, it would also be useful to examine properties of a B R D F that indicate how much accuracy would be lost if the B R D F data were compressed by m a k i n g simplifying assumptions about its structure. This thesis proposes techniques for measuring four such properties. T w o of them, reciprocity and energy conservation, are properties that any realistic B R D F should have—since they are defined by physical principles. Measuring  4  these represents an attempt to find and eliminate errors introduced into the data. T h e other two properties, isotropy and separability, are measures of the compressibility of the data, since they are formulated to represent how much error would be introduced by changing the data to possess these properties. The techniques for measuring these properties, as well as the techniques for transforming the B R D F data so that it possesses them, are tools that are useful as a post-processing step after the data is obtained experimentally. These techniques represent the major contribution of this thesis.  1.3  Outline of the Rest of the Thesis  Chapter 2 summarizes research related to the work in this thesis, including a historical overview of closed-form illumination models, and techniques used to obtain B R D F s experimentally. Chapter 3 surveys several ways that B R D F data has been represented and used for rendering tasks, and suggests several new ideas in this area.  Chapters 4 and 5 make up the core results of the  thesis. Chapter 4 defines the measuring schemes for the four B R D F properties: reciprocity, energy conservation, isotropy, and separability, while Chapter 5 explains the techniques for transforming B R D F data to possess one or more of these properties. Chapter 6 summarizes the contributions of the thesis and proposes several areas worthy of further research.  A p p e n d i x A contains an  overview of the principles of radiometry that underlie the work i n this thesis, including a more thorough explanation of the derivation in Section 1.1 above. A p p e n d i x B contains a glossary of notation.  5  Chapter 2 Related Work Approaches to the realistic characterization of reflection fall into two categories: modeling, that is deriving a mathematical representation for light reflection; and measuring, which involves using data obtained through empirical measurement from real world surfaces. This chapter gives a historical overview of these two types of techniques.  2.1  Analytical Reflection Models  E a r l y attempts at approximating realistic B R D F s provided closed-form solutions of the reflectance function. For this reason, these approaches are referred to as analytical  reflection models.  One of the earliest models which is still  widely used today, was proposed by B u i - T u o n g Phong [4] . T h e Phong model 1  'This Vietnamese researcher's name has caused some degree of confusion in the computer graphics community. Bui-Tuong was his hyphenated family-generation name, while Phong was his given name. The fact that his family name was written first on his 1975 illumination model paper caused some to get his family name and given name mixed up.  6  incorporates three parameters representing three types of reflected light: ambient, diffuse, and specular. His model was a great improvement over previous shading algorithms. However, it was based on ad hoc observation of reflectance rather than physical principles. B l i n n extended this model to be more physically accurate [3]. H e based his model on work i n physics by Torrance and Sparrow [34, 35] that was concerned w i t h reflection from roughened surfaces. B l i n n ' s work represented the first i n a long line of physically based approaches to i l l u m i n a t i o n . Cook and Torrance's physically based illumination model [7] was also based on the work of Torrance and Sparrow, but made use of physics results from B e c k m a n n and Spizzichino [2] as well. T h i s was the first model to include wavelength dependence, which was motivated by the difference i n color of the specular highlights on metal surfaces. A l l of the above models are isotropic, meaning that the reflection is constant as the surface is rotated about its normal.  Very few surfaces i n  the real world actually exhibit such ideal behavior. K a j i y a first proposed an illumination model that allowed for anisotropic reflection [21].  P o u l i n and  Fournier presented an anisotropic reflection model based on a microgeometry of parallel cylinders [30]. Several other extensions have been made to these models, most notably the addition of polarized light, which is included in models by Wolff and K u r lander [40] and He et al. [17, 18]. T h e latter is currently the most complex analytical model i n computer graphics.  7  2.2  Tabulated BRDFs  Despite the complexity of the most recent analytical models, there are still many situations where an analytical approach cannot accurately model the reflection from a real world surface. One example is reflection from hair. In such cases, it is desirable to compute reflection from empirically measured data.  This section presents a survey of techniques used to obtain realistic  reflectance data through such measurements.  2.2.1  Gonioreflectometers  A device used for measuring B R D F s is called a gonioreflectometer. version of a gonioreflectometer is shown in Figure 2.1.  A simplified  T h e sample to be  measured is placed i n the center of the device. A light source and detector are moved about the hemisphere above the sample, and measurements of the reflectance are taken every few degrees. T h e output of the device is a table of numbers. For this reason, the data is referred to as a tabulated B R D F . There are several problems w i t h gonioreflectometer devices that restrict their practical use in computer graphics. First of all, they are expensive. O f the relatively few labs i n N o r t h A m e r i c a that have gonioreflectometers, some w i l l accept a surface and make several measurements for several hundred dollars. A full B R D F measurement can easily cost thousands of dollars. Secondly, the number of moving parts in the device can cause the data to be quite noisy, requiring the use of perfectly dark and clean environments. Lastly, the devices  8  Figure 2.1: A simplified version of a gonioreflectometer (copied from [37]) are usually quite slow, requiring several hours to sample an entire B R D F at even a low resolution.  2.2.2  Ward's Gonioreflectometer  In response to the restrictions imposed by gonioreflectometers, Greg W a r d developed a novel implementation of a gonioreflectometer that is relatively fast and inexpensive [37]. Figure 2.2 shows a diagram of what W a r d termed an imaging gonioreflectometer.  T h e sample to be measured is placed at the edge of a half-silvered  hemisphere, facing inward. A collimated light source shines from the outside of the hemisphere onto the sample. A C C D camera w i t h a fisheye lens collects  9  sample holder CCD camera with fisheye lens  z video capture hardware  71  V  Figure 2.2: T h e imaging gonioreflectometer constructed by Greg (adapted from [37]) the light reflected from the sample onto the inside of the hemisphere.  Ward  The  direction of incident reflection is changed by moving the light source about the equator of the hemisphere and by rotating the surface sample about its normal. This device is useful because only two degrees of freedom rely on moving parts.  One image collected by the C C D camera represents a l l the measure-  ments for a given incident direction. This characteristic greatly reduces the amount of time required to collect data for an entire B R D F . For each pixel collected by the C C D camera, transformations must be performed to account for the imperfections i n the hemisphere and the fisheye lens. A s a result, the reflected angles in each sample are nonuniform. T h i s is the biggest obstacle to using data from this device directly. W a r d fit his data  10  to the parameters of an anisotropic Gaussian illumination model and then shaded w i t h this model.  2.2.3  Virtual Gonioreflectometers  A s an alternative to obtaining B R D F data directly, several researchers have simulated gonioreflectometers i n software. This approach is useful since it is inexpensive, and both fast and repeatable. Cabral et al. [5] proposed a method for computing reflectance functions from bump maps. This work was expanded and presented i n detail by Westin et al. [39]. T h e i r approach was to model a small patch of surface with microscopic detail, and then compute the B R D F by casting rays into this microgeometry with a ray tracer. Using this technique the B R D F can be measured to any resolution. T h e resulting tabulated B R D F data is then used directly for rendering. The use of virtual gonioreflectometers to generate tabulated B R D F s has been extended by several researchers [15, 16] to include other effects such as wavelength dependence and subsurface scattering. This approach has several disadvantages. First, it simply reduces the problem to modeling realistic microgeometries. For extremely complex surfaces, this can prove to be quite difficult.  Second, most ray tracers ignore  interreflection between surface elements of the microgeometry. T h i r d , reflections computed i n the virtual gonioreflectometer are dependent on the reflection model used i n the ray tracer. Most ray tracers use relatively simple models  11  of reflection such as Phong shading. Shortcomings of the underlying reflection model may show up i n the resulting B R D F . A v i r t u a l gonioreflectometer was used to generate the examples B R D F s used i n this thesis. Using Optik, a ray tracer developed at the University of Toronto and the University of B r i t i s h C o l u m b i a , several rays were cast into the microgeometry for each sample, distributed i n a jittered fashion about the microgeometry patch. T h e value of the B R D F at a given sample was computed by taking the average of all the jittered measurements. Figure 2.3 shows a simple microgeometry consisting of a sawtooth w i t h alternating red and blue sides. Figure 2.4 shows two plots of the B R D F that result from this microgeometry. T h e black line indicates the direction of i n cident light. T h e colored blobs show the distribution of reflected light where the distance from the origin shows the magnitude of the B R D F . Notice i n the plot on the left that most of the reflected light is red and is reflected back toward the direction of incident light. A s the incident light direction is moved to the other side in the plot on the right, notice the same effect holds, except the reflected light is mostly blue. T h i s is the behavior that is expected from a surface whose microgeometry is like Figure 2.3. Figure 2.5 shows a plane rendered w i t h the sawtooth B R D F . A more realistic microgeometry is shown in Figure 2.6. T h e stochastically perturbed cylinders represent a velvet surface.  Figure 2.7 shows the  results of applying the velvet B R D F over a surface representing cloth draped over a chair.  12  Figure 2.3: Sawtooth microgeometry  Figure 2.4: Plots of the sawtooth B R D F . left to right: (<& = 30°, 0 = 0°). (4>i = 30°, 0* = 180°) {  Figure 2.5: A plane rendered with the sawtooth  13  BRDF  Figure 2.6: Velvet microgeometry  Chapter 3 Representing and Using Tabulated BRDFs One of the largest hurdles to overcome when using tabulated B R D F s for rendering tasks is choosing a representation of the data that stores the samples in an efficient way, and provides a reasonable way of interpolating between the samples. This chapter gives a cursory overview of several such techniques. Some of these have been used before, while others are merely suggestions of techniques that may be worthwhile of further study. It is important to note that the purpose of this chapter is to supply the reader w i t h an idea of some of the practical issues involved i n using measured B R D F data. N o attempt is made to perform a thorough evaluation and comparison of the techniques presented. Such an undertaking is beyond the scope of this thesis, and would require a great deal of further study.  15  3.1  Tabulated B R D F Samples  W h e n a tabulated B R D F is sampled on a uniform grid, the samples are usually stored lexicographically i n the number of samples nj  r  fa,  fa,  and 6 directions. In this case, the r  is the product of the number of samples i n each of these  directions, which are n^,  n ^ , n$ , and ng T  n  fr  respectively.  r  (3.1)  = n^n n^ ne ei  r  r  In the case of non-uniform samples, each of the n /  r  samples is charac-  terized by a 5-tuple, the j t h sample being: (fa^e^fa^e^Mfa.,  o ,0 ,o )) t]  rj  (3.2)  rj  Suppose the samples are uniform in the incident direction, but are non-uniform in the reflected direction. Recall that this is the case w i t h data returned from Ward's imaging gonioreflectometer [37]. In this case, the samples are referred to as semi-uniform.  If the situation is reversed, w i t h non-uniform samples  in the incident direction and uniform samples in the reflected direction, then semi-uniformity still holds. Under an assumption of reciprocity , the incident 1  and reflected directions can be reversed. Semi-uniformity can be exploited i n a variety of situations, which will be explained in Chapter 4. The problem of interpolating between non-uniform or semi-uniform samples is a difficult one.  In the general non-uniform case, evaluating the  B R D F at an arbitrary position using the samples themselves involves interpolating non-uniform samples in four dimensions. W h e n building other represen1  Reciprocity is covered in Section 4.2.1.  16  tations of the B R D F from the tabulated data, as presented below, a technique to interpolate between non-uniform samples is also needed, at best i n two dimensions.  W h i l e this problem is discussed somewhat i n Section 3.2.1, it  demands further investigation. Several of the techniques presented below consider the problem of defining a continuous surface over the domain of the hemisphere using the B R D F as a distance function. T h i s is referred to as a BRDF  surface. Approaching the  interpolation problem i n this way reduces it to a surface representation problem. However, when using this approach, each B R D F surface only represents the B R D F for one incident direction.  3.2  B R D F Representation and Interpolation  3.2.1 The  Naive Storage  most naive B R D F representation involves simply storing the samples  themselves. In the uniform grid case, they are usually stored i n some meaningful lexicographic order. In the non-uniform grid case, the order is arbitrary. To obtain values of the B R D F between the sample points, an interpolant must be introduced. In the uniform sample  quadrilinear interpolation  scheme can be used. Using the four sample positions around both the incident and reflected directions results in a 16 sample hypercube that is used i n the interpolation. W h i l e quadrilinear interpolation is extremely fast, it does not  17  provide tangential continuity of the B R D F surface. This lack of continuity can sometimes cause visible artifacts i n the rendered image. The non-uniform grid case presents the difficult problem of interpolating between non-uniform samples. One technique is to take the j samples that are closest to the desired sample position (where j is sufficiently large) and to interpolate them with a suitable filter kernel. A useful choice i n this case is a quadrivariate Gaussian w i t h a standard deviation on the order of the mean distance of the sample points from the desired point. T h i s non-uniform interpolation technique raises the issue of how to compute distance between sample points: both when choosing the j closest samples, and when computing the distance between a sample point and the point being evaluated. A naive solution would be to simply use the Euclidean distance between the points on the unit hemisphere. More complex approaches may yield better results, but such a determination necessitates further investigation.  3.2.2  Interpolating Spline  Another way of representing the B R D F is by fitting an interpolating spline surface through the sample points. T h e spline can be computed i n a variety of forms, including tangentially continuous and non-tangentially continuous. This representation is chosen to provide smooth interpolation between the sample points, but its m a i n disadvantage is that interpolating splines often  18  oscillate undesirably. T h i s introduces high frequency errors i n the data that can show up as visible artifacts in rendered images.  3.2.3  B-spline  A n alternative representation is to use the uniformly sampled data points as the control mesh of a B-spline surface.  This has an advantage over the  interpolating spline approach in that the values between the sample points are interpolated smoothly. T h e m a i n disadvantage to this approach is that the B R D F values at a sample point are not the original measured values at that point. However, as long as the sample points are sufficiently dense relative to the curvature of the B R D F surface, the relative error w i l l be negligible.  3.2.4  Hierarchical B-spline  Hierarchical B-splines were first introduced by Forsey and Bartels [10] and have been used effectively as an approach to facial animation. Hierarchical B-splines are B-spline surfaces w i t h multiple levels of refinement. Areas of the surface that are very smooth are represented with a coarse control mesh, while the control mesh is denser in areas of greater detail. This representation of the B R D F surface may be beneficial since B R D F data often has different amounts of detail at different areas of its surface. Wong proposed a technique using a least squares approach to compute a hierarchical B-spline from a dense set of points on a surface [41]. T h i s technique could be used on a B R D F to generate a hierarchical B-spline representation of  19  the data, which would not only greatly reduce storage costs, but also provide a smooth interpolant.  3.2.5  Spherical Harmonics  Spherical harmonics have often been employed i n representing  measured  B R D F s i n computer graphics [5, 33, 39]. Spherical harmonics are the two dimensional analogue of the Fourier series on a sphere.  A n y function defined on the sphere / , such as a B R D F  surface, can be represented by an infinite series of spherical harmonic basis functions. /  oo  /(M) = £  ;=o  £  C,,  m  lWM)  (3-3)  m=-l  In the above equation, V/ (#,</>) is the spherical harmonic basis function of iJn  order / and degree m , and C /  ) T n  is some constant.  O f course i n practice the  function must be approximated by a finite number of terms. The spherical harmonic basis functions are defined as Ni Pi (cos6)cos(m<j>) <m  <m  Yi, {6,4>) = < Ni, Pi {co&e)'/y/2 m  m  <m  Ni Pi \ \(cos6)s'm(\m\4>) tm  t m  if m > 0 if m = 0  (3.4)  if m < 0  where ^ V / is a normalizing constant defined as im  {21 + ! ) ( / - \m\)\ \|  27r(/+|m|)!  20  (3.5)  and Pi, (t)  are the associated Legendre polynomials,  m  Po,o(t)  =  1  Pm,m(t)  =  (1 - 2 m ) V l - * P m - l ,  (t)  =  t{2m +  P  Ut)  =  2  T O  defined by the recurrence  -l(0  , (3.6) x  l)P , (t) m m  P,-l,m(t)  ~ ( ^ )  Pl-2,m(t)  Plots of the first few real spherical harmonic basis functions can be found i n Figure 3.1. W h e n fitting a function to a spherical harmonic representation, constants C /  > m  the  must be found. Since the spherical harmonic basis functions  are orthogonal, this can be done by taking the inner product of the function / and the appropriate basis function, and integrating that expression over the sphere [24]. Ci, = m  /*27T r-K / f(e,<j>)Y,, (0,<f>)sinOded<l> Jo Jo m  (3.7)  There are several drawbacks to using spherical harmonics to represent BRDFs.  F i r s t , high frequency effects, which often occur i n B R D F data as  specular reflection, require a large number of terms to represent accurately. In addition, the symmetry of the spherical harmonic basis functions imposes symmetry in the reconstructed B R D F data, requiring a large number of terms to accurately represent B R D F s with asymmetric features.  3.2.6  Adaptive Geodesic Sphere  Gondek et al. used an adaptive geodesic sphere approach to represent the B R D F [15]. Subdivision of a facet of the geodesic sphere into four subfacets 21  1=0, m=0  1=3, m=0  1.3, m=1  l = 3  .  m  =  2  Figure 3.1: Plots of the first few real spherical harmonic basis functions  22  was made whenever the root mean squared difference of those four samples was above some error tolerance. Bilinear interpolation on the four closest samples was performed to evaluate the B R D F at an arbitrary position.  3.2.7  Wavelets  Wavelets are basis functions that are useful for representing signals that contain a great deal of high frequency information in some areas, but very little in others [25]. T h i s property makes wavelets attractive as a representation for B R D F data. Wavelets can be formulated to represent functions on the sphere, m a k i n g them applicable to the B R D F representation problem. Schroder and Sweldens used B R D F s as an example of their technique for representing functions on the sphere w i t h wavelets [32]. Their approach only represented the B R D F for one incident direction, however. Lalonde proposed solutions to the more general problem of representing the entire four-dimensional B R D F w i t h wavelets [22]. B o t h of these approaches to the representation problem allow for a great deal of compression with relatively little error.  23  Chapter 4 Measuring B R D F Properties In this chapter, several schemes for measuring properties of tabulated B R D F s are presented.  Section 4.1 begins w i t h a general discussion on measuring  B R D F properties. T h e four measurements, which are reciprocity, energy conservation, isotropy, and separability, are then denned i n Section 4.2.  4.1  Characteristics of the Measurements  Reciprocity and energy conservation express how closely the B R D F obeys physical laws. Lewis termed this physical plausibility  [23]. A B R D F that is  not physically plausible will not necessarily produce unrealistic looking i m ages, but in some tasks, such as physically based global i l l u m i n a t i o n , physical plausibility may be a prerequisite to rendering. In theory, measured B R D F s should always be physically plausible by virtue of the way they are created. However, systematic errors or noise can be  24  introduced by a gonioreflectometer, causing the resulting B R D F to be i m p l a u sible. B R D F s obtained w i t h a v i r t u a l gonioreflectometer may lack plausibility because of shortcomings i n the underlying reflection model used to reflect light into the microgeometry. Measurements of reciprocity and energy conservation and the corresponding transformations explored i n Sections 5.1.1 and 5.1.2 are attempts to measure and eliminate the consequences of these shortcomings. Isotropy and separability can be thought of as measures of compressibility, since the associated transformations detailed i n Sections 5.1.3 and 5.1.4 result in considerable savings in storage space. Another way to think of these two measurements is as the amount of relative error introduced by the corresponding transformations i n Sections 5.1.3 and 5.1.4. It should be noted that these measurements do not represent an attempt to measure how much effect these B R D F properties w i l l have on generated images, but strictly to measure the properties themselves. T h i s is an important distinction, since the former is so highly dependent on rendering parameters. The shape of an object, the lighting, and the viewing position can a l l greatly affect the extent to which these properties show up in an image. Measuring these effects would necessitate a separate investigation. For consistency, each of the measurements has been formulated such that a value of zero implies that the B R D F fully possesses the given property. Each of the measurements can vary from zero to infinity. T h e values obtained from these measurements are not dependent on the number of samples, mean-  25  ing that measurements from two tabulated B R D F s of different resolutions are comparable. Each of these measuring techniques works directly on the samples obtained from a gonioreflectometer or equivalent device, as described i n Chapter 2. If it is desired that the B R D F be stored using some other representation, these measurements, and their corresponding transformations in Chapter 5, must be performed as an intermediate step before fitting the measured data to the desired representation.  4.2  Properties  4.2.1  Reciprocity  Helmholtz's reciprocity rule states that if the incident and reflected directions are reversed, the value of the B R D F should not change [36]. In the case where for every incident sample position (fa,6i) there is a reflected sample position (fa,6 )  such that fa = fa and #, = 6 , then the reciprocity can be measured  r  r  by averaging the square of the difference between a l l pairs of incident and reflected directions. T h i s is achieved with the sum  Pr  =  E*  Efc  E*  r  E*  r  [fr(fa,  0i, fa, Or) ~  fr(fa,0r,fa,9 )]  2  l  Notice that an additional factor of 2 is placed in the denominator to account for the fact that each pair actually occurs twice i n the sum, i.e. f (<j> ,0 ,fa,0i) r  r  r  and  f (fa,6 ,fa,0 ) r  r  l  -  f (fa, r  26  6>, t  fa,  6 ). r  f (fa,0i,fa,Q ) r  r  ~  W h e n the samples are on a uniform grid, but are not necessarily matched as specified above, then the value of f ((f> , 0 , <f>i, #,) can be computed r  r  r  using quadrilinear interpolation as described i n Section 3.2.1. If the samples are on a non-uniform grid, then the reciprocal can likewise be computed using a non-uniform interpolation method such as i n Section 3.2.1. It should be noted that an assumption of reciprocity is sometimes made when measuring B R D F s from physical samples to reduce the number of samples required. In this case, P w i l l necessarily be zero. r  4.2.2  Energy Conservation  T h e law of energy conservation, which is a direct consequence of the Second Law of Thermodynamics [27], says that the total amount of exitance M must be less than or equal to the total amount of incident irradiance E. For a given incident direction u>i, the ratio of M to E is expressed as  (4.2)  For a B R D F f  r  to conserve energy,  must be less than or equal to one for  all possible values of cu, . 1  Notice that an integral over the hemisphere is equivalent to a double integral over the polar and azimuth angles. Recall that the integral i n E q u a tion 4.2 is i n terms of the reflected solid angle dio , which is not uniform as 6 r  r  varies. Noting that du> = dO dcf) s'm6 and that (N -uj ) = cos# , the integral r  r  r  r  'The fraction Hr is sometimes referred to as albedo.  27  r  r  can be expressed as M  (4.3)  E  W h e n the samples are uniform i n the 6 and <p directions, the integral in E q u a t i o n 4.3 can be approximated w i t h a sum.  For consistency, one is  subtracted from the resulting integral so that energy conserving behavior w i l l be expressed as zero. T h i s yields  r ( & , 0 O = m a x ( 0 , £ £ [ / ( & , 6 i , c / > , 6 ) sin6 cos0 A<j> A9 ] - 1) r  r  r  r  r  r  r  (4.4)  4>r e  r  where A<£ and A # are the radian distance between samples i n the reflected r  r  (f> and 6 directions respectively. To determine energy conserving behavior of the entire B R D F , the average of all T values is taken, giving a final measure.  p 1  -  E , E , TWA) 0  g  (4.5)  ec —  Notice that there is no need to assume that the samples are uniform i n the <p and 6i directions. T h i s means that this measurement can be used for both x  uniform and semi-uniform sample grids. W h e n the samples are collected on a non-uniform grid, the integral must be approximated i n some other way. A good method i n this case is to triangulate i n 2D the set of samples for a given incident direction u?;. For each of these triangles, Equation 4.2 is the "differential-to-finite form factor" between the triangle and the infinitesimal surface element dA.  T h i s can be  computed using classic methods from the field of radiative transfer theory such 28  as the Nusselt analog [29]. T h e integral F(fa,9i)  is then obtained by s u m m i n g  the terms from a l l of the triangles.  4.2.3  Isotropy  In general, B R D F s as described i n Equation 1.3 are anisotropic, meaning that the value of the B R D F can vary as the surface is rotated about the normal N. In contrast, an isotropic B R D F remains constant under such a rotation, and can be expressed as f (fa, r  6 fa, 0 ) = f (9 ,  fa  so  U  r  r  l  - fa, 0 )  (4.6)  r  This simplification can reduce storage and computational costs considerably, reducing the total number of samples i n E q u a t i o n 3.1 to n  = n^n^n^  Ir  (4.7)  To measure the isotropy of a tabulated B R D F i n the simple case where n<t>, = <t> , the average B R D F value for the set of angles where the difference n  r  between fa and fa is the same is computed. T h e shorthand cf> = fa — fa is +  used to denote this difference. ^ ^  +  , g  r  ) = ^  /  r  (  ^  (  5  >  ,  ^ <t>. f  +  0  +  >  g  r  (4.8)  )  n  Isotropy is related to the average deviation from the mean HtXMiAAi  expressed as  + <ft+A)-/*,-(%, < M r ) l  (Ti(0i, 4>+, 6 )  2 ( 4  9 )  nA  r  This is equivalent to taking the standard deviation of a l l B R D F values for a given  (6i,<f) ,6 ). +  r  29  To obtain the final measure of isotropy, the average of a l l <r,- values over all possible values of (9{,<f) ,9 ) +  r  p. _ Ee,  is computed. Eg  r  cn{0i,(l>+,9 ) r  In the case of non-uniform samples, it is necessary to choose a set of <f>+ values, and for each sample value compute f (4>i,9i,<f)i + 4>+,9 ) using the r  r  interpolation method described i n Section 3.2.1. T h e resulting set of B R D F values can be used i n the computation of / i , i n E q u a t i o n 4.8.  4.2.4  Separability  To say that a B R D F is separable means that it can be represented as a product of two functions, one for the incident light and one for the reflected light.  MiA^Or)  = fTtfiA)  X fr\<t>r,0r)  (4.11)  This removes the cross-dependence between the incident and reflected directions, thereby requiring much less storage space.  n  fr  = n^ne, + n ^ n ^  (4-12)  A n additional benefit is that radiosity computations, like those described by Cohen and Wallace [6], can be done efficiently w i t h non-Lambertian surfaces [26]. For the discussion of separability, an assumption of the existence of matching sample pairs is made, as i n Section 4.2.1. If this is i n fact not the case, the missing pairs can be generated using the interpolation techniques 30  described i n Section 3.2.1. O f course, i f one assumes that reciprocity holds, then the required values can be generated trivially. Consider aQxQ  m a t r i x A where the rows correspond to a lexicographic  ordering of the pair (<£,•,#,•), and the columns correspond to a lexicographic ordering of the pair (<f) ,8 ) .  If the m a t r i x A is filled w i t h the B R D F values,  2  r  r  the two separated functions / * " and f°  can be thought of as two vectors u  ut  and v whose outer product results in A. To find u and u, A must be factored. T h e singular value decomposition ( S V D ) numerical technique is ideal for this, since it provides a measure of how close to factorable A is, as well as actually determines the most probable values for u and v (see Section 5.1.4) . 3  T h e singular value decomposition separates A into three matrices.  A = UDV  (4.13)  T  In the above equation, U, V  T  and D are a l l Q x Q matrices. D is a diagonal  matrix containing the singular values of A (in descending order). T h e number of non-zero elements in D specifies the rank of A. T h e rank of A is important because it indirectly indicates how close A is to being separable. If A has a rank of one, meaning that D is zero except for d , n  solution for u and v, and the B R D F is separable.  then there is an exact To measure how close to  Note that in the case of a reciprocal BRDF, the matrix A will be symmetric. For more details on the SVD, the reader is directed to the book by Watkins [38]. Code implementing SVD can be found in Numerical Recipes [31]. 2  3  31  separable the function is, it is necessary to define another Q x Q m a t r i x d  n  0  •••  0  0  0  •••  0  0  0  0  0  D^.  (4.14)  is then substituted for D. Performing the m u l t i p l i c a t i o n i n E q u a t i o n 4.15 results in nature of  the m a t r i x of rank one based on A.  Notice that the sparse  allows this multiplication to be performed quickly. W  A  =  U  D  W  V  T  The magnitude of the difference between A^  (4.15) and A gives a measure of sepa-  rability. T h i s magnitude is measured i n a way that is similar to the Frobenius norm of the difference m a t r i x [14], except that each term i n the sum is divided by the total number of elements in the m a t r i x . This removes the dependence of P on the number of samples in the tabulated B R D F . s  P,  EE 7" V n ^ n , n  [y4.pg — Pi. e  0 r  n  (4.16) f l r  In the S V D , A is expressed as a weighted sum of outer products of the columns of U and the rows of V , T  with the singular values i n D acting as  weights. Equation 4.16 only deals with expressing A as the product of the first such column and row. Fournier showed in [11] that expressing a B R D F as a sum of separable function products is desirable: the advantage of improved radiosity computation is not lost, and a larger subset of a l l B R D F s can be separated.  If a B R D F can be expressed as a sum of k separated function 32  products, it is said to be fc-separable. T h e fc-separated B R D F is reconstructed as:  f {faAArX)  = Y\fi  (4.17)  xfr ]  n(3)  r  t[j)  To measure ^-separability, it is necessary to find the closest m a t r i x of rank k to A.  T h i s is done by removing all but the k largest singular values  from D. d  (k)  D  =  n  0  0  0  0 • •  0  0  ^22  0  0  0 • •  0  0  0  0  0 • • 0  0  0  dkk  0 • • 0  0  0  0  0 • • 0  0  0  0  0 • •  0  A re-multiplication is then performed to get the rank k m a t r i x  A^  =  UD^V  \A  {k)  33  A^ \ k  (4.19)  T  This provides a measure of the ^-separability  (4.18)  P^ \ k  -  A  (4.20)  Chapter 5 Transforming BRDFs It may be desirable to change a tabulated B R D F to possess one or more of the four properties covered in the previous chapter. Doing so w i t h the properties of reciprocity and energy conservation makes the B R D F physically plausible. Doing so w i t h the properties of isotropy and separability compresses the B R D F by changing the data to fit these two simplifying assumptions. It may also be desirable to change the B R D F to be closer to possessing a certain property, placing it intuitively in between the original B R D F and one fully possessing the property. T h e constant 5 indicates how close to a given property the B R D F should be. Each section of this chapter first shows how to transform a B R D F to fully possess the property  = 1), and then generalizes  the technique to allow for more gradual transformations (0 < S < 1). If the values of the B R D F are obtained experimentally, then they may come w i t h an error estimate. In this case, all of the linear combinations used  34  below should be changed to weighted sums, where the normalized weights are inversely proportional to the estimate of the errors at each data point.  5.1  Transformations  5.1.1  Reciprocity  To make a tabulated B R D F reciprocal, each value of the B R D F is set to the average of itself and its reciprocal. fr/X a X a \ J \<Pi,Vi,<Pr,Vr) = r  /r(<fc, Oi, 4>r, Or) + /r(<ftr, Or, 4>i, Oj) ^  n  t  5 , 1  /  M a k i n g the B R D F more reciprocal is achieved by linearly interpolating between a given sample and the average between that sample and its reciprocal. This is expressed as  /;(<&, Bi, <f> ,e ,s) = (ir  r  ( j ) / ( & , 0,-, 0 , o ) + srM, r  r  r  e » e  r  )  (5.2)  As mentioned above, these values can be weighted according to their error estimates. T h i s is especially important in the case of irregular samples, since in general one value will be measured and its reciprocal w i l l be the result of non-uniform interpolation, giving it a different confidence interval. E s t i m a t i n g the confidence interval for the interpolated values is a non-trivial problem without an underlying reflection model, since a model would have to be available to determine the confidence interval at an arbitrary sample position.  35  5.1.2  Energy Conservation  If a tabulated B R D F does not conserve energy, it is because the total energy reflected is greater than the total energy received. It therefore seems natural to reduce every B R D F value associated w i t h a given incident direction by a scalar sufficient to ensure energy conservation. For a given incident direction, this can be thought of as uniformly reducing the "size" of the B R D F . Recall the definition of T(<f>i,6i) i n E q u a t i o n 4.4. It is necessary to divide each B R D F value by a scalar x that w i l l make !?(</>,•,#;) exactly zero. £  0 r  ^£*  r  Ze [  / r ( 0  r  " ; g  0 r  '  g r )  sin 6 cos 9 AfaAO,) r  Ze [fr(<f>i,0i,<f>r,O )sm0 cos9 r  r  - 1 =0  r  r  AfaA6 ]  r  r  =1 (5.3)  X  E ^ , £ [/r(^,fl;,<*r,0r)sine cosfl r  er  r  A0 A0 ]  r  r  r  x = r(&,0O + i Therefore for a given incident direction, the factor is simply r(<&, 0j) + l , resulting i n the definition for an energy conserving B R D F .  To transform a tabulated B R D F to be closer to conserving energy, T(<j)i,6i) is simply m u l t i p l i e d by S. ft  A,  a  A  0  X\  f {faAArA,S)= r  fr{<j>i,0i,<f>r,0r) 5  m  A  ) +  l  It could be argued that this technique is somewhat artificial.  It only  changes those incident directions that violate energy conservation b y scaling  36  the data down to the m a x i m u m that is theoretically plausible. There are two m a i n problems w i t h this. First, the scaling operations that are performed are not uniform since the scalar is different for each incident direction. T h i s causes differences i n the data that may be noticeable i n rendered images. T h i s undesirable effect would be particularly striking i n an animation where a sequence of images contained shading computations that used a variety of incident directions, each of which was transformed by a different scaling factor. Second, scaling the data to make ^ have a value of exactly one m a y obey physical laws, but the case could be made that it is not realistic. N o surface i n the real world exhibits such ideal behavior. Even the most perfect reflectors ever observed have values of ^ less than one [19]. T h e first concern can be addressed by choosing one scalar value for the entire B R D F . T h i s scalar would be chosen based on the m a x i m u m of a l l values of r((£,-, #,•), changing Equation 5.4 to /  e c r  fr(<f>i,9i,<t>r,0r)  (<&,0 0 ,0 ) n  r  (5.6)  r  T h e second concern can be dealt with by clamping ^ to some value r such that 0 < r < = 1. T h i s changes the definition of Y{4>i,9i) i n E q u a t i o n 4.4 to r(<M0 = max(O,££[/ (0 ,0 ,^ ,0 )sin0 cos0 r  1  1  r  r  r  r  A < £ A 0 ] - r) r  r  (5.7)  e,  T h e energy conserving B R D F is then computed by changing E q u a t i o n 5.4 to T  • fr{<f>i,0j,(/)r,9r) n<f>i,0i) + r  37  (5.8)  5.1.3  Isotropy  Transforming a tabulated B R D F to be isotropic is very simple. T h e average B R D F value yu; from E q u a t i o n 4.8 is used for a l l values w i t h the same d> . +  T h i s yields /**°(0,-,0 ,0 )=Ax,-(0,-,^ ,0 ) +  r  +  (5.9)  r  To make a tabulated B R D F more isotropic, the value is linearly interpolated between f and r  This results i n + S li(e <f> -4> ,0 )  f (<f>iA,<t>rAJ) = {l-S)f (<f>iA,<f>rA) r  5.1.4  r  r  r  U  i  r  (5.10)  Separability  Recall from Section 4.2.4 that separating the B R D F is equivalent to factoring a m a t r i x A into the outer product of two vectors u and v. W h e n a l l but the largest of the singular values i n D are zeroed, it becomes evident that the only numbers affecting A^  are the first column of U and the first row of V . T  Therefore, u is taken to be the first column of U, and v the first row of V . T  This gives a definition for f™ and  f° . uti  f (<j>iA) = d u  (5.11)  n  r  n  p  fr (<t>rA) = v  (5.12)  t  q  F i n d i n g the jth separated component simply involves using the jth column of U,  and the j t h row of V , T  f {<t>iA) = d uW nU)  r  1  jj  ( 5  In Equations 5.11 through 5.15, p = (j>itie + 0,- and q = <t> ng + 9 . i  38  r  r  r  .  1 3 )  (5.14) This is identical to Fournier's technique of separating a B R D F into a sum of A; separated components [11]. If a value of 5 < 1 is chosen i n order to make a B R D F closer to kseparable, it is obvious that f  cannot be separated into f*  n  r  and f° , ut  but the  partially transformed B R D F is expressed as  / ; ( 0 „ 6i,fa,e ,s) = (i- 8)A + &A$ r  5.2  PG  (5.15)  Experiments and Results  Figure 5.1 shows an example of performing a reciprocity transform on a P h o n g B R D F where P  r  = 0.117646.  Lewis showed in [23] that P h o n g shaders  are never reciprocal. Performing the transformation resulted i n a noticeable change in the B R D F data, but the resulting rendered spheres i n Figure 5.2 are virtually identical. Differences i n P do not seem to affect rendered images a T  great deal. Figure 5.3 demonstrates a transforming a B R D F to conserve energy. A t the left is a plot of a Phong B R D F where P  ec  = 0.160301 (0, = 5 0 ° ) , and at  the right is the energy conserving version. T h e reduction in size is more subtle than i n Figure 5.4, where the incident polar angle is larger (0, = (90 — e)°, for some small e).  This is exactly what is expected since Phong's energy  conserving behavior becomes worse at large incident polar angles. Figure 5.5 shows spheres rendered with these two B R D F s .  39  A g a i n , the visual difference  is negligible. However, the underlying difference between the two  BRDFs  is very important, especially i f the B R D F s are used i n global i l l u m i n a t i o n computations. Figure 5.6 shows an example of a B R D F transformed to be isotropic. This anisotropic B R D F that simulates brushed metal was generated by running a microgeometry of parallel cylinders through a v i r t u a l gonioreflectometer . T h e resulting isotropy measurement was P; = 0.0319745. 2  O n the left  teapot, notice the specular highlight running along the base. T h i s corresponds to the scratches i n the brushed metal surface. O n the right teapot, the B R D F has been transformed to be completely isotropic (8 = 1.0).  Notice the dif-  ference in the specular highlight. Figure 5.7 shows plots of several scratched metal B R D F s .  T h e one on the left is the original B R D F used i n Figure 5.6.  T h e one on the right is the isotropic version of that B R D F . T h e m i d d l e one is halfway between the other two (5 = 0.5). Figure 5.8 demonstrates separating a B R D F . T h e microgeometry i n Figure 2.6 was used to obtain a velvet B R D F , which was used to render the top chair. It was then separated (k = 1) and used to render the bottom-left chair. T h e bottom-right chair was rendered w i t h a version made up of a sum of five separated components (k — 5).  Notice that this version is virtually  indistinguishable from the original, yet the B R D F only requires 4.4% of the storage space! Figure 5.9 shows the value of P^  for the velvet B R D F as k  increases. Curves for other B R D F s exhibited similar behavior.  The use of parallel cylinders to simulate brushed metal was inspired by the work of Poulin and Fournier [30]. 2  40  Figure 5.1: Two plots of a Phong B R D F (fa = 0°,8 a reciprocity transformation  t  = 50°), before and after  Figure 5.2: Two spheres rendered with the B R D F s from Figure 5.1  II  Figure 5.3: T w o plots of a Phong B R D F (fa = 0°, 6>- = 50°), before and after an energy conservation transformation 2  z  z  Figure 5.4: T w o plots of a Phong B R D F (fa = O°,0; = (90 - e)°), before and after an energy conservation transformation  Figure 5.5: T w o spheres rendered with the B R D F s from Figures 5.3 and 5.4. 42  Figure 5.6: T w o teapots rendered with an anisotropic B R D F brushed metal and the transformed isotropic version  Figure 5.7: Plots of three brushed metal B R D F s formed to be isotropic with different 8 values  13  representing  = 0°, 0 = 20°) transt  Figure 5.8: Three velvet chairs  1 1  45  Chapter 6 Conclusion 6.1  Contributions of this thesis  This thesis has proposed techniques for measuring four properties of B R D F s : reciprocity, energy conservation, isotropy, and separability. A s well, methods for transforming B R D F data to possess those properties have been presented. There are several useful features of these techniques. F i r s t , the B R D F data can be compressed by exploiting the properties of isotropy and separability. Second, noise introduced into the data by a gonioreflectometer, or errors caused by the shortcomings of a virtual gonioreflectometer, can be eliminated by ensuring that the B R D F be reciprocal and conserve energy. T h i r d , physical plausibility of a B R D F can be guaranteed i n situations where these properties are a prerequisite to rendering. Finally, transforming a B R D F to be separable allows radiosity computations to be performed efficiently for non-Lambertian  46  surfaces, allowing more complex surfaces to be rendered using this popular technique.  6.2  Future Research  W h i l e the primary contributions of this thesis are the properties and transformations described in Chapters 4 and 5, several related issues have been touched upon that demand further investigation. T h e differences in the techniques for B R D F representation and interpolation presented i n Chapter 3 are of interest.  Namely, a comprehensive  comparison of the different storage schemes should be carried out.  Further-  more, the interpolation techniques for non-uniform and semi-uniform samples should be studied further. There is a great deal of literature on non-uniform sampling and interpolation. Research that investigated how work i n this field applied to the non-uniform B R D F interpolation problem would be useful. T h e property measurements and transformations themselves are rather ad hoc.  T h i s is especially evident when considering the variety of options  presented for transforming a B R D F to conserve energy (Section 5.1.2).  It  would be interesting to conduct a more rigorous comparison of these techniques to determine which is more useful i n different contexts.  Furthermore,  the possibility of using non-linear interpolation i n a partial transformation (where 0 < 6 < 1) should be examined, since the only techniques presented here linearly interpolate between the original and transformed B R D F values.  47  Appendix A Principles of Radiometry This section overviews the radiometric principles underlying this thesis. Basic concepts and definitions of radiometric units are provided i n Section A . l . I m portant principles related to the reflection of light from surfaces are covered in Section A . 2 . Section A . 3 suggests some additional references.  A.l  Measuring Light  This thesis revolves around modeling light and reflection based on physical principles. Such an undertaking is driven by concepts i n the field of radiometry. Radiometry is itself based on the abstract physical models of transport theory. Transport theory was developed to explain the behavior of particles flowing  in three dimensions, and is therefore applicable to many disciplines.  Glassner gives an excellent overview of transport theory as it relates to computer graphics [13].  48  Radiometry can be thought of as a specific application of transport theory, where the particles being studied are photons, and their behavior is constrained by their unique properties.  A.1.1  Radiometry and Photometry  T h e field of radiometry has i n some sense been motivated by the much older field of photometry. Like radiometry, photometry is concerned w i t h the nature of light, but specifically in relation to its effect on the human visual system. Radiometry is the study of light energy and reflection independent of the characteristics of any particular detector. W h i l e it is important to be aware of how the human visual system responds to light, incorporating such factors into an otherwise objective study of light makes things drastically more complex.  A . 1.2  Radiometric Units  T h e most basic radiometric unit is radiant energy, denoted Q, which is measured in joules. For a given wavelength A, each photon can be thought of as having a constant amount of energy, determined by Planck's constant h and the speed of light in a vacuum c.  <? = y  [J]  (A.l)  Considering the amount of energy that flows through a surface per unit time yields a measure of radiant flux or radiant power. It is denoted by 3>, and  49  is measured i n watts, or joules per second. dQ  W =  dt  J  (A.2)  To consider how light interacts w i t h surfaces, it is necessary to have a measure of radiant flux per unit area. T h i s measurement is called radiant flux area density , and is denoted by £. 1  d$  W  dA  Lra'  (A.3)  Measuring radiant flux area density is more interesting and useful when it is clear whether the measure refers to a surface receiving energy or e m i t t i n g energy. If the energy is arriving at a surface, it is referred to as  irradiance,  and denoted by E. W  E  dA  (A.4)  77T  If the energy is leaving a surface, it is referred to as the exitance M. In some computer graphics literature, exitance is known as radiosity and denoted w i t h B. d$ M  =  B  rw i  = TA  [£]  <-» A  5  It is sometimes useful to express a ratio of radiant flux to solid angle rather than radiant flux to area, since point light sources, which are common in lighting models, have an area of zero. T h e ratio of radiant flux to solid angle is known as the radiant intensity, and is designated w i t h / .  / =  [W du  sr  (A.6)  ^he ANSI/IES standard [20] does not have a notation for generic radiant flux area density, since irradiance and exitance are used more in practice.  50  Symbol Q  E M I L  Name radiant energy radiant flux (power) radiant flux area density irradiance exitance radiant intensity radiance  Definition hv dQ/dt d$/dA d$/dA d$/dA d$/cko d $/(du; • dA) 2  Units J J/s = W W/m W/m W/m W/sr W/(sr • m ) 2  2  2  2  Table A . l : S u m m a r y of radiometric units  T h e final radiometric measure related to this thesis, and perhaps the most important, is radiance.  Radiance is a measure of radiant flux per unit  projected area per unit solid angle, and is designated w i t h L. d$  W  2  L  =  T7~1  a  —7  dA • auj • cos v  im  z  where 6 is the angle between the normal  A  -  7  • sri  of the surface element dA, and the  direction of the flux $ . Observe that using the definitions above, we can express radiance i n terms of radiant intensity, irradiance, or radiant exitance: dl dE dM W L = dA • cos 6 duj • cos 6 du • cos 9 Im' • sr] 1  (A.8)  A summary of the units that have been presented are shown i n Table A . l .  A . 1.3  Foreshortening in Radiance  It is not immediately clear why the cosine term is included in the definition of radiance above. A l t h o u g h the units i m p l y that radiance is only dependent on 51  Figure A . l : Radiance demonstrated w i t h projected area radiant flux, area, and a solid angle, it is also dependent on the direction of the flux (either arriving or leaving) relative to the surface element being irradiated or emitting light. This implies that radiance includes a dimensionless direction as part of its unit. Consider the following alternate definition of radiance:  L  dA • du • cos  dA* • du  0  dA-  du  N  m ' • sr  (A.9)  T h e notation dA* refers to the surface element dA projected i n the direction of the flux  Likewise, du  N  refers to the solid angle du> project i n the direction  of the normal TV. Each of these terms takes the place of the cosine term, and simply represent different ways of t h i n k i n g about the dependence of radiance on a direction vector. Figures A . l and A . 2 demonstrate these two perspectives.  52  N  k  di  z  dA  Figure A . 2 : Radiance demonstrated w i t h projected solid angle Figure A . l shows radiant flux arriving from two different directions, one with a larger 9 value than the other.  T h e rectangles below each of the  diagrams indicate how the surface element would look from the direction of the flux, that is under an orthographic projection i n that direction. T h e size of this projected area is proportional to the cosine of the angle 9. Figure A . 2 shows the solid angle du projected onto the plane of the surface element dA, that is in the direction of the normal to dA. A g a i n , the size of this projected area is proportional to the cosine of the angle 9. Another way to rationalize the cosine term is to think of water flowing through a wire hoop. A s the face of the hoop is oriented away from the d i rection of the flowing water, the amount of water passing through the hoop decreases. This change in flow is proportional to the cosine of the angle between the normal of the hoop face and the direction of the flow of water. T h e  53  water can be thought of as the radiant flux $ and the hoop can be thought of as the surface element dA.  A.2  Reflection from Surfaces  Nicodemus et al. clarify that there is a notable difference between the terms reflection and reflectance [28]. Reflection  is defined as the process whereby  electromagnetic flux, incident on a stationary surface or m e d i u m leaves that surface or m e d i u m from the incident side without changing frequency.  By  contrast, reflectance is the fraction of the incident flux that is reflected. T h i s section demonstrates the motivation for categorizing surface reflectance properties with bidirectional reflectance distribution functions. Several other important measures of reflectance are also derived and explained.  A.2.1  The BSSRDF  Consider the geometry of a patch of surface A in Figure A . 3 . Radiant flux arriving at a differential surface element dA{ at point p from direction U{ through a differential solid angle oL>, results in a certain amount of radiance reflected from a point q in direction u7 . T h e amount of reflected radiance L r  r  is proportional to the amount of incident flux  dL  r  cx d$i  (A.10)  T h e constant of proportionality i n Equation A . 10 is called the bidirectional surface scattering  reflectance distribution 54  function,  or B S S R D F , and is  Notice that the B S S R D F provides a very general categorization of reflectance, making no simplifying assumptions other than those made by the geometrical ray optics model. Recall that the positions p and q refer to the pairs (a;,-, y,) and  (x ,y ) r  r  respectively, which are relative to some parametric co-  ordinate system on the surface. T h e directions u7; and u are represented w i t h r  the pairs (4>i, 6{) and (^> ,0 ) respectively. Thus, the B S S R D F is a function of r  r  eight independent variables. It can be written as  S(<f)i,9i,Xi,yi,4> ,6 ,x ,y ) r  r  r  r  to express these dependencies explicitly. T h i s complexity makes the B S S R D F very difficult to measure, store, or use i n practice.  55  A.2.2  The B R D F  The generality of the B S S R D F allows for very complex reflectance properties, most notably that of subsurface scattering.  If the possibility of subsurface  scattering is eliminated, the dependence on the points p and q is removed. This assumption implies that the amount of incident flux is constant over a l l of the surface patch A. Furthermore, the reflectance properties of the surface do not vary at different positions on the surface. W i t h these assumptions, it is convenient to integrate the B S S R D F over the entire surface patch A. T h i s results i n the bidirectional is denoted  t  l  function,  or B R D F , which  f.  2  r  f (cf> ,6 ,(f> ,9 ) r  reflectance distribution  r  r  =  dA  S(4>i,6i,Xi,yi,(f) ,9 ,x ,y ) r  r  r  r  [ ] 5r_1  (A.12) It would be convenient to express the B R D F as a radiometric relation between incident radiance L ; and reflected radiance L , as i n Figure A . 4 . To r  this end, S in the above equation is substituted with its definition from Equation A . 1 1 . fr(<j>i,ei,<f>r,6 ) = J r  a  ^ d A  (A.13)  Notice that the assumption of the uniformity of A above implies that the reflected radiance is no longer a function of the positions p and q on the patch. The r subscript in f represents the distance between the points p and g. Historically, the BRDF has been presented as dependent on this distance. However, instead of being listed as an explicit dependency, the r was placed in the subscript. In the field of computer graphics, r is almost always fixed at a value of zero. Consequently, the presentation here has ignored the BRDF's dependency on this variable. 2  r  56  Figure A . 4 : Geometry of the B R D F This observation results i n the following equality: dL  r  -  I JA  dL  (A.14)  r  Thus, the integral in Equation A.13 can be removed.  Using the definitions  from Section A . 1.2 allows the following derivation:  'A  dQi  dLr  dA  (A.15) dL dE r  dL  r  Li  A.2.3  cos S, dwi  Other Measures of Reflectance  Values of a B R D F can vary from zero to infinity. However, it is sometimes useful to measure reflectance as a ratio of reflected flux to incident flux. Such 57  Figure A . 5 : Left to right: directional, conical, and hemispherical solid angles a measurement is referred to simply as the reflectance, and is denoted p. p = ~~Tx~~  [dimensionless]  ( A . 16)  Since it is a ratio, the value of p varies from zero to one. Another measurement is the reflectance factor.  It is denoted R and is  defined as the ratio of reflected flux to the reflected flux of a perfectly diffuse reflector (<&d)- A perfectly diffuse reflector is a hypothetical surface which reflects radiation equally in all directions, and does not absorb any energy . 3  R =  fdimensionlessl  d$  (A.17)  d  B o t h reflectance and the reflectance factor can be expressed as a function of three things: the incident solid angle, the reflected solid angle, and the B R D F . Depending on the situation, the type of solid angle used can be either differential, finite, or defined over the whole hemisphere. Figure A . 5 demonstrates this point. T h e standard terms for these solid angles are conical, and hemispherical . 4  3  Since p and R are dependent on both incident  For a perfectly diffuse reflector, f = p = 1, and R = 1. In [6], Hanrahan uses the more descriptive terms differential,finite,and hemispherical. r  4  directional,  58  Reflected directional conical hemispherical  directional bidirectional directional-conical directional-hemispherical  Incident conical conical-directional biconical conical-hemispherical  hemispherical hemispherical-directional hemispherical-conical bihemispherical  Table A . 2 : Names of the nine types of reflectance  and reflected solid angles, there are nine different types of reflectance for each, all of which can be described in terms of the B R D F f . r  T h e names of these  are given i n Table A . 2 . T h e definitions of each of these reflectances and reflectance factors are presented several places i n the literature [13, 20, 28], so for simplicity they are not reproduced here. It is worth noting that the definition of ^ i n E q u a t i o n 4.2 used to measure energy conservation is in fact directional-hemispherical reflectance. Recall that the integral used in the energy conservation measurement varies between zero and one, dependent on the energy reflected over the entire hemisphere due to energy from a single incident direction. A value of zero implies that no energy is reflected but is all absorbed, while a value of one implies that no energy is absorbed but is all reflected. T h i s is precisely the definition of directional-hemispherical reflectance.  A.3  Further Reading  T h e presentation of the material in this appendix follows the work by Nicodemus et al. [28], as well as the standards proposed by the A m e r i c a n N a t i o n a l  59  Standards Institute and the Illuminating Engineering Society of N o r t h A m e r ica [20]. Discussions of the principles of radiometry as they relate to computer graphics can be found in the book by Glassner [13] and the chapter i n Cohen and Wallace's book by Hanrahan [6].  60  Appendix B Glossary of Notation In the few cases that a symbol has been used for more than one purpose, the definitions are separated by semicolons. Table B . l : Glossary of N o t a t i o n  Symbol A  Definition M a t r i x representing a tabulated B R D F ; Patch of irradiated surface  (k)  A  T h e closest matrix of rank k to A  B  Radiosity (equivalent to radiant exitance M)  c  Speed of light in a vacuum (299,792,458  D  Diagonal m a t r i x containing singular values of A  (k)  D w i t h all but the k largest values zeroed  dA  Differential surface element  dAi  Incident differential surface element  D  61  m/s)  Glossary of Notation (continued)  Symbol  Definition  dA*  dA projected i n the direction of flux 3>  du>{  Differential solid angle i n direction of incident light  dui  Differential solid angle in direction of reflected light  du  Differential solid angle projected in direction of N  r  N  E  Irradiance  fr  Bidirectional reflectance distribution function ( B R D F )  fr  Partially transformed B R D F (i.e. S < 1)  ir  Energy conserving B R D F  fr  Isotropic B R D F  fr  Reciprocal B R D F  f?  Incident portion of a separated B R D F  j-in(j)  T h e j t h component of the incident portion of a /c-separated B R D F (1 < j < k)  jrout Jout(j)  Reflected portion of a separated B R D F The j t h component of the reflected portion of a ^-separated B R D F (1 < j < k)  h  Planck's constant (6.626176 x 1 0  I  Radiant intensity  L  Radiance  M  Radiant exitance (equivalent to radiosity B)  62  _ 3 4  J • s)  Glossary of Notation (continued)  Symbol N  Definition Vector normal to the surface Total number of samples i n a tabulated B R D F N u m b e r of fa samples in a tabulated B R D F  ne.  N u m b e r of #, samples in a tabulated B R D F  n  N u m b e r of fa samples i n a tabulated B R D F  0 r  ne  N u m b e r of 8 samples i n a tabulated B R D F  P ec  Measure of B R D F energy conservation  Pi  Measure of B R D F isotropy  Pr  Measure of B R D F reciprocity  Ps  Measure of B R D F separability  r  1  r  Measure of B R D F ^-separability P  Point of incident flux on a surface element (x,-,y;); 4>in , + Oi e  Q  Radiant energy; Dimension of B R D F matrices A, U, V , and D  Q  Point of reflected radiance from a surface element  (x , yr); r  fane + 0 T  r  R  Reflectance factor  S  Bidirectional surface scattering reflectance distribution function (BSSRDF)  63  Glossary of Notation (continued)  Symbol  Definition  U  M a t r i x representing set of /* 's  u  Vector representing  V  M a t r i x representing set of  V  Vector representing  r  Energy conservation of a B R D F for a single incident direction  5  B R D F transformation factor  A  R a d i a n distance between samples  Oi  Incident polar angle  Or  Reflected polar angle  X  Wavelength of light (usually measured i n nanometers)  m p  n  f  n r  f° s ut,  f°  ut  M e a n B R D F value for a given (8i,cj> ,Q ) +  r  Reflectance Standard deviation of B R D F values for a given  (0i,cj) ,6 ) +  T  M a x i m u m allowable exitance to incident irradiance ratio  $  Radiant flux (radiant power)  $d  Radiant flux from a perfectly diffuse reflector  <j>i  Incident azimuth angle  4>r  Reflected azimuth angle  <t>+  4>r -  Radiant flux area density  64  r  Glossary of Notation (continued)  Symbol fix  Definition Hemisphere i n the direction of N Incident direction of light (equivalent to (</>,-, 0,)) Reflected direction of light (equivalent to (<f> , 0 )) r  65  r  Bibliography Howard A n t o n . Calculus. John W i l e y and Sons, Inc., 1988. Petr B e c k m a n n a n d A n d r e Spizzichino. The Scattering  of  Electromagnetic  Waves from Rough Surfaces. Pergamon Press, 1963. James F . B l i n n . Models of light reflection for computer synthesized pictures. In Computer  Graphics  (SIGGRAPH  '77 proceedings),  pages 192-  198, 1977. San Jose, California: J u l y 20-22, 1977. B u i - T u o n g Phong. Illumination for computer generated pictures. munications  Com-  of the ACM, 18(6):311-317, June 1975.  B r i a n C a b r a l , Nelson M a x , and Rebecca Springmeyer. B i d i r e c t i o n a l reflection functions from surface bump maps. In Computer GRAPH  '87 proceedings),  pages 273-281, 1987.  Graphics  (SIG-  A n a h e i m , Calafornia:  J u l y 27-31, 1987. ' Michael F . Cohen and John R . Wallace. Radiosity Synthesis.  and Realistic  Image  Academic Press Professional, 1993.  Robert L . Cook and Kenneth E . Torrance. A reflectance model for computer graphics. ACM Transactions  on Graphics, 1(1):7—24, January 1982.  Joel DeYoung, P a u l Lalonde, and A l a i n Fournier. A c q u i r i n g and using realistic reflectance data in computer graphics images. In Arkansas  Com-  puter Conference, pages 77-82, 1996. Searcy, Arkansas: M a r c h 7-8, 1996. James D . Foley, Andries van D a m , Steven K . Feiner, John F . Hughes, and Richard L . Phillips. Introduction  to Computer  Publishing Company, 1994.  66  Graphics. Addison-Wesley  [10] D a v i d Forsey and R i c h a r d Bartels. Hierarchical b-spline refinement. Computer  Graphics (SIGGRAPH  '88 proceedings),  In  pages 205-212, 1988.  A t l a n t a , Georgia: August 1-5, 1988. [11] A l a i n Fournier.  Separating reflection functions for linear radiosity.  Sixth EUROGRAPHICS  Workshop  on Rendering,  In  pages 383-392, 1995.  D u b l i n , Ireland: June 12-14, 1995. [12] A n d r e w Glassner, editor. Graphics Gems. A c a d e m i c Press, 1990. [13] A n d r e w Glassner. Principles  of Digital Image Synthesis.  M o r g a n Kauff-  man Publishers, 1995. [14] Gene H . G o l u b and Charles F . van Loan.  Matrix  Computations.  John  Hopkins University Press, 1989. [15] Jay S. Gondek, G a r y W . Meyer, and Jonathan G . N e w m a n . Wavelength dependent reflectance functions. In Computer proceedings),  Graphics (SIGGRAPH  '94  pages 213-220, 1994. Orlando, Florida: J u l y 24-29, 1994.  [16] Pat Hanrahan and Wolfgang Krueger. Reflection from layered surfaces due to subsurface scattering. proceedings),  In Computer  pages 165-174, 1993.  Graphics  (SIGGRAPH  A n a h e i m , California:  '93  August 1-6,  1993. [17] X i a o D . He, Patrick 0 . Heynen, R i c h a r d L . P h i l l i p s , K e n n e t h E . Torrance, D a v i d H . Salesin, and Donald P. Greenberg. A fast and accurate light reflection model. In Computer  Graphics  (SIGGRAPH  '92  proceedings),  pages 253-254, 1992. Chicago, Illinois: J u l y 26-31, 1992. [18] X i a o D . He, Kenneth E . Torrance, Francois X . Sillion, and D o n a l d P. Greenberg. A comprehensive physical model for light reflection. In Computer Graphics  (SIGGRAPH  '91 proceedings),  pages 175-186, 1991. Las  Vegas, Nevada: J u l y 28-August 2, 1991. [19] Eugene Hecht. Optics. Addison-Wesley P u b l i s h i n g Company, 1987. [20] I E S Nomenclature C o m m i t t e e . A m e r i c a n national standard nomenclature and definitions for i l l u m i n a t i n g engineering. Technical Report A N S I / I E S  67  RP-16-1986, A m e r i c a n National Standards Institute and Illuminating E n gineering Society of N o r t h A m e r i c a , 345 East 47th Street, New York, N Y , 10017, U S A , June 1986. [21] J i m K a j i y a . Anisotropic reflection models. In Computer GRAPH  '85 Proceedings),  Graphics  (SIG-  1985. San Francisco, California: J u l y 22-26,  1985. [22] P a u l Lalonde.  Representation  and  Uses of Light  Distribution  Func-  tions. P h D thesis, Department of Computer Science, University of B r i t i s h C o l u m b i a , 1996. Work i n progress. [23] Robert R . Lewis. M a k i n g shaders more physically plausible. In EUROGRAPHICS  Workshop  on Rendering,  pages 47-61, 1993.  Fourth Paris,  France: June 14-16, 1993. [24] Thomas M . M a c R o b e r t . Spherical Harmonics. [25] Yves Meyer. Les Ondelettes: Algorithmes  Pergamon Press, 1967.  et Applications.  Armand Colin,  1993. [26] Laszlo N e u m a n n and A t t i l a Neumann. Photosimulation: Interreflection with arbitrary reflectance models and i l l u m i n a t i o n . Computer  Graphics  Forum, 8:21-34, M a r c h 1989. [27] Sir Isaac Newton. Philosophiae  Naturalis  Principia  Mathematica  (1686).  Harvard University Press, 1972. [28] F . E . Nicodemus, J . C . R i c h m o n d , J . J . Hsia, I. W . Ginsberg, and T . Limperis. Geometrical considerations and nomenclature for reflectance. Technical Report 160, National Bureau of Standards, October 1977. [29] W i l h e l m Nusselt.  Graphische Bestimmung des Winkelverhaltnisses bei  der Warmestrahlung.  Verein deutscher Ingenieure  Zeitschrift,  72:673ff,  1928. [30] Pierre Poulin and A l a i n Fournier. A model for anisotropic reflection. In Computer  Graphics  (SIGGRAPH  '90 proceedings),  Dallas, Texas: August 6-10, 1990.  68  pages 273-281, 1990.  [31] W i l l i a m H . Press, B r i a n P. Flannery, Saul A . Teukolsky, and W i l l i a m T . Vetterling.  Numerical  Recipes in C: The Art of Scientific  Computing.  Cambridge University Press, 1990. [32] Peter Schroder and W i m Sweldens. Spherical wavelets: efficiently representing functions on the sphere. In Computer  Graphics (SIGGRAPH  '95  proceedings), pages 161-172, 1995. Los Angeles, California: August 6-11, 1995. [33] Francois X . Sillion, James R . A r v o , Stephen H . Westin, and D o n a l d P. Greenberg.  A global i l l u m i n a t i o n solution for general reflectance dis-  tributions. In Computer  Graphics  (SIGGRAPH  '91 proceedings),  pages  187-196, 1991. Las Vegas, Nevada: J u l y 28-August 2, 1991. [34] K e n n e t h E . Torrance and E p h r a i m M . Sparrow. Polarization, directional distribution, and off-specular peak phenomena i n light reflected from roughened surfaces. Journal of the Optical Society of America,  56(7):916-  925, J u l y 1966. [35] Kenneth E . Torrance and E p h r a i m M . Sparrow. Theory for off-specular reflection from roughened surfaces. Journal of the Optical Society of America, 57(9):1105-1114, September 1967. [36] H e r m a n n von Helmholtz. Helmholtz's  Treatise on Physiological  Optics.  O p t i c a l Society of A m e r i c a , 1924. [37] Gregory J . W a r d . Computer  Measuring and modeling anisotropic reflection.  Graphics (SIGGRAPH  '92 proceedings),  In  pages 265-272, 1992.  Chicago, Illinois: J u l y 26-31, 1992. [38] D a v i d S. Watkins. Fundamentals  of Matrix  Computations.  John W i l e y  and Sons, Inc., 1991. [39] Stephen H . Westin, James R . A r v o , and Kenneth E . Torrance. Predicting reflectance functions from complex surfaces. (SIGGRAPH  '92 proceedings),  In Computer  pages 255-264, 1992.  J u l y 26-31, 1992.  69  Graphics  Chicago, Illinois:  [40] Lawrence B . Wolff and D a v i d B . Kurlander. R a y tracing w i t h polarization parameters. IEEE Computer Graphics and Applications,  10(6):44-55,  November 1990. [41] D a v i d Wong. splines.  Multiresolution surface construction for hierarchical B -  Master's thesis, Department of Computer Science, University  of B r i t i s h C o l u m b i a , 1995.  70  

Cite

Citation Scheme:

        

Citations by CSL (citeproc-js)

Usage Statistics

Share

Embed

Customize your widget with the following options, then copy and paste the code below into the HTML of your page to embed this item in your website.
                        
                            <div id="ubcOpenCollectionsWidgetDisplay">
                            <script id="ubcOpenCollectionsWidget"
                            src="{[{embed.src}]}"
                            data-item="{[{embed.item}]}"
                            data-collection="{[{embed.collection}]}"
                            data-metadata="{[{embed.showMetadata}]}"
                            data-width="{[{embed.width}]}"
                            async >
                            </script>
                            </div>
                        
                    
IIIF logo Our image viewer uses the IIIF 2.0 standard. To load this item in other compatible viewers, use this url:
http://iiif.library.ubc.ca/presentation/dsp.831.1-0051518/manifest

Comment

Related Items