Professional Documents
Culture Documents
AND
T AKEO K ANADE
The Robotics Instilute, Carnegie-Mellon University, Pittsbrirgk, Pennsyluanicc 15213
i.,
(5)
Ridge: max 7
41
max -
2:' = max"2"
(.r,y) on C
= max If"] = max K . (8)
2; 2 ,',
(.r,y) on C Z,,
(4)
Ravine: min
(.r.?)on C
<.
4
Z,,
Equation (8) means that the local extrema in curvature
along the contour occurs at the point where the local
extrema in z:/z; occurs.
Equation (4) states that a ridge point has the maximum 3. CONSTRUCTING CONTOUR MAPS FROM
change in the gradient of elevation in the tangential direc- ELEVATION MAPS
tion (2:) and has the minimum elevation change in the
normal direction (&) along the contour. Building a contour map from an elevation map is trivial:
Now we want to show that the local extrema in z:'/z:, imagine a series of parallel cuts which intersect the profile
occur at the point on the contour where the shape of of the terrain. Next, define successive plateaus of constant
contour forms a V . We first note that the shape of a V elevation by planar cuts located at a particular distance
corresponds to the local maxima in curvature along the below or above a reference plane.
contour. We then assume the following two conditions: Starting from a reference elevation H,. , the algorithm
1. z(x, y ) is a twice differentiable function, and for building a contour map works in four steps:
2. ( d z l d x , d z l d y ) = (z.:, z:.) f (0, O ) , z:andz;. cannot be 1. Create a binary image B, by assigning
zero at the same point (we do not consider peaks or pits).
Without loss of generality, we can always rotate ( x , y ) 1 ifH,?H,.
B rJ. . =
axes so that the tangent plane t is horizontal as shown in 0 otherwise,
I74 KWEON A ND KANADE
& +Topographic
Chance
+Topographic
Change
W
b \ / A0
n / A
B
C
D
tion A ,
0 creating blobs of the map where the elevations are
greater than A ,
0 extracting the contour lines by following the border
D.
At elevation A , we have one contour line which contains FIG. 9. Contour trees, extracted peaks. and pits for a volcano: (a)
every point in the map. At elevation B, however. we have peaks; (b) pits.
I76 KWEON AND KANADE
a
180
160
140
120
Ln
h
v
* 100
r
9 80
s 60
40
20
0
0 20 40 60 80 100 120 140 160 180 200
Meters (x 5 )
vation D ,
FIG. 10. Results for the extraction of peaks and pits from a DEM:
creating blobs of the map where the elevations are
(a) peaks and pits; (b) the contour tree.
smaller than D,
0 extracting the contour lines by following the border
FIG. 12. Results for contour analysis by the multi-arm method: (a)
a contour line; (b) the curvatures at multiple scales.
We present an alternative method for tracing and linking bor by using the most appropriate arm length which is
ridge (or ravine) points by using the contour tree. As determined by the contour analysis. We then define the
we explained in Section 4, the contour tree provides the curvature similarity between two feature points, Ci and
topological relationship among contour lines on a contour P j , by
map. Assume that we have a known (a starting) ridge
point in the current node of the contour tree. Then we
first look for the ridge points in the children nodes of the
current node because the topological relationship embed-
ded in the contour tree representation indicates that those where 1 refers to the arm length.
points in the children nodes are the only topologically To find out the best matching feature points from the
& possible connections to the current point. If no points previous contour with the known feature point from the
are found in the children nodes, it recursively visits the current contour, we use four constraints, such as the angle
children of its children. change between the current and previous local directions
i The traversal of the contour tree is done in a breadth- (Ap = /I& - PPI/),the angle change between the local
first fashion. A breadth-first search visits all the children and global directions ( A a c = /]a - A a P = I(a -
of a node before visiting any of the children of its children. PPI/),the distance between two feature points ( p ) , and the
For each ridge point of each child node, we compute curvature similarity (S). The subscript P and C refer to
some attributes which are used to search for the best ridge the previous and current feature points, respectively.
point connecting to the current ridge point. The attributes We present a heuristic function to measure how well a
to be computed include: feature point satisfies each constraint. We use the distance
between the value of each constraint and the correspond-
0 The current global direction of a ridge, determined
ing threshold. If the value of a constraint of a feature is
by the slope of the line drawn from the previous ridge very close to the threshold, the likelihood of the feature
point to the current point (a in Fig. 14); being the best corresponding feature point should be very
0 The current local direction of a ridge, determined by
small and vice versa.
the slope of the line drawn from the center of the curvature Based on this intuition, the simplest heuristic function
to the current point (p in Fig. 14); is defined by
0 The Euclidean distance from the previous ridge point
FIG. 14. The attributes for linking process. FIG. 15. Extracted topographic features from a DEM
180 KWEON AND KANADE
from the DEM. Black lines indicate ridges; white lines scene descriptions of rugged terrain. The multi-arm
indicate ravines. Black and white regions correspond to method working in the multi-scale space provided noise-
peaks and pits, respectively. The features are overlaid on insensitive high curvature points that correspond to ridge
the DEM in which the lighter intensity indicates the higher or ravine points in the terrain.
elevation. Using the contour tree representation. we were able to
Figure 16 shows the perspective view of the extracted reduce the complexity of the grouping process in con-
topographic features. White lines and regions represent verting ridge (or ravine) points into a list of ridge (or
the extracted ravines and pits. Black lines and- regions ravine) lines and even to remove any grouping process
indicate the extracted ridges and peaks. for peaks and pits.
Figure 17 and Fig. 18 show the extracted topographic In processing a 200 x 200 DEM, i t took approximately
features from another DEM. White lines and regions show 90 CPU seconds on a Sparc machine. In a series ofexperi-
the extracted ravines and pits. Black lines and regions ments, an increment parameter, AH, was set to SO feet
correspond to the extracted ridges and peaks. for DEMs which have approximately SO0 feet of total
height change.
f 7. CONCLUSIONS The method presented in this paper uses an increment
parameter, AH, in order to generate contour maps at vari-
In this paper, we presented algorithms for extracting ous height intervals. We observe that a too small value
topographic terrain features from elevation maps, repre- of the parameter produces a noisy contour map due to a
sented as the contour tree. First, we developed the defini- large number of contours. However, the linking process
tions of topographic features and have shown that a point from ridge (or ravine) points to lines becomes a much
with a local extreme in curvature on the contour has a easier task since the distance between successive contour
local extreme in zy/z,: on the contour, which is our defini- lines is small. A large value of AH results in poor loc'21 I 1m-
'
tion of ridges and ravines. tion of the features. Work is currently underway to im-
Extracting reliable high curvature points is a very im- prove the robustness of the method by using a multi-
portant intermediate stage to obtain correct high-level resolution approach.
I82 KWEON AND KANADE