Automatic Road Extraction from High
Resolution Imagery Based On Statistical
Region Merging and Skeletonization
P.N ANIL* and Dr. S. NATARAJAN **
* Asst. Professor, Dept. of Mathematics, Global Academy of Technology, Bangalore-98 and Research Scholar, Dr. MGR Educational and Research Institute, Chennai – 95, India
Email: [email protected]
** Professor, Dept. of Information Science & Engineering,
PES Institute of Technology, Bangalore, India
ABSTRACT
Road Extraction from high resolution imagery is of fundamental importance in the context of spatial data capturing and updating for GIS applications. This research work is an attempt to automate the process of extracting roads from high resolution imagery. In this work statistical region merging is used for image segmentation and road network is extracted based on skeleton pruning method based on contour partitioning, where the partitions are obtained by Discrete Curve Evolution.
Keywords. Road extraction, Statistical Region Merging, Thresholding, Skeletonization.
1. INTRODUCTION
Road extraction from remotely sensed data is a challenging issue in the field of photogrammetry and digital image processing. Extensive research has been done on road extraction from aerial and satellite imagery. The methods for road extraction can be mainly divided in to types, semi-automatic method and fully automatic method.
method to extract the street network as surface elements from topologically correct graph using multi-resolution snakes.
Automatic feature extraction has been always an interesting subject for researchers. In the recent years the automated extraction of roads has drawn the considerable attention due to the need for the efficient acquisition and updating of road data for geodatabases. Bacher and Mayer [8] presentsan automatic approach for the extraction of roads from high resolution multispectral satellite imagery. Lines are extracted in all image channels and employed as initial road hypothesis as well as for the generation of training areas. The goal is to calculate membership value for the road class pixel. The assessment of road hypotheses is done based on geometrical and spectral properties by finding fuzzy values for the parameters length, average width and road energy. Road network is generated using weighted graph and detour factor to close small and large gaps respectively. Lin and Chen [9] proposed an automated image processing technique to extract control points for high spatial resolution satellite images which consists of two parts : Road extraction and Spot of road intersection searching. Jalal [10] proposed a method for extraction of main roads in SPOT panchromatic images. The method consists of three steps: feature extraction, fuzzy modeling and mathematical morphology. Kumagi et.al. [11] proposed the automatic extraction of roads based on area and road characteristics. In this research using high resolution data existing roads are extracted from the image and unwanted vegetation information is removed using NDVI values. Mohammadzadeh et.al. [12] proposed an algorithm to detect road network from high resolution image using combination of a developed fuzzy system and mathematical morphology. The algorithm in the mathematical morphology stage is based on the assumption that road network forms an elongated area which can be extracted as the connected components with certain criteria. Petari et.al. [13] developed a method in order to extract and characterize the road network form high resolution satellite images. The algorithm is divided into two modules: a topologically correct graph of road network is first extracted and roads are then extracted as surface elements. Doucette et.al.[14]presents a novel methodology for fully automated road centerline extraction, that exploits spectral content from high resolution multispectral images. Preliminary detection of candidate road centerline components is performed with Anti-parallel-edge Centerline Extraction (ACE). This is followed by constructing a road vector topology with a fuzzy grouping model that links nodes from a self-organized mapping of the ACE components.
This paper presents a simple method for the automatic detection of roads from high resolution imagery. The paper proceeds as follows. In the first step image segmentation is performed using statistical region merging (SRM) followed by thresholding. In the next step new skeleton pruning by contour partitioning is used to extract the road network.
2. IMAGE SEGMENTATION USING STATISTICAL REGION MERGING
Image segmentation is an essential and critical step in image processing. Image segmentation methods divide the image in to regions of coherent properties in an attempt to identify objects and their parts without the use of model of the object. Many image segmentation techniques are available in the literature. A review on image segmentation methods can be found in [15, 16]. A color image segmentation method based on fusion between edge pixels and region-growing images is presented in Dider and Vincent [17]. Image segmentation based on wavelets can be found in [18, 19] . Texture based image segmentation techniques are described in the literature [20, 21, 22, 23]. Image segmentation methods based on Markov Random Field (MRF) are presented in [24, 25, 26, 27]. Image segmentation based region growing and merging techniques can be found in [28, 29, 30].
In this paper we use statistical region merging technique for image segmentation proposed by Nock and Nielsen [31]. Statistical region merging is a linear-time fast and simple region growing segmentation algorithm based on an adaptive statistical threshold merging predicate on color channels that does not require to maintain dynamically the region adjacency graph.
Algorithm:
Let I be the input color image with |I| pixels, each containing the Red, Green and Blue values, each of the three belonging to the set {1, 2, 3, ………g}. Let I* denote the perfect scene (theoretical image) of I. In I*, the true or statistical regions represent theoretical objects sharing a common homogeneity property:
The expectations of adjacent statistical regions are different for at least one color channel
R
,
G
,
B
. The image I is obtained from I* by sampling each statistical pixel for observed RGB values. In each pixel of I*, each color channel is replaced by a set of exactly Q independent random variables, taking positive values on domains bounded by g/Q, such that any possible sum of outcomes of these Q random variables belongs to {1, 2, 3, …….g}. The parameter Q allows to quantify the statistical complexity of I*, the generality of the model and the statistical hardness of the task. The segmentation scheme is basically depends on merging predicate and an order to test region merging. The merging predicate for the RGB setting is given by:
otherwise
false
R
b
R
b
R
R
B
G
R
a
if
true
R
R
P
(
,
)
{
,
,
},
'
a a(
)
(
)
(1)
Here,
R
a denotes the observed average for color channela
in regionR
andb
(
R
)
is given by:
ln
|
|
|
|
2
1
)
(
R
|R|R
Q
g
R
b
(2)
where
0
1
and|
R
|R||
|
R
|
1
g.In 4-connexity, there are N<2|I| couples of adjacent pixels. Let SI be the set of these couples and
)
,
(
p
p
f
be the real valued function, withp
andp
pixels of I defined by:|
|
max
)
,
(
} , ,{
p
p
ap
p
f
a B G Ra
.
(3)
First we sort the couples of SI in increasing order of
f
(
p
,
p
)
and then traverse this order only once. For anycurrent couple of pixels
(
p
,
p
)
S
I for whichR
(
p
)
R
(
p
)
(whereR
(
p
)
is the current region to whichp
belongs), testP
R
(
p
),
R
(
p
)
, and mergeR
(
p
)
andR
(
p
)
if and only if it returnstrue
.3. ROAD EXTRACTION USING SKELETON PRUNING BY DISCRETE CURVE EVOLUTION
The aim of the skeletonization is to extract a region-based shape feature representing the general form of an object. There are three major skeletonization techniques: detecting ridges in distance map of the boundary points [32, 33, 34]; calculating the Voronoi diagram generated by the boundary points [35, 36]; and the layer by layer erosion called thinning [37]. All these algorithms need skeleton pruning and there are mainly two types of pruning methods: based on significance measures assigned to skeleton points [35, 38, 39] and boundary smoothing before extracting the skeletons [38, 40]. But these skeleton pruning algorithms have many drawbacks. First, many of them not guaranteed to preserve the topology and second drawback is that main skeleton branches are shorten to some extent and short skeleton branches are not removed completely, which complicates the structure of skeletons. In particular the skeleton generating approaches suffer from the fact that a small protrusion on the boundary may result in a large skeleton branch, which is an intrinsic problem of the definition of the skeleton, since the mapping of boundary points to the skeleton points is not continuous. In this paper we use the skeleton pruning by discrete curve evolution (DCE) proposed by Bai et.al. [41]. The proposed method completely removes protrusions without displacing the boundary points, and consequently, without displacing the remaining skeleton points. Spurious or redundant branches are completely removed while the main branches are not shorten. The important observation of this method is that it is possible to perform a topology preserving skeleton pruning based on a contour partition into curve segments.
Let the boundary ∂D of a set D be composed of k simple closed curves C1, …, Ck. Let x and y be two
contour points lying on the same simple closed curve Ci. Let [x,y] denote the shortest closed contour segment of i
a simple closed curve Ci forms a partition of Ci if two consecutive segments [xi, xi+1], [xi+1, xi+2] that intersect in
{xi+1} (the indices are modulo n), nonconsecutive segments have empty intersection, and Ci is the union of these
segments. The partition Γ of the boundary ∂D is a sequence of sequences that are partitions of the simple closed curves C1, …, Ck.
According to Blum’s definition of the medial axis [42], the skeleton S(D) of a set D is the locus of the centers of maximal disks. A maximal disk of D is a closed disk contained in D that is interiorly tangent to the boundary ∂D and that is not contained in any other disk in D. Observe that each maximal disc must be tangent to the boundary in at least two different points. Let Tan(s) denote the set of the boundary points tangent to the maximal disk B(s) centered at s∈S(D). The points in Tan(s) are called generating points of the skeleton point s. Due to our assumption that each boundary curve is a simple closed polygonal curve, Tan(s) is composed of a finite number of isolated boundary points, since B(s) can intersect each boundary line segment in at most one point. The degree deg(s) of s∈S(D) is defined as the cardinality of Tan(s), i.e., as the number of boundary points tangent to the maximal circle centered at s.
Given a partition Γ of the boundary ∂D of a simply connected set D (i.e., ∂D consist of one simple closed curve), the skeleton pruning is defined as removal of all skeleton points s∈S(D) whose all generating points lie in the same open segment (x,y) of partition Γ. More precisely, the pruned skeleton is composed of all points s∈S(D) such that Tan(s) is not contained in the same open segment of the partition Γ. This is a very simple definition of skeleton pruning, and it works with any contour partition. The key issue is to get reasonable partitions. It is shown that DCE provides a very good partition for the pruning. When D is not simply connected (i.e., ∂D consist of more than one simple closed curve), it is required to check whether all skeleton points removed with respect to the same partition segment have their generating points on the same simple closed curve Ci for some i=1, …,k. It can be
proven that the topology of pruned skeleton is preserved for pruned skeleton generated by any partition of the contour. Now we introduce a contour partition based on Discrete Curve Evolution (DCE). A hierarchical decomposition of the boundary of the set D obtained by DCE is the key component of the proposed skeleton pruning method. Given a skeleton S(D) of a planar shape D and given a DCE simplified contour D given as polygon Pk with convex vertices x0, …,xn-1, we perform skeleton pruning with respect to the open segments of the partition [xi, xi+1]
(modulo n). Thus, we remove all points s∈S(D) such that the generating points of s, Tan(s), are contained in a single open side of the DCE polygon. The simplification of the boundary contour with DCE corresponds to pruning complete branches of the skeleton. In particular, a removal of a single convex vertex v from Pn-k to obtain Pn-(k+1) by DCE implies a complete removal of the skeleton branch that ends at v. An important property of DCE induced contour partition, and every partition that is restricted to vertices of the boundary polygon, is that there is a skeleton branch ending at every partition point. If a partition point that is also a polygon vertex ui is deleted in a DCE
evolution step, i.e., ui∈P n-k
– Pn-(k+1), then the arc [ui-1,ui+1] replaces arcs [ui-1,ui], [ui,ui+1] in the contour partition.
Consequently, the whole skeleton branch that ends at vertex ui is eliminated by the skeleton pruning. The following
(a)
(b)
(c)
(d)
4. CONCLUSIONS
In this paper we present a new technique for road extraction from high resolution imagery. In this method statistical region merging is used in the image segmentation step followed by thresholding. In the next step skeleton pruning by discrete curve evolution is used to extract road network. The method is tested on different high resolution test images and results found satisfactory. The limitation of the method is it may not work on the road cast by shadows.
5. REFERENCES
[1] Gruen, A. and Li, H. Road extraction from aerial and satellite images by dynamic programming. ISPRS Journal of Photogrammetry and Remote Sensing 50(4): 11-20, 1995
[2] Mayer, H., Ivan, L. and Baumgartner, A. Multi-Scale and Snakes for Automatic Road Extraction. Proceedings of 5th European
Conference on Computer Vision:. 720-733, 1998.
[3] Seung-Ran, P. and Taejung, K. Semi-Automatic Road Extraction Algorithm from IKONOS Images Using Template Matching.
Proceedings 22nd Asian Conference on Remote Sensing, Singapore:1209 – 1213, 2001.
[4] Zhao, H., Kumagai, J., Nakagawa, M. and Shibasaki, R. Semi-automatic road extraction from high- resolution satellite image.
Proceedings Photogrammetric Computer Vision ISPRS Commission III, Symposium, Graz, Austria: 406-411, 2002.
[5] Keaton, T. and Brokish, J. Evolving roads in IKONOS multispectral imagery. In Proceedings International conference on image processing (ICIP 2003): 1001-1004, 2003.
[6] Niu, X . A Geometric Active Contour Model for Highway Extraction. Proceedings of ASPRS 2006 Annual Conference, Reno NV(CD-ROM), 2006.
[7] Peteri, R. and Ranchin, T. Multi resolution snakes for urban road extraction from IKONOS and Quick bird images. Proceedings 23rd EARSeL Annual Symposium Remote Sensing in Transition: pp 141-147, 2003.
(a)
(b)
(c)
(d)
[8] Bacher, U. and Mayer, H. Automatic road extraction from multispectral high resolution satellite images. In. Stilla U, Rottensteiner F, Hinz S (Eds) CMRT05. IAPRS, Vol. XXXVI, Part 3/W24, Vienna, Austria., 2005.
[9] LIN, C.Y. and CHEN, C. F. Automated extraction of control points for high spatial resolution satellite images. Proceedings 22nd Asian
Conference on Remote Sensing: 1224 – 1229, 2001.
[10] Jalal, A. A Fuzzy Model for Road Identification in Satellite Images. Proceedings of the 2006 International Conference on Image Processing, Computer Vision, & Pattern Recognition, Las Vegas, Nevada, USA, 2006.
[11] Kumagai, J., Nakagawa, M., Zhao, H. and Shibasaki, R. Road extraction from high-resolution commercial satellite data. Proceedings of the 22nd Asian Conference on Remote Sensing:1322-1325, 2001.
[12] Mohammadzadeh, A., Tavakoli, A. and Zoej, M. Automatic Linear feature extraction on Iranian roads from high resolution multi spectral satellite imagery, The International Archives of the Photogrammetry Remote Sensing and Spatial Information Sciences,35(B3): 764-768, 2004.
[13] Peteri, R., Celle, J. and Ranchin, T. Detection and extraction of road networks from high resolution satellite images. Proceedings of the IEEE International Conference on Image Processing, Barcelona, Spain, 2003a.
[14] Doucette, P., Agouris, P. and Stefanidis, A. Automated Road Extraction from High Resolution Multispectral Imagery.
Photogrammetric Engineering and Remote Sensing, 70(12):1405 – 1416, 2004.
[15] Pal, S. K. and Pal, N. R. A review on image segmentation techniques. Pattern Recognition, 29:1277 – 1294, 1993.
[16] Cheng, H. D., Jiang, X. H., Sun, Y. and Wang, J. Color image segmentation: advances and prospects. Pattern Recognition, 34: 2259 – 2281, 2001.
[17] Dider, Z. and Vincent, L. A new approach of color images segmentation based on fusion region and edge segmentations output.
Pattern Recognition, 31(2):105 – 113, 1998.
[18] Gavlasová, A., Procházka, A. and Mudrová, M. Wavelet Based Image Segmentation. Proceedings. of 14th Annual Conference Technical Computing 2006, pages GPM/1-7, 2006.
[19] Mostafa, M. G., Gharib, T. F., Tolba, M. F. and Megeed, M. A. Medical image segmentation using a wavelet based multiresolution EM algorithm. Proceedings IEEE international conference on industrial electronics technology and automation, Cairo, 2001. [20] Mirmehdi, M. and Petrou, M. Segmentation of color textures. IEEE transaction on pattern analysis and machine intelligence,
22,(2):142 – 159, 2000.
[21] Galun, M., Sharon, E., Basri, R. and Brandt, A. Texture Segmentation by Multiscale Aggregation of Filter Responses and Shape Elements. Proceedings of the Ninth IEEE International Conference on Computer Vision: .716-725, 2003.
[22] Muneeswaran, K., Ganesan, L., Arumugam, S., Ruba, K. and Soundar. Texture image segmentation using combined features from spatial and spectral distribution. Pattern Recognition Letters, 27(7): 755 – 764, 2006.
[23] Malik, J., Belongie, S., Leung, T., and Shi, J. Contour and texture analysis for image segmentation. International Journal of Computer Vision, 43(1): 7 – 27, 2001.
[24] Mukherjee, J. MRF clustering for segmentation of color images. Pattern. Recognition Letters, 23: 917-929, 2002.
[25] Yang, F. and Jiang, T. Pixon-based image segmentation with Markov random fields. IEEE Transactions on Image Processing, 12(12): 1552 – 1559, 2003.
[26] Kato, Z. and Pong, T.C. A Markov random field image segmentation model for color textured images. Image and Vision Computing,
24(10): 1103 – 1114, 2006.
[27] Sziranyi, T., Zerubia, J., Czuni, L., Geldreich, D., and Kato, Z. Image Segmentation Using Markov Random Field Model in Fully Parallel Cellular Network Architectures. Real Time Imaging, 6(3):195—211, 2000.
[28] Mancas, M., Gosselin, B. and Macq, B. Segmentation using a region-growing thresholding. Proceedings SPIE the international society for optical engineering, 5672: 388-398, 2005.
[29] Felzenszwalb, P. F. and Huttenlocher, D. P. Image Segmentation Using Local Variations. Proceedings of the IEEE International Conference on Computer Vision and Pattern Recognition: 98-104, 1998.
[30] Cui, W., Guan, Z. and Zhang, Z. An Improved Region Growing Algorithm for Image Segmentation. Proceedings of the 2008 International Conference on Computer Science and Software Engineering, 06: 93 – 96, 2008.
[31] Nock, R. and Nielsen, F. Statistical Region Merging. IEEE Trans. Pattern Anal. Machine Intelligence, 26(11): 1452-1458, 2004. [32] Borgefors, G. Distance Transformations in Digital Images. Computer Vision, Graphics, and Image Processing, 34(3):.344-371, 1986. [33] Kimmel, R., Shaked, D., Kiryati, N. and Bruckstein, A.M. Skeletonization via Distance Maps and Level Sets. CVIU: Computer
Vision and Image Understanding, 62(3): 382-391, 1995.
[34] Ge, Y. and Fitzpatrick, J. M. On the Generation of Skeletons from Discrete Euclidean Distance Maps. IEEE Transaction on Pattern Analysis and Machine Intelligence, 18(11): 1055-1066, 1996.
[35] Ogniewicz, R. L. and Kübler, O. Hierarchic Voronoi Skeletons. Pattern Recognition, 28(3): 343-359, 1995.
[36] Mayya, N. and Rajan, V. T. Voronoi Diagrams of Polygons: A Framework for Shape Representation. Proceedings of the IEEE Conference Computer Vision and Pattern Recognition:.638 643, 1994.
[37] Pudney, C. Distance Ordered Homotopic Thinning: A Skeletonization Algorithm for 3D Digital Images.Computer Vision and Image Understanding, 72(3): 404-413, 1998.
[38] Shaken, D. and Bruckstein, A. M. Pruning Medial Axes. Computer Vision and Image Understanding, 69(2): 156–169, 1998. [39] Malandain, G. and Fernandez, S. Euclidean skeletons. Image and Vision Computing, 16: 317–327, 1998.
[40] Pizer, S. M., Oliver, W. R. and Bloomberg, S. H. Hierarchical shape description via the multi-resolution symmetric axis transform.
IEEE Transaction on Pattern Analysis and Machine Intelligence, 9: 505–511, 1987.
[41] Bai, X., Latecki, L. J. and Liu, W. Y. Skeleton Pruning by Contour Partitioning with Discrete Curve Evolution. IEEE Transaction on Pattern Analysis and Machine Intelligence, 29(3): 449-462, 2007.