0% found this document useful (0 votes)
27 views35 pages

Hill Shading

OK

Uploaded by

Arif
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
27 views35 pages

Hill Shading

OK

Uploaded by

Arif
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 35

14 PROCEEDINGS OF THE IEEE, VOL. 69, NO.

1, JANUARY 1981

Hill Shading and the Reflectance Map


BERTHOLD K. P. HORN

Abstract -Shaded overlays for maps give the user an immediate ap- Digital Gradient (P,q) Reflectance R Graphic
preciation for the surface topography since they appeal to an important Terrain z Estimation Calculation Output
visual depth cue. A brief review of the history of manual methods is Model Processing
followed by a discussion of a number of methods that have been pro-
posed for the automatic generation of shaded overlays. These
techniques are compared using the reflectance map as a common Fig. 1. Block diagram of a system for the generation of relief shading.
representation for the dependence of tone or gray level on the orienta- The gray-value is calculated by applying the reflectance map to the
tion of surface elements. gradient estimate obtained by sampling neighboring points in the
digital terrain model.
I. INTRODUCTION
/ f ~ \ F THE SEVERAL ways of depicting surface form on calculating surface shape from the gray levels in an image.
[I (maps, hill shading has the most immediate appeal and This is clearly just the inverse of the problem of producing
^-^ provides for quick comprehension of the topography. In shaded pictures from a surface model. The reflectance map is
this sense, hill shading is complementary to the use of con- a plot of apparent brightness versus two variables, namely the
tours, which provide accurate terrain elevations but require slope of the surface element in the west-to-east direction and
careful scrutiny if one is to ascertain the surface form. Shaded the slope in the south-to-north direction. Producing a shaded
maps are most important when the interpreter's time is limited, overlay for a map then is simply a matter of calculating these
as in aviation, for users that are not trained cartographers, and two slopes for each surface element and looking up the
for small scale maps, where contours degenerate into messy appropriate gray level in the reflectance map (see Fig. 1). This
tangles of lines. is a very simple, local computation that can be carried out
Why then do we not see more shaded maps? One reason is efficiently even on enormous databases. The resulting gray
the expense of the present manual methods of production, levels can then be fed to a graphic output device that will pro-
which require skilled artists with good insight into cartography. duce a continuous tone or halftone photographic transparency
Working from existing contour maps, ridge and stream lines from the given stream of numbers.
extracted from such maps, and at times aided also by aerial What reflectance map is to be used? Careful comparison of
photography, they wield airbrushes, in what is a slow, tedious, more than a dozen proposed shading methods shows that some
and imprecise operation. Different individuals called upon to of the simplest provide a good impression of the shape of the
create such images by manual methods will inevitably produce surface. These experiments also show that the most com-
different results because of the inherent subjective judgment. monly used assumptions about surface reflectance do not lead
The resulting differences in expression of the terrain character- to the best results, while simple monotonic functions of the
istics of the same surface at the same scale provide a particular surface slope in the direction away from the assumed light
problem' for a map series, where adjoining sheets should match source work admirably. What matters is the visual impression,
in terms of hill-shading symbology. This justifies investigation not theoretical rules [ 1 ]. One goal of this paper is a review of
of an objective system which makes the treatment of all terrain various hill-shading methods that have been proposed in the
forms comparable and repeatable. past. Much can be learned from these efforts when they are
Attempts at automation began with the notion that the gray evaluated in terms of the corresponding reflectance maps.
levels used in the shading should derive from a model of how
light might be reflected from a surface. Ignoring shadowing II. EARLY HISTORY OF HILL SHADING
and mutual illumination effects, it seems clear that the re- Chiaroscuro, the technique of using light and shade in
flected intensity will be a function of the local surface inclina- pictorial representation of three dimensional shapes, has been
tion. The choice of a method for calculating the gray tone used by artists for many centuries. Leonardo da Vinci put it
based on the orientation of each surface element has however to good effect in his maps of Toscana, drawn in 1502 and
been the subject of occasionally bitter controversy for almost 1503, that contained oblique shaded views of relief forms
two centuries. Much of the difficulty stems from a lack of a illuminated from the left [ 1 ]. Woodcuts of the area around
common representation that would allow comparison of Zurich in Switzerland drawn half a century later by Murer use
methods which appear at first glance to be incomparable. shaded sideviews as well. Overhead views using relief shading
The recently developed reflectance map constitutes such a appear for the first time in maps of the same area drawn a
common denominator. It is a simple device developed origi- century after that by Gygers, but these then gave way to less
nally for work in machine vision where one is interested in desirable forms [ 1 ].
The choice of the representation for relief forms depend to a
Manuscript received December 26, 1979; revised July 22, 1980. This great extent on the available reproduction technology. Wood-
work was supported in part by the Advanced Research Projects Agency cuts and engraving methods lend themselves to linear forms,
of the Department of Defense under Office of Naval Research Contract where brightness of an area in the reproduction is controlled
N00014-75-C-0643.
The author is with the Artificial Intelligence Laboratory, Massachu- by the spacing and width of darkened lines. Useful directional,
setts Institute of Technology, Cambridge, MA 02139. textural effects can be generated by orienting these line frag-

0018-9219/81/0100-0014$00.75 © 1981 IEEE


HORN: HILL SHADING AND THE REFLECTANCE MAP 15

ments, or hachures (Schraffuren), along lines of steepest had been used previously, unguided by his careful analysis
descent. Crowding of such lines in steep areas may have given [27]-[29]. While line-based methods give rise to beautiful,
rise to notions of "steeper implies darker." easy to interpret maps, they cannot show the fine detail of sur-
Lehmann proposed the first rigorous relationships [2], [3] face topography possible with halftones and must be based on
between surface slopes and quantities measurable on the smoothed, generalized information such as contours. These
printed map. In 1799, when his method (Boschungsschraffen) lines also tend to interfere with others used to portray
was published anonymously, the techniques for measuring the planimetric information.
surface accurately at a large enough number of points did not A shaded overlay can also be produced by photographing an
exist. Results of this first method of illustrating shape are in appropriately illuminated scaled model of the surface. If this
some ways analogous to those one might obtain by illuminat- model has a matte or diffusely reflecting surface, a map over-
ing a model of the surface from above, an arrangement that lay of high quality will result provided attention is paid to the
gives rise to images that are difficult to interpret. projection geometry. While this was an approach taken early
Partly as a result of this, an alternate form (Schatten- on [27], it really only became practical in the 1950's with the
schraffen) evolved [4]-[6], in which the line thickness is introduction of milling machines that allow an operator to
varied according to the orientation of the local surface patch carve a model by tracing contours on an existing map
with respect to a light source, usually assumed to be near the [30]-[37]. This is still an expensive, slow process however, in
top left of the map when it is oriented properly for viewing. part because of the manual work required to smooth out the
For maps with North at the top this corresponds to northwest. resulting "terraced" model.
Surface patches sloping downward in that direction are por- The Swiss school of cartography improved on earlier forms
trayed with a light tone, while those sloping upward in that [28]-[30], [38], [39] and developed shading to a fine art,
direction get a dark tone. Since flat areas have no lines of producing numerous outstanding maps in this time [40]-[48].
descent, they remain white. Aside from this defect, this Imhof argues that automated methods, such as relief model
method produces an image similar to one obtained by photography, cannot produce results nearly as impressive,
obliquely illuminating a diffusely reflecting model of the sur- since the cartographer cannot easily influence the process [ 1 ].
face. Having flat areas appear white makes maps produced by The manual shading method is however slow and expensive,
this method a little difficult to interpret. They are neverthe- and consequently has not been used except for small areas and
less superior to those made by the earlier method, as evidenced those of particular interest or military importance. One can-
for example by the "Dufourkarte" of Switzerland made be- not expect, with significant areas of the world still not mapped
tween 1842 and 1864 using this approach [ 1 ]. These methods at large scales, and the rising cost of labor, that shaded overlays
for portraying surface shape preceded the widespread use of produced this way will be used in many maps.
contours [ 7 ], in part because the latter require detailed surface Yoeli [49]-[57] saw the potential of the digital computer in
measurements that were not available before the advent of dealing with this dilemma. It is possible to implement Wiechel's
photogrammetry. method based on oblique illumination of a diffusely reflecting
While lithography was invented by Alois Sneefelder in 1796, surface if terrain elevations can be read into a computer and
it found little application in cartography until around 1850. It suitable continuous tone output devices are available. Yoeli
permitted the production of multicolored maps, but more im- was hampered by the lack of such devices at that time.
portantly, led to the use of halftones, destined to ultimately Blachut and Marsik tried to simplify the required calculations
replace lines as a means of modulating the average reflectance to the point where a computer might not even be required
in the printed map. W. H. Fox Talbot invented a photome- [58], [59]. Peucker helped popularize the whole idea of
chanical halftone process in 1852, but commercial success computer-based cartography [19], [60]-[62], and found a
came only years after the patenting of the halftone screen by piecewise linear approximation to the equation for the bright-
Frederick von Egloffstein in 1865, and the crossline screen of ness of a diffuse reflector that works well [61]. Many other
William A. Leggo in 1869. interesting reports appeared during this time on the subject of
Having access to these new reproduction schemes, Wiechel hill-shading, too numerous to mention individually [63]-[70].
[8] developed shading methods (Schraglichtschummerung) to Brassel [71]-[74] took Imhof's admonitions seriously and
replace the use of hachures as described above. His funda- tried to implement as much as had been formalized of the
mental paper, based in part on work by Burmester [9] on "Swiss manner." With the output devices available to him at
shaded pictures of regular surfaces, placed the field of hill- that time it was not easy to judge whether the added com-
shading on a sound foundation. Wiechel discovered the error plexity was worth the effort. All of these computer based
regarding flat surfaces, for example, and developed a graphic methods require detailed digital terrain models. The storage
method for determining the gray value from contour interval capacity and techniques for handling this kind of information
and direction. Unfortunately, the means for controlled genera- now exist [32], [75]-[81] as do the photographic output de-
tion of halftones as a function of surface orientation did not vices needed. There has been significant progress, too, in the
then exist and his work was ignored for a long time. automatic generation of digital terrain models directly from
aerial photographs [81]-[87], partly as a byproduct of work
III. HILL SHADING IN THIS CENTURY on orthophoto generation [8 8]-[91]. More compact and ap-
Two methods based on lines, this time contours instead of propriate representations for these terrain models are under
lines of steepest descent, were explored by KitirQ Tanaka in investigation [92]-[95], as are alternate methods for relief
the 1930's. His first method used the lines of intersection of portrayal such as block diagrams [96]-[ 102].
the terrain surface with uniformly spaced, parallel, inclined Considerable progress has been made recently in the com-
planes [ 10], [11]. Tanaka's initiative gave rise to considerable puter graphics area in the portrayal of regular objects with
discussion [12]-[19], partly in the form of an acrimonious simple surfaces [103]-[116]. Early models for the reflection
debate [20]-[23]. His other method was based on portrayal of light from matte surfaces [117]-[120] are being elaborated,
of a terraced model of the terrain [24]-[26], an approach that including some for the material on the lunar surface [121]-
16 PROCEEDINGS OF THE IEEE, VOL. 69, NO. 1, JANUARY 1981

[ 130]. In this context, work on models of the microstructure voluminous ones, if users can be persuaded to accept the
.of surfaces is relevant [131]-[136]. In a recent effort in the greater programming complexities involved.
machine vision area, a method was developed for portraying Digital terrain models may also be referred to as digital
the dependence of brightness on surface orientation using the elevation models if they contain no information other than
so-called reflectance map [137]-[141]. The reflectance map the elevation values.
can be determined if the detailed geometric dependence of re-
flection from the surface [142], [143] and the distribution of V. THE REFLECTANCE MAP
light sources are known. Alternatively, it can be found The human visual system has a remarkable ability to deter-
empirically, or derived directly by analyzing the interaction of mine the distance to objects viewed, as well as their shape,
light rays with the surface microstructure. using a variety of depth cues. One such cue is shading, the de-
As a result of the development of the reflectance map, the pendence of apparent brightness of a surface element on its
availability of detailed digital terrain data, small computers orientation with respect to the light source(s) and the viewer.
able to perform the simple calculations required, and geo- Without this particular depth cue we would be hard pressed to
metrically accurate gray-level output devices, we may say that interpret pictures of smooth, opaque objects such as people,
automatic hill shading has come of age. since other cues like stereo disparity and motion parallax are
absent in a flat, still photograph. It can be shown that
shading contains enough information to allow the observer to
IV. DIGITAL TERRAIN MODELS recover the shape. In fact, a computer program has been de-
For many applications of cartographic data it is useful to veloped that can do this using a single digitized image [137].
have machine-readable surface representations. Such terrain Such work in the area of machine vision has led to a need to
models are used for example in the design of roads and in model the image-forming process more carefully [138]. The
order to determine the region irradiated by a radio frequency input to the visual sensing system is image irradiance, which is
antenna. Initially, digital terrain models were generated proportional to scene radiance (here loosely called apparent
manually by interpolation from existing contour maps. This is brightness) [ 140]. Scene radiance in turn can be related to the
a tedious error-prone process producing a digitized version of underlying geometric dependence of reflectance of the surface
the surface represented by the contours, which in turn is a material and the distribution of light sources [142], [143].
smoothed, generalized version of the real surface. Here we concentrate on the dependence of scene radiance on
The contour information on topographic maps is produced the orientation of the surface element. Shaded overlays for
by manual scanning of stereo pairs of aerial photographs. maps are interpreted by the viewer using the same mechanism
Today, fortunately, stereocomparators often come equipped normally employed to determine the shape of three-dimensional
with coordinate readouts that allow the extraction of informa- surfaces from the shading found in their images. Thus shaded
tion needed for the generation of digital terrain models [144]. overlays should be produced in a way that emulates the
Conveniently taken during orthophoto generation [8 8]-[91], image-forming process, one in which brightness depends on
the data tends to be accurate and detailed. Even more exciting surface orientation. This is why the reflectance map, which
is the prospect for machines that achieve stereo fusion without captures this dependence, is useful in this endeavor.
human help [81]-[87], since they will lead to the automatic Consider a surface z(x, y ) viewed from a great distance above
production of digital terrain models. In the past such ma- (see Fig. 2). Let the .x-axis point to the east, the .c-axis north,
chines had difficulties dealing with uniform surfaces such as and the z-axis straight up. The orientation of a surface element
lakes, featureless surfaces, large slopes, and depth disconti- can be specified simply by giving its slope p in the x (west-to-
nuities, as well as broken surfaces, such as forest canopies. east) direction and its slope q in the y (south-to-north) direc-
This is apparently still true when aerial photographs are used tion. The slopes p and q are the components of the gradient
with disparities large enough to ensure high accuracy. vector, (p,q). The apparent brightness of a surface element
Various representations can be chosen for the surface eleva- R(p, q) depends on its orientation, or equivalently, the local
tion information. Series expansion, a weighted sum of mathe- gradient. It is convenient to illustrate this dependence by
matical functions such as polynomials, Gaussian hills or plotting contours of constant apparent brightness on a graph
periodic functions may be used. These tend to be expensive with axes p and q. This reflectance map [138] provides a
to evaluate however and not accurate in approximating sur- graphic illustration of the dependence of apparent brightness
faces that have slope discontinuities. This is important for on surface orientation. The pq-plane, in which the reflectance
many types of terrain, at all but the largest scales. Perhaps the map is drawn, is called the gradient space, because each point
simplest surface representation is an array of elevations {z;,} in it corresponds to a particular gradient.
based on a fixed grid, usually square. Determining the height Surface orientation has two degrees of freedom. We have
at a particular point is simple and the interchange of terrain chosen here to specify the orientation of a surface element by
models between users is easy since the format is so trivial. the two components of the gradient. Another useful way of
One disadvantage of this kind of surface representation is the specifying surface orientation is to find the intersection of the
high redundancy in areas where the surface is relatively surface normal with the unit sphere. Each point on the sur-
smooth. The illustrations in this paper are based on digital face of this Gaussian sphere again corresponds uniquely to a
terrain models consisting of arrays of elevation values. particular surface orientation. If the terrain is single-valued,
Methods that achieve considerable data compression by with no overhangs, all surface normals will point more or less
covering the surface with panels stretched between specially upwards and pierce the Gaussian sphere in a hemisphere lying
chosen points have been developed [92]-[95]. "These exploit above an equator corresponding to the horizontal plane.
the fact that real geographical surfaces are not arbitrary sets Gradient space happens to be the projection of this hemisphere
of elevations but have definite structure and regularity. Such from the center of the sphere onto a plane tangent at the upper
representations may ultimately replace the simpler, more pole.
HORN: HILL SHADING AND THE REFLECTANCE MAP 17

A
aerial perspective and can be a useful depth cue, although there
is no general agreement that it aids the perception of surface
shape. It has been used at times by map-makers and can be
modeled easily [ I ] , [71],[73],[74]. The effect has not been
added to any of the hill-shading schemes presented here in
order to simplify comparisons.
VII. WHERE Do REFLECTANCE MAPS COME FROM?
A reflectance map may be based on experimental data. One
can mount a sample of the surface in question on a goniometer
stage and measure its apparent brightness from a fixed view-
point under fixed lighting conditions while varying its orienta-
tion. Instead, one can take a picture of a test object of known
shape and calculate the orientation of the corresponding sur-
face element for each point in the image. The reflectance map
is then obtained by reading off the measured brightness there.
Alternatively, one may use even more detailed information
about light reflection from the surface. The bidirectional re-
flectance distribution function (BRDF) describes how bright a
x (East) surface will appear viewed from one specified direction when
Fig. 2. Coordinate system and viewing geometry. The viewer is actu- illuminated from another specified direction [142], [143].
ally at a great distance above the terrain so that the projection is By integrating over the given light source distribution one can
orthographic.
calculate the reflectance map from this information [140].
Crudely speaking, the reflectance map is like a "convolution"
While we will not use this representation in the calculation of of the BRDF and the source-radiance distribution.
relief shading, it is helpful in understanding previous attempts Most commonly, reflectance maps are based on phenomeno-
at graphical portrayal of the dependence of apparent brightness logical models, rather than physical reality. The so-called
on surface orientation. The first such method was developed Lambertian surface, or perfect diffuser, for example, has the
by Wiechel more than a century ago [8]. His brilliant analysis property that it appears equally bright from all viewing direc-
appears to have been largely ignored partly because it de- tions. It also reflects all light, absorbing none. It turns out
pended on mathematical manipulations that may have been that these two constraints are sufficient to determine uniquely
inaccessible to many of the intended users. Later, Kitiro the BRDF of such a surface, and from it the reflectance map,
Tanaka invented another method showing the variation of provided the positions of the light sources are also given.
apparent brightness with surface gradient [10], [ I I ] , [24], Some reflectance-maps are based on mathematical models of
[25]. This second precursor of the reflectance map also ap- the interaction of light with the surface. Such models tend to
pears to have found little following. be either too complex to allow analytic solution or too simple
to represent real surfaces effectively. Nevertheless some have
VI. POSITION DEPENDENT EFFECTS come quite close to predicting the observed behavior of
Since the reflectance map gives apparent brightness as a particular surfaces [134]-[136],
function of local surface gradient only, it does not take into Here, new reflectance maps will be determined, based on
account effects dependent on the position of the surface proposed methods for producing shaded overlays for maps.
element. One such effect is illumination of one surface ele- Their derivation will not depend on an understanding of the
ment by another. Fortunately this mutual illumination effect image-formation process or the physics of light reflection.
is small unless surface reflectance is quite high [138]. It is not Instead, they will require an analysis of how the brightness of
known whether mutual illumination effects aid or hinder the a point in the overlay depends on the gradient of the underly-
perception of surface shape. They are difficult to calculate ing geographical surface.
and so have not been emulated in work on hill-shading. Which reflectance map should be used? The answer to this
Another position dependent effect on apparent brightness is question must depend on the quality of the impression a
the blocking of light by one portion of the surface before it viewer gets of the shape of the surface portrayed. Various
reaches another. Cast shadows can be calculated by determin- methods for producing shaded overlays can be compared by
ing which surface elements are not visible from the point of evaluating sample products and classified according to the
view of the light source [139]. Shadows cast by one compli- corresponding reflectance maps. It will become apparent that
cated shape on another are hard to interpret however and ap- in this way general conclusions can be drawn about a new
parently detract from the visual quality of shaded overlays method just by inspecting its reflectance map.
[I], [35], [36]. They are thus rarely included.
Scattering of light by air molecules and aerosol particles VIII. NORMALIZATION OF GRAY TONE
changes the apparent brightness of a surface element viewed A picture made by applying varying amounts of light absorb-
through the atmosphere. The brightness is shifted towards a ing substances, such as ink, to an opaque, diffusely reflecting
background value equal to the brightness of an infinitely thick material like paper, has a limited dynamic range. Reflectance
layer of air. The difference between the brightness and the is limited at the low end by the properties of the ink and at
background value decreases with the thickness of the gaseous the high end by the paper, which will at most reflect all the
layer through which the surface is viewed [ 145]. The resulting light incident upon it, unless it fluoresces. The diffuse reflec-
reduction in contrast as a function of distance is referred to as tance is thus always less than or equal to one. Similarly, if
18 PROCEEDINGS OF THE IEEE, VOL. 69, NO. 1, JANUARY 1981

absorbing substances are used on a transparent substrate, a Z-. Z.+ Z^


limit applies, since transparency cannot be larger than one.
The problem of fitting a given image into the available dy-
Z-o Z°o Z+o
namic range is fundamental to all methods of reproduction. A
normalization is applied so that the maximum apparent bright-
ness to be reproduced is represented by a reflectance of one
(or whatever the maximum is for the paper being used). This
Fig. 3. Short-hand notation for elevations of neighboring points.
scaling will have to be applied whenever relief shading is based
on models of image-formation by light reflected from thp
terrain surface. X. GRADIENT SMOOTHING EFFECTS
More complicated slope estimators than the ones described
IX. GRADIENT ESTIMATION
tend to introduce a smoothing e f f e c t , as can be seen by apply-
The apparent brightness of a surface element depends on its ing them near points of discontinuity in slope. To illustrate
orientation with respect to the viewer and the light source. this more clearly, consider two horizontal smoothing opera-
The orientation of the surface element is described fully by a tions H+ and H- that modify the terrain model as follows:
surface normal, or equivalently by the gradient. The compo-
nents of the gradient are the slopes p (in the west-to-east H+:ZQO = ( z o o + z + o ) / 2
direction) and q (in the south-to-north direction). These and
slopes have to be estimated from the array of terrain eleva-
tions. It is convenient to use a short hand here for elevations H-:Zoo =(z-o +Zoo)/2.
in the neighborhood of a particular point (see Fig. 3). In the It can now be seen that the central difference slope estimate
context of a single point at discrete coordinate (i, /'), we will Pc on the original terrain model, equals the biased estimate p+
denote the elevation at that point by Zoo, while elevations of calculated from the terrain model smoothed using H-, or,
the adjacent grid points to the west and east will be called z-o equivalently, the biased estimate p_ calculated from the terrain
and z+o, respectively. Similarly, elevations at the points to the model smoothed using H+. Next consider two vertical smooth-
south and north will be denoted Zy- and ZQ+. ing operation V+ and V- in which the terrain model is modi-
The simplest estimates for the slope p might be fied as follows:
p+=(z+o - Zoo)/^x
V+:zoo =(ZQO +zo+)/2
and
and
p- = (zoo - z-o )!^x
where Ax is the grid interval in the west-to-east direction, ex- ,V-:ZQO =(zo-+zoo)/2.
pressed in the same units as the terrain elevations. These esti- The complicated slope estimate py, can be shown to produce
mates are biased, actually estimating the slope half a grid the same result as the first difference p+ calculated from a
interval to the right and left of the central point, respectively. terrain model smoothed by applying H-, V+, and V-. Simi-
Their average however, the central difference, is unbiased, larly the slope estimate q^ equals <?+ calculated from a terrain
Pc=(z+o-z-o)/2A;x.
model smoothed by applying V-, H+, and H- (actually, since
all of these operations are linear, their order can be arbitrarily
Numerical analysis [146]-[149] teaches us that for certain rearranged). Perhaps any "smoothing" desired should be done
classes of surfaces an even better estimate is obtained using a as a separate editing operation, combined with the removal of
weighted average of three such central differences, "glitches" from the digital elevation model, rather than as part
of the slope estimation. Also for terrain models of relatively
Pw = t(z++ + 2z+o + z+.) - (z-+ + 2z_o + z--)]/8Ax. limited size this smoothing may be undesirable. Some other
Symmetrically, one can estimate the south-to-north slope, slope estimators are simpler and introduce less smoothing. For
example one can combine two biased estimates of the slope to
Qw = t(z++ + 2zo+ + z-+) - (z+- + 2zo- + z--)]/8A>'. get,
These expressions produce excellent estimates for the com- Pi/2 = [(z+++z+o)- (ZQ+ +Zoo)l/2Ax
ponents of the gradient of the central point. The results de-
pend on elevations in a I X 3 neighborhood, with individual and symmetrically,
elevation values weighted less than they are in the simpler ex-
fli/2 = t(z+++zo+)~ (^•^o +^oo)l/2A.v.
pression for the central difference. This has the advantage that
local errors in terrain elevation tend not to contribute as Here the average gradient in the top-right quadrant (zoo, z+o,
heavily to error in slope. At the same time, more calculations z++, ZQ+) rather than at the central point is being estimated,
are required and three rows of the digital terrain model have to using elevations in a 2 X 2 neighborhood only. For the graphic
be available at one time. illustrations presented here, the expressions for p^ and q^
Care has to be taken to avoid corruption of the slope were used to estimate the gradient.
estimates by quantization noise in the elevation values. Nu- At this time some terrain models are still produced by hand
merical problems due to the division of small integers may and have rather limited size. Rather than smoothing the ter-
result when a terrain model is too finely interpolated, with rain, one may wish to increase apparent resolution by some
limited vertical resolution. If it is necessary to generate many means. This can be done quite effectively by combining biased
pixels in the output, it is better to interpolate the gray values slope estimates (see Fig. 4). For every point in the terrain
produced by the shading algorithm. model, four gray values are produced corresponding to the
HORN: HILL SHADING AND THE REFLECTANCE MAP l!>

procedure SHADING(N, M, DX, DY); integer N, M; real DX, DY;

begin array Z[0:N,0:M], B[0;N-1,0:M-1];

real procedure PE(I, .1); inti'Rrr I, .1;


PE := (Z[I,J] + Z[I-1,J] - Z[I,]-1] - Z[I-1,J-1]) / (2.0 X DX);
(p-,q+) (P+,q+)
real procedure QE(I, J); integer I, J;
(p-,q-)T(p4.,q-)
OE := (Z[I,]] + Z[[,J-1] - Z[I-1,J] - Z[I-1,J-1]) / (2.0 X DY);

real procedure R(P, Q); real P, 0;


RM := MAX(0.0, MIN(1.0, (1.0 + P - 0) / 2.0));

<read terrain elevations into array Z > •

Fig. 4. Combinations of biased slope estimates can be used to plot for J := 1 step 1 until M—l do
four times as many gray-tones as there are elevations values in the ter- for I := 1 step 1 until N—l do
rain model. The limited amount of data in a small terrain model
may be stretched this way to produce reasonably detailed hill-shading B[I-1,J-1] := RM(PE(I, )), QE(I, J));
output.
<wrili' brightness valves from array B>
four quadrants around it. Each is based on a different com-
end
bination of the slope estimates (p- or p+) and (<?- or (?+) as
Fig. 5. Simple program to generate shaded output from a terrain model.
appropriate for that quadrant. No miracles should be antici-
pated; this method cannot create information where there is
none, but it can stretch what is available to its limits. described later on. Two arrays are used, Z to store the terrain
More complicated slope estimators than those discussed here elevations and B to store the calculated brightness values. The
do not seem called for, since the simple ones shown produce latter has one row and one column fewer, since its entries
excellent results. Furthermore, estimators having wider sup- correspond to points lying between those in the elevation array
port, while known to be more accurate for certain classes of (the formulas for pi/a and qi/^ are used). The spacing of the
functions such as polynomials, may perform worse on typical underlying grid is DX in the west-to-east direction and DY in
terrain with its discontinuities in slope along ridge and stream the south-to-north direction. The procedures PE(I,J) and
lines. QE(I, J ) estimate the slopes, while the procedure RM(P, Q)
It has been cartographic practice to assume a light source in calculates the corresponding brightness using a particularly
the northwest at a 45° elevation above the horizon. It is help- simple reflectance map. The resulting values range from
ful in this case to introduce a rotated coordinate system as 0.0 (black) to 1.0 (white) and have to be scaled appropriately
described in Appendix A. before they can be fed to a particular gray-level output device.
Typical terrain models are quite large and may exceed allow-
XI. EXAGGERATION OF TERRAIN ELEVATIONS able array storage limits or even the address space of a corn- {

Compared to objects of a size that allow, for easy manipula- puter. Fortunately only two (or three) rows of the terrain
tion by a human observer, the surface of the earth is in many model are needed for the estimation of the local slopes. The
places, though not everywhere, rather flat. The range of slopes program given can be easily modified to read the terrain
is often so small as to cause disappointment with correctly model, and to write the calculated gray values, one line at a
proportioned models, so that height is often exaggerated in time. This makes it possible to deal with terrain models of
physical models. Similarly, shading based on models of light essentially arbitrary size.
reflection from a surface tends to have undesirably low con- Next one should note that terrain models typically are stored
trast. Here too terrain elevations may be exaggerated for all using integer (fixed point) representation for elevations to
but the most mountainous regions. This is equivalent to achieve compactness and because elevations are only known
multiplication of the components of the gradient by a constant with limited precision (an elevation may be given in meters as
factor, and corresponds to a simple transformation of the re- a 16-bit quantity for example). Similarly, gray values to be
flectance map. For reflectance maps based on reflection of sent to a graphic output device are typically quantized to
light originating from an assumed source, a similar effect can relatively few levels because of the limited ability of the
often be achieved by a decrease in the elevation of the source. human eye to discern small brightness differences and the
For flat surfaces the source may be lowered to a mere 10° or limited ability of the device to accurately reproduce these
20° above the horizon, where normally it might be at 45°. (a typical output device may take values between 0 and 255).
The calculations can thus be carried out largely in integer
XII. PRODUCING SHADED OVERLAYS (fixed point) arithmetic and even a simple computer is
The generation of shaded images from a digital terrain model adequate.
using the reflectance map is straightforward (see Fig. 1). For
XIII. USE OF LOOKUP TABLES
each point in the terrain model the local gradient (p,q) is
found. The reflectance map then provides the appropriate Some of the formulas for reflectance maps discussed later on
brightness R(p, q), to be plotted on a suitable gray-level out- are quite elaborate and it would seem that a lot of computa-
put device. All computations are local and can be accom- tion is required to produce shaded output using them. Fortu-
plished in a single pass through the image. nately it is possible to make the amount of computation
To illustrate these ideas a simple program is shown (see equally small in all cases by implementing the reflectance map
Fig. 5) that does not incorporate any of the elaborations as a lookup table, which is computed only at the beginning.
20 PROCEEDINGS OF THE IEEE, VOL. 69, NO. 1, JANUARY 1981

Since elevations are quantized, so are the estimates of slope. XV. AVERAGE REFLECTANCE OF EVENLY
It is therefore not necessary that one be able to determine the SPACED DARK LINES
apparent brightness for all possible values of the gradient Some early methods for hill shading achieve the desired con-
(p, q). Further, it is reasonable to place an upper limit on trol of gray tone by varying the spacing between printed lines.
slope, so that only a finite number of possible values can occur One advantage of this approach is the ease with which such
(For example, if slopes between -1.55 and +1.60 are con- information can be printed, since it is not necessary to first
sidered, in increments of 0.05, then there are only 64 possibili- screen a continuous tone image. One disadvantage is the con-
ties for p and 64 for q, and a lookup table with 4096 entries fusion created when the lines used for this purpose are layed
can be used). A second justification for the use of a lookup on top of others portraying planimetric information. While
table is the quantization of the gray values produced. It makes the directional textural effects of the lines are important in
little sense to calculate the apparent brightness with very high conveying information about shape, we concentrate here on
precision only to coarsely quantize the result. A convenient the average reflectance.
rule of thumb is that the number of possible discrete values for Consider inked lines with reflectance r/, covering an area of
each gradient component need not be more than the number paper with reflectance r^ (see Fig. 6). The ratio of the area
of gray levels available from output device. The final choice of covered by ink to the area not covered is the same as the ratio
quantization must take into account both of the above of the width of the lines to the width of the uninked spaces.
considerations. This in turn equals b f w , where b is the width of the inked line
One can separate the estimation of slope from the calcula- and w the width of the uninked space measured along any
tion of gray value, and produce an intermediate file of coded direction not parallel to the lines. If we ignore diffusion of
surface gradient values. This file need not be larger than the light in the paper, then the average reflectance of the surface is
original terrain model if the gradient is quantized properly
(if p and q can each take on 64 values, each gradient can be R = (wr^, + br^)j(w + b)
encoded as a 12 bit value). The code in the lookup table can or
be based on ways of expression surface orientation other than
in terms of components of the surface gradient. In any case, a R = r^, - b(Ty, - rb)/(w + b).
file of surface orientation codes can be fed through a lookup
If, for example, the paper reflects all the incident light, and
table procedure to produce the final output. In this fashion
the ink none, then r^ == 1 and r<, = 0, so that R = 1 - b/(w + b).
different reflectance maps, encoded as different lookup tables,
can be applied to a terrain model easily, with little more effort
than reading and writing a file. The illustrations here were XVI. SLOPE OF THE SURFACE IN AN
produced this way. ARBITRARY DIRECTION
Many gray-level raster displays have a translation table be- In the calculation of gray value produced by some methods
tween the image memory and the digital-to-analog converter of hill shading it is necessary to know the slope of the surface
driving the cathode ray tube intensity control. The quantized, in an arbitrary direction, given the slope p in the west-to-east
packed reflectance map can be loaded into this lookup table, direction and the slope q in the south-to-north direction. Note
while the image memory is loaded with the coded slope that p and q are the first partial derivatives of the elevation z
matrix. This allows one to view the same terrain with a with respect to x and y , respectively. Consider taking an
variety of assumed reflectance properties simply by reloading infinitesimal step dx in the x direction and an infinitesimal
the translation table, which is small compared to the image step dy in the y direction. The change in elevation dz is given
memory. by
XIV. TAXONOMY OF REFLECTANCE MAPS dz = p dx + q dy.
Here we have discussed some of the issues one is likely to Along a contour line for example, the elevation is constant, so
encounter when developing a program that produces shaded that for a small step dx = a ds and dy = b ds, we can write:
output. In the remainder of this paper we will analyze a num-
(p,q)-(a,b)ds=0
ber of proposed hill-shading methods in terms of their equiva-
lent reflectance maps. Notational tools will be introduced as where "•" denotes the dot-product. The local direction of the
they are needed. Rather than proceed in strict historic order, contours, (a, b) is of course perpendicular to the local gradient
we will discuss relief shading methods in the following groups: (P,-?).
1) rotationally symmetric reflectance maps—gray tone de- Now consider taking a small step in an arbitrary direction
pends on slope only; (Po, '?o) ^y- That ls ^et ^x = Po ds and <^y = ^o ds- The length
2) methods based on varying line spacing or thickness to of the step, measured in the ry-plane is,
modulate average reflectance; Vpg + ql ds.
3) ideal diffuse reflectance and various approximations
thereto; While the change in elevation'is,
4) gray tone depends only on the slope of the surface in the dz = (pop + q^q) ds.
direction away from the assumed light source;
5) methods depending on more elaborate models of diffuse Consequently the slope, change in elevation divided by length
reflectance from porous material, such as that covering of the step, is
the lunar surface;
s = (PoP + <?o'?)/Vp§ +q§.
6) models for gloss and lustrous reflection-smooth surface,
extended source and rough surface, point source. If we let a be the angle between the vector (po, qy) and the
HORN; HILL SHADING AND THE REFLECTANCE MAP 11

