Mathematical Problems in Engineering

Mathematical Problems in Engineering / 2014 / Article
Special Issue

Mathematical Methods Applied to Digital Image Processing

View this Special Issue

Research Article | Open Access

Volume 2014 |Article ID 974024 | 23 pages | https://doi.org/10.1155/2014/974024

A Global Multilevel Thresholding Using Differential Evolution Approach

Academic Editor: Yi-Hung Liu
Received03 Oct 2013
Revised23 Jan 2014
Accepted03 Feb 2014
Published20 Mar 2014

Abstract

Otsu’s function measures the properness of threshold values in multilevel image thresholding. Optimal threshold values are necessary for some applications and a global search algorithm is required. Differential evolution (DE) is an algorithm that has been used successfully for solving this problem. Because the difficulty of a problem grows exponentially when the number of thresholds increases, the ordinary DE fails when the number of thresholds is greater than 12. An improved DE, using a new mutation strategy, is proposed to overcome this problem. Experiments were conducted on 20 real images and the number of thresholds varied from 2 to 16. Existing global optimization algorithms were compared with the proposed algorithms, that is, DE, rank-DE, artificial bee colony (ABC), particle swarm optimization (PSO), DPSO, and FODPSO. The experimental results show that the proposed algorithm not only achieves a more successful rate but also yields a lower threshold value distortion than its competitors in the search for optimal threshold values, especially when the number of thresholds is large.

1. Introduction

Thresholding is the simplest and most commonly used method of image segmentation. It can be bilevel or multilevel [1]. Both of these types can be classified into parametric and nonparametric approaches [1]. Surveys of thresholding techniques for image segmentation can be found in [27]. The surveys revealed that Otsu’s method is a commonly used technique [4, 8]. This method finds the optimal thresholds by maximizing the weighted sum of between-class variances (BCV) [9]. The BCV function is also called Otsu's function. However, the solution finding process is an exhaustive search and it is a very time-consuming process because the complexity grows exponentially with the number of thresholds.

Multilevel image thresholding based on Otsu’s function has been used as a benchmark for comparing the capability of evolutionary algorithms (EA). The EA is a nongradient based optimization algorithm. Several algorithms have been widely applied to solve multilevel thresholding. A group of successful works were based on a combination of Otsu’s function with some state-of-the-art algorithms: PSO [10], DE [11], ABC [12], and FOSPSO [13]. Kulkarni and Venayagamoorthy [14] showed that PSO was faster than Otsu’s method in searching the optimal thresholds of multilevel image thresholding. Akay [15] presented a comprehensive comparative study of the ABC and PSO algorithms. The results showed that the ABC algorithm with both the between-class variance and the entropy criterion can be efficiently used in multilevel thresholding. Hammouche et al. [16] focused on solving the image thresholding problem by combining Otsu’s function with metaheuristic techniques, that is, genetic algorithm (GA), PSO, DE, ant colony, simulated annealing, and Tabu search. Their results revealed that DE was the most efficient with respect to the quality of solution. Osuna-Enciso et al. [17] presented an empirical comparative study of the ABC, PSO, and DE algorithms to perform image thresholding using a mixture of Gaussian functions. The results showed that the DE algorithm was superior in performance in minimizing the Hellinger distance and used less evaluations of the Hellinger distance. Ghamisia et al. [18] showed that a global optimal search for optimal threshold values of Otsu’s function was essential for the multilevel segmentation of multispectral and hyperspectral images.

The DE algorithm was selected for multilevel image thresholding. It is simple to implement and produces good results. However, based on our experiments, DE could not reach an optimal solution when it was applied to a very difficult problem. Therefore, a better DE algorithm is required. We noticed that the mechanism of vector selection and the size of the higher ranked population are an important criterion for success.

The contribution of this paper is as follows.

DE with the onlooker and ranking-based mutation operation, named , is proposed to overcome the drawback of the DE algorithm for multilevel image thresholding, especially when the number of thresholds is large. The proposed algorithm homogenizes the onlooker phase of the ABC algorithm and the ranking-based mutation operator of the [19]. The main advantage of the proposed algorithm is that a user can adjust the balancing of the exploitation and exploration capabilities of the algorithm.

To verify the capabilities of the proposed algorithm, experiments to find the optimal solutions in the multilevel image thresholding, when the number of thresholds ranged from two to 16, were set up. It was found that the optimal solutions could be effectively reached using the proposed algorithm.

The remainder of the paper is organized as follows. Section 2 describes the multilevel thresholding problem. Section 3 presents a brief review of the differential evolution algorithm (DE). In Section 4, the proposed new version of the DE algorithm with the onlooker and ranking-based mutation operator algorithm, , is described in detail. Section 5 shows the experimental results of applying the proposed method to multilevel segmentation in different images. Finally, the conclusion of the paper is discussed in Section 6.

2. Multilevel Thresholding Problem Formulation

Otsu’s method [9] is based on the maximization of the between-class variance. Consider a digital image having the size , where is the width and is the height. The pixels of a given picture are represented in gray levels and they are in . The number of pixels at level is denoted by and the total number of pixels by . The gray-level histogram is normalized and regarded as a probability distribution and is written as follows: The total mean of the image can be defined as The multilevel thresholding with respect to the given threshold values , can be performed as follows: where is the coordinate of a pixel and denotes the intensity level of a pixel. The pixels of a given image will be divided into classes in this regard.

The optimal threshold can be determined by maximizing the between-class variance function (BCV), , which can be defined by where represents a specific class in such a way that and are the probability of occurrence and the mean of class , respectively. Equation (4) is also called Otsu’s function. The probabilities of occurrence of classes are defined by The mean of each class can be given by Thus, the -level thresholding problem is transformed to an optimization problem. The process is to search for thresholds that maximize the value , which is generally defined as

3. Differential Evolution Algorithm

The DE algorithm is an evolutionary optimization technique proposed by Storn and Price [11]. The main procedures of DE are briefly described as follows.

3.1. Initialization

The DE algorithm starts with a population of initial solutions, each of dimension , , where the index denotes the solution, or vector, of the population, is the generation, and is the population size. The initial population (at = 0) is randomly generated to be within the search space constrained by the minimum and maximum bounds, and . The vector is initialized as follows: where is a uniformly distributed random real number between 0 and 1, .

3.2. Mutation Operators

The differential mutation operator is one of the three operators of DE. The mutation operator is applied to generate the mutant vector for each target vector in the current population. A mutant vector is generated according to where the randomly chosen indexes, random indexes, are mutually different random integer indices and they are also different from the running index . Further, , and are different so that . is a real and constant factor, , which controls the amplification of the differential variation; is called the base vector, is called the terminal vector, is called the other vector, and is called the difference vector.

There have been many proposed mutation strategies for DE [20, 21]. Each different strategy has different characteristics and is suitable for a set of problems. However, the choice of the best mutation operators for DE is difficult for a specific problem [2224]. The “DE/rand/1/bin” strategy has been widely used in DE literature [2528]. It is more reliable than the strategies based on the best-so-far solution such as “DE/best/1” and “DE/current-to-best/1”. However, “DE/rand/1/bin” has slower convergence. Simply put, it has high exploration but low exploitation abilities.

3.3. Crossover

DE utilizes the crossover operation to generate new solutions by shuffling competing vectors and to increase the diversity of the population. The classical version of the DE (DE/rand/1/bin) uses the binary crossover. It defines the following trial vector: where ( = problem dimension) and

CR is the crossover rate , is the th evaluation of a uniform random number generator with outcome , and is a randomly chosen index that ensures will get at least one parameter from .

3.4. Selection

Selection determines whether the target or the trial vector survives to the next generation. The selection operation is described as where is the objective function to be minimized. Therefore, if the objective of the new trial vector, , is equal to or less than the objective of the old trial vector, , then is set to ; otherwise, the old value is retained.

The pseudocode of basic DE with “DE/rand/1/bin” strategy is shown in Algorithm 1.

(1)  Generate the initial population randomly
(2)  Evaluate the fitness for each individual in the population
(3)  while the maximum generation G is not reached do
(4)  for to NP do
(5)    Select uniform randomly
(6)    
(7)    for to do
(8)       if or is equal to then
(9)       
(10)     else
(11)     
(12)     end if
(13)   end for
(14) end for
(15) for to NP do
(16)     Evaluate the offspring
(17)      if is better than or equal to then
(18)     Replace with
(19)     end if
(20)    end for
(21) end while

The function returns a uniformly distributed random integer number between 1 and D. is a uniformly distributed random real value of . The word “better” in line 17 means “less than” if the problem requires minimization, see (12) and its explanation, and it means “greater than,” if the problem requires maximization. The best , where is the maximum number of generations, is the solution of the algorithm. The word “best” also depends on the type of problem.

4. The Proposed DE with Onlooker Ranking-Based Mutation Operator

