Test_results
The largest data set tested with the software to
date is a topographic contour overlay of a USGS
1:100,000-scale quadrangle. This data set
contained more than 460 million pixels, of which
6.6 million were linework. (The output vector
data set, stored in a relatively compressed binary
format, was about 1.7 Mb. The vectorization
process took about 85 minutes on a 17-mip
workstation.)
In this test 111 of the 256 possible neighborhood
states were represented. However, only 11
neighborhood states accounted for 96 percent of
the actual neighborhoods, and 19 states accounted
for 99 percent of the actual neighborhoods.
/* prototypes of functions that comprise the
rules base */
void rl(),r2(), /* ....*/ rl6();
/* array of 256 pointers to functions,
statically declared and initialized */
void (*ruleFunc[256])() = {
rl, r3, r2, r2, r2, r7, r2, r2, r2, r7,
/* 240 more assignments go here */
rló, rló, rl6, rl6, rl16, ri16
32
/* program fragment to illustrate call to a
rule function */
main()
{
int currState;
/* many lines of code here */
/* evaluation of neighborhood state */
currState - evaluate();
/* fire appropriate rule */
(*ruleFunc[currState])();
/* many more lines of code here */
J
Figure 4 Implementation of the rule set as an
array of pointers to functions.
Analysis of this and other test data sets suggests
the 16 rules identified in this paper define a
reasonable cartographic vectorization process.
However, the analysis also suggests that these
rules are not uniquely correct. Characteristics
of the output data can be changed relatively
easily by altering the rules. The speed and
efficiency can likely be improved by extending the
rule set to deal better with certain special
cases.
CONCLUSIONS
This research developed work of previous
investigators into a prototype software system.
Cartographic vectorization requires only one
sequential pass through the raster data set.
Acceptable processing speeds do not require that
large amounts of the raster data be held in memory
at any one time.
The nature of the vector output can be controlled
by a set of 16 rules. These rules can be coded in
software in a manner that makes them easy to
modify.
The 16 rules shown in table 1 work well on
cartographic data from USGS quadrangles. However,
these rules are probably not uniquely correct.
The behavior of the system can be modified by
changing these rules. It is probable that more
intelligence could be built into an extended rule
set to alter system behavior and improve
performance.
The combination of sequential processing and
rule-based decision making was quite effective in
this application. That combination may be
34
applicable to other aspects of cartographic raster
processing such as raster line skeletonization.
REFERENCES
Agrawala, Ashok K. and Ashok V. Kulkarni, 1977. A
sequential approach to the extraction of shape
features. Computer Graphics and Image Processing,
6, pp. 538-577.
Douglas, David H. and Peucker, Thomas K., 1973.
Algorithms for the reduction of the number of
points required to represent a digitized line or
its caricature. The Canadian Cartographer, 10(2),
pp. 112-122.
Golay, M.J.E., 1969. Hexagonal parallel pattern
transformations. IEEE Transactions on Computers,
C-18(8).
Greenlee, David D., 1987. Raster and vector
processing for scanned linework. Photogrammetric
Engineering and Remote Sensing, 55(10), pp.
1383-1387.
Peuquet, Donna J., 1981. An examination of
techniques for reformatting digital cartographic
data/part 1: the raster-to-vector process.
Cartographica, 18(1), pp. 34-48.
Rosenfeld, Azriel and Pfaltz, John L., 1966.
Sequential operations in digital picture
processing. Journal of the Association for
Computing Machinery, 13(4), pp. 471-494.
c
ct o 0 «dob "dd 53 O U
C. 0o O c o Oo