Fig. 6. Magnified portion of surface covered with lines. The average


tone depends on the fractional area covered by the lines, as well as
the reflectance of the paper and the ink.
Fig. 7. Spacing between successive contour lines along a given direction
x-axis, then, the above can also be written, on the topographic map.
s = p cos a + q sin a.
surfaces, that was to ultimately replace most of these early
The direction in the xj'-plane in which the slope is maximal attempts at portraying surface shape [7].
can be found by differentiating with respect to a. The direc-
tion of steepest ascent is (p, q) • and the maximum slope XVIII. CONTOUR DENSITY (B)
equals Vp2 + q'1. Another method is based on the observation that lines on a
contour map are more crowded in steep areas and that this
XVII. LEHMANN'S BOSCHUNGSSCHRAFFEN (A) crowding leads to darkening of tone or average gray value.
One of the earliest methods for depicting surface shape using This side effect may be helpful in visually conveying informa-
a form of shading is that of Lehmann [2], [3]. Illustrations tion about the nature of the surface. In order to calculate the
based on ad hoc scales of increasing darkness as a function of dependence of the average local reflectance on the gradient
slope ("Schwarzegradscalen") had been published before, but (p, q), we have to determine the spacing of contour lines on
there was no systematic analysis of this approach until the the map. We assume that the surface is locally smooth and can
appearance of an anonymous publication attributed to Leh- be approximated by a plane, at least on the scale of the spacing
mann. In his method, short lines in the direction of steepest between contour lines (if this is not the case, aliasing, or under-
descent, called hachures, are drawn with spacing and thickness sampling problems occur in any case).
specified by rules that ensure that the fractional area darkened Consider a portion of the surface with slope s in some direc-
is proportional to the angle of inclination of the surface 6. tion not parallel to the contour lines (see Fig. 7). Assume that
That is, steeper implies darker. The lines merge, producing a the map scale is k and the vertical contour interval 6. Then it
continuous black area, when 9 exceeds some maximum value is clear that the spacing between contours on the map d can be
BO, typically 45° or 60°. The slope of the surface equals the obtained from the formula for slope,
tangent of the angle of inclination or "dip." Using the expres- s=8/(d/k).
sion for the slope in the direction of steepest ascent, we get,
If we take the cross section of the surface in the direction of
tan Q = Vp2 + q2. steepest ascent, then s = Vp2 + q1. As a result we can write,
Consequently, the average reflectance is, d=k6/>
R(P, l) = 'w - Ow - '•&) tan-1 Vp^^/Oo. On the map, d = b + w. That is, the spacing between contours
When the angle of inclination exceeds the maximum, the lines is the sum of the width of the contour lines and the width of
coalesce and R(p,q)=r^. We can also write the above in the blank spaces between them. The average reflectance then
another form, is,
R'W, 0) =»H,-O», -»•„) (0/@o). R(P, <?) = 'w - (b/k8) (r^, - r^v/p^+q^
Here, <j>, the azimuth of the direction of steepest descent, does The result can also be expressed as,
not appear in the formula on the right, since apparent bright- R'(6,0) = r^ - (b/kS) (r^, - r,,) tan 6
ness in this case depends only on the magnitude of the slope.
The direction and magnitude of the surface gradient can be where 9 is the inclination of the surface. The above expres-
found from a map prepared according to Lehmann's rules. sions only hold if w is not negative. When the slope is too
The direction of steepest descent lies along the hachures, while steep, contour lines overlap, and the average reflectance is
the slope is directly related to the average tone that results simply equal to T],. In the special case that r^, = 1 and Tf, = 0,
from the width and spacing of these lines. In analyzing his the above simplifies to,
method we have concentrated on calculating the average re- R(.p,q)=l-(b/k8)^/p2+ql.
flectance produced in the printed product. It should be pointed
out that this method also gives rise to textural effects that will Typically (b/k6) may equal 1 or 1/\/3".
not be discussed.
Another interesting aspect of Lehmann's method is that the XIX. DIFFUSE SURFACE UNDER VERTICAL
lines or hachures were drawn starting on one contour and end- ILLUMINATION (C)
ing on the next. This greatly contributed to the later develop- The methods discussed so far produce tones that depend on
ment of the contour representation (Isohypsen) for terrain the magnitude of the gradient only, not its direction. This is
22 PROCEEDINGS OF THE IEEE, VOL. 69, NO. 1, JANUARY 1981