In 2013 Gong and Cai [19] proposed a algorithm. They claimed that probabilistically selecting the vectors and in the mutation operator from the better population can improve the exploitation ability of basic DE. To the best of the authors’ knowledge, may, however, also lead to premature convergence (this will be shown in the experiments). That means that the has too much exploitation ability. Furthermore, it cannot balance between the exploration and the exploitation abilities. In order to balance between the two abilities, we propose DE with the onlooker and ranking-based mutation operator, named . The proposed algorithm is an improvement of the rank-DE by homogenizing the rank-DE with the onlooker phase of ABC algorithm. The detail of the algorithm is described as follows.

4.1. Ranking Assignment

To perform the maximization, the fitness of each vector is sorted in ascending order (i.e., from worst to best). Then, the rank of the th vector, , is assigned based on its sorted ordering as follows: As a result, the best vector in the current population will obtain the highest ranking, that is, NP.

4.2. Probabilistic Selection

After assigning the ranking for each vector, the selection probability of the th vector is calculated as

4.3. A New Strategy for Base Vector, Terminal Point, and the Other Vector Selections

Definition 1 (a worse population and a better population). Let be a real value and . A population having probability less than is called a worse population and a population having probability greater than or equal to is called a better population.

In the , the base vector and the terminal point were based on their selection probabilities. The other vector in the mutation operator, , is selected randomly as in the original DE algorithm. The vectors with higher rankings (higher selection probabilities) are more likely to be chosen as the base vector or the terminal point in the mutation operator.

Our investigation revealed that if both and vectors of were chosen from better vectors, then the distribution of the target vector may collapse quickly and possibly lead to premature convergence. Accordingly, when the was applied to a very difficult problem, it could not reach the optimal solution.

If the steps of the DE algorithm are compared with the ABC algorithm, the population in the current generation can be considered as the employed bees and the population in the next generation can be considered as the onlooker bees. To follow the concept of ABC, a new vector, , which is called the base vector, chooses a food source with respect to the probability that is computed from the fitness values of the current population. The probability value, , of which is chosen by a base vector can be calculated by using the expression given in (14). After a base source for a new vector is probabilistically chosen, both and are also chosen in the same manner as the terminal point and the other vector selections in the . The target vector is created by a mutation formula of DE. The mutant vector is created after the target vector is crossed with a randomly selected vector, and then the fitness value is computed. As in the ordinary DE, a greedy selection is applied between and . Hence, the new population contains better sources and positive feedback behavior appears. This idea can be expressed as pseudocode, as in Algorithm 2. Since the selection of is the onlooker selection and the selections of and are brought from the , then the algorithm is called onlooker and ranking-based vector selection.

(1)  Input: The target vector index , the last index of onlooker , and
(2)  Output: The selected vector indexes
(3)   ; if then ; end if              
(4)  while //onlooker-like selection       
(5)    ; if then ; end if            
(6)  end while
(7)  Randomly select terminal vector index
(8)  while or or do
(9)    Randomly select
(10) end while
(11) Randomly select the other vector index
(12) while or or do
(13)   Randomly select
(14) end while

The pseudocode of onlooker and ranking-based vector selection is shown in Algorithm 2. The differences between the original ranking-based and onlooker and ranking based selection are highlighted by “”.

The function is added to generalize the algorithm. Its output depends on the parameter . The outcome can be either a constant value of or a value of the uniform random function . The balance of the exploration and exploitation ability can be set by the parameter . And the function is defined by

4.4. The DE with Onlooker-Ranking-Based Mutation Operator

The procedures in Sections 4.1, 4.2, and 4.3 are combined together to create a better DE algorithm. The parameter determines the fraction of the worse population to be eliminated. When there is no worse population; each single vector in the current population will act as the base vector. If , then each single vector having a probability less than is a worse vector and will not be selected as the base vector. If is not a constant or is outside , each single base vector is an onlooker bee. Accordingly, the name of the algorithm is Ranking-Base Differential Evolution . To achieve the global solution, a user can set a proper value for to control the balance of the exploration and exploitation abilities of the algorithm. The pseudocode of is shown in Algorithm 3 and the differences between the and are highlighted by “”.

(1)  Randomly generate the initial population
(2)  Evaluate the fitness for each individual in the population
(3)  while the maximum generation G is not reached do
(4)     Sort and rank the fitness values of population according to (13)
(5)     Calculate the selection probability for each individual according to (14)
(6)                                  
(7)  for to NP do
(8)       Select , , as shown in Algorithm 2 based on the current and
(9)       
(10)      for to do
(11)          if or is equal to then
(12)          
(13)          else
(14)          
(15)          end if
(16)      end for
(17)    end for
(18)    for to NP do
(19)          Evaluate the offspring
(20)          if is better than or equal to then
(21)           Replace with
(22)          end if
(23)    end for
(24) end while

5. Experiments and Results

5.1. Experimental Setup

