Auclair Fortier, Marie-Flavie
direction at point p = (Pz, Py) is in ]/8, 37/8], the three neighbors to consider are (p. 1, p, 4- 1), (Pz; Py + 1) and
(pz + 1, py)Each of these three neighbors which is marked as a line pixel is considered as a child. The next pixel selected
is the child that minimizes:
10. — 0, (11)
where 0. is the line direction of the child and 0, is the mean line directions of the parent respectively. The mean line
direction is computed on the last L pixels visited, as follows:
L—1
0 3 Ooi
a. L ?
where 0,—; is the line direction of the ith pixel visited before pixel a.
(12)
In the case where none of the three neighbors are marked as line pixels, we look in a neighborhood further away in the line
direction; that is, when the direction of the vector between the parent and the pixel falls in the interval [0, — 7/8, 0,4 7/8],
we consider this pixel as a child. In this case, the next pixel is the one minimizing:
(1 — w)|Iptc — ptpllz + w|0e — 8| (13)
where pt. and pt, are the locations of child and parent, respectively and w € [0,1] is a weighting parameter. We do it
iteratively from the beginning with the retained child. If a parent has no child, the line-following process is terminated. If
the new road is shorter than a given threshold (5), it is dropped. 2
Let a line junction near the existing network, for each line pixelin a 5 x 5 neighborhood of this junction, we can summarize
the line following algorithm as follows:
1. Set the pixel as parent.
2. Compute the three neighbors in line direction of the parent. If they are line pixels, set them as children.
3. If there is at least one child:
(a) Set the child that minimizes Equation 11 as parent.
(b) Return to step 2.
4. If there is no child:
(a) Compute further children in the line direction.
(b) If there is now at least one child:
i. Set the child that minimizes Equation 13 as parent.
ii. Return to step 2.
5. If the length of the new line is less than S , then drop it.
Figure 4b shows the results of the line-following process with L = 10,5 = 7,w = 0.9.
6 EXPERIMENTAL RESULTS
Our algorithm has been implemented in C++ on a Sun platform and in Visual C++ on a Windows platform. It was
experimented on various sections of a georeferenced ortho image (11334 x 10166 pixels) that we re-sampled in order
to reduce the initial spatial resolution by a factor of two. The digital georeferenced ortho image mosaic used has initial
ground spatial resolution of 1.5m and is from the Edmonton, Alberta area. It was generated by scanning 1 : 60000
scale 1995 aerial photography at 1000ppi (0.025mm) with 8-bit quantization. The Helava/Leica digital photogrammetric
Figure 2 presents the results obtained at each step of our correction algorithm for an image section. Figure 2a is the
original image, on which the vectors from the road database are superimposed. Visually, we can see that in many places,
94 International Archives of Photogrammetry and Remote Sensing. Vol. XXXIII, Part B7. Amsterdam 2000.