similar to the effect one would obtain if a physical model of


the terrain was illuminated vertically, with the light source
placed near the viewer. An ideal diffusing surface has an ap-
parent brightness that is proportional to the cosine of the inci-
dent angle i as discussed later. This is the angle between the
direction of the incident rays and the local normal, which, in
the case of vertical illumination, is just 6. Therefore,
R'(.6,<t>)=cos6
or
R(p,q)=\l^f[Tps~^.
Instead of illumination from a point source, one may consider Fig. 8. Definition of the azimuth angle <f> and the zenith angle 8. Here,
the effect of a distributed source. A uniform hemispherical azimuth is measured counter-clockwise from the x-axis in the xy-
plane, while the zenith angle is measured from the z-axis.
source illuminating a diffusely reflecting surface leads to a
result of the following form [ 140],
can then be given as an azimuth angle 0 measured anticlock-
^'(0,0)= cos2 (6/2) • i .. i cos 6
z^z wise from the jc-axis, and a polar or zenith angle 6 (see Fig. 8).
(In navigation, the azimuth angle is usually measured clock-
or
wise from north, and the elevation angle is given instead of the
R(P, <?) = (1 + l/Vl+p^+q2)^. zenith angle. These are just the complements of the angles
used here.) The unit vector in the direction so defined equals,
This reflectance map leads to flatter, even less interpretable
pictures, since the range of reflectances has been halved and all N = (cos <f> sin 6, sin 0 sin 6, cos 9).
reflectances have been shifted upwards by a half. In the deri- To find the azimuth and zenith angle of the surface normal we
vation of the formula above, reflection from the surrounding
identify components of corresponding unit vectors. Then,
terrain surface is ignored. If the terrain surface diffusely re-
flects a fraction p of the incident light, the constant term in sin 0 =-ql>
the above expression is increased from ^ to (1 +p)/2, while
and
the coefficient of cos 0 decreased from i- to (1 - p)/2. It is at
times suggested that a component of surface brightness due to cos 0 = -p/Vp2 + q1
distributed illumination from the sky be added to that result-
ing from oblique illumination. This however typically detracts while
from the shaded result, rather than improving it. sin 0 = Vp2 + q1 /Vl + p2 + q2
The methods discussed so far give rise to rotationally sym-
metric reflectance maps, that can be described adequately by a and
single cross-section, showing tone versus slope [ I ] , [35], [36]. c o s 0 = l / \ / l + p 2 +q2.
This representation has sometimes been misused for asymmetric
reflectance maps, where it does not apply. Rotationally sym- Conversely,
metric reflectance maps produce shaded images that are diffi- p = -cos0 tan 0
cult to interpret. Moving the assumed light source away from
the overhead position gives rise to better shaded map overlays, and
but forces us to introduce some new concepts.
q = -sin 0 tan 9.
XX. THE SURFACE NORMAL We will find it convenient to use both vector and spherical
The surface normal is a vector perpendicular to the local coordinate notation to specify direction.
tangent plane. The direction of the surface normal n can be
found by taking the cross-product of any two vectors parallel XXI. POSITION OF THE LIGHT SOURCE
to lines locally tangent to the surface (as long as they are not The reflectance maps discussed so far are rotationally sym-
parallel to each other). We can find two such vectors by re- metric about the origin, only the magnitude of the gradient,
membering that the change in elevation when one takes a small not its direction affecting the resulting gray value. This cor-
step dx in the x- direction is just dz = p dx, while the change in responds to a situation where the light source is at the viewing
elevation corresponding to a step dy in the .y-direction is dz = position. Most hill-shading methods have the assumed light
q dy. The two vectors, (1, 0, p) dx and (0,1, q) d y , are, there- source in some other position, typically in the northwest, with
fore, parallel to lines tangent to the surface and so their cross- a zenith angle of around 45°(0o ^ 45°, 0o = 135°). The unit
product is a surface normal vector,
n = ( l , 0 , p ) X (0,1, q)=(-p, -q,l). S = (cos 0o "sin 9o, sin 0o sin Qy, cos By)
Note that the gradient (p, q) is just the (negative) projection points directly at the light source. A surface element will be
of this vector on the -icy-plane. A unit surface normal N can illuminated maximally when the rays from the light source
be obtained by dividing the vector n by its magnitude n = strike it perpendicularly, that is, when the surface normal
\/l+p2+q2. points at the light, source. By identifying components in the
While it is convenient to specify directions as vectors, it is at expression for the surface normal no =(~Po> ~qo, 1) with
times helpful to use spherical coordinates instead. A direction those in the expression for the vector pointing at the source
HORN: HILL SHADING AND THE REFLECTANCE MAP 23

one finds that the components of the gradient of such a sur-


face element are,
Po = - cos 0o tan By
and
qo =-sin 0o tan(?o-
When the source is in the standard cartographic position, this
means,
Po = 1/V2'
and
qo=-llV2.

This standard position for the assumed light source was proba-
bly chosen because we are used to viewing objects lighted from Fig. 9. Side-view of a hill cut by inclined planes. Viewed from above,
the lines of intersection crowd together where the surface slopes away
that direction [ 1 ]. When we look at nearby objects in front of from the equivalent source. Conversely, there are no lines where the
us, our body blocks the light arriving from behind us. Further, terrain surface is parallel to the inclined planes.
when writing on a horizontal surface, many of use find our
right hand blocking light coming from that direction. We thus of this equation! All we need are the slopes of this new sur-
often arrange for light sources to be to the left, in front of us. face. Differentiating the above expression with respect to x
While we can certainly interpret shading in pictures where the
and y , we get,
light source is not in this standard position, there seems to be
a larger possibility of depth reversal in that case, particularly if P'=(P-Po)/Vl+Po+q§
the object has a complex, unfamiliar shape.
Returning now to the specification of the position of the <?'=('?- <?o)/Vl +pl+ql-
light source, we find two identities that will be helpful later. Finally then,
cos (0- 0o )= (Po P + Qo <?)/ [V^"? VpT^? 1 V(P - Po)2 + (q - go)2
R(P,q)=rw-(b/k6)(r^-ri,)
Po P + '?o Q = tan 6 tan 6y cos (0 - 0o). Vl+Po+ffo
It also follows that the slope of the surface in the direction We obtain the expression for contour density, derived earlier,
(Po> '?o) away from the light source is, when po = qo = 0. Also, in the special case that r^ = 0, »•„, = 1,
s = tan 6 cos (0 - 0o). Po = 1/\/2", and qo = -1/-\/2",
R(p, q) = 1 - (&/fe5)^/(p - 1/^i)2 + (q + l/V^)2/^.
XXII. TANAKA'S ORTHOGRAPHICAL RELIEF METHOD (D)
A method proposed by Kitiro Tanaka in 1930 [10], [11], It is sometimes useful to express the apparent brightness as a
involves drawing the lines of intersection of the surface with function of the azimuth 0 and zenith angle 0 of the surface
evenly spaced inclined planes. These planes are oriented so normal. If we let 0o be the azimuth and 60 the zenith angle
that their common normal points towards an equivalent light of the normal to the inclined planes, then the formula can be
source (see Fig. 9). Thus slopes tilted away from this direction rewritten as follows:
have contours spaced closely, giving rise to heavier shading R'(6, 0) = »w - Wk6) (r^ - r^) cos 60
than that on horizontal surfaces, while surfaces lying parallel
to the inclined planes are lightest. As in Lehmann's method, • Vtan2 6 - 2 tan 6 tan 60 cos (0 - 0o) + tan260.
some information may be conveyed by the directional texture When OQ = 45°, r^ = 0 and r^ = 1, then, as Tanaka showed
of the contours. Here we concentrate on the average reflec-
[10],[11], ,
tance only.
A contour is the intersection of the terrain's surface z = R'(6,0) = 1 - (6/fc6)Vl - sin 20 cos (0 - 0o)/(^ cos 6).
z ( x , y ) with a plane. The equation z = 2 o applies to a hori-
zontal plane appropriate for ordinary contours. For "inclined How does one choose the parameter (&/fc5)? Tanaka felt
contours" an inclined plane is used with an equation of the that the shading produced by his method should match that
form seen on a surface covered with an ideal material called a per-
fect diffuser. The apparent brightness of such a surface varies
(~Po,~Vo, l ) ' ( x , y , z ) l ^ / } . +po+(? 2 =z'o- with the cosine of the incident angle, between the surface
The vector (-po, ~i{o, 1) is perpendicular to the inclined normal and a vector pointing at the light surface. He intro-
planes. Ordinary contours represent the locus of the solution duced a parameter called the line factor. It is the ratio of the
of z ( x , y ) a : ^ o , while inclined contours are the loci of solu- width of the inked line b to the interval between inclined con-
tions of the equation, tours for a horizontal surface fcS/sin 60. The line factor is just,
[-Pox - qoY + z(x,y)]|^l+p2o+ql ••z'o. (ft/fcfi Npo+q'o/Vl+Po+q'o.

We can now apply our analysis of the contour density model Tanaka proposed varying the line width b in order to produce
to the modified surface z ' ( x , y ~ ) defined by the left-hand side shading that matches that seen on a perfect diffuser, but
24 PROCEEDINGS OF THE IEEE, VOL. 69, NO. 1, JANUARY 1981

Fig. 10. "Block-diagram" representation of terrain surface. This is an isometric projection of a series
of uniformly spaced vertical profiles of the surface viewed from the southeast. Note the shading
effect due to the variation in line spacing.

realized the impracticality of this approach for all but poly- nate system of the surface rather than one oriented with
hedral surfaces [10], [11]. Resigned to using a fixed line respect to the viewer. Details may be found in Appendices
width, he chose to optimize the line factor by considering the B and C, where contour density shading and Tanaka's inclined
brightness distribution on a spherical cap extending to 45° contour method are shown to be special cases of this more
slope. With the source at 45° elevation, the least deviation general situation.
from the brightness distribution one would see if the surface
was a perfect diffuser is obtained when the line factor equals XXIII. WIECHEL'S CONTOUR-TERRACE MODEL (E)
0.3608. Consequently, (b/k6) = 0.3608-S/2'. Finally then, Imagine a three-dimensional model of the terrain built by
stacking pieces of some material cut according to the shape of
R(p,q)= 1 - 0.3608/(p - 1/\/T)2 + (q + t^/2")2.
the contours on a topographic map [8]. If the thickness of
It is unfortunate that this method later gave rise to some mis- the material is chosen correctly the model will be a scaled
understanding as well as a less rigorous hybridized form [15]. approximation of the terrain, looking a little like a tiered cake.
A common representation for relief form is the block dia- Illuminating this construction with a distant point source will
gram, an oblique view of a series of equally spaced vertical give rise to a form of shading since each contour "terrace"
profiles [97]-[102]. The projection typically is orthographic, casts a shadow on the one beneath it (see Fig. 11). Wiechel
although at times a perspective projection is utilized. Surfaces [8] was the first to analyze the reflectance properties of such
not visible to the viewer are eliminated (see Fig. 10). Shading a surface. In order to calculate the average brightness of a
can of course be applied to oblique views as may be done in portion of the model, when viewed from above, we must
sophisticated flight simulators of the future. We concentrate determine the width of the shadow relative to the width of the
here on map forms that provide for superposition of plani- terrace.
metric information however, and digress only to point out that The width of the shadow, measured perpendicular to the
part of the appeal of block diagrams lies in their implicit shad- contours, varies, depending on the orientation of contours
ing, due to the variation in the spacing of lines. relative to the direction of the rays from the source. For ex-
Following the discussion in the last section, it is clear that ample, when measured this way, the width is zero where the
the equivalent light-source position is in the horizontal plane contour is locally parallel to the projection of the rays on the
at right angles to the vertical cutting surfaces. The analysis xy-plans. Measured in a vertical plane containing the light
just presented then applies directly. Things are a little more source however, the width of the shadow is constant, since the
difficult if the result is to be expressed in terms of the coordi- terrace has a fixed height (see Fig. 12).* If the light source has
HORN; HILL SHADING AND THE REFLECTANCE MAP 15

tour interval and the map scale have cancelled, as one might
have predicted.
When (pop+C{oq)<-l, shadows coalesce and no further
increase in b/d is possible. When, on the other hand, (pop +
9o'?) ^ 0> the slope is facing towards the light source. This
means that no shadow is cast. In this model, shading only
occurs on slopes facing away from the source, while those
facing towards it are all uniformly bright. This is certainly
not what one would expect of a real surface and suggests that
the contour-terrace model has some shortcomings. This is not
surprising since apparent brightness depends on surface orien-
tation, not height, and while the model represents height with
reasonable accuracy it does a poor job of modeling surface
orientation. Indeed the surface of the model is mostly hori-
zontal, with some narrow strips of a vertical orientation. The
Fig. 11. Shadows cast in the contour terrace model. The width of the latter are not even visible from above.
shadows, measured perpendicular to the contours, varies with the di-
rection of the contours relative to the direction of the incident rays. Wiechel noted that light would be reflected from these verti-
cal surfaces onto the terraces [8]. The surface thus appears
brighter, viewed from above, near vertical surfaces facing
\ / towards the light source. He made the simplifying assumption
-0- that reflection produces uniformly bright patches with the
same shape as shadows that would be cast were a source to be
placed opposite the actual light source. This is not a reason-
able assumption unless the vertical surfaces are made of narrow
mirror facets, each oriented perpendicular to the direction of
the incident light! In this case, surfaces illuminated by reflec-
tion as well as by direct light have a brightness twice that of
those illuminated only by direct light. This version of the
model is fortunately simple enough to be amenable to analysis.
First note that, if we assume the surface to be an ideal diffuser,
then the brightness of horizontal surfaces that are neither
shadowed nor illuminated by reflection equals the cosine of
Fig. 12. Section of the contour terrace model in a vertical plane con- the zenith angle of the source. Therefore, let r^ = 0 and r^ =
taining the light-source. The width of the shadow b measured in this cos By, where
plane is constant, while the width of the terrace b + w depends on the
slope of the surface in a direction parallel to the projection of the In- cos 0o = 1/Vl + P o + < ? §
cident rays on the ground plane.
and so
a zenith angle 60, the contour interval is 5, and the map scale ^(P,<?)=(l+PoP+q'o<?)/Vl+?§+<?§
k, then,
or
tan Qo •=• (b/k6) R'(.6, 0) = [ 1 + tan 6 tan 60 cos (0 - 0o)l cos Qo.
but When the source is in the standard position (northwest at 45°)
tan On this becomes,
To calculate the average brightness we must know the width R(p,q)=[i+(p-q)/^/2]l^/2.
d of the terrace in the model, measured in the same vertical Note that here apparent brightness already becomes equal to
plane. The slope in this plane evidently is just one when the angle of inclination is about 30.36° towards the
s = -fefi/d. light source. This may be contrasted with the case of the ideal
diffuser, to be discussed later, where it reaches one only for an
We know that the slope of a surface in the direction (po> ffo) inclination of 45°. Wiechel used this model as the second
is, approximation to the ideal diffuser (the first will be discussed
s = (Po P + ffo <?)/Vp5 + <?5 •
later) and expressed his result as [8]
Solving for d from the last two equations and for b from the (cos i/cos e)
two before them, we get where i is the incident angle, and e is the emittance angle, here
equal fo 6. These angles will play an important role in the dis-
b/d=-(pop+qod)- cussion of more recent methods later on.
For example, when the local surface normal (-p, -q, 1) is per- According to Raisz and Imhof [1], [27]-[29] terraced con-
pendicular to the direction to the source (-pn., -<?o> 1)> their tour models were used in the late 1800's. An early example is
dot-product is zero and bid = 1. The terrace is then covered an alpine excursion map published in 1865 that employed
exactly by the shadow. In the above expression both the con- "contour shadows" [ 1 ]. The first attempts at photography of
26 PROCEEDINGS OF THE IEEE, VOL. 69, NO. 1, JANUARY 1981

obliquely illuminated surfaces also used terraced terrain models reflectance will be,
[27]. Wiechel probably was influenced by these early efforts
when he chose to develop this method for hill shading. R (P, <?)='•?- (rg ~ rw) (PoP + <lo <?)
where r^ is the reflectance of the white ink. When (poP+
XXIV. WIECHEL'S HELLIGKEITSMAASSSTAB qoq)<0, no "shadows" appear and R(p, q)=rg. Tanaka
Wiechel based his method for irregular surfaces on that de- combined the two methods, tracing contours using both white
veloped earlier by Burmester for regular surfaces [9]. In order and black ink. The corresponding reflectance map R(p, q)
to make his approach practical he needed a graphical device equals one of the expressions above depending on whether the
for translating measurements of contour interval and direction slope locally faces away from or towards the assumed source.
of steepest descent into gray tones. The "Helligkeitsmaass- He apparently also experimented with nibs of different width
stab" (his spelling) is arranged so that these measurements can for white and black ink. This corresponds to changing the ele-
be transferred directly, and the correct tone determined from vation of the assumed sources. If the width of the nib is b,
a series of isophotes, contours of constant brightness. Steep then the relationship is,
slopes, with small contour intervals correspond to points near
the origin of this diagram, while those of gentle slope map into (b/k6) = tan 60 = Vpo+^S.
points further away. The results of this tedious manual method are most impressive
His diagram therefore is a sort ofinside-out reflectance map. [24]-[26]. One can write the above expressions in the alter-
The main difference is that radial distance from the origin in nate notation,
gradient space is proportional to tan 6, while it is proportional
to cot 9 in this early precursor. This corresponds to a con- R'(6, 0) = rg + (rg - r,,) tan Q tan OQ cos (0 - 0o),
formal mapping operation referred to as inversion with respect when cos (0 - 0o) < 0
to the unit circle. Wiechel showed that his diagram corre- R'(9, 0) = f g - (rg ~ rw)tan
Q tan
^o cos (0 - 0o),
sponded to the image of an appropriate illuminated logarith- when cos (0 - 0o)>0.
moid made of the desired material. The equation of this sur-
face is z = -log Vx2 + y2. The reflectance map, by the way, Tanaka preferred a reflectance for the gray background half-
can be thought of as the image of a paraboloid [138]. way between that of the black ink and the white ink. Placing
It is indeed unfortunate that Wiechel's construction was the light source in the standard position we get,
ignored. Wiechel developed two shading methods that did not
R(p,q)=[l+(p-q)/\/:2]|2
require this two-dimensional diagram. In each case apparent
brightness depended only on the slope of the surface in the or
direction away from the light source. This property manifests
^'(0,0)=[l+tan0cos(0-0o)]/2.
itself in the reflectance map in the form of parallel straight-line
contours. The effect is less apparent in Wiechel's diagram, This result can also be expressed as, (cos i cos g)/cos e, where g
where isophotes become nested circles through the origin, with is the phase angle, here equal to By. Note that except for scaling
centers along the line in the direction of the light source. by cos g, this is the same result as that obtained by Wiechel for
his contour-terrace model. One effect of this scaling is that
XXV. TANAKA'S RELIEF CONTOUR METHOD (F) apparent brightness rises to one only when the angle of inclina-
Kitiro Tanaka, in 1939, developed an ingenious method tion is 45°, on the other hand, horizontal surface now have a
[24]-[26] for drawing the shadows one would see if one gray value of only 0.5.
looked at a contour-terrace model. His method is based on the
observation that the length of the shadow, measured in the XXVI. TANAKA'S HEMISPHERICAL BRIGHTNESS
direction of the incident rays, is constant. Using a pen with a DISTRIBUTION
wide nib one can trace the contours, while maintaining the Tanaka needed a way to display the dependence of tone on
orientation of the nib parallel to the direction of the incident surface orientation to permit comparison of the results pro-
rays (as in roundhand writing). Only those portions of the duced by his two methods and what would be seen if the sur-
contours are traced that correspond to slopes facing away face modeled were an ideal diffuser. He chose an oblique view
from the assumed light source. Tanaka used black ink on gray of the brightness distribution on a spherical cap extending to
paper for reasons that will become apparent. If the reflectance 45° inclination [ 10], [ 11 ], [24] -[26]. If the cap is increased
of this paper is Tg then, until it is a hemisphere, one obtains something like the reflec-
tance map. One difference is that radial distance from the
R(P,<l)=rg+(rg-ri,)(pop+qoq)
origin in gradient space is proportional to tan 0, while here it is
provided (pop + <o'?) < ^ 0> otherwise R (p, q) = r,. proportional to sinO. Thus, while the reflectance map is a
Tanaka also came up with a way of modulating the average central projection of the Gaussian sphere onto a horizontal
reflectance of the paper in areas that corresponded to slopes plane, this is a parallel projection. Put another way: we are
facing towards the source. His approach is somewhat analogous dealing here with an image of a hemisphere, while the reflec-
to taking the negative of a picture of the contour-terrace model tance map is the image of a paraboloid.
obtained by illuminating it from the other side. Thus white Tanaka's oblique views of the distribution of brightness
"shadows" are cast in the opposite direction to the black shad- versus surface orientation do not provide the quantitative
ows. These can be drawn with white ink on gray paper using information available in a contour representation such as
the same method as before except that now the section of the Wiechel's. His method is nevertheless very helpful and it is
contours that correspond to slopes facing towards the light unfortunate that few seem to have paid. any attention to it,
source are traced. It is easy to see that the resulting average judging by the continued use of inappropriate forms. It is
HORN: HILL SHADING AND THE REFLECTANCE MAP 27

not uncommon for example to see the dependence of tone on


surface orientation shown as a curve depending on one vari-
able, slope, when it clearly depends on two, slope and the
direction of steepest descent, or equivalently, the two compo-
nents of the gradient.

XXVII. LAMBERTIAN SURFACES (G)


We now turn from graphical methods using variation in line
spacing and line thickness to those utilizing continuous tone or
halftone techniques. These are often based on a model of
what the terrain would look like were it made of some ideal
material, illuminated from a predetermined direction. The
result differs from an aerial photograph, since no account is
taken here of varying terrain cover, the light source is often Fig. 13. Spherical triangle used in calculating the incident angle ifrom
the azimuth and elevation of the light-source and the azimuth and
placed in a position that is astronomically impossible, and the elevation of the surface normal. The direction towards the viewer is
terrain model has been smoothed and generalized. Not being V, the direction to the source is S, while the surface normal is N.
like an aerial photograph is an advantage, since aerial photo-
graphs, taken with the sun fairly high in the sky, often do not then is
provide for- easy (monocular) comprehension of surface R(p, q) = (1 + pop + ( y o ^ A V l + P ' + ^ V l + P o + ^ o ) .
topography. ( <
The amount of light captured by a surface patch will depend When (1 + p o P + ' ? o 7 ) ^ 0 the surface element is turned away
on its inclination relative to the incident beam. As seen from from the source and is self-shadowed. In this case, R (p, q) = 0.
In the case of a point source of light at 45° zenith angle in
the source the surface is foreshortened, its apparent (or pro-
the northwest, the reflectance map becomes
jected) area equal to its true area multiplied by the cosine of
the incident angle. Thus the irradiance is proportional to cos;'. R(p,q)=[l+(p-q)/^^]/^^/TV^Vp^Tq^].
Strangely, it is commonly assumed that the radiance (apparent
brightness) of the surface patch is also proportional to cos;'. XXVIII. PEUCKER'S PlECEWISE LINEAR
This is generally not the case since light may be reflected dif- APPROXIMATION (H)
ferently in different directions, as can be seen by considering a The computation of gray value using the equation for the
specularly reflecting material. cosine of the incident angle is complicated and slow because of
One can however postulate an ideal surface that reflects all the appearance of the square root. Peucker [61 ] experimented
light incident on it and appears equally bright from all viewing with a number of approximations that are easier to compute.
directions. Such a surface is called an ideal diffuser or Lam- He found that an adequate, piecewise linear approximation for
bertian reflector and has the property that its radiance equals slopes less than one, is
the irradiance divided by ir [142],[143]. In this special case 0.3441p-0.5219<?+0.6599, forp+<?>0
the radiance is proportional to the cosine of the incident angle.
No real surface behaves exactly like this, although pressed 0.5129p- 0.3441 q+ 0.6599, forp+q<0
powders of highly transparent materials like barium sulfate or
and magnesium carbonate come close. Matte white paint, opal
R (p, q) = 0.4285 (p - q) - 0.0844|p + q \ + 0.6599
glass, and rough white paper are somewhat worse approxima-
tions, as is snow [131]. Most proposed schemes for automatic where \p+q\ denotes the absolute value of (p+q). The
hill-shading are based on models of brightness distribution on above approximation produces excellent shaded overlays, that
ideally diffusing surfaces [8], [10], [ I I ] , [49]-[57], [71], in fact seem easier to interpret that those produced using the
[73], [74], even though there is no evidence that perception exact equation for a perfectly diffusing surface.
of surface shape is optimized by this choice of reflectance
model. As we will see, reflectance calculations based on this XXIX. BRASSEL'S ADJUSTMENT OF LIGHT
model are not particularly simple either. SOURCE POSITION (I)
The cosine of the incident angle can be found by considering Perhaps the most outstanding examples of shaded maps come
the appropriate spherical triangle (see Fig. 13) formed by the from Switzerland. Techniques for portraying the shape of the
local normal N, the direction towards the source S, and the surface and integrating this information with planimetric detail
vertical V. One then finds the following, as Wiechel already have been perfected by a number of artists there [I], [40]-
showed[8 ], [47]. The results of automated methods as described here,
cannot compete with the beauty of their products. Neverthe-
R'(6,0) = cos By cos 0 + sin 0o sin 0 cos (^ - 0o). less, automated methods do provide a systematic, accurate
Alternatively one can simply take the dot-product of the unit way for generating shaded overlays. They will become of par-
ticular importance when good digital terrain models become
vector N normal to the surface and the unit vector S pointing
easily available. Brassel attempted to incorporate as much as
towards the source [138], [140]
possible of the Swiss manner into his program [71]-[74].
(-P,-q, l)(-Po,-<?o, 1) He quickly realized two problems with methods based purely
COS I = ——/ * —r / , , • on Lambertian reflectance models.
(Vl+p'+flrWl+?§+<?§) The first effect is explained as follows. Surface elements
The reflectance map (normalized so that its maximum is one) sloping away from the source are dark, while those tilted
28 PROCEEDINGS OF THE IEEE, VOL. 69, NO. 1, JANUARY 1981

towards the source are brighter. Brightest are those that have azimuth of the source is then calculated as follows,
the light rays falling perpendicularly on the surface. Surface
elements sloped more steeply, however, become darker again. <j>n = 0o + w sign (A0) min [ |A0|/^, (ff/2 - |A0|)/(7r/2 - g)}
This lack of monotonicity of brightness with slope is apparently where sign (A0) is +1 when A0>0, and -1 when A0<0.
disturbing and reduces the ability of the observer to correctly Now one can calculate the gradient (?„, <?„) of the maximally
interpret the shape. Brassel ameliorated this effect by reduc- illuminated surface element, or instead, use Wiechel's formula
ing the elevation of the light source in regions where this prob- to get the cosine of the incident angle directly,
lem occurred.
If the zenith angle of the source By is smaller than the zenith R'(9, 0) = cos On cos 9 + sin 6,, sin 9 cos (0 - 0n).
angle of the direction defined by the surface normal 9 he moves Here it should be pointed out that in Brassel's scheme the
the source to a new zenith angle ()„ that is a weighted average gradient (p, q) used in the above formulas for adjusting the
of 60 an^ 9. To be precise, azimuth of the source is a regional value derived from ridge
e , , = m a x [ 0 o , a 6 + ( l -a)9o] and stream lines in the area near a particular point. In this
way the cartographer can influence the final appearance of the
where
shaded overlay by altering these manually entered linear fea-
1
e = tan-
9 tan ' Vp- + q- . tures. This method involves rather complicated global calcula-
In his thesis [71], the weighting factor a was one, so that tions that do not lend themselves to implementation in the
adjustment in elevation was complete. Curiously, this simple straightforward way we have discussed. The apparent bright-
method has the effect of lowering the light source even for ness of a surface element depends on both its orientation and
surface elements tilted away from the source, as long as the some function of its surround.
slope is large enough. The above method can also be expressed A possible objection to this idea is that the distribution of
directly in terms of the components of the gradient. When light sources does not vary from place to place in a real imag-
ing situation unless the sources are very close to the surface.
Pl+q^>pl+qlo, ____ ____
It must be pointed out, however, that people seem to have
Pn = Po(Vp2 +<? 2 I^Pl + <?§ ) little difficulty interpreting synthetic images where the as-
and sumed light source position varies. In fact, few notice such
drastic changes in assumed light source position as are apparent
<?n = qo(^P2 +q2 l^pl+ql) in a recent map of the polar regions of Mars [150]. This may
where p,, and <?„ are the components of the gradient of a sur- be related to the fact that our perception of shaded images
face element oriented to be maximally illuminated by the does not give us a good appreciation for global differences in
adjusted light source. If there are no further adjustments of depth, instead giving us an excellent appreciation of local
source position, the reflectance map in the specified region surface orientation patterns.
becomes, Whatever the merits of this argument, the above method can
be modified to fit in with the notion of the reflectance map, as
l+(PoP+<?ofl)0 defined earlier, if one uses the local gradient (p, q) in the cal-
R(P,q)=
(l+P^2) culation of the adjusted source position. The illustration
shown here uses this modified version. Note that in Brassel's
XXX. ADJUSTMENT OF THE AZIMUTH OF THE SOURCE scheme the adjustment in azimuth and zenith angle of the
Next, Brassel observed that ridge and stream lines become source are independent and can be carried out in either order.
indistinct when their direction was more or less aligned with a Brassel also adjusted the apparent brightness according to
direction toward the source. Opposite faces of a mountain or the height of the terrain. This is a simple local computation
valley may end up with similar gray values when the cosine of that can be easily added to any of the basic methods presented
the incident angle is similar for the two, even though they have here. It was not included here to simplify comparisons.
quite different surface orientations. Maximum contrast occurs
when a linear feature lies at right angles to the direction of the XXXI. ALTERNATE LIGHT SOURCE ADJUSTMENT
incident light, and Brassel therefore moves the light source in METHOD (J)
azimuth towards the local direction of steepest ascent or Brassel used a piecewise linear adjustment in azimuth. A
descent (whichever is closer), similar effect can be achieved using a smoothly varying func-
The amount of adjustment depends on two parameters (see tion like
Fig. 14). The maximum amount of adjustment is specified by
w (55° for example), while the azimuth difference at which sin §0 = (f3/2) sin 2(0 - 0o) = (3 sin (0 - 0o) cos (0 - 0o).
this maximum occurs is specified by g (80° for example). The That is,
details of the computation are not very important but are
given here for completeness. First, the azimuth of the direc- sin60=)3[(po<?- q'oPXPoP+qo^l/KP 2 +12) (Po +'?2)!.
tion of steepest descent is computed using Adjusting the azimuth of the source by 60 leads to a new posi-
0=atan(-q,-p) tion specified by,
where atan (;>',.!»;) is the direction of the line from the origin to PS = Po cos 80 ~ qo sin 50
the point (x,y) measured counterclockwise from the ^c-axis.
qs = Po sin 50 + qy cos 80,
Next, the difference between 0 and the azimuth of the source
0o is reduced to the range -ff/2 to -l-ff/2 by adding or subtract- Adjustment is complete for small angles when (3=1. The use
ing integer multiples of ir. Let the result be A0. The adjusted of trigonometric functions is avoided in the above calculations,
>ni^ onAull'Hj AND THE REFLECTANCE MAP 29

tW

-"ll.
*g +^/2

Fig. 14. Sawtooth function giving adjustment of azimuth of the light Fig. 15. Projection of the surface normal on a vertical plane containing
source as a function of the angle between "regional" ridge and valley the assumed light-source. The projected normal is perpendicular to
directions and the direction of the light source in Brassel's scheme. the line in which the plane cuts the terrain surface.

since both the sine and the cosine of 50 can be computed


without them.
Next we turn to the adjustment in the elevation of the
source. To avoid the peculiar phenomena of the lowering of
the source even for surface elements turned away from it, we
adjust the elevation according to the projection of the surface
normal on a plane containing the source. When pjp + q^q >
P|+<?,2,
Pn =Ps(PsP + <?t'?)/(P2 + ^)
In = 1s(PsP + VS^KPJ + <?!)•
In this region then the reflectance map becomes, Fig. 16. Spherical triangles used to calculate the projected incident angle
i' and the projected surface inclination 6'. The direction towards the
2
R (P. q) = Vl +(P,P+^) /(P! +^Wl +P +<? . 2 2 viewer is V, the direction to the source is S, while the surface normal
is N,
Otherwise it is calculated as before, that is, the cosine of the
incident angle is and obtain an expression for tan; . Using the identity cos;' =
2 2
R(P, <!')=(! +PnP + '?n<?)/(Vl +P + <? Vl +PS +P )- 2 1/Vl +tan 2 i', we finally find,
The advantage of the above method of adjustment is that R'(6,0) = cos //[cos 0Vl + tan2 6 cos2 (0 - 0o)]
simple calculation in terms of the components of the gradient where, using the cosine formula as before,
replace trigonometric equations in terms of azimuth and
zenith angles. cos; = cos 0 cos OQ + sin 6 sin OQ cos (0 - 0o).

XXXII. WIECHEL'S PROJECTED INCIDENT ANGLE (K) Alternatively one can project the vector n = (-p, -q, 1) onto
the plane with normal s = 0?o > ~Po> °)- The result will equal,
The first serious analysis of an approach based on the shad-
ing seen on the surface of an obliquely illuminated matte n =n - (n • s)s/s2
object is that of Wiechel [8]. He started by assuming a per- where s is the magnitude of the vector s. This projected vector
fectly diffusing surface and proposed connecting points of will be perpendicular to the line in which a vertical plane in-
equal apparent brightness by isophotes. He correctly deter- cluding the light source cuts the surface:
mined the brightness of a perfect diffuser as already men-
tioned. In order to make calculations less unwieldy he also n'= l-Po(poP+<lo <?)/(P2 +<?2),
suggested three approximations, the second of these being
the contour-terrace model already discussed. His first method -<?o(PoP+<?o<7)/(P2 +<7 2 ), I!-
involved approximating the cosine of the incident angle ; by Taking the dot-product of the projected vector and the vector
the cosine of i', the projection of this angle onto a vertical pointing at the source, then dividing by their magnitudes we
plane lying parallel to the rays (see Fig. 15). By applying the find,
analogue formulas to the lower spherical triangle (see Fig. 16)
we get, (1 + Pop + go?)
=
Vl +P2 +'^ 2 Vl+(PoP+'^o<?) 2 /(P 2 +<? 2 )'
sin i' cos i = cos i' sm i cos \.
This mathes the expression for perfectly diffuse reflection for
Applying the analog formulas next to the whole triangle we values of ( p , q) along the line from the origin to the source
get point (po, qo). When the source is in the standard position
sin i cos x = cos 6 sin By - sin 0 cos 60 cos (0 - 0o )• the equation becomes
The second equation allows us to eliminate \ from the first R(P, <?) = [1 + (P - <?W2']/[\/2'V1 + (p - q^/2 ] .
30 PROCEEDINGS OF THE IEEE, VOL. 69, NO. 1, JANUARY 1981

While these equations are more complicated than the original Using the expression for the projected normal n developed in
equations for the cosine of the incident angle i, it must be the last section, or, remembering the expression for the slope
pointed out that the angle ;"' can be estimated graphically by in the direction (po, <?o)> cme can ^so show,
measuring the contour interval in a direction parallel to the
R(p,q)= 10 (p » p+<!f » <^) /' /p ^.
incident light rays. The same is true of Wiechel's second ap-
proximation introduced earlier. This greatly simplifies the When pop+qoq >0, R(p, q)> 1 and so all surfaces facing
manual construction of shaded maps from contour maps, and towards the light source are white. No information is avail-
makes it possible to use a simple one-dimensional scale for able to the viewer regarding surface shape in these areas. If
brightness instead of Wiechel's more elaborate "Helligkeits- the assumed light source is in the standard position we get the
maassstab". This property manifests itself in the reflectance simple formula,
map by the appearance of parallel straight line contours. It is
also interesting to note that Wiechel's "approximations" pro- ^(p.^lO^-^/^ 2 .
duces results that seem better than those obtained using the Marsik also limited the density to a maximum of 0.7 to avoid
equation for the perfect diffuser. Unfortunately, experimen- interference with planimetric information on the map.
tation at his time was limited because of the lack of appropriate
technology for systematically generating continuous tone XXXV. LOMMEL-SEELIGER LAW (N)
patterns. Apparently no maps made by this method were ever Many surfaces have reflectance properties that differ greatly
published [ 1 ]. from those of an ideal diffuser. The photometry of rocky
planets and satellites has intrigued astronomers for many years
XXXIII. WIECHEL'S MODIFIED BRIGHTNESS (L) [121]-[130]. Several models have been proposed to explain
Finally, Wiechel postulated a material that would not appear the observed behavior. One of the earliest, developed by
equally bright from all viewing directions, but instead had Lommel [119] and modified by Seeliger [ 120], is based on an
brightness varying as the cosine of the emittance angle. This analysis of primary scattering in a porous surface [126], [128].
was used in part to discuss the relationship between the con- Their model consists of a random distribution of similar par-
tour-terrace model and the original surface, but also put for- ticles suspended in a transparent medium and results in a
ward as a third, "modified brightness" model that might be reflectance function that is given here in its simplest form,
used in calculating gray tone. In this case brightness varies in
1/[1 +(cose/cosi)]
proportion to (cos;' cos e). We can normalize his result here
by dividing by the maximum of this product, cos2 (.gll), unless cos i < 0, when the surface is self shadowed. Here i is
where g is the so-called phase angle, here equal to 60. (The the incident angle, and e is the emittance angle, the angle
term phase angle stems from work on lunar photometry, between the local surface normal and the direction to the
where this angle equals the phase of the moon). Then, viewer, here equal to Q. The expression equals 1/(1 + cosg)
when i = 0 , where g is the phase angle, here equal to 0o- Using
R (P> <?) = 2 (cos i cos e)/(l + cos g) this value for normalization and remembering the expression
or for cos i one finds,
2(1 +poP+<?oq') R'(6,0) = (1 + cos 6o)l[ 1 + cos 6/(cos Q cos OQ
2 2
R(P.CI)--
(i + vri~p|T<?i) d+ p + <? ) + sin 6 sin @o cos (0 - 0o))]
or
Incidentally, this function does not satisfy Helmholtz's reci-
procity law [124], and therefore cannot correspond to the [l+l/\/l+p§+<?2]
reflectance of any real surface illuminated by a point source. R(P,q)=
[1 + V l + P o + < ? o / 0 + POP + <?o <?)]
XXXIV. MARSIK'S AUTOMATIC RELIEF SHADING (M) unless (I + PoP+clo^^^' when R(p, q)=0. When the
Blachut and Marsik further modified Wiechel's approxima- source is in the standard position,
tion, partly as a result of their dissatisfaction with the fact that
-, .(l+l/\/2')[l+(p-<?W2']
a horizontal surface does not appear white when a perfectly R(p q)=
diffusing material is assumed [58], [59]. This may have ' (i+V2-)+(p-,)/V2-
stemmed in part from early conventions in map-making where The Lommel-Seeliger law has been used in automated relief
horizontal surfaces were portrayed without hachures [4] -[6]. shading by Batson, Edwards, and Eliason [70].
Marsik also aimed for simpler calculations and considered the Based on detailed measurements and modeling, Fesenkov
slope in the direction towards the source. For some reason, [123], [127] andlaterHapke[128]-[130] further improved
he proposed making the density of the printed result equal to the equations for the reflectance of the material in the maria
the tangent of the projected slope angle 6' (see Fig. 15). Den- of the moon, Hapke imagined the surface as an open porous
sity is the logarithm (base 10) of the reciprocal of the reflec- network into which light can penetrate freely from any direc-
tance. Applying the analogue rule to the upper spherical tri- tion. His result has three components: the Lommel-Seeliger
angle (see Fig. 16) one can show that, formula for reflection from a surface layer containing many
0 = cos 0 sin 6' - sin 0 cos 0' cos (0 - 0o). scattering points of low reflectance, Schonberg's formula
[122] for reflection from a Lambertian sphere and a compli-
Thus cated factor resulting from mutual obscuration of the particles.
The results of such investigations are often expressed in terms
tan Q' = tan 9 cos (0 - 0o), of angles other than the ones introduced so far. The Lommel-
RI(9,<^>)=lOtaneM!'(•'<>~t><>\ Seeliger law, for example, can be expressed in a way which
HORN: HILL SHADING AND THE REFLECTANCE MAP 31

simplifies the problem of "calculating the shape of the lunar


surface from shading in a single image [137], [138], [151].
The angles needed, luminance longitude and luminance lati-
tude, are defined in Appendix D.
XXXVI. MINNAERT'S REFLECTANCE FUNCTION (0)
Minnaert discusses a large variety of models for the reflec-
tion of light from rough surfaces [126]. He also proposed a
class of simple functions of the form,
cos" i cos"-1 e
intended to fit observations of the radiance of lunar material
while obeying the reciprocity law [ 124]. Here K is a parameter
to be chosen so that the best fit with experimental data is
obtained. This parameter is meant to lie between zero and Fig. 17. Spherical triangles used to calculate the first off-specular angle
one, with the above expression becoming equal to that for the s. It Is the angle between S, the center of the source, and S', the direc-
perfect diffuser when K = 1. We can normalize this expression tion from which light is specularly reflected towards the viewer. Equiv-,_
alently, it is the angle between V, the direction of the viewer, and V',~}
so it equals one when i = 0, the direction in which light from the center of the source is specularly
R(P, (D = cos" i cos""1 e/cos""1 g reflected.

^(p.<^)=[(l+PoP+<?o'^)/(l+P 2 +'^ 2 )] K
XXVIII. GLOSSINESS-THE FIRST OFF-SPECULAR ANGLE
• ( V l + p ' + ^ / V l + P 2 +ql). Not all surfaces are matte. Some are perfectly specular or
mirror-like. Since smooth, specularly reflecting surfaces form
XXXVII. PARTICULARLY SIMPLE REFLECTANCE
virtual images of the objects around them, patches of high
MAPS (P) brightness will appear when such a surface is illuminated by an
Several methods discussed here have reflectance depending extended source, like a fluorescent light fixture, or by light
only on the slope in the direction away from the assumed light streaming in through a window. The size of the patches de-
source, leading to parallel straight line contours in the reflec- pends on the solid angle subtended by the source as well as the
tance map. These include Wiechel's first and second "approxi- surface curvature, while the brightness distribution is that of
mation," Tanaka's relief contour method, the "law" of Lom- the source.
mel and Seeliger, Minnaert's formula when K = ^-, as well as To study reflection of an extended source in a specular sur-
Marsik's automatic relief shading. These methods are quite face, it is useful to introduce the "off-specular" angle s between
effective in producing overlays that are easy to interpret. One the direction S to the center of the source and the direction
can construct more such reflectance maps, including some that S'', of the point that is specularly reflected to the viewer (see
are even easier to calculate. One possibility, for example, is, Fig. 17). This, incidentally, is also the angle between the
^(P^-i+^P'+a)/* direction to the viewer V and the direction V' in which the
rays from the center of the source are specularly reflected.
where We assume a circularly symmetric source, with brightness
P' = (Po P + <?o ci)lVpl^~ql L(s) at eccentricity s. This is the brightness the viewer observes
in the specularly reflecting surface. Calculating the first off-
is the slope in the direction away from the source. Values less Specular angle s is simple using the appropriate spherical
than or equal to zero correspond to black, while values greater
triangles:
than or equal to one correspond to white. The parameters a
and b allow one to chose the gray value for horizontal surfaces cos s = cos 1i cos g - sin 2i sin g cos \
and the rapidity with which the gray values changes with sur- cos e = cos i cos g - sin ;' sin g cos \.
face inclination. The simple program shown earlier (see Fig.
5) uses this form with a = 0, b = 1/\/T and po = l/'s/2', do = Here,;' is the incident angle, between the local normal and the
-1/V2'. direction to the source, e = Q, is the emittance angle, between
•A simple alternative, where all possible slopes are mapped local normal and the direction to the viewer, while g = 60 is
into the range from zero to one is, the phase angle, between source and viewer. Eliminating
R(p,q)=y+^(p'+ aW&^p'+a) . 2 X from the two equations and expanding the sine and cosine
of 2i, one gets,
This has the advantage that the reflectance does not saturate
for any finite slope and all changes of inclination in the verti- cos s = 2 cos i cos e - cos g.
cal plane including the source translate into changes in gray Substituting expressions in p and q for cos i, cos e and cos g
level. one can rewrite this as,
Another way to achieve this effect is the following, some-
what reminiscent of Lehmann's approach, c o s ^ = [ 2 ( l + p o p + ( ? o < ? ) / ( l + P 2 +<? 2 )- l]/VTTp^Tq^.

R(P, q) = i+ (W tan-1 [(7r/2) (?'+«)/&]. This result can also be obtained simply by finding the direc-
tion S' from which a ray must come to be specularly reflected
These three formulas are given in a form where the rate at to the viewer V, by a surface element with normal N,
which the gray value changes with surface inclination is the
same at (p + a) = 0. S'=2(V-N)N- V
32 PROCEEDINGS OF THE IEEE, VOL. 69, NO. 1, JANUARY 1981

where V =(0,0, 1). The off-specular angle is the angle be-


tween S' and the center of the source S so
cos s = S • S' = 2(S • N)(V • N) - (S • V).
Note that the cosine of the first off-specular angle can be
calculated easily, without using trigonometric functions. The
contours of constant cos s turn out to be nested circles in
gradient space, with centers lying on the line from the origin
to the point (po,'7o). This can be seen by noting that the
locus of the point S', for constant s, is a circle about the point
S and that circles on the Gaussian sphere give rise to circles in
gradient space when projected stereographically [138].
Fig. 18. Spherical triangles used to calculate the second off-specular
The cosine of the off-specular angle s equals one when con- angle s'. It is the angle between the actual surface normal N and a
ditions are right for specular reflection, that is, when e = i and surface normal N' oriented to specularly reflect rays from the source
g = i + e. This can be seen by setting e = i = g f l in the trigono- towards the viewer.
metric expression for cos s.
In this case we will need to calculate the second off-specular
XXXIX. BUI-TUONG-S FORMULA-SPECULAR SURFACE, angle s' between the local normal N and the normal N' oriented
EXTENDED SOURCE (Q) for specular reflection of rays from the source S towards the
Having seen how to calculate the off-specular angle s, we can viewer V (see Pig. 18). By considering the appropriate spheri-
now make a reflectance map, by assigning the distribution of cal triangles one finds,
source brightness L(s). This function should be nonnegative
cos s' = cos i cos (g/2) - sin ;' sin (g/'2) cos \
monotonically decreasing with s, and equal to one when s = 0.
For ease of calculation one choice might be cos e = cos i cos g - sin ; sin g cos \.
W = cos" (s/2) = [ ? ( ! + cos s)]" 12
Eliminating \ from the two equations and expanding the sine
and cosine of the phase angle g, one finds,
where n is a number that defines how compact the bright patch
is (a useful value might be around 20). So far, we have devel- cos s' = (cos i + cos e)/(2 cos (gl2))
oped the reflectance map for a specular surface and a circu-
or
larly symmetric source. Many surfaces, such as glazed pottery
or smooth plastic, have both glossy and diffuse components cos s' = (cos;' + cos e ) f ( \ f 2 Vl + cosg).
reflection. Specular reflection takes place at the smooth inter-
face between two materials of different refractive index, while This result can also be obtained by finding the vector N',
the matte component results from scattering of light that normal to a surface element oriented to specularly reflect a ray
penetrates some distance into the surface layer. from the source in the direction of the viewer V. That is,
We can combine these two components as follows N'=(S+V)1\S+V\.
R(P, <?) = [(1 - a) + <xL(s)] cos i/cos (g/1) The off-specular angle is the angle between the actual surface
normal N, and this vector N'
where a determines how much of the incident light is reflected
specularly. The expression is scaled so that its maximum is c o s s ' = N - N ' = [ ( S - N ) + ( V - N ) ] l \ / 2 \ / ] . +(S- V).
(approximately) equal to one. Here we have assumed the
source, while distributed, is compact enough so that the diffuse The surface microstructure of an uneven surface can be
reflection component can be approximated as cos i. The above modeled by many randomly disposed mirror-like facets, too
expression obeys the reciprocity law of Helmholtz [124] small to be optically resolved, each turned a little from the
which applies to real surfaces illuminated by a point source. average local surface orientation. One can define a distribu-
Bui-Tuong used a reflectance function similar to the one de- tion P(s') describing what fraction oHhese microscopic facets
rived above in his computer graphics work [113]. He appar- are turned away from the average local normal by an angle s'.
ently tried to model reflection from a surface that is not For ease of calculation one choice might be,
perfectly smooth. This requires a different off-specular angle P(s')=cos'1 s'.
however, as will be seen in the next section.
XL. LUSTER-THE SECOND OFF-SPECULAR ANGLE XLI. BLINN'S FORMULA—ROUGH SURFACE, POINT
Refulgency, gloss or shine can also appear when a point SOURCE CRt
source is reflected in a surface that is not perfectly smooth. One can use the fact that a normal N' oriented for specular
When a slightly uneven surface, of a material that gives rise reflection of the point source towards the viewer, lies in the
to metallic or dielectric reflection, is illuminated by a point direction (-pi, -q\, 1), where
source, bright patches will be seen surrounding points where
pi =-cos^o tan (0o/2)
the local tangent plane is oriented correctly for specular reflec-
tion. The size of these patches will depend on the roughness and
of the surface and the surface curvature, while the distribution
qi =-sin 0o tan(0o/2).
of brightness will depend to some extent on the texture of
the microstructure of the surface. We can also find N' by normalizing the vector (S + V), so that
HORN: HILL SHADING AND THE REFLECTANCE MAP 33

its third component equals 1: Torrance and Sparrow further elaborated on these models
[134], [135] in order to match more closely experimental
Pi=Po/[l+Vl+pg+<?§] data showing maximum brightness for angles of reflection
4i = < ? o / [ l + V l + P § + < 7 i h . larger than the incident angle. They included in their consid-
erations the effects of obstruction of the incident and emer-
A surface with gradient (pi, <?i) is oriented just right to specu- gent rays by facets near the one reflecting the ray. Blinn sim-
larly reflect a ray from the source to the viewer. This can be plified and explained their calculations [115] and used them
seen by noting that when p = pi and q = q\, in producing shaded images of computer models of various
cos i = cos e = 1/\/1 +p^ + q\ objects. The overall result can be broken into a product of
three terms, one dependent on the distribution of facet orien-
and tations, the second being the formula for Fresnel reflection
cos g= 21(1+p2l+q2l)- 1. from a flat dielectric surface, while the third is the geometric
attenuation factor accounting for partial occlusion of one
In any case, facet by another. We will not discuss these models in any
c o s s ' = ( l + p l p + ( ^ l ( ^ ) / ( V l + p 2 + < ^ 2 V l + P ? +<??). more detail here.
Models for glossy or lustrous reflection have been used with
Note that s' will tend to be (roughly) half of s when both great success in computer graphics to increase the impression
angles are small. Combining matte components of surface of realism the viewer has when confronted with a synthetic
reflection with those from the rough outer surface we get, picture of objects represented in the computer. Unfortunately,
these methods do not seem to improve the presentation of
R(P, q)=[(l-a)+ aP(s')] cos i/cos (g/2).
surface shape for cartographic purposes.
The above reflectance map also obeys Helmholtz's reciprocity XLIII. COLORED SHADING
law and is normalized so that its maximum is (approximately) It is often said that quantitative information about the sur-
equal to one. Blinn and Newell give a similar reflectance func- face cannot be obtained from relief shading [ 1 ]. Contour
tion, claiming it was what Bui-Tuong had proposed [114]. lines on the other hand do allow measurements of elevation
The two are not the same however since the two off-specular and estimation of the gradient. Shading does provide some
angles are different; in fact, the contours of constant s' are information about the gradient too, but cannot be used to
nested ellipses in gradient space, while, as mentioned earlier, determine both of its components locally, since only one mea-
the contours of constant s are nested circles. Indeed, Bui- surement is available at each point. Since we can perceive the
Tuong's model corresponds to reflection of an extended, rota- shape of objects portrayed by shaded pictures, it seems that
tionally symmetric source in a specular surface, while the these local constraints do lead to a global appreciation of
model presented in this section applies to reflection of a point shape, apparently based on our assumption that the surface is
source in a rough surface. continuous and smooth.
If two shaded images, produced with the assumed light
XLII. BLINN AND NEWELL'S MODEL FOR SPECULAR source in different positions, were available however, two
SURFACES measurements could be made at each point allowing one to
One of the methods described by Blinn and Newell [114] determine the gradient locally [141]. It is inconvenient to
assumes a perfectly specular surface in which the world sur- work with two shaded overlays; fortunately though, they can
rounding the object is reflected. To make computations be combined by printing them in different colors. In fact, yet
feasible, they imagine the surrounding objects at a distance another overlay can be added in a third color, but it adds no
great enough so that each part of the surround appears to lie in new information, since the two components of the gradient
essentially the same direction from every point of the surface are already fully determined by the first two.
of the object. In this case one can imagine the brightness Colored shading corresponds to illumination by multiple
distribution of the surrounding objects projected onto the sources, each of a different color. The exact color at each
inside of a large sphere. The gray value used for a particular point in the printed result is uniquely related to the gradient
surface patch then is found by computing the direction S' from at that point. Thus quantitative information is available in
which a ray must come to be specularly reflected to the viewer this new kind of map overlay. Further, ambiguities present
V, by a patch with surface normal N. We have already seen in black and white presentations disappear. By positioning the
that, light sources properly, one can avoid problems occasioned by
the accidental alignment of ridge or stream lines with the
S'=2(V-N)N- V.
direction of incident light. Thus the need for ad hoc adjust-
The appropriate gray value is then determined from the spher- ments of the azimuth of the assumed light source is removed.
ical distribution of brightness. In practice the sphere is mapped Colored shading is easy to interpret in terms of surface shape
onto a plane by calculating the zenith angle, Oy and azimuth, and effective in portraying surface form. It is unlikely how-
^o of S' [114]. The brightness distribution can be equally ever that it will be widely used because of the added expense
well specified in gradient space [138], since it is also a projec- of printing and conflict with existing uses of color in cartog-
tion of the Gaussian sphere. raphy to distinguish various kinds of planimetric information.
Surface models incorporating randomly dispersed mirror-like Amongst other things, color is now used to code height and
facets were first studied in the 1700's by Bouguer [118]. This surface cover. Further, yellow is used in ordinary shading for
type of microstructure has been investigated extensively since sun-facing slopes, while violet is used for shaded regions [152].
then, despite the difficulties of reasoning about the three- This is thought to simulate the increased sky illumination
dimensional nature of reflection from such surfaces. Recently, component in areas turned away from the sun.
34 PROCEEDINGS OF THE IEEE, VOL. 69, NO. 1, JANUARY 1981

Fig. 19. Reflectance maps in the order in which they were introduced. The letter codes on subfigures match the letters found after the head-
ings of corresponding sections of this paper. Small crosses mark points in gradient space where slope-components are integer multiples of 1.
Where appropriate, a small square marks the gradient of a surface element that is perpendicular to the rays from the assumed light-source.

XLIV. SUMMARY AND CONCLUSIONS Methods that have been proposed for mechanizing the genera-
After a brief review of the history of hill-shading an efficient tion of relief shading were also treated. The automated method
method for providing shaded overlays was described. It de- described here is very flexible, since it can use any reflectance
pends on a lookup table containing sampled values of the map.
reflectance map. Traditional, manual methods were explored Eighteen of the reflectance maps described were plotted as
in terms of their equivalent reflectance maps, as were phenom- contour diagrams (see Fig. 19). The letter under a subfigure
enological models used in the computer graphics community. corresponds to the letter appearing after the heading of the
HORN: HILL SHADING AND THE REFLECTANCE MAP 35

Fig. 19. (Continued.)

section in which the corresponding reflectance map is dis- Shaded images of a mathematically defined surface were
cussed. The first three (A, B, and C) are independent of the then created using these reflectance maps (see Fig. 20). Several
direction of the gradient, depending only on the slope. These of the subfigures give one a good appreciation for the shape of
give rise to rotationally symmetric diagrams. Six other dia- the object. Assumption of a perfectly diffusing surface (G)
grams (E, F, K, M, N, and J°) show parallel straight lines. These and Wiechel's modified brightness function (L) lead to good
correspond to reflectance maps which depend only on the results, while the images corresponding to glossy surfaces
slope in the direction away from the source. Reflectance maps (Q and R) are perhaps the most vivid.
for perfectly diffusing (G) and glossy (Q and R) surfaces are The same set of reflectance maps was then used to make
also included. shaded images of a region in Switzerland for which a digital
A B C

D E F

H
J K L

M N 0
38
PROCEEDINGS OF THE IEEE, VOL. 69, NO. 1, JANUARY 1981

Fig. 21. Shaded images of a digital terrain model. The subfigures were made using the same reflectance maps as those used for the previous
figure.
HORN: HILL SHADING AND THE REFLECTANCE MAP

Fig. 21. (Continued.)


40 PROCEEDINGS OF THE IEEE, VOL. 69, NO. 1, JANUARY 1981

Fig. 22. Shaded images of several digital terrain models. A particularly simple reflectance map was used. The lines in the subfigures correspond
to a length of 10 km on the surface, (a) Lake Louise, Alberta, Canada, (a) Gulf Islands. British Columbia, (c) Les Diablerets. Switzerland.
(d) Dent de Morcles, Switzerland. (3) Mexico City, Mexico, (f) Jewell Ridge, Virginia, (g) White Tail Butte, Wyoming, (h) Tehacnapi Moun-
tains, California, (i) Mount Index, Washington, (j) Mauritius, Indian Ocean.

terrain model was available (see Fig. 21). Some reflectance Marsik's method (At), in which half of the surface is a fea-
maps appear much better than others in conveying an imme- tureless white, is clearly not very effective. Several of the
diate impression of surface shape. Rotationally symmetric other methods require careful scrutiny before conclusions
reflectance maps (A, B, and C), corresponding to overhead about their adequacy cart be made. Amongst the best are
illumination of the terrain, are not very good for example. Wiechel's modified brightness method (L) and the modifica-
Perfectly diffuse reflectance (G) is not optimal either. In fact, tion of Brassel's method presented here (J). Several of the
various approximations to the formula for a Lambertian re- methods depending on the slope in the direction away from
flector (H and K) seem to produce better results. Glossy the light source appear to be quite adequate (F, K, N, and P).
reflectance components (Q and R), while very useful in the These are to be recommended unless there are good reasons to
portrayal of regular objects, result in tones that are too dark prefer one of the other methods.
to be useful in a map overlay. We may also not be used to Shaded images were created from several other digital terrain
seeing a geographical surface presented in this form. models (see Fig. 22) using one of these simple methods (P).
HORN: HILL SHADING AND THE REFLECTANCE MAP 41

Fig. 22. (Continued.)

The terrain models differ widely in their quality, resolution metric detail [153]. This is an area that has not received much
and origin. They do show the utility of the methods described attention so far. Another important issue relates to the appro-
here in presenting the information in a digital terrain model to priate scale for shaded overlays. Shaded overlays are useful
a human observer. for large scale maps. For small scale maps it is necessary to
Shading is an important depth cue. The choice of reflectance generalize the surface to avoid the appearance of complex tex-
map should not be based on some ad hoc model of surface tures that may be difficult to interpret [1], [48], [73], [74],
behavior, experimental measurement of reflectance of some [ 154], [155]. This nonlinear process of removing small hills,
material, or formulas that happen to be easy to calculate. In- ridges and valleys has not yet been satisfactorily automated.
stead, one should use a reflectance map that gives rise to an An as yet unexplored possibility depends on finely sampled
immediate, accurate perception of surface shape. terrain elevations. This is the ability of shading to show fine
It is important to arrange for the range of gray tones in the detail. Contour maps have to be carefully generalized or
shaded overlays to be limited so as to avoid obscuring plani- smoothed to avoid showing confusing detail on a scale smaller
42
PROCEEDINGS OF THE IEEE, VOL.69, NO. 1, JANUARY 1981

Fig. 22. (Continued.)

than the contour interval. This is not the case with shading,
although historically the manually produced maps have always
shown only quite coarse features. We do not yet know whether
the textures produced by the shading method when working
from really fine terrain models will be confusing, or of great
value in identifying different types of terrain.
APPENDIX A
ROTATED GRADIENTS
It has been cartographic practice to assume a light source in
the Northwest at a 45° elevation above the horizon. It is help-
ful in this case to introduce a rotated coordinate system (see
Fig. 23) with
Fig. 23. Rotated coordinate system that may be convenient when the
p'=(p-q)lV2 assumed light-source is in the northwest. The reflectance map is
symmetrical about the p'-axis.
and
q'=(p+<?)/V2.
and q^
If Ax = Ay = A say, then the slopes in the Northwest to South-
P'w = K^o + z+- + ^ - (^o + z-+ +z^ /4 V2 A
east and in the Southwest to Northeast direction, can be esti-
mated particularly easily by combining the formulas for py, <Tw [(2o+ + z++ + z+o) - (20- +z- + ^o)! /4 \/2 A.
HORN: HILL SHADING AND THE REFLECTANCE MAP 43

If one wishes to estimate the slopes for the center of the top-
right quadrant (in the unrotated coordinate system) rather
than the central point one may combine the expressions for
Pi/2 and <?i/2 to get the simple formulas,
P'l/2 =(2+0 - Z o + ) / V 2 A

and "B^ECTION
<?'i/2 =(z^.+-Zoo)/^/2A.
One advantage of the rotated coordinate system stems from
the fact that models of surface reflectance considered here are
symmetric with respect to a line pointing towards the source.
That is, a surface element with slopes p' = p'o and q' = q'o say,
has the same apparent brightness as one with slopes p ' = p o
and q' = -q'o. Thus a lookup table based on the rotated coor-
dinate system can be smaller, since only that half of the table Fig. 24. The viewing plane contains the viewer and the line of intersec-
tion of the slicing plane with the terrain surface. Line spacing in the
corresponding to q' > 0 need be stored. block diagram equals the spacing between successive viewing planes.
So far we have assumed that the grid of the terrain model is The dotted line is parallel to the vector v.
aligned with the geographical coordinates. If instead the whole
model is rotated anticlockwise by an angle 6, then slopes Different values of c, correspond to different cutting planes.
p" and q" can first be estimated from the model as described The plane corresponding to the value Cs + dcy is separated
and then transformed as follows: from the plane corresponding to the value c, by a distance
p = p" cos 6 - q" sin 6 dcsis, where s is the magnitude of the vector s. The equation
for the viewing plane is just
and
e-p=Ce.
q=p" sin6+q" cos 0.
Successive cutting planes will intersect the tangent plane in
Alternatively, the model can be resampled to produce a new parallel lines. These give rise to parallel viewing planes corre-
version on a grid aligned with the axes. sponding to different values of the constant Cg. The spacing of
these viewing planes is of interest, since it equals the spacing
APPENDIX B of the lines in the orthographic projection. The plane corre-
SHADING APPARENT IN BLOCK DIAGRAMS sponding to the value Cg + dcg is separated from the plane
We can analyze the shading apparent in block diagrams by corresponding to the value Cg by a distance of d c g / e , where
calculating the spacing between lines as a function of the sur- e is the magnitude of the vector e. In order to relate the
face orientation. Let a local surface normal be n = (-p, -q, 1). spacing of lines in the block diagram to the spacing of the
A series of parallel planes, with common normal s, cuts the cutting planes we need to find the relationship between dCg
terrain surface. The intersections of these planes with the sur- and dcy.
face are viewed from a direction specified by the vector v. It is A point p on the line of intersection lies in all three planes
assumed that the viewer is at a great distance so that the pro- and therefore simultaneously satisfies the three equations
files are projected orthographically along lines parallel to i> (see given above for these planes. Expanding the last one of these,
Fig. 24). e • p = Cg, we obtain,
The line of intersection of one of the cutting planes with the
(n '• v)(s • P) - (s • v)(n • p) = Cg
local tangent plane will be parallel to the vector n X s, since
the line lies in both planes and is therefore perpendicular to or
the normals, n and s. Now construct a plane through the line
(n -u)Cs- (s -v)Cn=Ce.
of intersection and the viewer. This plane, called the viewing
plane, contains both n X s and v. The normal e of the viewing Here, (•„ is fixed and so the relationship between changes in
plane must therefore be perpendicular to both and can be Cg and c, is simply
defined as,
dee = (n • v)dcs.
e = (n X s) X v
If the interval between cutting planes is 5 and the map scale
or is k, then dcs/s=(k6). Consequently the spacing between
lines in the block diagram dc^/e is
e =(n • v)s - (s -v)n.
d=k8(n-v)(s/e)
If we let p = (x,y, z), then the equation for the local tangent
plane can be written, where e is the magnitude of the vector e = (n • v)s - (s • v)n.
Finally, we remember that
n • p = Cn
R(P, Q) = 'w - Ow - r,,)(l>/d)
for some value of the constant <•„. Similarly, the equation of a
particular cutting plane is, where b is the thickness of the lines. Thus
s-p=Cs. R(P, q)=rw- (bfk6)(r^ - ^)(e/s)(l/n • v).
44 PROCEEDINGS OF THE IEEE, VOL. 69, NO. 1, JANUARY 19&1

The view vector is tangent to the surface when n • v = 0. When


this dot product becomes negative, the surface is turned away
from the viewer and should not be visible. Also note that
d = k6, when s • v = 0. One should therefore choose s and v so
that they are not orthogonal, to avoid getting only evenly
spaced parallel lines.
In the case of perspective projection, line density will increase
with distance, and the resulting reflectance will be lowered
because of a change in the effective scale factor k. If the
projected profiles are plotted on a raster device, one has to
also take into account the fact that the number of dots per
unit line length is not constant. The dot density varies as
max [|cos0|, |sin0|], where 0 is the angle between the line
and the direction of the raster. This variation should be in-
cluded if an accurate reflectance map is to be derived for out- Fig. 25. Luminance longitude cr and luminance latitude fS of a surface
element are defined as the longitude and latitude of a patch on a
put of this form. sphere with the same orientation. Longitude and latitude are measured
relative to the luminance equator through the light source S and the
viewer V.
APPENDIX C
ISOMETRIC VIEWS OF VERTICAL PROFILES
The transformation between the terrain coordinate system diagram. Theni;= (1,-1, 1). Consequently, n -v= (1 - p +q)
and that of an observer viewing the terrain obliquely can be and s • v = -1. Further, e = (-p, 1 - p, 1) and hence,
found by multiplying a rotation matrix corresponding to rota-
tion by 0y about the x-axis with a matrix corresponding to d = (kS)(l - p + q)!(V2 V l - P + P 2 ) .
rotation by (ff/2 + 0u) about the z-axis, where 0u is the azimuth So, if r f , = 0 and r^ = I ,
and 6y is the zenith angle of the direction specified by the
vector v. If the coordinates in the observer's system are x', y', R(p, q) = 1 - \^2 (blk6) V l - p + p 2 ^ ! - ? + < ? ) .
and z', one finds, Similarly, for profiles running South to North, s = (1, 0, 0),
x' = -sin ^>yX + cos ^y and,

y' = -cos <t>v cos OyX - sin 4>u cos Q^y + sin OyZ R(p, q) = 1 - \^2 (b/k8) Vl + q + q2/(I - p + q).

z' = +cos 0y sin QyX + sin 0y sin 0^y + cos QyZ. At times two orthogonal sets of slicing planes will be used,
producing a mesh on the surface. The reflectance map corre-
In the case of orthographic projection, the values of x' and sponding to this case can be found by adding the last two
y' are simply multiplied by the map scale k, to determine formulas and subtracting one from the result.
coordinates in the block diagram.
The general formula derived in Appendix B applies to all APPENDIX D
combinations of viewpoint and cutting plane orientation. It LUMINANCE LONGITUDE AND LUMINANCE LATITUDE
is interesting to look at a few special cases however. We can,
A convention for specifying the orientation of the surface
for example, check our result for the contour interval in an
element relative to the direction of a light source and the
ordinary contour map. Here n = (-p, -q, 1), as always, and
viewer has become established in the work on planetary and
s = (0, 0, 1), since we are considering the intersection of
lunar photometry. Imagine a sphere illuminated by a light
the surface with horizontal planes. Further, v= (0,0,1)
source above the point S, viewed by an observer above the
since the viewer is vertically above the surface. Here then
s = 1, n • v = 1, and e = (p, q, 0). The line interval is, therefore, point V (see Pig. 25). These two points define a great circle
which is called the luminance equator. Points on the sphere
d^feWVp^2. can be referenced using the longitude a measured from the
point V along the equator, and the latitude (3.
The same reflectance map is obtained as before. Slightly more All possible surface orientations can be found on the sphere,
complicated is the case of Tanaka's inclined contours, where and each surface orientation can be identified with some point
s = (-Po, -<7o, 1). Here, again, n • v = 1, while, N say. The luminance longitude and luminance latitude corre-
e =(p - po, Q - <?o, 0) sponding to a particular surface orientation are the longitude
and latitude o f N . It is not difficult to show that,
and
cos e = cos p cos a
s = Vl + p2 + qi.
and
The line interval is, therefore,
cos i = cos p cos (a + g).
d = (fc8)[Vl + pi + <?§/V(p - po)2 + (<? - <?o)2 ].
Conversely,
A result leading to the same reflectance map as the one derived
before. tan a = (cos e cos g - cos i)l(cos e sin g)
Finally, consider profiles running West to East, that is,
and
s = (0, 1, 0). The resulting traces may be viewed isometrically
from the Southeast, a fairly common arrangement for a block tan2 p = [ 1 + 1IEG - (I2 + E2 + G-2)] /[/ 2 - 1IEG + E2 ]
HORN: HILL SHADING AND THE REFLECTANCE MAP

where we have used the shorthand notation, I = cos f, E = cos e, [15] A. H. Robinson and N. J. W. Thrower, "A new method for ter-
and G = cos g. These results can also be expressed in terms of rain representation," Geographical Rev; vol. 47, no. 4, pp. 507-
520, Oct. 1957.
the components of the gradient: [16] A. H. Robinson, "The cartographic representation of the statis-
tical surface," Int. Yearbook of Cartography, vol. I , p p . 53-63,
tan a = (pop + <?o<?)/Vp2 +<?o. 1961.
[17] N. J. W. Thrower, "Extended uses of the method of orthogonal
So tan a is simply the slope in the direction away from the mapping of traces of parallel, inclined planes with a surface,
source. Now, especially terrain," Int. Yearbook of Cartography, vol. 3, pp.
26-28, 1963.
[18] C. M. King, Techniques in Geomorphology. New York: St.
(<?oP - Pog)2 Martin's Press, 1966, pp. 255-256.
l+2IEG-(I2 +E2 +G2)=
K l + p ' + ^ H l +P§+(?S)1 [19] T. K. Peucker, M. Tichenor, and W.-D. Rase, "Die Automa-
tisierung der Methode der schragen Schnittflachen," Kar-
tographische Nachrichten, vol. 22, no. 4, pp. 143-148, 1972.
[(POP+<?og) 2 +(?§+<?§)] [20] T. M. Oberiander, "A critical appraisal of the inclined contour
J2 -2IEG+E1 =
[(l+p'+^Kl+Po+fl2)] technique of surface representation," Ann. Assoc. Amer. Geog-
raphers, vol. 58, no. 4, pp. 802-813, 1968.
so, [21] A. H. Robinson, and R. D. Sale, Elements a/Cartography, 3rd
ed. New York: Wiley, 1969, pp. 189-196.
tan <5 = (<?oP - Po<?)/V(PoP + <?o<?)2 + (Po + <? 2 ). [22] A. H. Robinson, and N. J. W. Thrower, "On surface representa-
tion using traces of parallel inclined planes," Ann. Assoc. Amer.
The Lommel-Seeliger law can be expressed in terms of lumi- Geographers, vol. 59, no. 3. pp. 600-603, 1969.
[23] T. M. Oberiander, "Reply to Robinson-Thrower commentary,"
nance longitude and luminance latitude as, Ann. Assoc. Amer. Geographers, vol. 59, no. 3, pp. 603-605,
1969.
cos (a + g)f[cos a + cos (a + g)] [24] Kitiro Tanaka, "The relief contour method of representing to-
pography on maps," Geographical Rev. Jap., vol. 15, nos. 9 &
and it is clear from this form that scene radiance is indepen- 10, pp. 655-671, 784-796 (Japanese) p. 797 (English abstract),
dent of luminance latitude. 1939.
[25 ] ——, "The relief contour method of representing topography on
maps," Geographical Rev., vol. 40, no. 3, pp. 444-456, 1950.
[26] ——, "The relief contour method of representing topography on
ACKNOWLEDGMENT maps," Surveying and Mapping, vol. 11, p. 27,1951.
The author would like to thank Kurt Brassel, Thomas [27] C. Kopcke, "Ueber Reliefs und Relief-Photogramme," Civflln-
genieur,-vol. 31, 1885.
Peucker, George Lukes, Robert McEwen, Marsha Jo Hannah, [28] Y. Pauliny, "Memoire iiber eine neue Situations Plane- und
and James Mahoney for generously supplying digital terrain Landkartendarstellungsmethode," S-treffen's Oesterreichischer
model. Blenda Horn helped in the preparation of the text and Militarische Zeitschrtft, vol. 36, pg, 177,1895.
[29] Erwin Raisz, General Cartography. New York and London,
Karen Prendergast created the figures. Helpful comments were 1938.
provided by Robert Sjoberg, Katsushi Ikeuchi, and William [30] W. Plllewizer, "GelandedarsteUung durch ReUefphotographle,"
Kartographische Nachrichten, vol. 7, p. 141, 1957.
Silver. Encouragement by Thomas Peucker, Kitiro Tanaka,and [31] 0. C. Stoessel, "Photomechanische Reliefschummerung," NacA-
Kurt Brassel was instrumental in the generation of this paper. richten aus dem Karten- und Vermessungswesen, vol. 1, no. 10,
pp.53-55, 1959.
[32] A. A. Norna, and M. G. Misulia, "Programming topographic
REFERENCES maps for automatic terrain model construction, "Survey^? and
Mapping, vol. 19, no. 3, p. 335, Sept. 1959.
[1] E. Imhof, Kartographische GelandedarsteUung. Berlin, Ger- [33] H. R. WUkeraon, "Reliefschummerung durch Photographic von
many: W. de Gruyter & Co., 1965. Gelandemodellen," Nachrichten aus dem Karten- und Vermes-
[ 2 ] J. G. Lehmann, Darstellung einer neuen Theorie der Bezeichnung sungswesen, vol. 1, no. 10, pp. 60-62, 1959.
der schlefen Flachen im Grundriss Oder der SItuationzeichnung [34] H. Friedemann, "Von neuen Erflndungen: Anordnung und Ver-
der Berge. Leipzig, Germany, 1799. fahren zur Herstellung von Schummerungen fur kartographische
[3] ——, Die Lehre der Situations-Zeichnung oiler Anweisung zum Zwecke." Kartographische Nachrichten, vol. 12, p. 150, 1962.
richtigen Erkennen und genauen Abbilden der Erd-Oberfl'dche [35] P. Richanne, "L'estompage photographique," Bulletin du
in topographischen Charten und Situation-Planen. Dresden, comite francais de cartographic, vol. 17, p. 188,1963.
Germany: Arnoldische Buch- und Kunsthandlung, 1816. [36] P. Richanne, "The photographic hill shading of maps," Survey -
(4] F. Chauvin, Die Darstellung der Berge tn Hearten und Planen, ing and Mapping, vol. 23, no. 1, pp. 47-59, 1963.
mtt besonderer Rucksicht auf ihre Anwendbarkeit im Felde. [37] C. R. Oilman, "Photomechanical experiments in automated car-
Berlin, Germany: Nauck'sche Buchhandlung, 1852. tography," in Proc. ASM Fall Meeting (San Francisco, CA),
(Sl —, Das Bergzeichnen rationell entwtckelt. Berlin, Germany: 1971.
Nauck'sche Buchhandlung, 1854. [38] H. G. Lyons, The Representation of Reliefs on Maps. Ministry
[ 6 ] C. Vogel, "Die Terralndantellung auf Landkarten mittels Schraf- of Finance, National Printing Department, Egypt, 1909.
Herung," Petermanns Geogr. Mitt., vol. 39, p. 148, 1893. [39] L. J. Harris, Hill-shading for Relief-depiction in Topographical
[7] H. Bach, Die Theorie der Bergzeichnung in Verbindung mit Maps. London, 1959.
Geognosie. Stuttgart, Germany, 1853. [40] E. Imhof, "GelandedarsteUung in Karten grosser und mittierer
[8] H. Wiechel, "Theorie und Darstellung der Beleuchtung von nicht Massstabe," VortragNatf. Ges. Zurich, January 1947.
gesetzmassig gebildeten Flachen mit Rucksicht auf die [41] B. Carlberg, "Schweizer Manier und wirklichkeltsnahe Karte,
Beiezeichauas," Civllingenieur, vol. 24, pp. 335-364, 1878. Probleme der Farbgebung," Kartographische Nachrichten, vol.
[9] L. Burmester, Theorie und Darstellung gesetzmassig gestalteter 4,pp.8-14, 1954.
Flachen. Leipzig, Germany, 1875. [42] G. Pohlmann, "Heutige Methoden und Verfahren der Gelan-
[10] Kitiro Tanaka, "A new method of topographical hilt delinea- dedarsteUung," Kartographische Nachrichten, vol. 8, no. 3, pp.
tion," Memo. of the College of Engineering, Kyushu Imperial 71-78,1958:
Univ., Fukuoka, Japan, vol. 5, no. 3, pp. 121-143, 1930. [43] H. Mietzner, "Die Schummerung unter Annahme einer naturge-
(11] ——, "The orthographical relief method of representing hill massen Beleuchtung," Kartographische Nachrichten, vol. 9,
features on a topographical map," Geographical J., vol. 79, no. no.3,pp.73-79, 1959.
3, pp. 213-219, Mar. 1932. [44] E. Imhof, "Probleme der Kartographischen Gelandedarstel-
[12] H. StJ. L. Winterbotham, "Note on Professor Kitiro's method of lung," Nachrichten aus dem Karten- und Vermessungswesen, vol.
orthographical relief," Geographical J., vol. 80, pp. 518-520, 1, no.'10, p. 9-31, 1959. •
1932. [45] J. S. Keates, "Techniques of relief representation," Surveying
[13] P. Wilski, "Erne neue Japanische Darstellung der Hohen auf and Mapping, vol. 21, no. 4, pp. 459-463, Dec. 1961.
Landkarten, "Petermanns Geogr. Mitt., vol. 80, p. 359, 1934. [46] F. Holzel, "Die Gelandeschummerung in der Krise?" Karto-
[14] Jadwiga Remiszewska, " Metoda dec pochylych w"kartografic- graphische Nachrichten, vol. 12. no. 1,pp.17-21, Feb.1962.
znym obrazie urzezbienia" (The method of inclined cut in the [47] E. Imhof, Ed., International Yearbook of Cartography. Lon-
cartographic presentation of the form of the land), Polish Geo- don, England: George Philip and Son, 1963.
graphical Rev., ml. 27,pp.125-134, 1955. [48] F. Holzel, "Generalization problems in hill shading," Nach-
46 PROCEEDINGS OF THE IEEE, VOL. 69, NO. 1. JANUARY 1981

richten aus dem Karten- und Vermessungswesen, vol. 5, no. S, [83] S. Bertram, "The UNIMACE and the automatic photomapper,"
pp.23-33, 1963. Photogrammetrtc Eng., vol. 35, pp. 569-576,1969.
(49] P Yoeli, "Relief shading," Surveying and Mapping, vol. 19, p. [84] R. H. Seymour and A. E. Whiteside, "A new computer-assisted
229,1959. stereocomparator," .Bendix Tech. J.. pp. 1-5, Spring 1972.
[SO] ——, "Analytische Schattierung," Kartographische Nachrichten, [85] B. G. Crawley, "Gestalt contours," Canadian Surveyor, vol. 28,
vol. 14, no. 4, pp. 142-148, 1965. no. 3, pp. 237-246, Sept. 1974.
[51] ——, "Analytical hill shading," Surveying and Mapping, vol. 25, [86] Bendix Research Laboratories, "AS-11B-X automatic stereo
no.4,pp.573-579, Dec. 1965. mapper," RADC-TR-76-100, Rome Air Development Center,
[52] —, "Analytische Schattierung und Dichte," Kartographische Griffiss A F B, N Y, Apr. 1976.
Nachrichten, vol. 16, no. 1, pp. 17-23, 1966. [87] D. J. Panton, "Digital stereo mapping," Countermeasures, p. 12,
[53] ——, "Analytical hill shading and density," Surveying and Map- May 1976.
ping, vol. 26, no. 2, pp. 253-259, June 1966. [88] W. Loscher, "Some aspects of orthophoto technology," Photo-
[54] ——, "Die Mechanisierung der Analytischen Schattierung," grammetrtc Rec., vol. 6, no. 30, pp. 419-432, 1967.'
Kartographische Nachrichten, vol. 16, no. 3, pp. 103-107, 1966. [ 89 ] T. J. Blachut, "Further extension of the orthophoto technique,"
[55] ——, "The mechanisation of analytical hill shading," Carto.yrapMc Canadian Surveyor, vol. 22, no. 1, pp. 206-220, 1968.
/., vol. 4, no. 2, Dec. 1967. [90] T. J. Blachut and M. C. Van Wijk, "3-D information from ortho-
[56] ——, "Die Richtung des Lichtes bei analytischer Schattierung," photos," Photogrammetrtc Eng., pp. 365-376, April 1970.
Kartographische Nachrichten, vol. 17, no. 2, pp. 37-44, 1967. [91] T. A. Hughes, A. R. Shope, and F. S. Baxter, "USGS automatic
[57] ——, "An experimental electronic system for converting con- orthophoto system," Photogrammetrtc Eng., vol. 37, pp. 1055-
tours into hill-shaded relief," International Yearbook of Car- 1062, 1971.
tography, vol. 11, pp. 111-114, 1971. [92] A.Beyer,"Zur Erfassung flachen Gelandes durch willklirlich
[58] T. J. Blachut, Z. Marsik, and D. Makow, "Relief shading pro- vertellte Hohenpunkte," Vermessungstechnik, vol. 20, no. 6,
cess," Canadian Patent No. 051-S14, 1969. pp.204-207, 1972.
[59] Z. Marsik, "Automatic Relief Shading," Photogrammetrica, vol. [93] T. K. Peucker and N. Chrisman, "Cartographic data structures,"
27,no.2,pp.57-70, 1971. American Cartographer, vol. 2, no. 1, pp. 55-69, Apr. 1975.
[60] T. K. Peucker, "Computer cartography," Association of Amer- [94] E. Keppel, "Approximating complex surfaces by triangulation
ican Geographers, Washington, DC, Commission on College of contour lines, ".TBM/. Res. Develop; Jan. 1975.
Geography, Resource Paper No. 17, pp. 41-54, 1972. [95] T. K. Peucker, R. J. Fowler, J. J. Little, and D. M. Mark, "Digital
[61] T. K. Peucker and D. Cochrane, "Die Automation der Relief- representation of three-dimensional surfaces by triangulated
darstellung—Theorie und Praxis," International Yearbook of irregular networks (TIN)," Tech. Rep. 10 (Revised), Dep.
Cartography, vol. 14, pp. 128-139, 1974. Geography, Simon Fraser University, Barnaby, BC, Canada,
[62] T. K. Peucker, M. Tichenor, and W.-D. Rase, "The computer 1976.
version of three relief representations," in Display and Analysts [96] A. K. Lobeck, Block Diagrams. New York: Wiley, 1924.
of Spatial Data, J. C. Davis, and M. McCullagh, Eds. New York: Reprinted by Emerson-Trussell, Amherst, MA, 1958.
WBey, 1974. [97] M. Schuster, DOS Geographlsche und Geologische Blockbild.
[63] M. Eckert, Die Kartenwissenschaft: Forschung und Grundlagen Berlin, Germany: Akademie Verlag, 1954.
zu einer Kartographie als Wissenschaft - Vol. 1. Berlin, Ger- [98] D. A. Goosen, "Blockdiagrams," ITC Information (Delft, The
many: Walter de Gruyt, 1962. Netherlands), no. 3, Spring 1962.
[64] L. D. Cannichael, "Experiments in relief portrayal," Carto- [99] G. F. Jenks and D. A. Brown, "Three-dimensional map construc-
graphic J.. vol. 1,pp.11-17,1964. tion," Science, vol. 154. no. 3750, pp. 857-864, 18 Nov. 1966.
[65] M. Eckert, Die Kartenwissenschaft: Forschung und Grundlagen [100] B. Kubert, J. Szabo, and S. Giulieri, "The perspective represen-
zu einer Kartographie als Wissenschaft • Vol. 2. Berlin, Ger- tation of functions of two variables," f . A.C.M., vol. 15, no. 2,
many: Walter de Gruyt, 1965. pp. 193-204, Apr. 1968.
[66] M. S. Monmonier, "The production of shaded maps on the digi- [101] D. Douglas, "Viewblok: A computer program for constructing
tal computer," Professional Cartographer, vol. 17, no. 5, pp. 13- perspective view block diagrams," Rev. Geographic de Montreal,
14, Sept. 1965. vol. 26,pp.102-104,1971.
[67] P. K. Koldayev, "Plastic colour and shadow relief representa- [102] T. J. Wright, "A two-space solution to the hidden line problem
tion," Academy of Sciences of the USSR, Council of Soviet for plotting functions of two variables," IEEE Trans. Comput.,
Cartographers, Moscow, 1967. vol. C-22, pp. 28-33, Jan. 1973.
[68] B. F. Sprunt, "Computer-generated halftone images from digital [103] C. Wylle, G. Romney, and D. Evans, "Half-tone perspective
terrain models," M.Sc. dissertation, Dep. Mathematics, Univ. drawings by computer, " in Proc. FaU Joint Computer Conf.,
Southampton, Southampton, England. 1969. pp.49-58, 1967.
[69] B. Anda, "Automatic hill-shading using an automatic flatbed [104] A. Appel, "Some Techniques for shaded machine rendering of
drafting machine with a standard photohead," ITC Journal solids," in .Proc. Spring Joint Computer Conf., pp. 37-45,1968.
(Enschede, The Netherlands), no. 2, pp. 212-216, 1974. [105] J. E. Wamock, "A hidden-surface algorithm for computer
[70] R. M. Batson, E. Edwards, and E. M. EIlason, "Computer gener- generated half-tone pictures," TR 4-15, Dep. Computer Science,
ated relief images," J. Res., U. S. Geological Survey, vol. 3, no. Univ. Utah, Salt Lake City, 1969.
4, pp. 401-408, July-Aug. 1975. [106] G. S. Watkins, "A real-time visible surface algorithm," Report
[71] K. Brassel, "Modelle und Versuche zur automatischen Schrag- UTEC-CSC-70-101. Dep. Computer Science, Univ. Utah, Salt
Uchtschattierung," Ph.D. dissertation. Geography Dep., Univ. Lake City, June 1970.
Zurich, Klosten, Switzerland, 1973. [107] W. J. Bouknight, "A procedure for generation of three-dimen-
[72] ——, "Ein- und mehrfarbige Printerdarstellungen," Karto- sional half toned computer graphics presentations," Commun.
graphische Nachrichten, no.5,pp.177-183, 1973. A.C.M., vol. 13, no. 9, pp. 527-536. Sept. 1970.
[73] ——, "Ein Modell zur Automatischen Schraglichtschattierung," [108] R. A. Goldstein and R. Nagel, "3-D visual simulation," fimufa-
International Yearbook of Cartography, pp. 66-77, 1974. tion, vol. 16, pp. 25-31, 1971.
[74] ——, "A Model for Automated Hill Shading," Amer. Cartog- [109] H. Gouraud, "Computer display of curved surfaces," IEEE
rapher, vol. 1, no. I, pp. 15-27, Apr. 1974. Trans. Comput., vol. C-20, pp. 623-629, June 1971.
[75] W. Blascke, "Le Modele Digital M.I.T.," Societe Francaise de [110] M. E. NeweU, R. G. Newell, and T. L. Sancha, "A new approach
Photogwnmetrie, Bull. 27, pp. 37-40, July 1967. to the shaded picture problem," in Proc. ACM National Conf.
[76] B. W. Boehm, "Tabular representations of multi-variate func- (Boston, MA), vol. 1. pp. 443-450, 1973.
tions—with applications to topographic modelling," in ACM, [Ill] J. Staudhammer and D. J. Odgen "Computer graphics for half-
22nd National Conf. Proc., pp. 403-415, 1967. tone three-dimensional object images," Computers and Graphics,
[77] W. Aumen, "A new map form: Numbers," International Year- vol. 1, no. 1,pp.109-114, 1975.
book of Cartography,'vol. 10,pp.80-84, 1970. [112] E. A. Catmull, "Computer display of curved surfaces," in A-oc.
[78] M. W. Grist, "Digital ground models: An account of recent re- IEEE Conf. Computer Graphics, Pattern Recognition and Data
search," Photogrammetrtc Rec., vol. 70, no. 4, pp. 424-441, Structures (Los Angeles, CA, May 1975), IEEE Cat. No.
Oct. 1972. 75CH0981-1C, pp. 11-17, 1975.
[79] F.Silar, "Das digitate Gelandemodell-Theorie und Praxis," [113] Phong Bui-Tuong, "Illumination for computer-generated images,"
Vermessungstechnik, vol. 20, no. 9, pp. 327-329, 1972. Commun. A.C.M., vol. 18, no. 6, pp. 311-317, June 1975.
[80] K. Toriegard, "Digital terrain models-General survey and [ 114 ] J. F. Blinn and M. E. Newell, "Texture and reflection in com-
Swedish experiences," Bildmessung und Luftbildwesen, vol. 40, puter generated images," Commun. A.C.M; vol. 19, no. 10, pp.
no.1,Pp.21-30, 1972. 542-547, Oct. 1976.
[81] American Society of Photogrammetry, Proc. Digital Terrain [115] J. F. Blinn, "Models of light reflection for computer synthesized
Models (DTM) Symp. (St. Louis, MO, May 9-11, 1978). pictures," in SIGGRAPH '77,Proc. 4th Conf. Computer Graphics
[82] Wild Heerburg and Raytheon, "B8 Stereomat Automated Hot- and Interactive Techniques, A.€M., pp. 192-198, 1977.
ter," company sales literature, 1968. [116] —, "A scan line algorithm for displaying parametrically de-
HORN: HILL SHADING AND THE REFLECTANCE MAP 47

fined surfaces," in SIGGRAPH '78, Proc. Sth Con/, on Com- reflection from roughened surfaces," J. Opt. Soc. Amer., vol.
puter Graphics and Interactive Techniques, A.CM., 1978. 57, no. 9, pp. 1105-1114, Sept. 1967.
[117] J. H. Lambert, Photometria sive de mensura de gratibus luminis, [136] T. S. Trowbridge and K. P. Reitz, "Average irregularity represen-
colorum et umbrae, Eberhard Klett, Augsburg, 1760. Trans- tation of a rough surface for ray reflection," /. Opt. Soc. Amer.,
lated by W. Engelman "Lambert's Photometric," Ostwald's vol. 65, no. 5, pp. 531-536, May 1975.
Klassiker der exacten Wissenschaften, no. 31-33, Leipzig, Ger- [137] B. K. P. Horn, "Determining shape from shading," in The Psy-
many,1892. chology of Computer Vision, P. H. Winston, Ed. New York:
[118] 1'Abbe de Lacaille, Traite d'optique sur la gradation de la McGraw-Hill, 1975, ch. 4.
lumiere, (Ouvrage posthume de M. Bouguer), L. F. Delatour, A [138] ——, "Understanding image intensities," Artificial Intelligence,
Paris, 1760. Translated by W. E. K. Middleton, Optical Treatise vol. 8, no. 11,pp.201-231,1977.
on the Gradation of Light. Toronto, Ont., Canada: University [139] ——, and B. L. Bachman, "Using synthetic images to register
of Toronto Press, 1961. real images with surface models," Commun. A.CM., vol. 21, no.
[119] E. Lommel, "Ueber Fluorescenz," Ann. Phys. (Leipzig, Ger- 11,pp.914-924, Nov.1978.
many), vol. 10, pp. 449-472, 1880. [140] —— and R. W. Sjoberg, "Calculating the reflectance map," Appl.
[120] H. Seeliger, "Die Photometric von diffus reflektierenden Opt.,vol. 18, no. 11, pp. 1770-1779, June 1979.
Flachen," S. B. Bayer. Akad. Wiss., vol. 18. p. 20, 1888. [ 141 ] R. J. Woodham, "Photometric stereo: A reflectance map tech-
[121] A. Markov, "Les particularites dans Ie reflexion de la lumiere nique for determining surface orientation from image intensity,"
par la surface de la lune," Astronomische Nachrichten, vol. 221, Image Understanding Systems and Industrial Applications, in
pp.65-78, 1924. Proc. S.P.I.E., Aug. 1978, vol. 155.
[122] E. Schonberg, "Untersuchungen zur Theorie der Beleuchtung [142] F. E. Nicodemus, J. C. Richmond, and J. J. Hsia, L W. Ginsberg,
des Mondes auf Grund photometrischer Messungen," Ada Soc. T. Limperis, "Geometrical considerations and nomenclature for
Set. Fennicae, vol. 50, pp. 1-70, 1925. reflectance," NBS Monograph 160, National Bureau of Stan-
[123] V. G. Fesenkov, "Photometric investigations of the lunar sur- dards, U.S. Dep. Commerce, Washington, DC, Oct. 1977.
face," Astronomtcheskii Zhumal, vol. 5, pp. 219-234, 1929. [143] F. E. Nicodemus, Ed., "Self-Study manual on optical radiation
Translated by Redstone Scientific Information Center. Apt. measurements," NBS Technical Notes 910-1, 910-2, & 910-3,
1968. National Bureau of Standards, U.S. Oep. Commerce, Washing-
[124] M. Minnaert, "The reciprocity principle in lunar photometry," ton, DC,1976,1977,& 1978.
Astrophys. J., vol. 93, pp. 403-410, 1941. (144] H. C. Babcock, "Evaluation of a stereocompilation digitizer,"
[125] V. A. Fedoretz, "Photographic photometry of the lunar surface," in Congress on Surveying and Mapping, 30th Annual Meeting,
Publ. Kharkov Obs., vol. 2, pp. 49-172, 1952. 1970,pp.338-347.
[126] M. Minnaert, "Photometry of the moon," in Planets and Satel- [145] E. J. McCartney, Optics of the Atmosphere: Scattering by
lites, G. f . Kuiper, and B. M. Middlehurst, Eds. Chicago, IL: Molecules and Particles. New York: Wiley, 1976.
Univ. Chicago Press, 1961, vol. 3, ch. 6, pp. 213-248. [ 146 ] S. D. Conte and C. de Boor, Elementary Numerical Analysis,
[127] V. Fesenkov, "Photometry of the Moon," in Physics and As- New York: McGraw-Hill, 1972.
tronomy of the Moon, Z. Kopal, Ed. New York: Academic [147] R. W. Hamming, Numerical Methods for Scientists and Engineers.
Press, 1962, pp. 99-130. New York: McGraw-Hill, 1962.
[128] B. W. Hapke, "A Theoretical Photometric Function for the [148] R. D. Richtmeyer and K. W. Morton, Difference Methods for
Lunar Surface," /. Geophys. Res; vol. 68, no. 15, pp. 4571- Initial-Value Problems. New York: Wiley, 1967, pp. 136-143.
4586, Aug. 1963. [149] F. B. Hildebrand, Introduction to Numerical Analysis. New
[129] B. Hapke and H. Van Horn, "Photometric studies of complex York: McGraw-Hill, 1956, 1974.
surfaces, with applications to the moon," /. Geogphys. Res., [150] P. M. Bridge and J. L. Inge, "Shaded relief of Mars," Atlas of
vol. 68, no. 15, pp. 4545-4570, Aug. 1963. Mars, MH 25 M IR, JPL Contract WO-8122, USGS, U.S. Dep.
[130] B. Hapke, "An improved theoretical lunar photometric func- Interior, 1972.
tion," Astronomical J., vol. 71, no. 5, pp. 333-339, June 1966. [151] T. Rindfleisch, "Photometric method for lunar topography,"
[131] W. E. Middleton and A. G. Mungall, "The luminous directional Photogrammetric Eng.,vol. 32, pp. 262-276, 1966.
reflectance of snow," /. Opt. Soc. Amer., vol. 42, no. 3, pp. [152] W. Bantel, "Der Reproduktionsweg vom einfarblgen Reliefori-
572-579, 1952. girial zur mehrfarbigen Reliefkarte," International Yearbook of
[132] M. Planck, The Theory of Heat Radiation. New York: Dover, Cartography, vol. 13, pp. 134-136, 1973.
1959. [153] A. DeLucis, "The effect of shaded relief terrain representation
[133] P. Beckmann and A. Spizzichnio, The Scattering of Electromag- on map information accessibility," in American Congress on
netic Waves from Rough Surfaces. New York: Pergamon Press, Surveying and Mapping, 31st Annual Meeting (Washington, DC),
1963. pp.641-657, 1971.
[134] K. E. Torrance, E. M. Sparrow, and R. C. Birkebak, "Polariza- [154] J. Neumann, "Begriffsgeschlchte und Definition des Begriffes
tion, directional distribution, and off-specular peak phenomena 'Kartographische Generalisierung'," International Yearbook of
in light reflected from roughened surfaces," J. Opt. Soc. Amer., Cartography, vol. 13, pp. 59-67, 1973.
vol. 56, no. 7, pp. 916-925, July 1966. [155] F. Topfer, Ed. Kartographische Generalisierung. Gotha,
[135] K. E. Torrance and E. M. Sparrow, "Theory for off-specular Leipzig, Germany: Geographisch-Kartographiache Anstalt, 1974.

^•.;^iaa^.^a{iiaa&s»a^£ae_.

You might also like