The global multilevel thresholding problem deals with finding optimal thresholds within the range that maximize the BCV function. The dimension of the optimization problem is the number of thresholds, , and the search space is . The parameter of is or is set to be one of 0.0, . The variation of the proposed was implemented and compared with the existing metaheuristics that performed image thresholding, that is, PSO, DPSO, FODPSO, ABC, and several variations of DE algorithms. All the methods were programmed in Matlab R2013a and were run on a personal computer with a 3.4 GHz CPU, 8 GB RAM with Microsoft Windows 7 64-bit operating system. The experiments were conducted on 20 real images. The 19 images, namely, starfish, mountain, cactus, butterfly, circus, snow, palace, flower, wherry, waterfall, bird, police, ostrich, viaduct, fish, houses, mushroom, snow mountain, and snake, were taken from the Berkeley Segmentation Dataset and Benchmark [29]. The last image, namely, Riosanpablo, is a satellite image “New ISS Eyes see Rio San Pablo”, March 1, 2013 (http://visibleearth.nasa.gov/view.php?id=80561). Each image has a unique gray level histogram. These original images and their histograms are depicted in Figure 1. An experiment of an image with a specific number of thresholds is called a “subproblem.” The number of thresholds investigated in the experiments was . Thus, there are subproblems per algorithm. Each subproblem was repeated 50 times and each time is called a run.

To compare with PSO, ABC, and DEs algorithms, the objective function evaluation is computed for , where is population size and is the number of generations. A population of PSO and the DEs calls Otsu’s function one time per generation. The population size in the PSO and DEs algorithms was set to 50. A bee in the ABC calls Otsu’s function two times per generation; therefore their number of food sources were set to a half of the PSO’s size, that is, 25. The stopping criteria were set by the maximum amount of generations . In this experiment, was set to 50, 100, 150, 200, 300, 400, 600, 800, 1000, 1500, 2000, 3000, 4000, 5000, and 6000 when was 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, and 16, respectively. For the PSO, DPSO, and FODPSO algorithms, the parameters were set as per the suggestion in [30] and is shown in Table 1. The other control parameter of the ABC algorithm, limit, was set to 50 [15]. The control parameters and of the DE algorithms were set to 0.5 and 0.9, respectively [31, 32].


ParameterPSODPSOFODPSO

Population505050
1.51.51.5
1.51.51.5
1.21.21.2
222
−2−2−2
255255255
000
Min population1010
Max population5050
No. of swarms44
Min swarms22
Max swarms66
Stagnancy1010
Fractional coefficient0.75

5.2. Comparison Strategies and Metrics

To compare the performance of different algorithms, there are three metrics: the convergence rate of algorithms was compared by the average of generations (), a lower means a faster convergence rate; the stability of algorithms was compared by the average of the success rate, (SRHM), a higher SRHM means higher stability; the reliability was compared by the threshold value distortion measure (TVD), a lower TVD means higher reliability. The details of the three metrics are described as follows.

When all 50 runs of an algorithm performing on an image with a specific number of thresholds are terminated, the outcomes will be analyzed. Run ’th is called a successful run if there is a generation of such that and the number of generations (NG) of the successful run is recorded. Thus, the number can be defined by The average of from those successful runs is represented by as follows: The ratio of success rate (SR) for which the algorithm succeeds to reach the VTR for each subproblem is computed as The experiments were conducted on 20 images. The arithmetic mean (AM) of () over the entire set of images with a specific number of thresholds is calculated as where is the total number of images. is shown in Table 3. The worst-case scenario is that there is no successful run for a subproblem; this subproblem is called an “unsuccessful subproblem.” If an algorithm encounters this scenario, the subproblem will be grouped by its number of thresholds and the number of images in the group will be counted and assigned to . These scenarios will be represented by , as shown in Tables 3 and 4.

The average of the success rate over the entire dataset with a specific number of thresholds () is averaged by the Harmonic mean, HM, as follows:

The is very important in measuring the stability of an algorithm and it means the ratio of runs that are achieving the target solution. Because the evolutionary methods are based on stochastic searching algorithms, the solutions are not the same in each run of the algorithm and depend on the search ability of the algorithm. Therefore, the is vital in evaluating the stability of the algorithms. The comparison of the stability gives us valuable information in terms of the ratio representing the success rates (). A higher means better stability of the algorithm.

An algorithm producing means that more than 50 percent of the independent runs of the algorithm cannot reach the global solution. Thus, the algorithm that yields should not be selected to solve the problem. The experiments were conducted for the number of thresholds varying from 2 to 16. These experiments contained the maximum number of thresholds such that the algorithm yields , which is represented by in Table 4. Furthermore, the experiments also contained the maximum number of thresholds that the algorithm can solve; and above this value there was the case such that all 50 runs of some subproblems missed the VTR. This number is represented by . In this case the success rate was zero and the associated was zero too. And the definitions of the two values are presented in (21)

Let be the number of thresholds. The reliability of a solution is measured by threshold value distortion measure () and is computed as where is the threshold value producing the VTR, is the threshold value obtained from the algorithm, and is the indicator function, which is equal to 1 when and is zero otherwise. is zero if the algorithm can reach the VTR in every run. The lower the the more reliable the algorithm is.

5.2.1. The Value to Reach (VTR)

Following the completion of all of the experiments the best values of the between-class variance and the corresponding thresholds were collected and are shown in Table 6. The results are shown image by image and the numbers of thresholds vary from 2 to 16. The between-class variance values in column 3 are used as the VTR values.

5.2.2. Results Produced by Local Search Method

The multithresh function of the Matlab toolbox was conducted on the same images and number of thresholds as the other search methods. The capabilities of solving the optimal solution between a local search and a global search will be discussed here. This is the reason we focused on the global search, that is, the proposed algorithm. Table 2 shows the between-class variances and threshold values of the “mountain” image. These values were the best outcomes of 50 runs produced by the multithresh function in the Matlab R2013a toolbox and by the proposed algorithm. The terminated condition of the multithresh function was set by “MaxFunEvals” = 500000. That is the multithresh function performs more function calls than that of the algorithm. It can be seen from columns 3 and 5 that all the BCVs produced by the algorithm are better than the BCVs produced by the multithresh function; the difference of the BCVs is shown in column 7. The differences in the thresholds from the two algorithms, shown in column 8, tended to be large if the number of thresholds increased.


Image
(1)

(2)
Produced by multithreshProduced by the O(0.0)R-DE algorithm Objdiff
Threshdiff
Between-class variance
(3)
Thresholds
(4)
Between-class variance
(5)
Thresholds
(6)

Mountain 22372.88660, 1272372.92361, 1280.0372
32495.85232, 76, 1302496.11333, 77, 1310.2613
42551.77832, 72, 109, 1452551.95533, 73, 109, 1470.1774
52580.15431, 68, 98, 124, 1582580.33632, 69, 99, 125, 1590.1825
62588.26435, 75, 98, 118, 152, 1752596.95624, 46, 74, 101, 126, 1608.692122
72598.80033, 70, 98, 118, 141, 166, 2072608.80724, 46, 73, 98, 119, 145, 17510.007153
82605.78531, 68, 91, 105, 121, 140, 163, 1922616.29424, 46, 73, 97, 115, 135, 160, 19110.50970
92619.51227, 52, 75, 95, 111, 129, 148, 168, 1972622.31420, 37, 54, 76, 98, 116, 136, 160, 1912.802114
102620.39223, 46, 73, 97, 116, 135, 157, 175, 204, 2322627.19420, 36, 53, 74, 93, 106, 121, 140, 163, 1946.802258
112625.27523, 45, 72, 93, 105, 119, 137, 156, 175, 204, 2282630.49620, 36, 53, 74, 93, 105, 118, 134, 152, 172, 2015.221199
122629.64122, 39, 58, 78, 95, 109, 123, 139, 156, 177, 207, 2472633.18918, 31, 45, 59, 76, 93, 105, 118, 134, 152, 172, 2013.548246
132631.37220, 38, 54, 74, 94, 107, 121, 139, 157, 173, 193, 224, 2482635.29018, 31, 45, 59, 76, 92, 103, 115, 129, 144, 161, 179, 2073.918283
142633.86519, 36, 53, 74, 91, 103, 115, 129, 144, 160, 174, 190, 217, 2452637.08817, 29, 42, 56, 72, 86, 96, 106, 117, 130, 145, 161, 179, 2073.223307
152635.19019, 33, 50, 69, 85, 96, 107, 121, 137, 152, 167, 178, 190, 212, 2402638.44917, 28, 39, 50, 61, 75, 88, 97, 107, 118, 131, 146, 162, 179, 2073.259351
162636.35716, 30, 45, 59, 77, 93, 105, 118, 133, 148, 162, 176, 192, 209, 230, 2442639.61617, 27, 38, 49, 60, 74, 86, 95, 104, 113, 123, 135, 149, 164, 181, 2093.259415


No.
maxGen.
FODPSODPSOPSOABCRank-DEDEO(rand)R-DEO(0.9)R-DEO(0.8)R-DEO(0.7)R-DEO(0.6)R-DEO(0.5)R-DEO(0.4)R-DEO(0.3)R-DEO(0.2)R-DEO(0.1)R-DEO(0.0)R-DE


18.33715.71313.21813.20210.53814.71310.1176.3946.9037.6368.2089.1479.2619.90110.70911.63120.850
Rank1615131291481234567101117


35.20036.21027.47933.21019.48829.04918.95810.49212.29613.58714.80716.96917.10718.10019.54621.74944.192
Rank1516121491381234567101117


45.39158.68349.59663.25131.06048.13029.59514.73318.52620.88522.81526.63226.45628.05830.17533.49972.100
Rank1215141610138123465791117


55.66481.87787.441108.13144.15769.08841.28319.50824.52428.09730.96336.93536.74838.64741.45545.631100.693
Rank1214151710138123465791116


NA(2)100.664141.937157.32861.93599.70056.40524.62332.68738.16742.60851.00350.28152.08955.72961.748138.716
Rank1713151611129123465781014


NA(1)NA(1)192.267236.92886.938142.09675.34029.76341.69149.40856.19367.61967.06369.69674.38983.326184.371
Rank1716141511129123465781013


NA(7)NA(6)NA(2)NA(1)117.092198.986100.94433.96751.57362.26374.52391.83689.66695.198102.552115.583244.880
Rank1716151411128123465791013


NA(11)NA(13)NA(12)NA(3)151.004264.253125.29941.22863.74279.43290.201113.530110.416114.397122.555137.538299.492
Rank1716151411129123465781013


NA(11)NA(16)NA(16)NA(7)NA(1)321.373147.770NA(3)73.56491.121105.020132.968128.999132.691141.825157.997356.546
Rank1716151412108131236457911


NA(16)NA(17)NA(19)NA(9)NA(1)405.090185.020NA(3)NA(2)NA(2)127.135162.822157.184160.123175.152198.522434.877
Rank1716151412861310101423579


NA(18)NA(20)NA(20)NA(9)278.743535.542229.965NA(4)NA(5)135.266160.047205.266197.386203.814222.094251.535574.104
Rank1716151412861311101423579


NA(20)NA(19)NA(20)NA(14)NA(3)NA(3)275.860NA(12)NA(5)NA(1)NA(1)NA(1)NA(1)261.522278.082316.468726.521
Rank1716151412921311106661345


NA(20)NA(20)NA(20)NA(14)NA(4)NA(4)330.194NA(11)NA(8)NA(4)NA(1)NA(2)296.414NA(1)331.626385.951889.711
Rank1716151412911311107865234


NA(20)NA(20)NA(20)NA(19)NA(13)NA(5)399.228NA(11)NA(10)NA(8)NA(6)363.506362.665383.788417.958481.8301086.001
Rank1716151413811211109765234


NA(20)NA(20)NA(20)NA(18)NA(10)NA(8)NA(4)NA(18)NA(11)NA(9)NA(5)NA(1)NA(2)447.570491.772552.8561374.438
Rank1716151412941311108675123

Avg for
to 16
,
NA( ) 
5,
NA(146),
38.648
6,
NA(152),
58.629
7,
NA(149),
85.323
7,
NA(94),
102.008
9,
NA(32),
88.995
12,
NA(20),
193.456
15,
NA(4),
144.713
9,
NA(62),
22.589
10,
NA(41),
36.167
10,
NA(24),
52.586
12,
NA(13),
66.593
12,
NA(4),
106.519
12,
NA(3),
119.204
13,
NA(1),
143.971
16,
NA(0),
167.708
16,
NA(0),
190.391
16,
NA(0),
436.499
Rank1716151412941311108765123


No Multi-
thresh
FODPSODPSOPSOABCRank-DEDEO(rand)R-DEO(0.9)R-DEO(0.8)R-DEO(0.7)R-DEO(0.6)R-DEO(0.5)R-DEO(0.4)R-DEO(0.3)R-DEO(0.2)R-DEO(0.1)R-DEO(0.0)R-DE

2SRHM00.9771111110.999111111111
Rank181711111116111111111

3SRHM0.0000.6350.9720.9910.9790.9981.0000.9970.9860.9930.9990.9970.9980.9991.0001.0001.0001.000
Rank181716131581101412610861111

4SRHM0.0000.3790.7420.9340.8330.9870.9950.9860.8970.9450.9720.9710.9860.9930.9920.9910.9980.997
Rank181716131573814121011845612

5SRHM0.0000.1850.3910.7670.7060.9360.9770.9600.7820.8780.8740.9440.9500.9590.9680.9600.9851.000
Rank181716141510351311129874521

6SRHM0.0000.0000.1870.4330.4530.8630.9680.9000.6010.7060.8260.8780.9340.9220.9440.9350.9700.999
Rank181716151410381312119674521

7SRHM0.0000.0000.0000.1530.1640.6960.8840.8350.3660.5610.6750.7410.8400.8510.8830.9140.9490.998
Rank181716151410481312119765321

8SRHM0.0000.0000.0000.0000.0000.3000.4580.5300.1050.2560.3510.5020.5920.6280.7240.7570.8380.972
Rank181716141411971312108654321

9SRHM0.0000.0000.0000.0000.0000.4950.6950.6810.0830.2740.3720.5480.7210.7250.7690.8150.8520.999
Rank181716141410781312119654321

10SRHM0.0000.0000.0000.0000.0000.0000.3810.3750.0000.0730.2180.3110.4090.3700.4600.5780.6860.998
Rank181716141412671311109584321

11SRHM0.0000.0000.0000.0000.0000.0000.2710.2670.0000.0000.0000.1440.4070.3160.4240.5840.7040.999
Rank181716141412781310109564321

12SRHM0.0000.0000.0000.0000.0000.0900.2700.4230.0000.0000.0890.1770.4000.4070.5010.6410.8101.000
Rank181716141412851311109764321

13SRHM0.0000.0000.0000.0000.0000.0000.0000.1510.0000.0000.0000.0000.0000.0000.2540.2670.3810.974
Rank181716141412651310106664321

14SRHM0.0000.0000.0000.0000.0000.0000.0000.1020.0000.0000.0000.0000.0000.1100.0000.2530.4940.993
Rank181716141412741310107765321

15SRHM0.0000.0000.0000.0000.0000.0000.0000.0900.0000.0000.0000.0000.0950.1170.1490.2880.4661.000
Rank181716141412841310108765321

16SRHM0.0000.0000.0000.0000.0000.0000.0000.0000.0000.0000.0000.0000.0000.0000.1100.1920.2880.977
Rank181716141412641310106665321

Avg. for
to 16
,  
,  
SRHM
<2,
<2,
0.000
3,
5,
0.376
4,
6,
0.443
5,
7,
0.454
5,
7,
0.464
7,
9,
0.665
9,
12,
0.554
9,
15,
0.304
6,
9,
0.263
7,
10,
0.313
7,
10,
0.530
9,
12,
0.420
9,
12,
0.654
9,
12,
0.625
9,
13,
0.619
12,
16,
0.498
12,
16,
0.656
16,
16,
0.994
Rank181716151412841311109675321

Figure 2 shows the graph of the TVD of all the images and thresholds. These results are in the same pattern of the results of the “mountain” image in Table 2. That means the ability to search for the optimal solution of the proposed global search algorithm is higher than that of the multithresh function, especially when the number of thresholds is large. This goes to illustrate the difficulty of the problem. The problem with this kind is that it can be multimodal [33] or can be a nearly flat top surface [34]. The multithresh function solves the problem by performing the Nelder-Mead Simplex method [35], which is a local search method that cannot guarantee an optimal solution. Thus, its solutions are inferior to the solution produced by the algorithm using a global search.

5.2.3. Convergence Rate Comparison

The number of generations (NG) is a measure used for the convergence rate comparisons. If the target value, VTR, is achieved in a lesser number of generations (NG), it means a faster convergence rate for the algorithm. Table 3 shows the average of () for each specific number of thresholds. The results of each algorithm are represented in the corresponding column’s name. In each column, the cell containing starts from the row associated with until the row associated with . The cells associated with to the row associated with are filled by . The second last row of the table is filled by the triple:

The algorithm with the highest , that is, the lowest number of unsuccessful subproblems and the lowest average of generation is the winner. The ranking of the algorithms depends on the ordering of (, , ) and (, , ) as follows.First, rank on and . Since both and are numeric, the higher value has the higher rank.Second, rank on and b2. If is 16, then must be NA(0). If is less than 16, then must be NA (number of unsuccessful subproblems) and has the same characteristics as . Perform the order of the two numeric values in reverse; the lower value has the higher rank.Third, rank on c1 and . They are numeric but the lower is better; perform the order of the two numeric values in reverse. The lower value has the higher rank.When the ordering is finished, assign the numeric value of “1” to the object having the highest rank, assign the numeric value of “2” to the first runner up, and so on. These values are represented in the last row of the table.

If the row having must be ranked, it can be done in the same manner as above with some minor modifications. If is less than , the values of the triple pair will be , , . If is greater than , the values of the triple pair will be (, , ). Thus the ranking can now be performed.

From the ranking results, see the second last row of Table 3; the convergence rate can be ranked from best to worst in the following order: , , , , , , , , DE, , , , , ABC, PSO, DPSO, FODPSO.

As can be seen from Table 3, the DE algorithm cannot complete the task when and the algorithm cannot complete the task when . Thus, cannot compete with DE on searching for global multilevel thresholding.

In order for to outperform DE then must be in the range of or set to .

5.2.4. Stability Analysis

The harmonic mean of the success rate () for each specific number of thresholds was computed and is presented in Table 4. The results of each algorithm are represented in the corresponding column’s name. The second row from the bottom shows the harmonic mean of the success rate of each algorithm for all threshold levels.

In each column, the cells containing start from the row associated with to the row associated with . The cells from the row associated with to the row associated with are filled by . The cells from the row associated with to the row associated with are the cells that have ; these cells will be excluded from the comparison. The second last row of the table is filled with the triple:

The algorithm with the highest , the highest , and the highest average success rate is the winner. The ranking of the algorithms depends on the ordering of (a1, , ) and (, b2, ) as follows.First, rank on and a2.Second, rank on and .Third, rank on and .

Because they are numeric the higher value has the higher rank. When the ordering is finished, the numeric value of “1” is assigned to the object having the highest rank, the numeric value of “2” is assigned to the first runner up, and so on.

If the row having must be ranked, it can be done in the same manner as above with some minor modifications. If is less than or equal to , the values of the triple pair will be (, , ). If , then the values of the triple pair will be (, , ). If is greater than , the values of the triple pair will be (, , ). Thus, the ranking can now be performed.

From the ranking results, see Table 4, the success rate can be ranked from best to worst in the following order: , , , , , , , DE, , , , , , ABC, PSO, DPSO, FODPSO, multithresh.

As can be seen from Table 4, the DE algorithm has an until and the algorithm has an until . This result confirms that cannot compete with DE on searching for global multilevel thresholding. If the correct is selected, the proposed algorithm can work very well. For , has a higher rank than DE. The multithresh function cannot compete with any of the other algorithms. It can also be seen that the proposed algorithm has the best stability because its is greater than 0.5 when to 16.

5.2.5. Reliability Comparison

The threshold value distortion a.k.a. for each specific threshold is computed, shown in Table 5 and depicted in Figure 2. The results of each algorithm are illustrated in the corresponding column’s name. The second last row of Table 5 shows the slope or the approximated growth rate, , of the of each algorithm for all threshold levels. The is the slope of the robust linear regression computed by the Matlab function “robustfit.” The lower slope exhibits the better reliability. The of each algorithm is sorted in descending order. From the results, the reliability can be ranked from best to worst in the following order: , , , , , , , DE, , ABC, , , , , DPSO, FODPSO, PSO, multithresh.


NoMulti-
thresh
FODPSODPSOPSOABCRank-DEDEO(rand)R-DEO(0.9)R-DEO(0.8)R-DEO(0.7)R-DEO(0.6)R-DEO(0.5)R-DEO(0.4)R-DEO(0.3)R-DEO(0.2)R-DEO(0.1)R-DEO(0.0)R-DE

2TVD74.1532.2170.0000.0000.0000.0000.0000.0000.0500.0000.0000.0000.0000.0000.0000.0000.0000.000
Rank181711111116111111111

3TVD163.33341.7532.9687.4241.5100.1500.0000.2701.0040.5190.0750.2460.1710.0750.0000.0000.0000.000
Rank181715161481111312610961111

4TVD257.08398.84834.77036.8918.7167.3401.4282.18425.49913.6097.3187.3607.3984.3031.6720.7280.1300.257
Rank181715161294614138101175312

5TVD516.582148.34497.21662.31921.5655.3731.8643.24120.44110.06410.4224.5843.9043.2892.4413.3851.1950.000
Rank181716151410351311129864721

6TVD534.226219.437187.620166.77545.72819.5362.5287.76189.93843.66630.92313.0106.5246.0234.1366.1292.4210.050
Rank181716151310381412119754621

7TVD599.250265.029242.194285.86266.25958.87727.97635.481125.04075.01149.85144.61028.03929.84126.07517.9504.7760.150
Rank181615171211581413109674321

8TVD475.458382.076380.124309.63572.763120.73490.28789.406218.266143.225130.89899.99176.35382.88657.25157.66526.8222.103
Rank181716155119814131210673421

9TVD862.458394.744375.229410.710113.89282.09944.40746.539250.470154.66296.41768.19744.22335.33326.62723.40612.7570.780
Rank181615171210781413119654321

10TVD847.703458.536445.765498.328117.66484.54143.99148.474249.147136.93593.93572.28843.88344.11036.70027.97820.2130.164
Rank181615171210681413119574321

11TVD977.976536.258528.329531.211137.94187.26744.94444.973296.513152.195104.09275.11544.46147.56434.94426.23118.7820.083
Rank181715161210671413119584321

12TVD1070.300592.750589.931605.280157.169174.580109.138101.282388.491258.312196.098150.932101.11282.36579.96651.28123.4290.000
Rank181615171011871413129654321

13TVD1142.808567.442579.495711.382183.451204.665147.251123.438466.508299.040216.656178.394114.244114.49196.10481.07652.5781.975
Rank181516171011871413129564321

14TVD1148.641632.482660.908770.319205.714218.408141.431116.716524.783325.936241.997177.121113.426104.07388.59365.90839.6470.564
Rank181516171011871413129654321

15TVD1245.529707.835722.126816.158256.477307.873219.556182.464605.623428.370343.439261.522174.700166.309138.710100.29662.9400.000
Rank181516179118714131210654321

16TVD1182.989768.714835.747828.004249.042279.753211.614195.676605.790416.711311.314251.408174.118167.316133.922113.77676.6612.539
Rank181517169118714131210654321

Avg. for

to 16
TVD739.899387.764378.828402.687109.193110.08072.42866.527257.838163.884122.22993.65262.17059.19948.47638.38722.8230.578
Growth rate ( )86.8655.2561.1367.9819.2521.7615.6113.4848.4332.2523.9118.9312.5211.869.997.694.940.09
Rank181516171011871413129654321


Image Between-class variance (VTR)Thresholds

Starfish22546.88585, 157
32779.92568, 119, 177
42865.70760, 101, 138, 187
52912.85952, 86, 117, 150, 194
62941.72847, 77, 105, 132, 162, 201
72960.15844, 71, 95, 118, 142, 170, 206
82972.35643, 68, 90, 110, 131, 153, 180, 212
92981.13838, 58, 78, 97, 116, 136, 157, 183, 214
102988.20637, 56, 75, 93, 110, 128, 146, 167, 192, 219
112993.34835, 53, 71, 88, 103, 119, 135, 152, 172, 196, 221
122997.35234, 51, 68, 84, 98, 112, 127, 142, 158, 177, 200, 223
133000.48033, 48, 64, 79, 93, 106, 119, 133, 147, 162, 181, 203, 225
143003.07632, 47, 62, 76, 89, 101, 114, 127, 140, 154, 169, 187, 207, 227
153005.23530, 43, 56, 70, 83, 95, 107, 119, 131, 143, 156, 171, 189, 209, 228
163007.06030, 42, 55, 68, 80, 92, 103, 114, 126, 138, 150, 163, 178, 195, 213, 230

Mountain22372.92361, 128
32496.11333, 77, 131
42551.95533, 73, 109, 147
52580.33632, 69, 99, 125, 159
62596.95624, 46, 74, 101, 126, 160
72608.80724, 46, 73, 98, 119, 145, 175
82616.29424, 46, 73, 97, 115, 135, 160, 191
92622.31420, 37, 54, 76, 98, 116, 136, 160, 191
102627.19420, 36, 53, 74, 93, 106, 121, 140, 163, 194
112630.49620, 36, 53, 74, 93, 105, 118, 134, 152, 172, 201
122633.18918, 31, 45, 59, 76, 93, 105, 118, 134, 152, 172, 201
132635.29018, 31, 45, 59, 76, 92, 103, 115, 129, 144, 161, 179, 207
142637.08817, 29, 42, 56, 72, 86, 96, 106, 117, 130, 145, 161, 179, 207
152638.44917, 28, 39, 50, 61, 75, 88, 97, 107, 118, 131, 146, 162, 179, 207
162639.61617, 27, 38, 49, 60, 74, 86, 95, 104, 113, 123, 135, 149, 164, 181, 209

Cactus21816.44873, 151
31970.11264, 106, 173
42042.27555, 87, 125, 187
52080.88449, 76, 102, 138, 196
62104.14746, 70, 93, 119, 157, 208
72119.67044, 65, 85, 105, 131, 168, 215
82129.35842, 60, 77, 94, 113, 138, 174, 218
92136.16241, 58, 74, 89, 105, 125, 152, 186, 224
102141.57940, 56, 71, 85, 99, 115, 135, 161, 193, 228
112145.39739, 53, 66, 79, 91, 104, 119, 139, 165, 196, 229
122148.28238, 51, 64, 76, 88, 100, 114, 131, 152, 176, 204, 233
132150.74037, 49, 61, 72, 83, 94, 105, 118, 135, 155, 178, 205, 233
142152.62636, 47, 58, 68, 78, 88, 98, 109, 122, 138, 158, 181, 207, 234
152154.16236, 46, 56, 66, 76, 85, 94, 104, 115, 128, 144, 164, 187, 212, 237
162155.47136, 46, 56, 66, 75, 84, 93, 102, 112, 124, 138, 155, 174, 195, 217, 239

Butterfly23873.22284, 155
33990.85581, 144, 199
44051.35777, 121, 167, 207
54092.92960, 89, 129, 172, 209
64119.44859, 87, 122, 161, 193, 221
74135.93753, 74, 98, 128, 165, 195, 222
84148.55653, 73, 96, 123, 156, 183, 203, 228
94156.52852, 72, 94, 118, 144, 170, 190, 207, 231
104163.79448, 63, 80, 99, 121, 147, 172, 191, 208, 231
114168.48947, 62, 79, 98, 118, 141, 164, 183, 198, 213, 234
124172.51746, 59, 73, 89, 104, 122, 144, 167, 185, 199, 214, 235
134175.48746, 59, 72, 87, 102, 118, 137, 157, 175, 189, 202, 216, 236
144177.89344, 55, 66, 79, 93, 106, 121, 141, 161, 178, 191, 203, 217, 237
154179.90844, 55, 66, 78, 92, 105, 119, 137, 156, 173, 186, 197, 208, 221, 239
164181.55942, 52, 61, 71, 83, 95, 107, 121, 139, 157, 173, 186, 197, 208, 221, 239

Circus21651.257118, 172
31760.512105, 150, 187
41817.48793, 132, 165, 195
51850.24387, 122, 152, 177, 203
61870.08382, 113, 141, 164, 185, 208
71883.96677, 104, 129, 151, 171, 190, 212
81893.45073, 98, 122, 143, 161, 178, 195, 216
91900.59270, 92, 114, 134, 152, 168, 183, 199, 219
101905.99268, 89, 109, 128, 145, 160, 174, 188, 203, 222
111909.88766, 86, 105, 123, 139, 153, 166, 179, 192, 206, 225
121913.07963, 81, 98, 114, 130, 145, 158, 170, 182, 194, 208, 226
131915.67662, 79, 95, 111, 126, 140, 152, 164, 175, 186, 197, 210, 228
141917.75661, 78, 94, 109, 123, 136, 148, 159, 170, 180, 190, 201, 214, 231
151919.52459, 74, 88, 102, 115, 128, 140, 151, 161, 171, 181, 191, 202, 214, 231
161920.95858, 73, 87, 100, 113, 126, 138, 149, 159, 169, 178, 187, 196, 206, 218, 234

Snow25261.70580, 169
35624.28971, 139, 207
45729.11650, 92, 144, 208
55785.13849, 91, 140, 192, 231
65819.33345, 81, 111, 148, 194, 232
75835.77043, 76, 101, 127, 159, 196, 232
85850.19030, 55, 83, 107, 133, 163, 197, 233
95862.43730, 55, 82, 106, 129, 157, 185, 211, 237
105870.28429, 52, 75, 94, 111, 132, 159, 186, 212, 237
115875.81729, 52, 75, 94, 111, 132, 158, 183, 206, 227, 244
125880.33529, 52, 74, 93, 109, 127, 149, 169, 188, 209, 228, 244
135884.51323, 39, 57, 76, 94, 110, 128, 150, 170, 188, 209, 228, 244
145887.35522, 37, 54, 70, 84, 98, 112, 129, 151, 170, 188, 209, 228, 244
155889.95321, 36, 53, 69, 83, 97, 110, 124, 141, 159, 175, 192, 211, 229, 245
165891.99821, 36, 53, 69, 83, 97, 110, 124, 141, 159, 174, 189, 207, 222, 236, 248

Palace22623.44099, 165
32791.48884, 132, 186
42860.9870, 103, 143, 191
52908.16569, 101, 138, 177, 218
62934.33064, 89, 117, 147, 181, 220
72953.74554, 75, 99, 126, 153, 183, 220
82966.25050, 69, 89, 111, 134, 158, 185, 221
92974.71947, 65, 81, 100, 120, 141, 163, 188, 222
102981.87547, 64, 80, 98, 117, 137, 157, 178, 199, 226
112986.89845, 61, 75, 90, 106, 123, 141, 159, 179, 200, 227
122990.57943, 58, 69, 82, 96, 111, 126, 143, 160, 180, 201, 227
132993.80943, 58, 69, 81, 95, 110, 125, 141, 157, 173, 190, 208, 231
142996.11243, 57, 68, 80, 94, 108, 123, 138, 153, 167, 182, 199, 218, 239
152998.21342, 56, 66, 77, 88, 100, 113, 126, 140, 154, 167, 182, 199, 218, 239
162999.91842, 55, 65, 75, 86, 98, 110, 123, 136, 149, 162, 176, 191, 205, 222, 241

Flower21489.28161, 130
31627.89739, 77, 141
41685.95636, 67, 105, 160
51715.22028, 49, 75, 111, 164
61736.42327, 47, 71, 102, 143, 192
71752.51226, 43, 61, 83, 111, 151, 199
81761.96825, 42, 58, 77, 99, 126, 161, 204
91768.35424, 40, 54, 70, 88, 109, 135, 167, 207
101772.90323, 37, 48, 60, 75, 92, 112, 138, 169, 208
111776.47023, 36, 47, 58, 72, 87, 104, 124, 149, 177, 211
121779.10622, 34, 44, 54, 65, 78, 92, 108, 128, 152, 179, 212
131781.25120, 30, 39, 48, 58, 70, 83, 96, 112, 131, 154, 180, 213
141783.04919, 29, 38, 47, 56, 66, 78, 90, 104, 120, 139, 161, 185, 215
151784.47819, 29, 38, 46, 54, 63, 74, 85, 97, 111, 128, 147, 168, 190, 218
161785.64119, 28, 37, 45, 53, 62, 72, 83, 94, 106, 120, 136, 155, 175, 196, 222

Wherry23313.161108, 189
33543.272102, 161, 218
43599.92483, 121, 163, 218
53634.70881, 118, 152, 184, 224
63656.04872, 103, 130, 156, 186, 225
73668.31368, 94, 120, 139, 161, 189, 226
83678.21660, 83, 110, 132, 152, 175, 198, 230
93686.00156, 77, 100, 122, 138, 156, 179, 201, 231
103691.73056, 76, 98, 120, 136, 153, 174, 194, 219, 243
113696.41655, 74, 94, 114, 130, 142, 158, 178, 197, 222, 245
123699.86654, 72, 91, 110, 126, 138, 151, 168, 185, 202, 225, 246
133702.61952, 68, 83, 100, 117, 130, 140, 153, 169, 185, 202, 225, 246
143705.03352, 68, 83, 100, 117, 130, 140, 152, 167, 182, 197, 215, 235, 249
153706.93751, 66, 79, 94, 110, 123, 133, 142, 154, 169, 184, 199, 216, 235, 249
163708.48449, 63, 75, 89, 104, 118, 129, 138, 147, 159, 173, 186, 200, 217, 235, 249

Waterfall24512.80188, 170
34646.13772, 115, 182
44711.01967, 103, 150, 204
54752.26758, 87, 119, 164, 212
64777.06353, 78, 104, 134, 176, 217
74793.51048, 70, 92, 116, 147, 186, 221
84805.75646, 66, 86, 107, 131, 163, 199, 226
94814.09743, 61, 79, 97, 117, 141, 173, 205, 228
104820.72440, 57, 73, 90, 108, 128, 152, 182, 210, 230
114825.73938, 54, 69, 84, 100, 117, 137, 162, 191, 215, 232
124829.68937, 53, 67, 81, 96, 111, 128, 148, 173, 198, 218, 233
134832.82635, 50, 63, 76, 89, 103, 117, 133, 153, 177, 201, 220, 234
144835.37132, 46, 58, 70, 82, 95, 108, 122, 138, 158, 182, 204, 221, 234
154837.53732, 46, 57, 68, 80, 92, 104, 117, 131, 148, 169, 191, 210, 224, 236
164839.22630, 43, 54, 64, 74, 85, 96, 108, 120, 134, 151, 172, 193, 211, 225, 236

Bird2901.45071, 122
3975.23064, 111, 140
41027.50961, 104, 131, 164
51051.48254, 93, 119, 138, 169
61067.99247, 82, 108, 127, 142, 172
71077.30440, 70, 94, 113, 129, 143, 173
81086.00539, 69, 93, 112, 128, 141, 159, 192
91091.34137, 65, 88, 105, 119, 131, 142, 160, 193
101095.35537, 64, 86, 103, 117, 129, 139, 149, 167, 200
111098.47533, 56, 77, 93, 107, 119, 130, 140, 150, 169, 202
121100.74933, 56, 77, 93, 107, 119, 129, 138, 146, 158, 178, 209
131102.63931, 52, 71, 87, 100, 111, 121, 130, 139, 147, 159, 179, 210
141104.13229, 48, 66, 82, 95, 107, 118, 127, 134, 141, 149, 161, 181, 211
151105.44628, 45, 62, 77, 90, 101, 111, 120, 128, 135, 142, 150, 162, 182, 212
161106.50028, 45, 62, 77, 90, 101, 111, 120, 128, 135, 141, 148, 157, 171, 191, 219

Police23647.35374, 150
33844.31470, 135, 192
43966.22563, 112, 158, 209
54013.87561, 104, 140, 174, 214
64047.19832, 67, 106, 141, 175, 214
74067.99632, 67, 104, 133, 161, 186, 219
84084.93329, 52, 78, 106, 134, 162, 187, 219
94094.70529, 52, 78, 103, 125, 147, 169, 190, 220
104101.70229, 52, 78, 102, 123, 143, 165, 184, 203, 228
114108.01828, 49, 71, 90, 107, 126, 146, 166, 185, 204, 229
124112.30428, 49, 71, 89, 105, 122, 139, 157, 174, 189, 207, 231
134115.16528, 46, 62, 78, 92, 106, 123, 140, 158, 174, 189, 207, 231
144117.92628, 46, 62, 78, 91, 105, 120, 135, 151, 166, 180, 193, 210, 232
154120.04528, 46, 62, 78, 91, 103, 116, 129, 143, 158, 172, 185, 197, 214, 235
164121.86128, 46, 62, 78, 91, 103, 116, 128, 142, 156, 170, 182, 193, 206, 223, 240

Ostrich21073.45275, 135
31139.26069, 101, 149
41178.65065, 92, 125, 176
51203.74956, 78, 100, 131, 179
61218.64347, 65, 85, 103, 133, 181
71228.92547, 64, 83, 100, 122, 152, 192
81236.02345, 59, 75, 90, 104, 125, 155, 194
91240.75640, 52, 65, 80, 94, 107, 128, 157, 195
101244.90940, 52, 64, 78, 91, 103, 119, 141, 168, 201
111247.87940, 51, 62, 75, 87, 97, 108, 125, 148, 174, 205
121250.31337, 48, 57, 68, 80, 91, 101, 112, 128, 150, 175, 206
131252.29831, 44, 53, 63, 75, 86, 95, 105, 117, 134, 154, 178, 207
141253.95629, 42, 50, 58, 68, 79, 89, 98, 108, 120, 137, 157, 181, 209
151255.36629, 42, 50, 58, 67, 77, 86, 94, 102, 111, 124, 141, 160, 183, 210
161256.49028, 41, 49, 57, 66, 76, 85, 93, 101, 110, 122, 137, 155, 174, 196, 219

Viaduct27920.45877, 180
38117.99154, 109, 193
48203.80742, 84, 131, 203
58246.80635, 68, 103, 146, 210
68272.77531, 59, 88, 120, 160, 216
78287.71428, 53, 77, 103, 132, 169, 220
88298.32227, 51, 75, 100, 128, 164, 212, 246
98308.24024, 45, 66, 88, 112, 139, 172, 216, 247
108315.13322, 41, 60, 79, 99, 121, 146, 178, 219, 247
118320.03220, 37, 54, 71, 89, 108, 128, 152, 183, 221, 248
128323.79920, 36, 52, 68, 84, 101, 119, 139, 162, 190, 224, 248
138326.79318, 33, 48, 62, 77, 92, 108, 125, 144, 167, 195, 226, 248
148329.11917, 31, 44, 57, 70, 84, 98, 113, 129, 148, 170, 197, 227, 248
158330.98317, 31, 44, 57, 70, 84, 98, 113, 129, 147, 169, 195, 224, 243, 251
168332.74416, 29, 42, 54, 66, 78, 91, 104, 118, 133, 151, 172, 196, 224, 243, 251

Fish23593.38964, 148
33870.45644, 104, 177
43972.73134, 81, 127, 188
54024.88527, 63, 101, 139, 194
64054.83624, 56, 90, 123, 156, 205
74075.23622, 49, 78, 107, 135, 168, 213
84088.30020, 44, 68, 93, 118, 142, 173, 216
94097.10119, 40, 62, 85, 107, 128, 149, 178, 218
104103.19418, 38, 58, 78, 98, 118, 137, 158, 185, 222
114107.95416, 34, 51, 69, 88, 107, 125, 143, 163, 190, 224
124111.67815, 31, 47, 64, 82, 100, 117, 133, 149, 169, 195, 227
134114.78314, 28, 43, 58, 74, 90, 106, 121, 136, 152, 172, 198, 228
144116.95414, 28, 43, 58, 73, 88, 103, 117, 131, 145, 160, 179, 203, 231
154118.93113, 25, 38, 51, 64, 78, 92, 106, 120, 133, 147, 162, 181, 205, 232
164120.52213, 25, 37, 49, 62, 75, 89, 102, 115, 127, 139, 152, 168, 188, 211, 235

Houses22543.78856, 116
32627.23053, 105, 150
42663.69842, 69, 110, 152
52694.90239, 65, 96, 130, 158
62708.65539, 65, 95, 127, 150, 169
72720.26335, 55, 74, 98, 128, 151, 170
82726.67635, 55, 74, 98, 127, 148, 164, 184
92732.85332, 48, 65, 80, 101, 128, 148, 164, 184
102736.51030, 45, 60, 74, 87, 106, 129, 149, 164, 184
112739.56630, 45, 60, 73, 86, 105, 128, 145, 156, 168, 187
122742.14829, 42, 55, 68, 79, 94, 112, 130, 145, 156, 168, 187
132744.07128, 39, 51, 63, 74, 84, 98, 115, 131, 145, 156, 168, 187
142745.54228, 39, 51, 63, 74, 84, 98, 115, 131, 145, 155, 165, 176, 193
152746.81727, 37, 47, 58, 68, 77, 86, 100, 116, 131, 145, 155, 165, 176, 193
162747.99127, 37, 47, 57, 67, 76, 85, 98, 113, 127, 139, 147, 156, 165, 176, 193

Mushroom21988.32876, 145
32153.03765, 110, 174
42237.44159, 93, 135, 193
52277.42752, 78, 106, 145, 199
62301.62948, 71, 94, 122, 157, 205
72317.53846, 67, 87, 110, 138, 171, 213
82328.52644, 62, 79, 97, 118, 145, 177, 216
92335.81242, 58, 74, 90, 107, 127, 152, 181, 218
102340.98141, 56, 70, 84, 99, 116, 136, 159, 186, 220
112345.16039, 52, 65, 78, 92, 107, 124, 144, 166, 191, 223
122348.41338, 51, 63, 75, 87, 100, 115, 132, 152, 174, 199, 227
132350.98838, 50, 62, 74, 85, 97, 110, 125, 142, 160, 180, 203, 229
142353.11937, 48, 59, 69, 79, 89, 100, 113, 127, 144, 162, 181, 204, 230
152354.74836, 46, 56, 66, 75, 84, 94, 105, 117, 130, 146, 163, 182, 205, 230
162356.11336, 46, 56, 65, 74, 83, 92, 102, 113, 125, 139, 154, 169, 187, 208, 232

Snow mountain21912.61385, 149
32135.27479, 137, 197
42234.66970, 119, 154, 204
52288.79955, 96, 129, 160, 206
62317.22452, 90, 118, 142, 167, 209
72333.07850, 85, 111, 132, 153, 174, 212
82344.62945, 76, 100, 120, 139, 158, 177, 214
92352.95144, 74, 97, 116, 133, 150, 167, 187, 220
102359.17541, 68, 90, 108, 124, 140, 156, 172, 193, 225
112364.30438, 62, 84, 102, 117, 132, 146, 160, 175, 196, 227
122367.97134, 56, 78, 96, 111, 125, 139, 152, 165, 179, 199, 228
132371.20833, 53, 73, 90, 104, 117, 130, 143, 155, 167, 180, 200, 229
142373.56732, 52, 72, 89, 103, 115, 127, 139, 150, 161, 172, 185, 205, 232
152375.58631, 49, 68, 84, 98, 109, 120, 131, 142, 153, 164, 175, 188, 208, 233
162377.25526, 42, 59, 75, 89, 101, 111, 121, 132, 143, 154, 165, 176, 189, 209, 234

Snake21118.61587, 134
31231.32076, 114, 154
41286.55569, 101, 129, 166
51317.02763, 91, 115, 140, 175
61336.17259, 84, 105, 126, 149, 182
71348.93355, 78, 97, 115, 133, 155, 187
81357.66552, 73, 91, 107, 123, 140, 161, 192
91364.15950, 70, 87, 102, 116, 131, 148, 169, 198
101368.95547, 65, 81, 95, 108, 121, 135, 151, 172, 200
111372.62646, 63, 78, 91, 103, 115, 127, 140, 156, 176, 203
121375.51345, 61, 75, 88, 99, 110, 121, 133, 146, 162, 182, 208
131377.84743, 58, 72, 84, 95, 106, 116, 127, 138, 151, 166, 185, 211
141379.73642, 56, 69, 81, 92, 102, 112, 122, 132, 143, 155, 170, 189, 214
151381.28241, 54, 66, 77, 87, 97, 106, 115, 124, 134, 145, 157, 172, 191, 215
161382.60340, 52, 63, 74, 84, 93, 102, 111, 120, 129, 139, 150, 162, 177, 195, 219

Riosanpablo22667.02095, 160
32818.66075, 121, 177
42892.43968, 102, 143, 189
52931.65462, 89, 121, 158, 197
62957.01858, 82, 107, 138, 171, 204
72973.26953, 74, 95, 119, 147, 177, 207
82984.97250, 69, 87, 108, 133, 159, 185, 212
92993.35948, 66, 83, 101, 122, 145, 168, 191, 215
102999.61546, 63, 78, 93, 110, 130, 151, 173, 195, 217
113004.37445, 61, 75, 89, 104, 121, 140, 160, 180, 200, 220
123008.08244, 59, 72, 84, 97, 112, 129, 147, 166, 185, 203, 222
133011.10143, 57, 69, 81, 93, 107, 122, 138, 155, 172, 189, 206, 224
143013.46541, 54, 66, 77, 88, 100, 113, 128, 144, 160, 176, 192, 208, 225
153015.42340, 53, 64, 74, 84, 95, 107, 121, 135, 150, 165, 180, 195, 210, 226
163017.08139, 51, 62, 72, 82, 92, 103, 115, 128, 142, 156, 170, 184, 198, 212, 227

We can see from these results that has a higher approximated growth rate than DE. with and are still better than DE. produced the best result with a very flat slope and a very low -intercept. The multithresh function yielded a higher growth rate of solution distortion and a higher -intercept than the other algorithms. The higher growth rate of solution distortion means the quality of solution drops very fast if the number of thresholds increases. The higher -intercept means that the solution distortion at the lowest number of thresholds is high. Thus, the global optimization algorithm is required for solving the multilevel thresholding.

6. Conclusions

The differential evolution with onlooker ranking-based mutation operator algorithm was proposed and applied to the multilevel image thresholding problem. The objective of this proposed algorithm was to increase the ability for adjusting the balance of the exploitation and exploration abilities. Its concept is a combination of the ranking-difference evolution and onlooker selection of the ABC algorithm. The experiments compared the proposed algorithm with six existing algorithms: PSO, DPSO, FODPSO, ABC, DE, and on 20 real images of the Berkeley Segmentation Dataset and Benchmark and a satellite image. The stability analysis, convergence speed, and the reliability were measured. The results signified that the proposed algorithm is more efficient than the six tested algorithms. The onlooker ranking-based mutation operator is able to enhance the performance of the proposed algorithm. The not only obtained more stability analysis, but it also achieved faster convergence rates to reach the target BCV, if a proper value of is set.

For future work based on this paper, the proposed algorithm has one parameter to be set by a user; the mechanism to automatically adapt this parameter is not presented but is required.

Conflict of Interests

The authors declare that there is no conflict of interests regarding the publication of this paper.

Acknowledgment

This work was supported by the Higher Education Research Promotion and National Research University Project of Thailand, Office of the Higher Education Commission, through the Cluster of Research to Enhance the Quality of Basic Education.

References

  1. W. K. Pratt, Digital Image Processing, John Wiley & Sons, New York, NY, USA, 1978.
  2. J. S. Weszka, “A survey of threshold selection techniques,” Computer Graphics and Image Processing, vol. 7, no. 2, pp. 259–265, 1978. View at: Google Scholar
  3. K. S. Fu and J. K. Mui, “A survey on image segmentation,” Pattern Recognition, vol. 13, no. 1, pp. 3–16, 1981. View at: Google Scholar | MathSciNet
  4. P. K. Sahoo, S. Soltani, and A. K. C. Wong, “A survey of thresholding techniques,” Computer Vision, Graphics and Image Processing, vol. 41, no. 2, pp. 233–260, 1988. View at: Google Scholar
  5. N. R. Pal and S. K. Pal, “A review on image segmentation techniques,” Pattern Recognition, vol. 26, no. 9, pp. 1277–1294, 1993. View at: Publisher Site | Google Scholar
  6. A. T. Abak, U. Baris, and B. Sankur, “The performance evaluation of thresholding algorithms for optical character recognition,” in Proceedings of the 4th International Conference on Document Analysis and Recognition, pp. 697–700, Ulm, Germany, August 1997. View at: Google Scholar
  7. M. Sezgin and B. Sankur, “Survey over image thresholding techniques and quantitative performance evaluation,” Journal of Electronic Imaging, vol. 13, no. 1, pp. 146–168, 2004. View at: Publisher Site | Google Scholar
  8. S. U. Lee and S. Yoon Chung, “A comparative performance study of several global thresholding techniques for segmentation,” Computer Vision, Graphics and Image Processing, vol. 52, no. 2, pp. 171–190, 1990. View at: Google Scholar
  9. N. Otsu, “A threshold selection method from gray level histograms,” IEEE Transactions on Systems, Man and Cybernetics, vol. 9, no. 1, pp. 62–66, 1979. View at: Google Scholar
  10. J. Kennedy and R. Eberhart, “Particle swarm optimization,” in Proceedings of the IEEE International Conference on Neural Networks (ICNN ’95), vol. 4, pp. 1942–1948, Perth, Australia, December 1995. View at: Google Scholar
  11. R. Storn and K. Price, “Differential evolution-a simple and efficient heuristic for global optimization over continuous spaces,” Tech. Rep. TR-95-012, International Computer Sciences Institute, Berkeley, Calif, USA, 1995. View at: Google Scholar
  12. D. Karaboga, “An idea based on honey bee swarm for numerical optimization,” Tech. Rep. TR06, Erciyes University, Engineering Faculty, Computer Engineering Department, 2005. View at: Google Scholar
  13. M. S. Couceiro, R. P. Rocha, N. M. F. Ferreira, and J. A. T. Machado, “Introducing the fractional-order Darwinian PSO,” Signal Image and Video Processing, vol. 6, no. 3, pp. 343–350, 2012. View at: Publisher Site | Google Scholar
  14. R. V. Kulkarni and G. K. Venayagamoorthy, “Bio-inspired algorithms for autonomous deployment and localization of sensor nodes,” IEEE Transactions on Systems, Man and Cybernetics C, vol. 40, no. 6, pp. 663–675, 2010. View at: Publisher Site | Google Scholar
  15. B. Akay, “A study on particle swarm optimization and artificial bee colony algorithms for multilevel thresholding,” Applied Soft Computing Journal, vol. 3, no. 6, pp. 3066–3091, 2013. View at: Publisher Site | Google Scholar
  16. K. Hammouche, M. Diaf, and P. Siarry, “A comparative study of various meta-heuristic techniques applied to the multilevel thresholding problem,” Engineering Applications of Artificial Intelligence, vol. 23, no. 5, pp. 676–688, 2010. View at: Publisher Site | Google Scholar
  17. V. Osuna-Enciso, E. Cuevas, and H. Sossa, “A comparison of nature inspired algorithms for multi-threshold image segmentation,” Expert Systems with Applications, vol. 40, no. 4, pp. 1213–1219, 2013. View at: Google Scholar
  18. P. Ghamisia, M. S. Couceiro, F. Martins, and J. A. Benediktsson, “Multilevel image segmentation based on Fractional-Order Darwinian particle swarm optimization,” IEEE Transactions on Geoscience and Remote Sensing, vol. 52, no. 1, pp. 1–44, 2013. View at: Google Scholar
  19. W. Gong and Z. Cai, “Differential evolution with ranking-based mutation operators,” IEEE Transactions on Cybernetics, vol. 43, no. 6, pp. 2066–2081, 2013. View at: Google Scholar
  20. K. Price, R. Storn, and J. Lampinen, Differential Evolution: A Practical Approach to Global Optimization, Springer, Berlin, Germany, 2005. View at: MathSciNet
  21. R. Storn and K. Price, Home Page of Differential Evolution, International Computer Science Institute, Berkeley, Calif, USA, 2010.
  22. A. K. Qin and P. N. Suganthan, “Self-adaptive differential evolution algorithm for numerical optimization,” in Proceedings of the IEEE Congress on Evolutionary Computation (CEC '05), pp. 1785–1791, September 2005. View at: Google Scholar
  23. E. Mezura-Montes, J. Velázquez-Reyes, and C. A. Coello Coello, “A comparative study of differential evolution variants for global optimization,” in Proceedings of the 8th Annual Genetic and Evolutionary Computation Conference, pp. 485–492, July 2006. View at: Google Scholar
  24. A. K. Qin, V. L. Huang, and P. N. Suganthan, “Differential evolution algorithm with strategy adaptation for global numerical optimization,” IEEE Transactions on Evolutionary Computation, vol. 13, no. 2, pp. 398–417, 2009. View at: Publisher Site | Google Scholar
  25. S. Das, A. Abraham, and A. Konar, “Automatic clustering using an improved differential evolution algorithm,” IEEE Transactions on Systems, Man, and Cybernetics A, vol. 38, no. 1, pp. 218–237, 2008. View at: Publisher Site | Google Scholar
  26. J. Brest, S. Greiner, B. Bošković, M. Mernik, and V. Zumer, “Self-adapting control parameters in differential evolution: a comparative study on numerical benchmark problems,” IEEE Transactions on Evolutionary Computation, vol. 10, no. 6, pp. 646–657, 2006. View at: Publisher Site | Google Scholar
  27. N. Noman and H. Iba, “Accelerating differential evolution using an adaptive local search,” IEEE Transactions on Evolutionary Computation, vol. 12, no. 1, pp. 107–125, 2008. View at: Publisher Site | Google Scholar
  28. R. S. Rahnamayan, H. R. Tizhoosh, and M. M. A. Salama, “Opposition-based differential evolution,” IEEE Transactions on Evolutionary Computation, vol. 12, no. 1, pp. 64–79, 2008. View at: Publisher Site | Google Scholar
  29. D. Martin, C. Fowlkes, D. Tal, and J. Malik, “A database of human segmented natural images and its application to evaluating segmentation algorithms and measuring ecological statistics,” in Proceedings of the 8th International Conference on Computer Vision, vol. 2, pp. 416–423, July 2001. View at: Google Scholar
  30. P. Ghamisi, M. S. Couceiro, J. A. Benediktsson, and N. M. F. Ferreira, “An efficient method for segmentation of image based on fractional calculus and natural selection,” Expert Systems with Applications, vol. 39, pp. 12407–12417, 2012. View at: Google Scholar
  31. R. Gamperle, S. D. Muller, and A. Koumoutsakos, “A parameter study for differential evolution,” in Proceedings of the Advances in Intelligent Systems, Fuzzy Systems, Evolutionary Computation, vol. 10, pp. 293–298, 2002. View at: Google Scholar
  32. M. Saraswat, K. V. Arya, and H. Sharma, “Leukocyte segmentation in tissue images using differential evolution algorithm,” Swarm and Evolutionary Computation, vol. 11, pp. 46–54, 2013. View at: Google Scholar
  33. J. Kittler and J. Illingworth, “On threshold selection using clustering criteria,” IEEE Transactions on Systems, Man and Cybernetics, vol. 15, no. 5, pp. 652–655, 1985. View at: Google Scholar
  34. R. Guo and S. M. Pandit, “Automatic threshold selection based on histogram modes and a discriminant criterion,” Machine Vision and Applications, vol. 10, no. 5-6, pp. 331–338, 1998. View at: Google Scholar
  35. J. C. Lagarias, J. A. Reeds, M. H. Wright, and P. E. Wright, “Convergence properties of the Nelder-Mead simplex method in low dimensions,” SIAM Journal on Optimization, vol. 9, no. 1, pp. 112–147, 1998. View at: Google Scholar | MathSciNet

Copyright © 2014 Kanjana Charansiriphaisan et al. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

1163 Views | 647 Downloads | 8 Citations
 PDF  Download Citation  Citation
 Download other formatsMore
 Order printed copiesOrder

We are committed to sharing findings related to COVID-19 as quickly and safely as possible. Any author submitting a COVID-19 paper should notify us at help@hindawi.com to ensure their research is fast-tracked and made available on a preprint server as soon as possible. We will be providing unlimited waivers of publication charges for accepted articles related to COVID-19. Sign up here as a reviewer to help fast-track new submissions.