www.ietdl.org Published in IET Signal Processing Received on 8th April 2013 Revised on 4th July 2013 Accepted on 9th July 2013 doi: 10.1049/iet-spr.2013.0139
ISSN 1751-9675
Improved sub-band adaptive thresholding function for denoising of satellite image based on evolutionary algorithms Vivek Soni1, Ashish Kumar Bhandari1, Anil Kumar1, Girish Kumar Singh2,3 1
Indian Institute of Information Technology Design and Manufacturing, Jabalpur 482011, MP, India Department of Electrical Engineering, Indian Institute Technology Roorkee, Uttrakhand 247667, India 3 Present Address: Visiting Professor, Department of Electrical Engineering, University of Malaya, Malaysia E-mail:
[email protected] 2
Abstract: In this study, an improved method based on evolutionary algorithms for denoising of satellite images is proposed. In this approach, the stochastic global optimisation techniques such as Cuckoo Search (CS) algorithm, artificial bee colony (ABC), and particle swarm optimisation (PSO) technique and their different variants are exploited for learning the parameters of adaptive thresholding function required for optimum performance. It was found that the CS algorithm and ABC algorithm-based denoising approach give better performance in terms of edge preservation index or edge keeping index (EPI or EKI) peak signal-to-noise ratio (PSNR) and signal-to-noise ratio (SNR) as compared to PSO-based denoising approach. The proposed technique has been tested on satellite images. The quantitative (EPI, PSNR and SNR) and visual (denoised images) results show superiority of the proposed technique over conventional and state-of-the-art image denoising techniques.
1
Introduction
Satellite images are used in many applications such as geographical information system, astronomy and geoscience studies. Data sets collected by image sensors are generally contaminated by noise. Distinct types of noise like additive noise (Gaussian noise), multiplicative noise (Speckle noise) and artefacts in different imaging modalities degrade the image quality. Wrong instrumentation, problems with data acquisition process, and interfering natural phenomena all degrade the data of interest. Owing to such degradation, human interpretation as well as accuracy of the processing methods, in case of satellite imaging, is severely affected. Computer-aided analysis and quantitative measurements become difficult and unreliable because of poor image quality. Thus, denoising and enhancement of the images become necessary for many practical applications. Image denoising still remains a challenge for researchers because noise removal introduces artefacts and blurring of the image causing a very drastic reduction in information. The image denoising research can be broadly divided into two domains; spatial and transform domain [1, 2]. Among these two domains, in last two decades, lot of works has been done in wavelet transform (WT) domain. Wavelet thresholding denoising technique is very useful and important research field. Owing to inherent properties of wavelet coefficients like sparsity and decomposition [3], effective and simplified implementation of thresholding technique in wavelet domain have become easy. ‘Wavelet shrinkages’ 720 & The Institution of Engineering and Technology 2013
methodology has been proposed by Donoho et al. [4, 5] for classifying the wavelet coefficients of real-world noisy data, which have been further modified to increase signal-to-noise ratio (SNR). Intensive research [6–8] was carried out for improving the performance of thresholding, based on wavelet domain. There has been continuos focus on development and implementation of the thresholding function. The Bayes Shrink and Sure Shrink gives good performance [9], on denoising by wavelet shrinkage like soft, hard, garrote and semi-soft. Statistical approach like Bayesian approach for denoising the images has been proposed by researchers in [10–12]. Various noise models for distribution of noisy wavelet coefficients such as hidden Markov models [13], Gaussian [14], Fisher-Tippet [15] and Maxwell [16] were analysed. These methods are dependent on a specific noise model, and thus reduces their flexibility. Further, some researchers [17–20] have proposed a mixture of statistical models, which is more computationally complex. Rabbani [20] has proposed a mixture of Laplacian and Gaussian model for estimating the noise free wavelet coefficient, and a mixture of Gaussian and Rayleigh model for additive noise, but it is complex in computation. Joint bilateral filter in spatial domain and trivariate shrinkages filter in wavelet domain is proposed by Yu et al. [21]. Computational complexity has increased because of spatial operation. Further, improvement in perceptual quality of an image can also be achieved by proper shrinkages using an optimum threshold value determined by sub-band adaptive method based on WT, discrete cosine transform (DCT), IET Signal Process., 2013, Vol. 7, Iss. 8, pp. 720–730 doi: 10.1049/iet-spr.2013.0139
www.ietdl.org partial differential equations, contourlet transform, undecimated DWT [22–31]. Nasri and Pour [28] have introduced the adaptive thresholding function using WT-based thresholding neural network (WT-TNN) methodology in 2009. They have reported that their methodology outperforms various other thresholding methodologies such as soft, hard, garrote and other existing WT-TNN-based approach. However, this approach has various limitations. Proper initialisation of threshold value and other thresholding parameters are required in this methodology; otherwise it imposes a limitation on convergence speed of the learning process. Limitations of WT-TNN approach have been overcome by particle swarm optimisation (PSO) algorithm in place of steepest descent gradient-based LMS techniques. This technique results in better performance with fast convergence rate. Researchers [29] have proposed the image enhancement by WT-TNN with adaptive learning rate, and have also conducted the comparative analysis of curvelet-based techniques for denoising of computed tomography images [32]. The basic idea of denoising of an image using WT is as follows: At first, WT of a noisy image is obtained. Then, wavelet coefficient is modified by suitable thresholding function. Finally, after modification of wavelet coefficient, inverse WT is applied to obtain the reconstructed image. In wavelet-based thresholding technique, thresholding function has major effect on quality of the image. Therefore many types of thresholding functions were introduced having the property of hard, soft, semi-soft and garrote. The garrote and semi-soft thresholding functions are an improved way of thresholding. These thresholding functions have property and advantage of both hard and soft thresholding. There is no flexibility exhibit as these functions are owing to their dependency and fixed structure on a fixed threshold value. For reducing the above drawback, in some papers, several class of thresholding functions have been proposed with several shape tuning parameters that make it more flexible in usage. Some researchers [23, 24] have proposed a form of soft thresholding function. For better flexibility and capability, researchers [24] have extended Zhang’s proposed functions by adding three shape tuning factors that are given in the following equation
networks concept. In this type of neural network, activation function has been replaced by the wavelet thresholding function. Instead of learning weights of the classical networks, learning process focuses on learning threshold value of the thresholding function. It is extended for each sub-band of the wavelet domain as shown in Fig. 2 [28]. In this approach, adaptive least-mean square (LMS) algorithm has been used with an adjustment of learning parameter with the help of steepest descent gradient of mean-square error (MSE) risk or Steins unbiased risk estimation (SURE) depending on availability/unavailability of the original (noise free) image, respectively. Performance of Cuckoo Search (SC)-based denoising technique is better than PSO-based method for image denoising. The visual and quantitative results are given in Section 4. The paper is organised as follows. Section 2 gives an overview of DWT for image. Section 3 introduces PSO, modified PSOs (MPSOs), artificial bee colony (ABC) and the Cuckoo Search (CS) algorithm for image denoising case. In Section 4, qualitative and quantitative results of the proposed method with PSO, modified PSOs supported by peak SNR (PSNR) and SNR have been discussed. Conclusions are given in the final section.
2
Overview of DWT ^
Cf = (1)
Thresholding function η can be varied from hard to soft thresholding by adjusting the parameter k [0, 1] in the given expression. The flexibility in adjustment of thresholding from hard to soft because of variation of k is shown in Fig. 1a. The shape of thresholding function is decided by the parameter m, which adds more flexibility to the thresholding function as shown in Fig. 1b. λ is the threshold value, which has a major role in thresholding operation. In thresholding function, desired optimum value of threshold is obtained by optimum value of λ, k and m. To obtain the optimum value parameters, researchers [23, 24] have proposed the TNN methodolgy based on neural IET Signal Process., 2013, Vol. 7, Iss. 8, pp. 720–730 doi: 10.1049/iet-spr.2013.0139
a Effect of variation of k between (0, 1] with m = 2, λ = 5 b Effect of variation of m between [2, 10] with k = 1, λ = 5 [28]
Fourier transform of a function Φ(t) for all L 2(R) is Ψ(ω), when the function satisfies the condition given below [30]
hNasri Yij , l, k, m = ⎧ k lm ⎪ ⎪ Y − 0.5 + (k − 1)l Yij . l ⎪ ij ⎪ ⎪ Yijm−1 ⎪ ⎪ ⎪ ⎨ k|Yij |m+(2−k)/k Yij ≤ l 0.5 sign Yij ⎪ ⎪ lm+(2−k)/k ⎪ ⎪ m ⎪ k( − l) ⎪ ⎪ ⎪ ⎩ Yij + 0.5 Y m−1 − (k − 1)l Yij , −l ij
Fig. 1 Behaviour of thresholding functions with respect to variation in thresholding parameters
+1 0
c(v) dv , 1 v
(2)
The function Φ(t) is called basis wavelet. By scaling and shifting the basis wavelet function, a wavelet sequence can be obtained as given by 1 t−b fa,b (t) = √
f a |a|
(3)
Fig. 2 Wavelet domain thresholding [33] 721
& The Institution of Engineering and Technology 2013
www.ietdl.org where a, b ∈ R, a ≠ 0, and a is defined as the stretch factor, b is defined as the shift factor. The image signal is a two-dimensional signal. The continuous signal WT is given as f (x, y) =
1 1 1 +1 +1 Wf a, b1 , b2 f C f a −1 −1 a x − b1 y − b2 , dxdy × a a
(4)
Decomposition and reconstruction of two-dimensional DWT uses Mallat fast algorithm. Suppose ‘I’ is the located two-dimensional image, then wavelet decomposition algorithm is given by I 1 = LR LC I,
D1 = LR GC I and D2 = GR LC I,
D3 = GR GC I
(5)
where I is the low frequency operator map obtained after first level decomposition. D1, D2 and D3 are the horizontal, vertical, diagonal direction, respectively, in the high-frequency operator map. L and G is a filtering operator, which is determined by choosing the wavelet function. R and C stand for row and column operation, respectively. Reconstruction of an image from wavelet coefficients is as follows R D2 + G R D3 CL CG C L C G R I 1 + G R D1 + L I =L
(6)
where I and G are the conjugate transpose operator of L and G, respectively.
3 Different evolutionary techniques for denoising of satellite images 3.1
PSO technique
PSO technique for image denoising was proposed by Bhutada et al. [33]. In this paper, wavelet coefficient is thresholded by an adaptive thresholding function. PSO is used for tuning the thresholding function parameters λ, k and m. PSO algorithm is inspired by social behaviour patterns of the organisms that live and interact within large groups. It is simulation of behaviour observed in flocks of birds, swarm of bees, human social behaviour and school of fish. Global exploration and local exploration feature during optimisation process is the key feature of PSO. They have also proposed edge preserved image enhancement using adaptive fusion of images denoised by wavelet and curvelet transform [34] and fast adaptive learning algorithm for sub-band adaptive thresholding function in image denoising [35]. PSO model consists of swarm of particles, which are initialised with a population of random solutions. These particles move iteratively through n-dimensional problem space in search of new solution depending upon the best fitness value of the particles, which is calculated by using certain quality measures. Search for solution continues till certain stopping criteria is achieved or a fixed number of iterations is completed. PSO can be formulated in both supervised and unsupervised way. Here, fitness function is taken as MSE, which is to be minimised. 722 & The Institution of Engineering and Technology 2013
The minimum value of MSE is required to be estimated by (7). Thresholding function parameters are optimised for minimum value of MSE for getting optimum performance of the thresholding function. Therefore the fitness criteria for PSO-based learning process is given by N
1 2 f = MSE y, yˆ = y(n) − yˆ (n) N n=1
(7)
where N is the size of sub-band, y(n) is the WT coefficients of noise free image, y^(n) is the thresholded WT coefficients of noisy image. According to (7), a fitness value is dependent upon the thresholded wavelet coefficients y^(n), which depends upon the thresholding function η. η is the function of λ, k and m. Therefore parameters λ, k and m are chosen as a search particle in PSO-based learning process. For optimising the thresholding function given in (1), various types of optimisation techniques can be utilised with the aim of obtaining minimum value of MSE function, and can be implemented in supervised and unsupervised way both. 3.2.1 Algorithm steps for denoising of satellite image-based on PSO: Each particle tries to modify its position using the informations: current positions, current velocities, distance between the current position and pbest (personal best or current best), distance between the current position and gbest (global best). Step 1: The search space, that is range of thresholding prameters (λ, k, m) is initialised first. The range of thresholding parameter can be taken as λ = (1–150), k = (0.1–2) and m = (1–4). In this three-dimensional search space, initial positions of populations of the particles have been randomly initialised which is in the range defined above. The number of particles are taken as twice or more than twice of the dimensional search space. Here, dimension of the problem is 3, and hence, minimum six particles will be taken. Step 2: Fitness F is calculated for each particle. After that the particles are ready for further iterative process in search of best solution. Fpd is the initial fitness. Step 3: Different variables and constant has to initialised as follows: 1. C1 and C2 are the positive acceleration constants, which are the coefficient of self-recognition component and social component, respectively. C1 and C2 are taken as 2. 2. R1 and R2 are randomly chosen constants, which maintain diversity of the population. These are uniformly distributed in the interval [0, 1]. 3. i represents the iteration number, having range of maximum number of iteration (Imax). 4. W is the inertia factor. It starts with 0.9 and decreases linearly to 0.4 with iteration i. 5. Xpd and Vpd are position and velocity of the particle, respectively. Xpd is initialised randomly, whereas Vpd is initialised to zero. 6. Fpp(i) and Fgp(i) are the personal best position and global best position. Fpp(i) is initialised with Fpd, which is calculated in step 2, and the best of Fpp(i) is taken as Fgp(i) at initial step. 7. Xppd(i) and Xgpd(i) are the personal best position and the global best position, respectively. The position of Fpp(i) is stored in Xppd(i) and position of Fgp(i) is stored in Xgpd(i). IET Signal Process., 2013, Vol. 7, Iss. 8, pp. 720–730 doi: 10.1049/iet-spr.2013.0139
www.ietdl.org Step 4: Update the velocity and position with the help of (8) and (9) shown as follows Vpd (i + 1) = W (i)Vpd (i) + C1 R1 Xppd (i) − Xpd (i) (8) + C2 R2 Xgpd (i) − Xpd (i) Xpd (i + 1) = Xpd (i) + Vpd (i + 1)
(9)
Step 5: Updating of position and velocity is restricted by the boundary value, which is 80% of the maximum and minimum value of particle search space. Step 6: Calculate the fitness Fpd(i) at new search position. Update Fpp(i) if current value of Fpd(i) is less than the current value of Fpp(i), otherwise retain old Fpp(i). Update Fgp(i) if best of Fpp(i) is less than previous Fgp(i) otherwise retain Fgp(i). Similarly, Xppd(i) and Xgpd(i) are updated accordingly. Step 7: Repeat step 3–5 till stopping criteria or maximum number of iteration is achieved. 3.2.2 Modified PSO (PSO-TVAC): Performance of PSO can be improved by employing modified forms of PSO. In PSO-TVAC, two changes are made (i) A linearly varying inertia weight over the generation which is given by the following equation
W = Wmin + Wmax − Wmin Imax − i /Imax
(10)
(ii) Coefficient of self-recognition C1, and social component C2, are linearly varying over the generation, given by the following equations
C1 = Cmin + Cmax − Cmin Imax − i /Imax (11)
(12) C2 = Cmax + Cmax − Cmin Imax − i /Imax
Here, Wmax = 0.9; Wmin = 0.4; Cmax = 2.5; Cmin = 0.5; β = 0.4, Imax = maximum number of iteration. 3.2.4 MPSO (Ai-Qin Mu1 et al.): In standard PSO, particles have the ability to find the best position of the group of particles that have been searched. The global best position is searched out over the local particles for all iteration, and are updated to make sure that the best position is global best position not the local best. Based on this, Ai-Qin Mu1 et al. has proposed some modification in the original form of PSO [38]. In this modification, algorithm chooses the particle with maximum fitness when it is iterating, initialises its position randomly for increasing chaos ability of the particles. By this, the particle can search more domains. Select a limited extent of fitness α, then change in fitness is calculated and accept the new position if the change in fitness is smaller than α. Otherwise, new position is assigned randomly from the neighbourhood with radius. The algorithmic step is as follows: Step 1: Initialise position and velocity of the particle, and evaluate fitness. Step 2: Particle with biggest fitness value re-initialises its position and evaluates the particle with smallest fitness value, whether its new position is acceptable or not. If it is acceptable, updates its position, otherwise new position is assigned to the particle, then update the position and velocity of the particle. Step 3: Compare the personal best and update the personal best value and its fitness value if it is better than previous one. Step 4: Find out the best particle of group with best fitness value, and update the global best if current value is better than the previous global best. Step 5: Checkout the stopping criterion or maximum number of iteration otherwise return to step 2. 3.3
Cmax is set as 2.5 and Cmin is set as 0.5. C1 varies from 2.5 to 0.5 as the iteration proceeds whereas C2 varies from 0.5 to 2.5 as suggested by Ratnaweera et al. [36]. High diversity is obtained during the early part of search for global exploration over full range of search space. 3.2.3 Modified PSO (nonlinearly varying C1, C2 and W): In 2011, researchers [37] proposed the MPSO algorithm with nonlinearly decreasing and time varying inertia weight and acceleration coefficients based on their earlier works. Here, a nonlinearly varying inertia weight over the generations is used along with the nonlinearly varying coefficient of self-recognition component and social component C1 and C2. The nonlinearly varying coefficient of self-recognition component C1 and social component C2 are given by the following equations
C1 = Cmin + Cmax − Cmin sin p 1 − i/Imax /2 (13)
(14) C2 = Cmin + Cmax − Cmin cos p 1 − i/Imax /2 Moreover, nonlinearly varying inertia factor is given by equation
b Wk = Wmin + Wmax − Wmin 1 − i/Imax IET Signal Process., 2013, Vol. 7, Iss. 8, pp. 720–730 doi: 10.1049/iet-spr.2013.0139
(15)
ABC algorithm
ABC is one of the most recently defined algorithms by Karaboga in 2005 [39]. The algorithm is specifically based on the model proposed by Tereshko and Loengarov (2005) for foraging the behaviour of honey bee colonies. It is motivated by the intelligent behaviour of bees. The ABC algorithm is as simple as PSO and differential evolutionary algorithms, and is also easy to implement. ABC algorithm uses the common control parameters like colony size and maximum number of cycle. ABC as an optimisation tool provides a population-based search in which individuals known as food positions are modified by the artificial bees with time. The bee’s aim is to search or to discover the places of food sources with high nectar amount, and finally, the one with highest nectar. Initially, all the food source positions are searched by scout bees and then the nectar of food sources are exploited by the employed bees and onlooker bees, and this continual exploitation will ultimately cause them to become exhausted. In ABC algorithm, the colony of artificial bees contains three groups of bees: employed bees, onlookers and scouts. The onlooker bee waits on the dance area for making decision to choose a food source. A bee going to the food source visited by it previously is named an employed bee. A bee carrying out random search is called as scout. The detailed algorithm steps for the optimisation of the thresholding function are as follows: 723
& The Institution of Engineering and Technology 2013
www.ietdl.org Step 1: Initialisation of control parameters. The main control parameters of the ABC algorithm is colony size and number of iterations. So, initialise the colony (CS) size by 6. Limit of the scout bees is given by L = (CS × D)/2. The dimension D of the problem is three. Step 2: Initialise the position of CS/2 food source of employed bees, randomly using the variables over a defined range. The range is taken as λ = 1–150, k = 0.1–2, m = 1–4 and find CS/2 solutions. Step 3: Evaluate fitness for each of the obtained solution by (7) N
1 2 f = MSE y, yˆ = y(n) − yˆ (n) N n=1 ⎧ 1 ⎨ if fi ≥ 0 1 + fi Fitness function fitnessi =
⎩ 1 + abs fi if fi , 0
(16)
Step 4: Select maximum value of the fitness, which is the best quality of food source. Cycle 1: Employed bees phase vi,j = xi,j + fi,j xi,j − xk,j
(17)
By using (17), new solution will be produced for each of the bees.Where k and j are random selection index, φ is randomly produced number in the range [0, 1]. Calculate f(vi) and the fitness of vi. By comparing with the fitness of previously obtained solution with the f (vi). Replace fi with f(vi) if fi < f(vi) otherwise increase the trial counter.
the nests. In the simplest form, each nest has one egg. The Cuckoo algorithm can be extended to more complicated cases, which are having more than one egg representing a set of solutions. The CS is based on three idealised rules: (i) Each Cuckoo lays one egg at a time, and dumps it in a randomly chosen nest; (ii) The best nest with high quality of eggs (solutions) will carry over to the next generations; The hosts nests are fixed in count, and a host can discover an alien egg with probability pa ∈ [0 1]. In this case, the host bird can either throw the egg away or abandon the nest to build a completely new nest at new location. Based on the above-mentioned rules, the basic steps of Cuckoo algorithm are Step 1: Set the number of nest. Nest is nothing but different solutions. In this problem, it is taken as 20. Set the probability with a discovery rate (probability). Set the stopping criteria, which is either fixed number of iteration or tolerance value. Set dimension of the problem. The number of dimensions is three here. Also, set boundary of the parameters. Step 2: Randomly initialise the solution, by generating n different nest for obtaining n different solutions. Step 3: Evaluate fitness for each of the obtained solution. Find the best nest corresponding to minimum value of fitness. Step 4: Start iteration, generate new nest by Levy flight but keep the current best. A Levy flight can be formed as
Step 5: Calculate probability values p for the solutions x by means of their fitness using the equation fitness pi = CS/2 i i=1 fitnessi
(18)
Step 6: Onlooker bee’s phase Produce new solution vi for onlooker bees from the solutions xi selected, and depending upon the probability pi evaluate them. Then apply greedy selection between f (vi) and fi. Step 7: Memories the best solution and corresponding vector. Step 8: Scout bee phase, for replacing the abandoned solution (the solution of which trial is more than L), a new random solution is generated. Step 9: Update cycle and repeat the process until stopping criteria is achieved. 3.4
CS algorithm
In 2009, Yang and Deb have proposed the CS optimisation algorithm [40]. The CS algorithm is a new meta-heuristic algorithm for solving the optimisation problems. It is inspired by the obligate brood parasitism of some Cuckoo species by laying their eggs in the nest of other host birds (of other species). Some host birds can engage direct conflict with the intruding Cuckoos. The algorithm is based on the obligate brood parasitic behaviour of some cuckoo species in combination with the L’evy flight behaviour of fruit flies and some of the birds. Each egg in CS algorithm represents a solution and Cuckoo egg represents a new solution. Overall aim is to employ new and potentially better solutions to replace weak solutions in 724 & The Institution of Engineering and Technology 2013
Fig. 3 Flowchart of the optimisation-based methodology for image denoising IET Signal Process., 2013, Vol. 7, Iss. 8, pp. 720–730 doi: 10.1049/iet-spr.2013.0139
www.ietdl.org Table 1 Comparision of various techniques over proposed methodology No. of iterations
20 100 200 300 500 700
MPSO (C1, C2 and W is sinusoidal function)
PSO [32]
MPSO (Ai-Qin Mu et al.)
MPSO (PSO-TVAC)
ABC algorithm
Cuckoo search algorithm
SNR, dB
PSNR, dB
SNR, dB
PSNR, dB
SNR, dB
PSNR, dB
SNR, dB
PSNR, dB
SNR, dB
PSNR, dB
SNR, dB
PSNR, dB
16.13 15.98 16.13 17.45 19.26 19.96
29.42 30.69 30.12 32.17 32.32 33.41
15.73 16.81 16.43 18.87 20.12 21.17
31.43 31.32 31.14 33.13 33.97 34.11
16.39 16.94 16.96 19.18 20.37 20.24
30.79 31.53 31.98 33.74 34.19 34.91
16.76 17.24 17.29 19.45 20.79 20.29
30.16 31.89 31.96 34.61 34.91 34.56
17.43 18.83 18.53 20.79 20.84 22.17
32.16 33.17 33.31 35.17 35.89 36.14
17.36 18.97 18.31 20.47 20.19 22.29
33.19 33.72 33.27 35.79 35.47 36.19
Fig. 4 Original, noised and denoised images (a)–(c) Different original satellite images (d )–( f ) Corresponding noised image (g)–(i) are denoised image by PSO algorithm [33]
Cuckoo i, a L’evy flight is performed by the equation xi (t + 1) = x(t)i + a ⊕ L′ evy(l)
IET Signal Process., 2013, Vol. 7, Iss. 8, pp. 720–730 doi: 10.1049/iet-spr.2013.0139
(19)
where α is the step size. It essentially provides a random walk whereas the random step length is drawn from L’evy distribution, which has an infinite variance with an
725
& The Institution of Engineering and Technology 2013
www.ietdl.org
Fig. 5 Visual results of the proposed technique ( j)–(l ) are denoised by MPSO (m)–(o) are denoised by PSO-TVAC ( p)–(r) are denoised image by ABC algorithm
infinite mean. L’evy distribution is given by L′ evy u = t −l ,
(1 , l ≤ 3)
(20)
L’evy function can be changed according to application. Mantegna’s algorithm is one of the L’evy function. Step 5: Evaluate this set of solutions and obtain new fitness. Compare the old fitness with this new fitness, and replace old fitness if new fitness is better than the old one. Update the best nest corresponding to fitness. Step 6: Repeat the above process until some stopping criteria is achieved giving the best fitness and corresponding best nest. A complete flowchart routine of optimisation-based methodology for image denoising is shown in Fig. 3, depicting the detailed steps of overall algorithm. There are several methods, which have been used for satellite image denoising. In this paper, various state-of-the-art 726 & The Institution of Engineering and Technology 2013
techniques are used for comparison purposes. In order to show effectiveness of the proposed method over conventional and state-of-the-art image denoising techniques, three low contrast satellite images with different features available so far are used for comparison. Table 1 compares the PSNR and SNR performance indices of the proposed CS technique with the MPSO (C1, C2 and W is sinusoidal function), PSO, MPSO (Ai-Qin Mu et al.), MPSO (PSO-TVAC), ABC algorithm and CS algorithm (Fig. 4). Visual results of the proposed technique are shown in Figs. 5 m–p supported by the quantitative results given in Table 1. For example in Figs. 6v–x, output denoised images are depicted. Results in Table 1 indicate superiority of the proposed technique over other state-of-the-art and conventional image denoising techniques. The PSNR block computes the PSNR, in decibels between two images. This ratio is often used as a quality measurement between the original and improved images. The higher PSNR signifies better quality of the enhanced or reconstructed image. IET Signal Process., 2013, Vol. 7, Iss. 8, pp. 720–730 doi: 10.1049/iet-spr.2013.0139
www.ietdl.org
Fig. 6 Output denoised images (s)–(u) are denoised by MPSO (Ai-Qin Mu et al.) (v)–(x) are denoised by CS algorithm
4
Results and discussion
In this section, various evolutionary algorithms based on the proposed denoising scheme are exploited for satellite images. Performance of the proposed scheme is computed by
determining different fidelity parameters such as PSNR and SNR given by (21) and (22), respectively. In this paper, denoising performance of PSO algorithm and their variants, ABC algorithm and CS algorithm is compared on the basis of PSNR and SNR [41]. For making this comparison, PSO
Table 2 MPSO (Ai-Qin Mul et al.) bior 6.8, 420 × 420 satellite
Table 4
image
image [32]
Iterations 80 80 80 100 100 100 120 120 120
PSNR, dB
SNR, dB
Time, s
28.2135 29.2134 29.5864 29.8954 30.3642 30.5689 32.2543 31.8891 32.7631
17.4658 18.9347 18.1325 17.4365 19.7839 18.8713 18.9475 20.2143 20.1934
329 317 323 381 384 390 421 436 437
Table 3 MPSO (C1, C2 and W sinusoidal function) bior 6.8, 420 × 420 satellite image Iterations 80 80 80 100 100 100 120 120 120
PSNR, dB
SNR, dB
Time, s
27.1235 28.4937 28.4891 28.6913 30.3462 29.1354 30.2465 29.5321 30.5368
15.2459 17.1285 16.1244 17.8211 18.1275 17.9764 19.9453 18.1248 19.1362
326 321 314 373 389 378 428 434 439
IET Signal Process., 2013, Vol. 7, Iss. 8, pp. 720–730 doi: 10.1049/iet-spr.2013.0139
Iterations 80 80 80 100 100 100 120 120 120
PSO algorithm result, boir6.8, 420 × 420 satellite PSNR, dB
SNR, dB
Time, s
31.4658 32.4762 29.4567 32.130 32.6731 33.1245 33.4732 33.5901 32.9870
17.1243 16.1341 17.6701 19.2462 19.4531 20.4586 19.4931 20.1435 19.3861
310 314 327 371 367 376 428 421 411
Table 5 MPSO (PSO-TVAC) algorithm result, boir6.8, 420 × 420 satellite image Iterations 80 80 80 100 100 100 120 120 120
PSNR, dB
SNR, dB
Time, s
32.1834 32.1436 31.4789 33.4786 32.941 33.5483 34.7841 33.4570 34.1654
18.3654 16.4577 17.8684 19.4529 20.2354 20.1570 19.4365 21.4563 20.145
312 310 314 366 349 357 417 427 411
727
& The Institution of Engineering and Technology 2013
www.ietdl.org Table 6 ABC algorithm result bior 6.8, 420 × 420 satellite
Table 8 EKI or EPI
image Iterations
PSNR, dB
SNR, dB
Time, s
80 80 80 100 100 100 120 120 120
33.7421 32.1456 29.1452 33.8965 32.4567 32.1452 34.12365 34.2014 35.1245
20.7546 21.3564 19.4532 22.1321 21.1325 20.1467 22.1479 20.1452 22.5135
601 617 629 1191 1145 1102 1349 1370 1422
Table 7 CS algorithm result bior 6.8, 420 × 420 satellite image Iterations 80 80 80 100 100 100 120 120 120
PSNR, dB
SNR, dB
Time, s
33.4315 33.4625 32.2197 33.9175 33.7132 32.8175 33.9576 34.5671 35.3245
20.6751 21.2678 19.8375 21.7542 20.9132 20.0214 22.3142 21.4231 22.4125
624 612 619 1179 1165 1159 1376 1379 1409
algorithm, MPSO (PSO-TVAC), MPSO (Ai-Qin Mu1 et al.), MPSO, ABC algorithm and CS algorithm is executed with MATLAB R2012a. The various set of results are obtained for bior 6.8 (biorthogonal filter, version 6.8) filter. Table 1 shows the results obtained by running the algorithms for different number of iterations. Here, six types of algorithm are considered, and each algorithm is tested for denoising with different number of iterations ranging from 20 to 700 iterations. It was observed that the ABC algorithm and CS algorithm gives better value of PSNR and SNR as compared to PSO, whereas PSNR and SNR values of other variants of PSO lies around PSO technique. PSNR in dB for an image can be calculated from the following equation PSNR = 10 log10
MAX2i MSE
= 20 log10
MAXi √
MSE
(21)
SNR in dB can be calculated from the following equation signal power SNR = 10 log10 noise power
(22)
Results show that ABC algorithm and CS algorithm gives better performance. Further testing of the performance of all the algorithms considered is elaborated in Tables 2–6. Each algorithm is tested for different number of iterations (80– 120), and table includes PSNR, SNR and time taken for completion. Table 2 shows SNR, PSNR and time taken for MPSO (Ai-Qin Mu1 et al.). In Table 3, results obtained for MPSO (sinusoidal varying C1, C2 and W) are given. Table 4 depicts the performance of PSO-TVAC, whereas Table 5 shows the performance of PSO algorithm for image denoising. Performance indices for ABC algorithm and CS algorithm are given in Table 6 and Table 7, respectively. The time taken to complete the process of denoising is 728 & The Institution of Engineering and Technology 2013
Method (600 iterations)
MPSO (C1, C2 and W is sinusoidal function) PSO MPSO (Ai-Qin Mu et al.) MPSO (PSO-TVAC) ABC algorithm Cuckoo search algorithm
(EPI) Sample image 1
(EPI) Sample image 2
(EPI) Sample image 3
0.6712
0.5629
0.5843
0.6791 0.6738
0.5871 0.5901
0.5917 0.6014
0.6854 0.7131 0.7297
0.5921 0.6064 0.6124
0.6071 0.6213 0.6295
considered for multiband data or input original satellite image. Satellite image is a multiband data (3 or 7 bands). So the time required to complete the process of denoising is thrice (in case of 3 band satellite image) as compared to the time required for single band or grey-scale image. Owing to complexity of application of ABC algorithm and CS algorithm in image denoising, time taken is more as compared to PSO but SNR and PSNR values are better. Table 1 represents overall comparion of the results between proposed and state-of-the-art and conventional techniques. Table 2 shows detailed comparison of the results using MPSO (Ai-Qin Mul et al.) technique, whereas in Table 3, comparison of the results using MPSO (C1, C2 and W sinusoidal function) technique is given. Table 4 includes the detailed comparison of the results using PSO algorithm supported by number of iteration, PSNR, SNR and time. Table 5 shows detailed comparison of the results using MPSO (PSO-TVAC) algorithm whereas the detailed comparison of the results using proposed ABC and CS algorithm, respectively, supported by number ofiteration, PSNR, SNR and time are included in Tables 6 and 7. Calculation of edge keeping index (EKI) or edge preservation index (EPI) N
Dgi − Dmg Dfi − Dmf EKI =
2 2
N N i=1 Dgi − Dmg i=1 Dfi − Dmf i=1
(23)
where gi and fi are the original and reconstructed images, respectively. Δgi and Δfi are found by filtering g and f through high pass Laplacian filter with mean value as µg and µf, respectively. The EKI calculates that how much the edges are preserved for the reconstructed image compared with the original image. High value of EKI or EPI represents that more edge details are conserved. EKI is included in Table 8.
5
Conclusion
In this work, an improved denoising scheme for satellite images is presented using different evolutionary algorithms such as CS algorithm, ABC algorithm and different variants of PSO for learning of parameters of adaptive thresholding function required for optimum performance. The proposed technique has been tested on several satellite images. The fidelity parameters obtained clearly show superiority of the proposed technique over other conventional and state-of-the-art image denoising techniques. A comparative IET Signal Process., 2013, Vol. 7, Iss. 8, pp. 720–730 doi: 10.1049/iet-spr.2013.0139
www.ietdl.org study of different evolutionary algorithms has also been made, and it has been found that the proposed technique, based on CS algorithm and ABC algorithm, yields better performance as compared to PSO and their different variants in terms of EKI or EPI, PSNR and SNR.
6
References
1 Gonzalez, R.C., Woods, R.E.: ‘Digital image processing’ (Pearson Prentice-Hall, Singapore, 2002, 2nd edn.) 2 Bhandari, A.K., Kumar, A., Padhy, P.K.: ‘Improved normalised difference vegetation index method based on discrete cosine transform and singular value decomposition for satellite image processing’. IET Signal Process., 2012, pp. 1–9 3 Mallat, G.: ‘Theory for multi-resolution signal decomposition: the wavelet representation’, IEEE Trans. Pattern Anal. Mach. Intell., 1989, 2, (7), pp. 674–694 4 Donoho, D.L., Johnstone, I.M.: ‘Ideal spatial adaptation by wavelet shrinkage’, Biometrika, 1994, 81, (3), pp. 425–455 5 Donoho, D.L., Johnstone, I.M.: ‘Adapting to unknown smoothness via wavelet shrinkage’, J. Am. Stat. Assoc., 1995, 90, (432), pp. 1200–1224 6 Donoho, D.L.: ‘Denoising by soft thresholding’, IEEE Trans. Inf. Theory, 1995, 41, pp. 613–627 7 Gao, H., Bruce, A.G.: ‘WaveShrink with firm shrinkage’, Stat. Sin., 1997, 7, pp. 855–874 8 Gao, H.: ‘Wavelet shrinkage denoising using the nonnegative garrote’, J. Comput. Graph. Stat., 1998, 7, pp. 469–488 9 Fodder, I.K., Kamath, C.: ‘Denoising through wavelet shrinkage: an empirical study’, J. Electron. Imaging, 2003, 12, (1), pp. 151–160 10 Achim, A., Bezerianos, A., Tsakalides, P.: ‘Novel Bayesian multiscale method for speckle removal in medical ultrasound Images’, IEEE Trans. Med. Imaging, 2001, 20, (8), pp. 772–783 11 Achim, A., Kuruoghlu, E.: ‘Image denoising using alpha-stable distributions in the complex wavelet domain’, IEEE Signal Process. Lett., 2005, 12, (1), pp. 17–20 12 Mihcak, M.K., Kozintsev, I., Ramchandran, K., Moulin, P.: ‘Low complexity image denoising based on statistical modeling of wavelet coefficients’, IEEE Signal Process. Lett., 1999, 9, pp. 300–303 13 Crouse, M.S., Nowak, R.D., Baraniuk, R.G.: ‘Wavelet-based statistical signal processing using hidden Markov models’, IEEE Trans. Signal Process., 1998, 46, (4), pp. 886–902 14 Mohamad, M., Hamid, M.: ‘Ultrasound speckle suppression using heavy tailed distribution in the dual tree complex wavelet domain’. Proc. IEEE Int. Conf. on Wavelet Diversity and Design, 2007, pp. 65–68 15 Michailovich, O.V., Tannenbum, A.: ‘Despeckling of ultrasound images’, IEEE Trans. Ultrason., Ferroelectr. Freq. Control, 2006, 53, (1), pp. 64–78 16 Bhuiyan, M.I.H., Ahmad, M.O., Swamy, M.N.S.: ‘New spatial adaptive wavelet based method for the despeckling of medical ultrasound image’. Proc. IEEE Int. Conf. on Symp. on Circuits and System, 2007, pp. 2347–2350 17 Portilla, J., Strela, V., Wainwright, M.J., Simoncelli, E.P.: ‘Image denoising using Gaussian scale mixtures in the wavelet domain’, IEEE Trans. Image Process., 2003, 12, pp. 1338–1351 18 Pizurica, A., Philips, W.: ‘Estimating the probability of the presence of a signal of interest in multiresolution single- and multiband image denoising’, IEEE Trans. Image Process., 2006, 15, (3), pp. 654–665 19 Rabbani, H., Mansur, V., Purang, A., Saeed, G.: ‘Speckle noise reduction of medical ultrasound images in complex wavelet domain using mixture priors’, IEEE Trans. Biomed. Eng., 2008, 55, (9), pp. 2152–2160 20 Rabbani, H.: ‘Image denoising in steerable pyramid domain based on a local Laplace prior’, Elsevier J. Pattern Recognit., 2009, 42, (9), pp. 2181–2193 21 Yu, H., Zhao, L., Wang, H.: ‘Image denoising using trivariate shrinkage filter in the wavelet domain and joint bilateral filter in the spatial domain’, IEEE Trans. Image Proc., 2009, 18, (10), pp. 2364–2369 22 Zhang, X.P., Desai, M.D.: ‘Adaptive denoising based on SURE risk’, IEEE Signal Process.’, Lett., 1998, 5, (10), pp. 265–267 23 Zhang, X.P.: ‘State-scale adaptive noise reduction in images based on thresholding neural network’. Proc. IEEE Int. Conf. on Acoustic, Speech and Signal Processing, 2001, pp. 1889–1892 24 Zhang, X.P.: ‘Thresholding neural network for adaptive noise reduction’, IEEE Trans. Neural Netw., 2001, 12, (3), pp. 567–584 25 Liu, P., Huang, F., Li, G., Liu, Z.: ‘Remote-sensing image denoising using partial differential equations and auxiliary images as priors’, Geosci. Remote Sens. Lett., IEEE, 2012, 9, (3), pp. 358–362 IET Signal Process., 2013, Vol. 7, Iss. 8, pp. 720–730 doi: 10.1049/iet-spr.2013.0139
26 Sivakumar, R., Balaji, G., Ravikiran, R.S.J., Karikalan, R., Janaki, S.S.: ‘Image denoising using contourlet transform’. Proc. IEEE Second Int. Conf. in Computer and Electrical Engineering, 2009, vol. l, no. 1, pp. 22–25 27 Yu-feng, L.I.: ‘Bayesian Denoising for remote sensing image based on undecimated discrete wavelet transform’, Proc. IEEE Int. Conf. on Information Engineering and Computer science (ICIECS), 2009, 3, pp. 1–4 28 Nasri, M., Pour, H.N.: ‘Image denoising in the wavelet domain using a new adaptive thresholding function’, Elsevier J. Neurocomput., 2009, 72, pp. 1012–1025 29 Bhutada, G.G., Anand, R.S., Saxena, S.C.: ‘Image enhancement by wavelet-based thresholding neural network with adaptive learning rate’, IET Image Process., 2011, 5, (7), pp. 573–582 30 Bhandari, A.K., Gadde, M., Kumar, A., Singh, G.K.: ‘Comparative analysis of different wavelet filters for low contrast and brightness enhancement of multispectral remote sensing images’. Proc. IEEE Int. Conf. on Machine Vision and Image Processing (MVIP), 2012, pp. 81–86 31 Foi, A., Katkovnik, V., Egiazarian, K.: ‘Pointwise shape-adaptive DCT for high-quality denoising and deblocking of grayscale and color images’, IEEE Trans. Image Process., 2007, 16, (5), pp. 1395–1411 32 Bhadauria, H.S., Dewal, M.L., Anand, R.S.: ‘Comparative analysis of curvelet based techniques for denoising of computed tomography images’. Devices and Communications (ICDeCom), Int. Conf. on. IEEE, 2011, pp. 1–5 33 Bhutada, G.G., Anand, R.S., Saxena, S.C.: ‘PSO-based learning of sub-band adaptive thresholding function for image denoising’, Springer Signal, Image Video Process. (SIViP), 2012, 6, pp. 1–7 34 Bhutada, G.G., Anand, R.S., Saxena, S.C.: ‘Edge preserved image enhancement using adaptive fusion of images denoised by wavelet and curvelet transform’, Digital Signal Process., 2011, 21, (1), pp. 118–130 35 Bhutada, G.G., Anand, R.S., Saxena, S.C.: ‘Fast adaptive learning algorithm for sub-band adaptive thresholding function in image denoising’, Int. J. Comput. Intell. Stud., 2010, 1, (3), pp. 227–241 36 Ratnaweera, A., Halgamuge, S.K., Watson, H.C.: ‘Self-organizing hierarchical particle swarm optimizer with time-varying acceleration coefficients’, IEEE Trans. Evol. Comput., 2004, 8, pp. 240–255 37 Gupta, S., Devi, S.: ‘Modified PSO algorithm with high exploration’, Int. J. Softw. Eng. Res. Pract., 2011, 1, (1), pp. 15–19 38 Mu, A.Q., De-Xin, C., Wang, X.H.: ‘A modified particle swarm optimization algorithm’, Nat. Sci., 2009, 1, (2), pp. 151–155 39 Karaboga, D.: ‘An idea based on honey bee swarm for numerical optimization’. Technical Report-TR06, Erciyes University, Engineering Faculty, Computer Engineering Department, 2005 40 Yang, X.S., Deb, S.: ‘Cuckoo search via Lévy flights’. World Congress on Nature & Biologically Inspired Computing (NaBIC 2009). IEEE Publications, 2009, pp. 210–214, http://papercore.org/Yang2009 41 Prattt, W.K.: ‘Digital image processing’ (John Wiley and Sons, 2006, 3rd edn.)
7 Appendix The proposed method has been also tested using 4 × 4 block for intrascale dependency. Here, input image 400 × 400 × 3 (multiband satellite image) taken one band at a time. Detail steps of suggested algorithm are as follows: (i) Separate red component from input image having 400 × 400 size. (ii) Apply DWT to input band, after decomposition LL, LH, HL, HH sub-band of size 200 × 200 each (using bior 6.8 mother wavelet). (iii) Now thresholding is applied on each sub-band considering 4 × 4 block using CS algorithm. (iv) This process is followed for all sub-bands one by one using 4 × 4 blocks using CS algorithm. (v) After completion of 4 × 4 blocking process using CS for RED component. This process is repeated for NIR band and for green band. (vi) Finally, denoised results are obtained using intrascale dependency 729
& The Institution of Engineering and Technology 2013
www.ietdl.org Table 9 MSE, PSNR and EKI-based on thresholding of each sub-band considering 4 × 4 blocks using CS algorithm Input image
MSE
PSNR, dB
EKI
1 400 × 400 2 400 × 400 3 400 × 400
15.4937 16.0640 13.0750
36.2293 36.0723 36.9664
0.7469 0.7607 0.7813
The simulation results obtained are tabulated in Table 9. Quantitative and visual results of the suggested 4 × 4 block using CS algorithm is demonstrated in Fig. 7. It is concluded from the simulation results that 1. Parameters of output image are slightly better than technique shown in the paper but it also
introduces blurring because of use of thresholding on each 4 × 4 blocks. 2. Computational complexity is high as each algorithm is applied for (50 × 50) × 3 times approximately and this is for each sub-band LH, HL and HH. Therefore computational complexity is very high for high iteration. 3. Creating a window for each coefficient and finding local parameters in each sub-band (for each coefficient) improves the result, however it increases the complication and running time because optimisation algorithm has to be applied for each window. If computational complexity is not the major concern, then this idea is effective for image denoising purpose.
Fig. 7 Quantitative and visual results (a)–(c) Original satellite images (d )–( f ) Corresponding noised image (g)–(i) are denoised image based on 4 × 4 block intrascale dependency using CS algorithm
730 & The Institution of Engineering and Technology 2013
IET Signal Process., 2013, Vol. 7, Iss. 8, pp. 720–730 doi: 10.1049/iet-spr.2013.0139