1 Introduction

Mapping LULC is essential for environmental monitoring requirements, conservation goals, spatial planning enforcement, or ecosystem-oriented natural re-sources management [1]. High spatial resolution remote sensing data enable to address LULC problem at higher-order in urban/suburban and natural landscapes [2]. Remote sensing imagery, which is widely used for LULC, is structured according to two primary descriptors: spectral and spatial. The original spectral detail can be used directly for LULC classification, but it is often highly correlated together, also contains various external influences such as topographic relief and atmospheric scattering, bringing about ineffective analysis classes. Image-derived features, such as multispectral ratio (spectral index) and measure of spatial structure (spatial index), by redistributing the original information into a more useful form context, should be exploited to produce accurate classification maps [3, 4].

Object-based analysis has been gaining importance in the fields of remote sensing, especially for high spatial resolution image processing [5]. The approach may be more appropriate than traditional pixel-based approach since it does not operate directly on individual pixels but on groups of contiguous pixels, allows exploiting spectral-spatial data [6,7,8,9]. Image objects are generated by image segmentation process in which scale parameter is a key parameter to partition the image into objects. Optimal scale of image segmentation can be taken from rate of change-local variance (ROC-LV) graph [10]. One scale of image segmentation may lead to over-segmentation for some LULC classes but under-segmentation for other in complex LULC categories due to difference in structure of the classes [11]. Therefore, multi-scale segmentation may allow the classifier to better LULC.

Fuzzy classification has been applied in remote sensing for natural features which are dispersed gradually and continuously over space [12]. The phenomenon regularly leads to the presence of some LULC classes within a single pixel in remote sensing imagery. Fuzziness is a term to reveal continuously varies LULC classes in natural phenomena, such as road and building [13]. Fuzzy classification approach was introduced to solve fuzziness problem [14, 15].

Toward that end, multi-scale object-based fuzzy classification method has been explored to indentify LULC maps. To evaluate the effectiveness of proposed method; two experiments are carried on high spatial resolution RapidEye and IKONOS data.

2 Methodology

2.1 Study areas and data

Study areas of the study are Lao Cai area and Can Tho area in Vietnam. Lao Cai is a mountainous area in the north where main LULC classes are water, building, bare land, road, terrace field, paddy field and forest. Can Tho is a flat and low-lying land in the south of Vietnam where LULC classes are water, building, rice field, road and vegetation (mangrove plants and other lowland plants and grasses) (Fig. 1).

Fig. 1
figure 1

Study area a Lao Cai, and b Can Tho in Vietnam mainland

The remotely sensed data are used include RapidEye image of Lao Cai area and IKONOS image of Can Tho area. 5-m RapidEye imagery is optical multispectral imagery with five distinct bands: blue, green, red, RedEgde and NIR [16], especially RedEdge band is a useful data for vegetation classification [17, 18] 0.1-m generation IKONOS imagery consists of four single bands: blue, green, red, and NIR [19].

Spectral indices of remotely sensed image are the combinations of surface reflectance at multispectral information that indicate relative dominance of features of interest such as vegetation, water, soil [20]. Spectral indices used for Fuzzy classification in this study include normalized difference vegetation index (NDVI), normalized difference water index (NDWI) [21] and vegetation–soil–water index (VSW) [22] which are derived as ratios from original channels. VSW illustrates soil index (SI), vegetation index (VI) and water index (WI) by defining distance between a target point to soil line, water line and vegetation line in Red-NIR bands spectral space correspondingly.

Smoothness index (SmI) is one of shape heterogeneity parameters which represents the smooth degree of the object obtained in the process [23] the spatial index calculated by:

$${\text{SmI}} = \frac{\text{P}}{{\sqrt {\text{S}} }}$$
(1)

where P is perimeter of segment and S is area of segment.

A number of 144,669 sample points generated from 1:25,000 scaled forest map (2014) of Lao Cai area is separated to three sets: training, validation and test set. The Can Tho dataset has 216,367 sample points which are selected by manually based on IKONOS image and Google Earth.

2.2 Multi-scale image segmentation

