The International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences. Vol. XXXVII. Part B5. Beijing 2008
662
The global undulation and local diversity can be seen as the
coefficients of the high frequency parts in different scale. We
can take the high frequency coefficients as a reference of the
terrain surface complexity.
In the terrain visualization we can find that when the view point
of the user grows higher, the terrain scale we saw will become
bigger, and the terrain in the study region will become “flat”.
So we can conclude that the terrain surface complexity is
relevant with the terrain scale, when the terrain scale become
large the terrain surface “seems” to become flat.
Figure 3. The relation between flight height and terrain scale
[Reddy 99]
Figure 4. the relation between terrain surface complexity and
terrain scale
We use (/I 1 ,/ 2 ,/ 3 /¿./¿./¿) as
a eigenvector to present the terrain surface complexity. M
represents the maximum level number of wavelet
decomposition. And fj , fj , represent the sum of
coefficients in LHj, HLj, HHj. Then we adopt the formula to
calculate terrain surface complexity:
3.3 The improved SPIHT coding method adopted
Set Partitioning in Hierarchical Trees (SPIHT) compression
algorithm is promoted by Said and Pearlman in 1996. It is an
improved method of EZW. The data structures and coding
blocks used by SPIHT are wavelet coefficients grouped into
trees. SPIHT provides a progressive ordering of data that
enables us to determine which data are most important to the
DEM quality.
Figure 5. The zero-tree structure in SPIHT algorithm
In this paper we make some improvements on SPIHT algorithm
according to terrain surface complexity, and adopt it as the
compression method in this paper.
The following sets can represent the corresponding tree
representations:
0(i,j) is the set of coordinates of all offspring of node (i,j)
D(i,j) is the set of all coordinates that are descendants (all nodes
that are below) of the node (i j)
L(ij) is the set of all coordinates that are descendants but not
offspring of node (i j)
The following are the lists that will be used to keep track of
important pixels:
LIS: List of Insignificant Sets, this list is one that shows us that
we are saving work by not accounting for all coordinates but
just the relative ones.
LIP: List of Insignificant Pixels, this list keeps track of pixels to
be evaluated
LSP: List of significant Pixels, this list keeps track of pixels
already evaluated and need not be evaluated again.
A general procedure for the code is as follows:
1. Initialization: threshold T=2 n , n = |jog 2 (max ( . y) (|C., |})J
LSP is empty; add starting root coordinates to LIP and LIS.
2. Sorting pass: (new n value)
(D for entries in LIP: (Stop if the rest are all going to be
insignificant)
- decide if it is significant and output the decision result
- if it is significant, move the coordinate to LSP and output
sign of the coordinate
(2) for entries in LIS: (Stop if the rest are all going to be