Hi Globillumers--

Besides terminology, another subject we have discussed here is
the possibility of establishing some reference solutions for
use in testing etc. Since it will be a while before we can
agree on the "ultimate" method for calculating an image, I thought
perhaps we could try the consensus route to establishing
reference solutions. The idea is we could develop a suite
of test images by taking turns specifying the input and format
of the image.

Below I have written out a simple, first test case. It is basically
the empty,diffuse,gray test case that Greg posted radiosity
values for on hobbes.lbl.gov. I have tried to structure the
description so that the only variable is how you choose
to calculate the radiance at each pixel. 

Here is what I propose:

1. Using this description, generate an image. Submit it
by Dec. 1, 1992 by placing it by anonymous ftp on
tiber.nist.gov (129.6.2.23) into the directory pub/holly.
Be sure that the permissions on the file are set so that
it is universally readable. Also, send me email that you have
placed an image there so I will be sure to pick it up.

2. I will collect the results and compute an average image,
and a standard deviation image (i.e. for each pixel I will
compute the average value from all respondents, and the
sample standard deviation in values from all respondents).
I will also compute other statistics that the group feels
would be relevant.

3. The combined results will be made available to everyone
via anonymous ftp.

4. Someone else defines another (probably more challenging)
test case and collects the results.


I am putting this message, along with a sample image I computed 
in pub/holly. The sample image is in the simple format describe below,
as well as a few other popular formats.



==============================================================
=============== Begin Test Case Description ==================
==============================================================
Geometry and Properties
+++++++++++++++++++++++

The geometry is an empty rectangular room extending
from (0,0,0) to (10,3,6). The sole light source
is in the center of the ceiling, at y = 3.0. The light source
is square and 0.5 units per side. All surfaces are Lambertian.

Here is an off-style file definition of the geometry.
There are 12 points and 7 polygons. The x,y,z values of
each of the points are listed first. Each polygon is 
defined by number of vertices (4 in this case for all polygons)
and the indices of those vertices. That is, the first
polygon is defined by the points (0,3,0),(10,3,0),(10,0,0)
and (0,0,0). I have defined the light source slightly below
the ceiling -- if you can, the ceiling should have a hole in
it so the light source can be perfectly flush at y = 3.0.
The first four polygons are the walls,
and they are 50 % reflective. The fifth polygon is the ceiling, which
is 70 % reflective. The sixth is the floor which is 30 %
reflective.  The seventh is the light source, for which
the emitted radiance is 10 w/m^2-steradian, and which is 0%
reflective.
_______________________________________________________________

12 
 7
   0.00    0.00    0.00 
  10.00    0.00    0.00 
  10.00    3.00    0.00 
   0.00    3.00    0.00 
   0.00    0.00    6.00 
   0.00    3.00    6.00
  10.00    3.00    6.00
  10.00    0.00    6.00
   4.75    2.99    2.75
   5.25    2.99    2.75 
   5.25    2.99    3.25 
   4.75    2.99    3.25 
4 
 3 2 1 0  /* rho = 0.5 */
4 
 4 5 3 0  /* rho = 0.5 */
4 
 7 6 5 4  /* rho = 0.5 */
4 
 1 2 6 7  /* rho = 0.5 */ 
4 
 3 5 6 2  /* rho = 0.7 */
4 
1 7 4 0   /* rho = 0.3 */
4 
 11 10 9 8 /* rho = 0., emitted radiance = 10 w/m^2-steradian */

Generating an Image
+++++++++++++++++++

View from: (9., 1.75, 1.)
View to: (1., 1.75, 6.) i.e.unnormalized vector indicating
          view direction is (-8, 0,5)
"Up" direction: (0,1,0)
Field of view: 45 degrees
Image resolution: 50 x 50 pixels.

Sample the center of the pixel only (i.e. no sampling
at various locations in the pixel and filtering for
antialiasing).

Scaling of radiances: Use simple linear scaling of radiances
to the range 0-255 by multiplying by 8000  and clipping values above
255. The value 8000 assumes you use 10 for the light source radiance, and
was chosen to have the approximate average radiance value map to 128. 
(i.e., if you for some reason always set your light source value to 1,
you would multiply all of the values by 80000, etc.)
Do not include any gamma correction in the mapping to 0-255.

Output format: binary file, one byte/pixel for a total of
50x50 bytes. Start with lower left hand corner, write results row
by row, with the last value being the upper right hand corner.If
writing things out in this format seriously holds up your entry,
please send in what you can, and give me a description of the 
format.


NOTE:
If you compare radiance values you compute to the data in the
directory on hobbes.lbl.gov remember that file has results
for radiosities which are PI times the radiance for a Lambertian
surface.