Image segmentation techniques have been used much frequently to process satellite sensor data, which is the process of grouping neighbor pixels to objects which have similar digital values [5]. The process possesses intrinsic size, shape and geographic relationship with the imprecise nature of the data [24]. “Region growing and merging” segmentation algorithm which contains region growing and merging processes is used in this study. Region growing process groups neighboring similar pixels into regions while merging process merges similar neighboring regions will be merged to larger objects by comparing the similarity between current region and its neighbors with input threshold [25, 26]. The threshold value which must be smaller than 1 and larger than 0, defines the level of segmentation.

Local variance (LV) is measured as the mean of the value of standard deviation (SD) in a small neighborhood over the entire image [27]. The value shows the relationship between spatial structure of images, size of the objects in the real world and pixel resolution: if the spatial resolution is considerably finer than the objects in the scene, most of the SD in the image will be highly correlated with their neighbors and LV value will be low; if the objects approximate the size of the resolution cells, then the likelihood of neighbors being similar decreases and the LV value rises. In case of object-based analysis, instead of calculate SD in a moving window, LV is defined by SD value of pixels inside a segment [28].

Segmentation on multiple spectral bands of remote sensing data is desirable to take full advantage of the data. Mean value of LV (MeanLV) of segmentation level is created by computing the ratio between the summary of the LVs for each band i (LVi) and the number of spectral bands (n) [29]:

$${\text{MeasnLV}} = \frac{{\sum\nolimits_{\text{n}}^{\text{i}} {{\text{LV}}_{\text{i}} } }}{\text{n}}$$
(2)

To assess the dynamics of MeanLV value of different segmentation levels, rate of change of local variance (ROC-LV) [30] measurement is used:

$${\text{ROC-LV}} = \frac{{100 *\left( {{\text{MeanLV}}_{\text{j}} - {\text{MeanLV}}_{{{\text{j}} - 1}} } \right)}}{{{\text{MeanLV}}_{{{\text{j}} - 1}} }}$$
(3)

where j is value of threshold, MeanLVj, Mean LVj−1 are Mean local variance at a given level and previous level, correspondingly.

Peaks in the ROC-LV graph show the object levels at which the image can be segmented in the most appropriate manner, relative to data properties at some scene levels. At these peaks, the segments match the types of objects characterized by equal degrees of homogeneity [10].

In this study, ROC-LV graphs are produced in PyGRASS—an object-oriented Python application programming interface for GRASS GIS [31] by the authors. 5 and 4 are values of number of bands n of RapidEye data and IKONOS data, respectively. Values of threshold j range from 0.01 to 0.4; step is 0.01 for both RapidEye and IKONOS data. Peaks of the graphs are considered to select optimal scale of segmentation.

2.3 Fuzzy classification

Fuzzy logic is the soft computing that allows identification of multiple and partial membership of LULC classes to resolve mixed pixels existence problem. Fuzzy membership which is termed as fuzzy set illustrates the strength of class membership of a pixel of LULC classes (membership degree), where the value ranges between 0 and 1 [32].

Scherer [33] described Fuzzy set A in space X is as follow:

$${\text{A}} = \left\{ {\left( {{\text{x}},\upmu_{\text{A}} \left( {\text{x}} \right)} \right);{\text{ x}} \in {\text{X}}} \right\}$$
(4)

where X is the universe of the range of possible values for describing imprecise or vague data, \({\text{A}} \subseteq {\text{X}}\), \({\varvec{\upmu}}_{{\mathbf{A}}}\): X → [0, 1] is the membership function of fuzzy set A which assigns to each element x ∈ X its membership degree to the fuzzy set A.

In particular, there are some standard forms of membership functions such as Gaussian and Triangular functions. Consider \({\acute{\text{x}}}\) is the middle and \(\sigma\) describes the width of the Gaussian curve, the function of Gaussian membership \(\upmu_{\text{A}}\) is expressed by the formula [33]:

$${\mu}_{\text{A}} \left({\text{x}} \right) = { \exp }\left({- \left({\frac{{{\text{x}} - {{\acute{\text{x}}}}}}{\sigma}} \right)^{2}} \right)$$
(5)

In the case of Triangular membership T(x; a, b, c) where a is lower limit, c is upper limit, and b is a value where a < b < c. In the particular case, when b = (a + c)/2, then the function T takes the form of [33]:

$${\text{T}}\left( {{\text{x}};{\text{a}},{\text{b}},{\text{c}}} \right) = \left\{ {\begin{array}{*{20}l} {0,} \hfill & {x \le a} \hfill \\ {2\left( {\frac{{{\text{x}} - {\text{a}}}}{{{\text{c}} - {\text{a}}}}} \right)^{2} ,} \hfill & {a < x \le b} \hfill \\ {1 - 2\left( {\frac{{{\text{x}} - {\text{c}}}}{{{\text{c}} - {\text{a}}}}} \right)^{2} ,} \hfill & {a < x \le b} \hfill \\ {1,} \hfill & {x > c} \hfill \\ \end{array} } \right.$$
(6)

Fuzzy classification is the set of procedure which forms fuzzy rule for classification. The system consists of four elements: rule base, fuzzification, inference and defuzzification.

  • Rule base

Rule base is a set of fuzzy rules \(R^{\left( k \right)}\), k = 1, …, N of the form:

\(R^{\left( k \right)}\): IF × 1 is \(A_{1}^{k}\) AND …. AND xn is \(A_{n}^{k}\) THEN y1 is \(B_{1}^{k}\) AND …. AND ym is \(B_{m}^{k}\)

N is number of fuzzy rules, \(A_{i}^{k}\), \(B_{j}^{k}\) are fuzzy sets such as:

$$A_{i}^{k} \subseteq X_{i} \subset R,\quad {\text{i}} = 1, \ldots ,{\text{n}}$$
(7)
$$B_{j}^{k} \subseteq Y_{j} \subset R,\quad {\text{j}} = 1, \ldots ,{\text{m}}$$
(8)

x1, …, xn are input variables and y1, …, yn are output variables of the fuzzy model, \(X_{i}\), \(Y_{j}\) represent the space of input and output variable correspondingly [33].

  • Fuzzification

Fuzzification is used by fuzzy logic operates on fuzzy sets. Some of regular fuzzification methods are Zadeh, product, drastic, Lukasiewicz and operations used for those methods are t-norm (minimum) and t-conorm (maximum) [33]. Zadeh notation can be represented in following equation:

$$\upmu_{{{\text{A}} \to {\text{B}}}} \left( {{\text{x}},{\text{y}}} \right) = { \hbox{max} }\left\{ {{ \hbox{min} }\left[ {\upmu_{\text{A}} \left( {\text{x}} \right),\upmu_{\text{B}} \left( {\text{y}} \right)} \right],1 -\upmu_{\text{A}} \left( {\text{x}} \right)} \right\}$$
(9)
  • Inference

Inference is obtained from a fuzzy set A ⊆ X = X1 × X2 × ··· × Xn. Output of the process is fuzzy set \({\acute{\text{B}}}^{\text{k}}\). Membership function of \({\acute{\text{B}}}^{\text{k}}\) [33] is shown below:

$$\upmu_{{{\bar{\text{B}}}}} {\text{k}}\left( {\text{y}} \right) = \mathop { \sup }\limits_{{{\text{x}} \in {\text{X}}}} \left[ {\upmu_{{{\text{A}}^{\prime } }} \left( {\text{X}} \right)^{\text{T}} *\upmu_{{{\text{A}}^{\text{k}} \to {\text{B}}^{\text{k}} }} \left( {{\text{X}},{\text{y}}} \right)} \right]$$
(10)
  • Defuzzification

Defuzzification is the process for mapping output fuzzy set \({\acute{\text{B}}}^{\text{k}}\) of inference to single value \({\acute{y}} \in Y\). Some methods to establish \({\acute{y}}\) are: centroid (centre average), bisector (centre of gravity or centre of area), centre of sums and maximum membership function etc. [33]. Bisector method calculates \({\acute{y}}\) using:

$${\bar{\text{y}}} = \frac{{\int {\text{y}}\upmu_{{{\text{B}}^{\prime } }} \left( {\text{y}} \right){\text{dy}}}}{{\int\upmu_{{{\text{B}}^{\prime } }} \left( {\text{y}} \right){\text{dy}}}} = \frac{{\int {\text{yS}}_{{{\text{k}} = 1}}^{\text{N}}\upmu_{{{\bar{\text{B}}}^{\text{k}} }} \left( {\text{y}} \right)}}{{\int {\text{S}}_{{{\text{k}} = 1}}^{\text{N}}\upmu_{{{\bar{\text{B}}}^{\text{k}} }} \left( {\text{y}} \right)}}$$
(11)

Fuzzy system classification module named “i.fuzzy.system” in GRASSGIS [34] has been used to generate the LULC maps. Fuzzy sets and fuzzy rules are stored on Fuzzy variable file and rule file correspondingly. Fuzzy sets, Fuzzy rules, inputs and outputs of Fuzzy classification are identified based on histogram distribution of training data of original bands and indices. Membership functions of input indices and output classes were setup as Gauss shape (“s-shape”) and Triangular shape (“linear”), respectively. Zadeh fuzzification and Bisector defuzzification are exploited as the algorithms of fuzzy system. The result of fuzzy classification demonstrates the percentage of output sets in each object. The value of 50% is used as threshold to divide these sets separately (e.g. target pixel/object is labelled as water if percentage of water in the pixel/object is equal or higher than 50%).

3 Procedures and results

3.1 Lao Cai area classification

Atmospheric and topographical corrections of RapidEye imagery are applied. Full Lao Cai area is separated to water, terrace field classes, and two sets: built-up and vegetation in object-based at 0.03 of threshold (T). Built-up set in object-based at 0.05 of T is distinguished to building, bare land and road classes. Rice field and forest classes are categorized from vegetation set in object-based at T equals 0.07. Final LULC map is made by combining above classes.

ROC-LV graph of Lao Cai area is created, the first peak of graph is at 0.03 of threshold, second peak is at T equals 0.09 (Fig. 2a). Samples of segmentation boundary at the two peaks are shown in Fig. 3a, b: at T = 0.03, over-segmentation happens when a terrace area (grey color) is segmented to several segments; at T = 0.09, under-segmentation phenomenon occurs when terrace area and vegetation area (red color) are grouped in one segment. Since over-segmented areas are able to be merged into desired objects in the classification step but under-segmented areas cannot, optimal threshold of segmentation may the biggest value of peaks of ROC-LV graph at that no under-segmentation phenomenon happens [35]. As a result, the first peak of ROC-LV at 0.03 is used as optimal threshold for segmentation. NDVI, NDWI, WI and blue band, and Fuzzy rule R1, R2, R3 and R4 (Table 1) are used to investigate water and terrace field classes, built-up and vegetation sets. Overall accuracy (OA) is 97.1% and Kappa coefficient is 0.94, higher than classification result at second peak of ROC-LV at 0.09 (OA is 96.1% and Kappa is 0.92).

Fig. 2
figure 2

ROC-LV graphs of Lao Cai area of a whole area, b built-up set and c vegetation set. Thresholds 0.03, 0.05, 0.07 are selected for segmentation correspondingly

Fig. 3
figure 3figure 3

Segmentation boundary of Lao Cai area examples at ROC-LV graphs a first and b second peak of whole area, c first and d second peak of built-up set, e first, f second and g third peak of vegetation set. Yellow line is boundary of all segments; blue line is boundary of a single under-segmented area

Table 1 Rule of Fuzzy classification of Lao Cai area

To classify built-up set, ROC-LV graph of the set is shown in Fig. 2b. Samples of segment boundary of the first and second peaks are shown in Fig. 3c, d. To ignore under-segmentation phenomenon which occurs at second peak (road and building are grouped in a segment), the first peak at 0.05 of ROC-LV graph is chose as optimal threshold. SI, SmI and WI in object-based are inputs of Fuzzy classification, rules R5, R6 and R7 (Table 1) are used to identify building, bare land and road classes. OA is 88.8% and Kappa of the classification is 0.78. The result is better than classification result at second peak of ROC-LV graph at 0.07 (OA is 85.7% and Kappa is 0.76).

ROC-LV graph of vegetation set is generated (Fig. 2c) and samples of segmentation boundary of first, second and third peaks are shown in Fig. 3e–g. Since under-segmentation occurs in forest and rice field classes at third peak, while over-segmentation phenomenon happens in forest class (inside black square), the second peak at 0.07 of ROC-LV is chose as optimal scale-segment Fuzzy classifier analyzes NDVI and RedEdge band using rules R8, R9 (Table 1) to classify paddy field and forest classes. The OA is 93.6% and Kappa is 0.68. The result is the best in comparison with the classification result at first peak at 0.05 (OA is 92.7% and Kappa is 0.64, and the third peak at 0.09 (OA equals 91.5% and Kappa equals 0.58).

LULC map of Lao Cai area is built by merging seven LULC classes from above classifications (Fig. 4). The final classification result shows that water, paddy field, forest, terrace field and building get high accuracies as 96.9%, 93.1%, 92%, 87.9% and 86.5% correspondingly. While accuracy of bare land class is 82.6%, the value of road class is 69% only, because many building pixels are classified as road due to similarity on spectral detail of the two classes. Overall accuracy of the classification is 90.8% and Kappa is 0.84 (Table 2).

Fig. 4
figure 4

Lao Cai LULC map

Table 2 Confusion matrix of Lao Cai

3.2 Can Tho area classification

Can Tho area object-based images at 0.04 of T is classified to paddy field, water, vegetation classes and set of building-road-bare land-rice field (BRBR). Segment image of BRBR set at 0.07 of T is generated to building, bare land, road, and paddy field classes. Six classes are merged to final LULC map of the area.

ROC-LV graph of whole area is generated (Fig. 5a). To ignore under-segmentation phenomenon in vegetation class and built-up set at second peak, the first peak at 0.04 of ROC-LV graph is selected as optimal segment threshold. Segment-based of WI and NDWI are generated as input of Fuzzy classification to distinguish to water, rice field, vegetation classes and BRBR set using R10, R11, R13 and R14 rules (Table 3). Confusion matrix of classification is shown in Table 4. The classification result at the peak achieves higher overall accuracy and Kappa (93.9% and 0.91 respectively) than second peak at 0.08 (OA is 93.2%, Kappa is 0.90).

Fig. 5
figure 5

ROC-LV graph of Can Tho area of a whole area and b built-up set. Threshold 0.04 and 0.05 are selected for segmentation respectively

Table 3 Rule of fuzzy classification of Can Tho area
Table 4 Confusion matrix of Can Tho data

ROC-LV graph of BRBR set is shown in Fig. 5b. Optimal threshold of built-up set is setup as 0.05 as the first peak of the ROC-LV graph since under-segment happens in road and building classes. SI, SmI, NDWI and blue band in segment-base are input of Fuzzy classification using R14, R15, R16 and R17 rules (Table 3) to classify building, road, bare land and rice field. OA and Kappa of the classification are 85.5% and 0.78, respectively. The classification result at the threshold is better than at second peak of ROC-LV graph at 0.08 (OA equals 82.1% and Kappa equals 0.73).

Final LULC map of Can Tho area is generated by combining water, bare land, road, building, and paddy field and vegetation classes from above classification steps (Fig. 6). Confusion matrix and classification accuracy is shown in Table 4. Water, rice field and vegetation classes show high accuracy values, as 98.8%, 96.9% and 94.7%, respectively. Accuracies of bare land, road and building classes are lower: 81.9%, 86.2% and 80.2% correspondingly due to mixing problem among these three classes. Overall accuracy of the classification is 92.3% and kappa coefficient is 0.90.

Fig. 6
figure 6

Can Tho LULC map

4 Conclusions

In this paper we present a multi-scale object-based fuzzy approach for LULC classification from high resolution optical images data. ROC-LV graph is useful to define optimal threshold for segmentation process. Information of original bands, spectral and spatial indices is used for fuzzy classification. Fuzzy set and fuzzy rule are generated and adjusted based on training set histogram distribution and validation set respectively, while test set is applied to evaluate classification accuracy. Threshold value at the first peak of ROC-LV graph is selected for segmentation whole study area and built-up set while the second peak is the optimal scale for vegetation set. Fuzzy classification in object-based approach is used to distinguish LULC classes and LULC sets, then again employed to classify final LULC classes from these sets. The techniques present excellent results with 90.9%, 0.84 and 92.3%, 0.90 accuracies and Kappa coefficient of Lao Cai and Can Tho areas, correspondingly. Further work is needed on improving accuracies of building and road classes, and categorizing between different types of vegetation class (for Can Tho area, such as mangrove, grass, vegetable, and fruit tree) and forest class (for Lao Cai area, according to species and density).