Click here for PostScript version of this document.
Click here for Figure 1.
Return to Documents Page.
RADIANCE Visual Comfort Calculation
Gregory J. Ward
April 6, 1992
This document describes a visual comfort calculation
developed by the LESO group at EPFL during Spring of 1991.
The calculation uses the RADIANCE synthetic imaging system
[Ward90] to compute luminance values from a computer model
of an architectural space and the lighting and daylighting
of that space. These luminance values are then applied to a
selected glare calculation procedure to arrive at one or
more discomfort glare indices.
Visual comfort calculations are inherently difficult to per-
form because they depend not only on the locations and
brightnesses of light sources, but also on the apparent size
(ie. solid angle) of the light sources as seen from a par-
ticular viewpoint. By automating the calculation procedure,
we hope to improve reliability and ease of use of visual
comfort metrics. Plus, since we are starting from a com-
puter model of a space, it is possible to use visual comfort
as a design criteria instead of measure of what's wrong
after it's too late.
2. General Approach
2.1. Calculation Requirements
Although there are several different visual comfort metrics
in current use around the world, there is general agreement
on the factors which influence discomfort glare, and the
various glare calculations in fact start from the same basic
quantities. These quantities are the directions, solid
angles and average luminances of the light sources, and the
background luminance for a particular viewpoint [CIE83].
Ultimately, it is luminance in different directions from a
particular point that must be known in order to calculate
glare values. Since a RADIANCE picture is nothing more than
a collection of radiance values from a particular point,
this is a very convenient place to start. Unfortunately,
using such an image in a glare calculation requires a very
large field of view (180 degrees vertically and 180+ degrees
horizontally). It is possible to generate such images using
the fish eye view types provided by RADIANCE, but this is
not usually done. We therefore need to augment most pic-
tures with additional luminance values lying outside the
image borders. To calculate individual luminance values, we
use the program rtrace, designed for this purpose. It is
even possible to do without a picture altogether, although
this will take longer since all the luminances will have to
be calculated from scratch.
As a footnote to the above, it may be possible to obtain a
luminance image from somewhere besides RADIANCE and use it
to compute glare using the methods and programs described in
this paper. However, this would require a fish eye image
with a very large dynamic range, and this is difficult to
obtain in practice.
2.2. A Two Step Method
Since there are so many different glare indices in use, and
since they all require more or less the same input, which is
difficult to compute, it makes good sense to create a two
stage glare calculation. The first stage computes the loca-
tions, sizes and brightnesses of the light sources and the
background luminance level, and the second stage computes
whatever glare index is desired. Multiple glare indices may
be computed at virtually no cost, and new indices may be
incorporated in the future with very little programming
An example output file from the first stage program
findglare is shown below. This file contains the command
that made it and the viewpoint, followed by the locations,
sizes and brightnesses of the light sources and the adapta-
tion luminance in each of the requested directions.
findglare -ga 10-60:10 -v -vf vf/living2 -av .05 .05 .05 oct/nightcabin
VIEW= -vth -vp 26.8 16.8 5 -vd -0.667 -0.745 0 -vh 180 -vv 180
BEGIN glare source
Direction (dx,dy,dz) Size (sr) Bright (cd/m^2)
-0.739601 -0.666543 0.093333 0.004289 37.523939
-0.543836 -0.798999 0.256598 0.004605 1743.527453
0.555815 -0.795908 0.240000 0.004253 219.619154
0.794861 -0.498014 0.346667 0.008012 150.790377
-0.767600 -0.520973 0.373333 0.009203 1790.000000
END glare source
BEGIN indirect illuminance
Angle (deg) Ind. Ill. (lux)
END indirect illuminance
Calculating the indirect illuminance in multiple directions
is relatively inexpensive and it permits the calculation of
glare values in these directions, thus indicating how visual
comfort is affected by head orientation. Below is example
output from the second stage Guth visual comfort probability
(VCP) calculation [Guth63].
This particular glare index is interpreted as the percentage
of people who would say they were comfortable in a given
situation. We see above that the center of view (0
degrees), 55% of the people would be comfortable, and at 60
degrees to the right, 90% would be comfortable. It is
apparent in this example that visual comfort is strongly
influenced by view direction.
The two step approach as we have implemented it here does
have some limitations.
First, we have limited ourselves to looking at glare changes
only to the left and to the right, and not up and down.
This is not a very serious limitation, because what is con-
sidered "horizontal" can be changed by changing the view up
vector. Thus, left and right can be relative to any
head/neck orientation, even changing its meaning to up/down.
Second, the adaptation level is computed using the indirect
vertical illuminance as the background level. This value is
the integral of luminance over the hemisphere weighted by
the cosine about the central view direction, and excludes
any direct contributions from the glare sources themselves.
Although this is the value recommended by most glare calcu-
lations, some researchers claim that a different weighting
of hemispherical luminance is desirable to obtain the most
accurate adaptation level. It is possible to implement a
different background luminance calculation in findglare, but
it doesn't make much sense to use different adaptation lev-
els for different glare indices since they all use it for
the same purpose. We therefore chose to compute only verti-
cal illuminance because it is better defined and more com-
Finally, there is some difficulty in deciding what exactly
is a glare source in a particular environment. All existing
glare calculations were designed with electric lighting in
mind, where the light sources are easily separated from the
rest of the visual environment as well as from each other.
In a daylight situation, the distinction between what is and
what is not a light source is not so clear. Furthermore, it
is difficult to decide where to divide daylight sources
since windows are often placed quite close together. The
algorithms and heuristics we have chosen for separating
light sources from the background work well in most cases,
but require conscientious control when large windows are
present in an already bright environment [DiPasquale91].
3. Findglare Algorithm
Findglare is the program that takes a RADIANCE picture
and/or octree, locates the glare sources and calculates the
background levels (indirect vertical illuminances) for a
specified view field. The basic technique it uses is to
sample the visual field for bright areas, designate these as
light sources, and use the rest of the samples to compute
the indirect illuminance (ie. background level). This
method, as we discovered, is much simpler in principle than
it is in practice.
3.1. Sampling Strategy
Findglare uses a modified hemispherical sampling strategy.
If a single view direction is selected, findglare samples
uniformly on the projected hemisphere. This means that the
actual directions sampled will be densest near the center of
view, and sparser near the limits of view. For multiple
view directions, a central view slice is opened up, leaving
the ends as two half-hemispheres. The vertical sample den-
sity will still vary as the cosine of the angle within the
central slice, but the horizontal sample density will be
constant over the specified view field. (See Figure 1.)
A projected hemispherical sampling was chosen over a simpler
uniform sampling (ie. equal solid angle for each sample)
because it results in more accurate, faster glare calcula-
tions. Since the sources near the center have greater
importance in all glare metrics, it is important to define
these sources more accurately. Sampling the projected hemi-
sphere puts more samples near the center, assuring that any
sources found there will be sampled adequately. Further-
more, the indirect illuminance is simply the sum of samples
not striking light sources on the hemispherical sample grid.
This means that we are not wasting time sending too many
rays to one part of the visual field at the expense of accu-
racy in another part. This is particularly important when
the samples are coming from rtrace rather than a RADIANCE
picture, since these samples involve new luminance calcula-
The maximum sample density is set with the -r (resolution)
option, and is not adjusted adaptively by the program.
Adaptive sampling might prove beneficial if very bright,
small sources (such as the sun) are present in the visual
field, but it is unnecessary for most environments. If all
the samples needed are present in an input picture, it is
relatively inexpensive to use a high sample density in the
calculation, but it doesn't make sense to use a higher reso-
lution than that of the input picture.
3.2. Identifying Sources
In manual glare calculations, light sources are usually del-
ineated by the analyst's own notion of what is and is not a
light source. In the case of direct electric lighting, this
is an easy choice, but when the lighting is indirect or from
one or more windows, the choice is less clear. The choice
ought to be made based on viewer adaptation. If a particu-
lar direction is especially bright compared to the rest of
the visual field, it should be considered as a glare source.
This relative brightness criterion may or may not agree with
one's intuitive notion of a light source. For windows in
particular, there may be bright and dark areas of the view
outside, and only part of the window may be bright enough to
really act as a glare source. Likewise, parts of the window
may be so bright that they completely drown out the electric
lighting in a space, and the electric lights themselves may
not be sources of glare in a daylighted environment.
The basic approach used by findglare to identify glare
sources is called "thresholding". If a particular direction
in the visual field is above a designated threshold value,
then it must be part of a glare source. If the threshold
value is not set by the user manually, it is obtained empir-
ically by findglare by multiplying the average luminance of
the visual field by 7. The number 7 was determined by some
crude tests as producing a reasonable threshold for most
scenes. Using an empirically derived threshold is not
always the best approach, however, and that is why a manual
threshold setting is provided. The user may use the program
ximage or rtrace to obtain a threshold value that agrees
with his or her notion of a glare source for that particular
scene. Since there have been no studies, we do not know in
general what value should serve as the threshold for a glare
calculation. This is an important question, which certainly
merits further investigation [DiPasquale91].
When a "glare sample" (ie. a sample above the threshold
value) is found, it is merged with neighboring contiguous
glare samples. Two glare samples are considered contiguous
if they are separated by at most one non-glare sample. This
allowed separation is to avoid the breakup of something like
a window with venetian blinds into an unreasonable number of
sources. Note that a glare source may have any number of
holes in it and still be considered contiguous.
3.3. Splitting Sources
In order to avoid very long sources that might produce
errors in the glare calculation due to their spread in the
visual field, a heuristic test is applied to each glare
source. If a source has a solid angle greater than 0.025
steradians and a linearity (linear regression correlation
coefficient of its samples) of 0.8 or more, it is split into
two smaller sources of roughly equal area. This continues
recursively until the resulting pieces are compact by these
3.4. Merging Sources
If a source is very small and not very bright, it should not
be treated as a glare source in most situations. Therefore,
any source whose solid angle times its average luminance
(ie. it's total emission) is less than 0.005 steradians
times the threshold luminance is either merged with neigh-
boring sources or "absorbed". A small source is merged with
a neighboring source if that neighbor is closer than 4 times
the radius of a 0.005 steradian disk. If no suitable neigh-
bor exists, the source is absorbed by adding its contribu-
tion back into the background level and removing it from the
list of glare sources.
Since it is not always desirable to remove small sources in
this manner, a -c option is provided to tell findglare to
use all sources it finds, no matter how small.
3.5. Indirect Illuminance
The indirect vertical illuminance values are computed for
each selected view direction. If a single view direction is
selected, the indirect illuminance will simply equal the sum
of all non-glare samples. If multiple view directions are
selected, findglare will weight each sample appropriately
for each vertical direction. The total number of samples
used is determined by the requested resolution and the width
of the view field. It is not affected by the number of view
angles within the view field, so increasing the number of
view angles without increasing the width of the view field
does not add much to the calculation time.
4. Glare Index Calculation
Thus far, we have implemented only two glare formula calcu-
lations, the Guth visual comfort probability and the CIE
glare index due to Einhorn. Implementing other glare formu-
las is straightforward, but it was not clear to us which
other formulas were useful. It seemed to us that providing
a multitude of very similar formulas would not be very help-
ful to the designer.
The Guth visual comfort probability (VCP) is related to the
more basic Guth discomfort glare ratio (DGR) by a simple
formula. The DGR in turn is related to the background lumi-
nance, source locations and sizes, and source luminances.
This information is given by findglare with the exception of
background luminance. This term is somewhat poorly defined
by Guth, so we take the indirect vertical illuminance and
divide it by pi to get the background luminance averaged
over the projected hemisphere. The Guth calculation method
is explained in detail in [IES84].
The CIE glare index (CGI) is the modified Einhorn equation
given in [CIE83]. This formula is similar to the Guth DGR,
but with a linear relationship to the source solid angle
that results in better additivity (ie. breaking up light
sources differently does not affect the results). The Guth
position index is used by this formula as well, and its cal-
culation is described in [Levin75]. Unfortunately, the CGI
formula does not have a counterpart to the Guth visual com-
fort probability. Thus, the CGI value is a little harder
for the designer to interpret than a simple percentage of
satisfied customers. Nevertheless, this is the formula that
is recommended by the CIE and therefore we take heed because
it is a standard. Hopefully, the CIE will propose a corre-
lation between their CGI value and VCP in the not too dis-
5. Glare Script
To make findglare and the glare index calculation program
glarendx easier to use, a script was written that asks the
user simple questions before running these programs. This
script also runs the program xglaresrc to identify sources
in a displayed image that have been located by findglare.
After finding the glare sources and displaying them in an
image, the script glare allows the user to calculate the
desired glare index. This index may be plotted as a func-
tion of view direction using the program igraph, and the
plots may be sent to the printer. An example run of this
script is shown with its output in the appendix.
The glare calculation presented here has undergone a partial
validation and has been found to be reasonably accurate when
compared to manual calculations of a daylighted office
[DiPasquale91]. The calculation has also been compared with
some simple test geometries to insure that it was performing
as expected. Perhaps the most unreliable part of any glare
calculation is the setting of the threshold which determines
what is and is not considered as a glare source. Especially
in daylight situations, this can have a large influence on
the results of the calculation.
Further study is required into the nature of discomfort
glare from daylight windows, since all of the existing glare
formulations were developed and tested using electric light
only. Although Guth claims that his formula is valid for
large area sources and sources near the center of view, the
sensitivity of the eye to light impinging from below the
horizontal plane has not been studied adequately, and this
is a frequent condition in daylighted spaces.
We believe that the institution of a general, automatic
glare calculation is a very important step towards making
visual comfort metrics practical for the designer. RADIANCE
offers the advantage of considering all sources of glare in
a simulated visual environment, not only from electric
lights, but also from windows and reflections from specular
[CIE83] Commission Internationale de l'Eclairage, ``Discom-
fort Glare in the Interior Working Environment,'' CIE Publi-
cation No. 55 (TC-3.4) 1983, pp. 15-18.
[DiPasquale91] Francesco Di Pasquale, ``Possibilites
d'application du modele de confort visuel,'' EPFL-LESO
internal report, June 1991.
[Guth63] Sylvester Guth, ``A Method for Evaluation of
Discomfort Glare,'' Journal of the Illuminating Engineering
Society, May 1963, pp. 351-364.
[Levin75] Robert Levin, ``Position Index in VCP Calcula-
tions,'' Journal of the Illuminating Engineering Society,
January 1975, pp. 99-105.
[IES84] John Kaufman, IES Lighting Handbook, Reference
Volume, IESNA, New York, NY, 1984, pp. 9.46-9.49.
[Ward90] Gregory Ward, ``Visualization,'' Lighting Design
and Application, Vol. 20, No. 6, June 1990.