DESIGN AND IMPLEMENTATION OF A GIS BASED DIGITAL IMAGE PROCESSING SYSTEM
M. Halim
Universal Systems Ltd.
Fredericton, N.B., Canada
E. Derenyi, R. Pollock!, T.Y. Shih2, C.K. Xian
Department of Surveying Engineering
University of New Brunswick
Fredericton, N.B. Canada
ISPRS COMMISSION IV
ABSTRACT
An increasing demand for digital images as an input to geographic information systems (GIS) creates a need for a data processing
environment which incorporates the main functionality of stand-allown image processing systems while maintaining the full
capabilities of a GIS. This paper presents the design and implementation of the Computer Aided Resource Information System
Raster Image Extension (CARIS/RIX) which is such an environment. The main purpose of CARIS/RIX is to facilitate the
extraction of information from digital images while displayed in registration with digital maps. Certain image processing and
analysis functions have been developed which are specific to this new environment and a number of conventional image processing
operations have been included. A user server interface facilitates future extensions of this facility.
KEY WORDS: Hybrid GIS, Data integration, Image processing, Image display, Integrated System, CARIS.
INow with the Department of Computer Vision, University of British Columbia, Vancouver, B.C., Canada.
2Now with the Department of Civil Engineering, National Chiao-Tung University, Taiwan, R.O.C.
1. INTRODUCTION
There is a rapidly increasing demand among users of
geographic information systems (GISs) for the use of digital
images as a source of data. This demand can best be served
by a fully integrated GIS and image processing system
(IPS). Accordingly, in the early part of 1989, researchers at
the Department of Surveying Engineering, University of
New Brunswick (UNB) began to develop a series of image
analysis software modules that could access the spatial and
attribute information stored in a GIS. The project resulted in
a series of software packages which support the commonly
used image processing and analysis functions and operate on
a raster data structure which is compatible with the existing
data structure of the GIS. The result is CARIS/RIX the
Computer Aided Resource Information System (CARIS)
Raster Image Extension (RIX).
2. CARIS SOFTWARE OVERVIEW
CARIS is a comprehensive, vector based, GIS developed
and marketed by Universal Systems Ltd. (USL) in
Fredericton, N.B., Canada [Masry, 1982]. It runs under
both the UNIX and VMS operating systems and supports a
variety of input and output devices. The user interface is
based on X-windows and MOTIF standards. It consists of
three comprehensive software packages as illustrated in
Figure 1 [USL, 1991]. Each package contains a set of
software modules which perform specific functions.
The Cartographic Processing Package is the entry
level package. It supports the collection and editing of
cartographic data and the creation of high quality
cartographic output products. Central to this package is the
Primary Graphics software module, which comprises an
interactive graphics editor, CARED, and supports
commands to capture, modify, maintain, and display
cartographic data.
The Topology Creation Package provides the creation
and maintenance of topology and attribute information,
which may be attached to the graphical data. It also supports
the formation and maintenance of polygon and network
topology.
The Database Analysis Package is the top level
package, which serves proximity analyses, database
inquiries, and report generation from a CARIS database
776
consisting of graphic and attribute files. CARMAN, the
CARis MANager, is used for querying the graphic database
and spawning queries to the attribute database. Links
between graphics and attributes are established by an
alphanumeric key.
In addition, the Specialized Support Application Package
serves a number of optional operations. A development
library is also provided.
3. IMAGE DATA ORGANIZATION
3.1 The Raster Data Structure
During run-time, the pertinent raster data is stored in a
system of tilemaps [Reedijk, 1990]. A tilemap is an array
based representation of a 512 by 512 pixel portion of the
raster extent. By dividing the raster into several manageable
pieces, an efficient processing mechanism is achieved
without demanding a great deal of storage space. In fact,
this scheme allows the interactive processing of the raster
data in random access memory (RAM). For a permanent
representation of raster data, a storage format is used.
The maintenance and handling of the tilemaps is the
responsibility of the tilemap manager. Many tilemaps may
reside in memory during run-time and the tilemap manager
swaps the tilemaps as required. Associated with each
tilemap is its geographic position within the raster extent, the
size of the pixels in ground units, and the number of bits
assigned per pixel. These values constitute the so-called
raster definition file.
A raster image is viewed as consisting of one or more layers
with each layer consisting of one or more regions as shown
in Figure 2 [Derenyi and Pollock, 1990a; 1990b]. In a
region, all pixels must be rectangular and must correspond to
the same raster definition. This means that they are arranged
according to a uniform rectangular grid, they have the same
ground unit dimensions, and their values are stored using a
uniform number of bits. The extent of the region and the
ground location of each of its pixels is defined to an
acceptable accuracy, or can be derived from information
stored in association with the region.
An example of a region is a single channel of a full Landsat
Thematic Mapper (TM) scene. Each pixel covers a nominal
30 metre by 30 metre area on the ground and is stored in 8
FA. ps US n ain C CU) ia a
Fri uu c ANA - 0 M omms rm om