Full text: Proceedings, XXth congress (Part 7)

  
International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences, Vol XXXV, Part B7. Istanbul 2004 
  
cable or many relay towers. That solution is the multiple : 
observer visibility problem. Mars also has no useful iono- 
sphere, tho its satellites do have stable orbits. A related 
application is to site the observers to minimize their visi- 
bility, which is appropriate if they are visual nuisances that 
we wish to hide. 
The terrain data structure used here is a matrix of eleva- 
tions, often a 1201 x 1201 USGS level-1 Digital Elevation 
Model cell. The relative advantages and disadvantages of 
this data structure versus a triangulation are well known, 
and still debated; the competition improves both alterna- 
tives. This current paper utilizes the simplicity of the ele- 
vation matrix, which leads to greater speed and small size, 
which allows larger data sets to be processed. 
For distances much smaller than the earth’s*radius, the ter- 
rain elevation array can be corrected for the earth’s curva- 
ture, as follows. For each target at a distance D from the 
observer, subtract E from its elevation, where E is the 
earth's radius. (The relative error of this approximation is 
(2. It is sufficient to process any cell once, with an 
observer in the center. The correction need not changed 
for different observers in the cell, unless a neighboring cell 
is being adjoined. Therefore, since it can be easily cor- 
rected for in a preprocessing step, our visibility determina- 
tion programs ignores the earth's curvature. 
The radius of interest, R, out to which we calculate visi- 
bility, has no relation to the distance to the horizon, but is 
determined by the technology used by the observer. E.g., 
if the observer is a radio communications transmitter, dou- 
bling R causes the required transmitter power to quadru- 
ple. If the observer is a searchlight illuminating diffusely 
reflecting targets, then its required power is proportional to 
RS, 
In order to simplify the problem under study enough to 
make some progress, this work also ignores factors such as 
vegetation that need to be handled in the real world. We as- 
sume that it’s possible, and a better strategy, to incorporate 
them only later. 
The ability to process large, hi-res terrain datasets is impor- 
tant. Demonstration programs may be useless for real ap- 
plications if their time and space requirements limit them 
to toy datasets. Nevertheless, it is worthwhile to measure 
how good are the results computed on low-res datasets. 
For instance, the current state of battery technology lim- 
its the computation and communication speeds of portable 
devices, regardless of other hardware advances. For in- 
stance, subject to various caveats, doubling a microproces- 
sor's speed doubles its power consumption. 
2 OURSITING TOOLKIT 
This toolkit, whose purpose is to select a set of observers 
to cover a terrain cell, consists of four core C++ programs, 
supplemented with zsh shell scripts, Makefiles, and as- 
sorted auxiliary programs, all running in linux. 
1198 
1. VIX calculates approximate visibility indices of ev- 
ery point in a cell. VIX takes several user parameters: 
R, the radius of interest, H, the observer and target 
height, and 7, a sample size. VIX reads an elevation 
cell. For each point in the cell in turn, VIX considers 
that point as an observer, picks 7 random targets uni- 
formly and independently distributed within R of the 
point, and computes what fraction are visible. That is 
this point’s estimated visibility index. 7" = 20 to 30 
appears sufficient. 
. FINDMAX selects a manageable subset of the most 
visible tentative observers from VIX's output, to be 
called the top observers. This is somewhat subtle 
since there may be a small region containing all points 
of very high visibility, such as the center of a lake 
surrounded by mountains. Since multiple close ob- 
servers are redundant, we force the tentative observers 
to be spread out as follows. 
(a) Choose an appropriate value for £, the desired 
number of top observers. Experimentally, £ ~ 
800 suffices to cover 80% of the terrain, while a 
95% coverage requires L = 3000. 
(b) Partition the map cell into about £/K equal- 
sized smaller blocks. Experimentally, K = 2 
is good. 
(c) In each block, find the Æ points of highest 
approximate visibility index (as determined by 
VIX). If there are more than K points with 
equally high visibility index, then select K at 
random (using a multiplicative hash function of 
the point's coordinates as a secondary sort key), 
to prevent a bias towards selecting points all on 
one side of the block. If a block has fewer than 
K points, then return all its points. 
3. VIEWSHED finds the viewshed of a given observer at 
height H out to radius, R. The procedure, based on 
Franklin and Ray (1994) and Ray (1994), goes as fol- 
lows. 
(a) Define a square of side 2R centered on the ob- 
server. 
(b) Consider each point around the perimeter of the 
square to be a target in turn. 
(c) Run a sight line out from the observer to each 
target calculating which points adjacent to the 
line, along its length, are visible, while remem- 
bering that both the observer and target are prob- 
ably above ground level. 
(d) If the target is outside the cell, because R is 
large or the observer is close to the edge, then 
stop processing the sight line at the edge of the 
cell. 
One obvious “improvement”, when the target is out- 
side the cell, would be to move the target in to the 
edge of the cell before running the sight line. How- 
ever, this would cause the computed viewshed to de- 
pend slightly on R, which looks bad.
	        
Waiting...

Note to user

Dear user,

In response to current developments in the web technology used by the Goobi viewer, the software no longer supports your browser.

Please use one of the following browsers to display this page correctly.

Thank you.