Keywords

1 Introduction

Image denoising is one of the fundamental topics of research in image processing and computer vision because (1) the presence of noise in image is unavoidable and (2) the requirement of clear images for various applications [1]. The major problem in image denoising is to remove the noise without altering the structures [2]. Typically, it is assumed that the degradation process for image denoising can be expressed using a mathematical model [3, 4]. From last two decades, Partial differential equations (PDEs) based models have been justified as powerful and well known tool for image denoising and edge detection [58]. One of the benefits of using PDEs in image denoising is that the theory is well established [8]. Out of various PDE models, the linear diffusion process is simplest and well considered PDE-based method [9].

$$ \left\{ {\begin{array}{*{20}l} {I_{t} } \hfill & = \hfill & {\nabla (c\nabla I)\quad}&{ in\quad \varOmega \times (0, + \infty )} \hfill \\ {I(x,y,0)} \hfill & = \hfill & {I_{0} (x,y)\quad}&{ in\quad \varOmega } \hfill \\ \end{array} } \right\} $$
(1)

The linear diffusion model is only depends on the diffusion parameter \( c \) (constant) and time parameter \( t \). But the shortcoming with this is that it fails to preserve edges/textures [10] and moves their position. To address this issue, various nonlinear PDE models have been proposed for image denoising [1113].

The anisotropic diffusion proposed by Perona and Malik (PM) can be considered as typical edge preserving algorithm [10], in which the diffusion is controlled by a variable coefficient. This model is useful for smoothing, denoising and detection of edges in (digital) image. The model can be written as

$$ \left\{ {\begin{array}{*{20}l} {I_{t} = {\nabla }(c(|{\nabla }I|^{2} ){\nabla }I)} \hfill & {in} \hfill & {\varOmega \times (0, + \infty )} \hfill \\ {\frac{\partial I}{\partial n} = 0} \hfill & {in} \hfill & {\partial \varOmega \times (0, + \infty )} \hfill \\ {I(x,y,0) = I_{0} (x,y)} \hfill & {in} \hfill & \varOmega \hfill \\ \end{array} } \right\} $$
(2)

Here \( \varOmega \) is the picture domain, \( I_{0} \) is the observed image, \( I \) is the original image to be recovered, \( n \) is the unit normal to the boundary of \( \varOmega \) and \( c(s^{2} ) \) is diffusion coefficient which diffuses the image, while the boundaries of image are preserved. The diffusion coefficient is designed in such a way that its value is small for inhomogeneous region i.e. the diffusion is low and its value is high for homogeneous region i.e. diffusion is tending to smoothness. The diffusion coefficient has some properties as \( c(0) = 1 \), \( c(s^{2} ) \to 0 \) as \( s \to \infty \). Here, the diffusion coefficient suggested by Perona and Malik is as follows:

$$ c(s^{2} ) = \frac{1}{{1 + \frac{{s^{2} }}{{k^{2} }}}} $$
(3)

here \( k \) is a contrast parameter and a positive constant.

PM model is an ill-posed problem due to the gradient of the noise and the edge are same in the case of higher noise level. Therefore, the results will fall into the local optimal solution. Hence, the equation can not produce the efficient denoising. This is the major reason that the PM model will generate some artifacts [1416].

In 1992, Rudin, Osher and Fatemi (ROF) proposed the total variation denoising (TV) model [17]. The TV method smooths the original image and obtains the resultant image by minimizing the following functional,

$$ E_{TV} = \int\limits_{\varOmega } {|\nabla I|{\kern 1pt} dx{\kern 1pt} dy} + \frac{\uplambda}{2}\int\limits_{\varOmega } {|I - I_{0} |^{2} {\kern 1pt} dx{\kern 1pt} dy} $$

Using the Euler-Lagrange of the above equation, we get the TV denoising model as follows,

$$ \left\{ {\begin{array}{*{20}l} {I_{t} = \nabla (\frac{\nabla I}{|\nabla I|}) -\uplambda(I - I_{0} )} \hfill & {in} \hfill & {\varOmega \times (0, + \infty )} \hfill \\ {I(x,y,0) = I_{0} (x,y)} \hfill & {in} \hfill & \varOmega \hfill \\ \end{array} } \right\} $$
(4)

This model preserves the edge of the image very nicely in comparison to anisotropic diffusion, whereas produces the block effect when dealing with the flat areas, thus the local features of the original image are lost. Fortunately, several authors have addressed the limitation of the image denoising and devised very efficient implementations [1822].

The most recent approach is proposed by Guo et al. [23], in which they combined the PM equation with the heat equation and also proposed an edge indicator as a variable exponent.

$$ \left[ {\begin{array}{*{20}l} {I_{t} = \nabla (\frac{\nabla I}{{1 + (\frac{|\nabla I|}{K})^{\alpha (x)} }}) -\uplambda(I - I_{0} )} \hfill & {in} \hfill & {\varOmega \times (0, + \infty )} \hfill \\ {\frac{\partial I}{\partial n} = 0} \hfill & {in} \hfill & {\partial \varOmega \times (0, + \infty )} \hfill \\ {I(x,y,0) = I_{0} (x,y)} \hfill & {in} \hfill & \varOmega \hfill \\ \end{array} } \right] $$
(5)

This paper proposes a new weighted partial differential equation based model using the linear diffusion, TV model and adaptive PM model. The weight parameters are chosen as to categories the image in flat and textured regions and smooths accordingly. The paper is organized as follows: In Sect. 2 we have given new PDE based model. In Sect. 3 we evaluate the experimental results and conclude the work with in Sect. 4.

2 New PDE-Model

The main goal of image denoising is to remove noise and preserve the image features simultaneously. Elimination of the high frequency components of the image, as well as, preserve the features of the image appeared in the high frequency region, are the two main objectives of the Image denoising. So the task of image filtering should consider two aspects, namely, remove noise and preserve details. Existence of the details and the noise in the same frequency band will cause a dilemma, which is the reason that the traditional filtering methods can not deal with such problems. Therefore, we used a weighted function combining the three models such as the isotropic diffusion model, the total variation model and adaptive Perona Malik model, to get a new denoising model, which provides a new approach for solving the image denoising problem. The new model is given by

$$ \left\{ {\begin{array}{*{20}l} {I_{t} = \rho (\xi (\nabla (c(|\nabla I|^{2} )\nabla I)) + \chi (\nabla (\frac{\nabla I}{|\nabla I|}))) + (1 - \rho )(\Delta I) - \lambda (I - I_{0} )} \hfill & {in} \hfill & {\varOmega \times (0, + \infty )} \hfill \\ {\frac{\partial I}{\partial n} = 0\,} \hfill & {in} \hfill & {\partial \varOmega \times (0, + \infty )} \hfill \\ {I(x,y,0) = I_{0} (x,y)} \hfill & {in} \hfill & \varOmega \hfill \\ \end{array} } \right\} $$
(6)

In this model, we select the following weight function: \( \xi = { \exp }( - 1/|\nabla I|) - b \), \( \chi = 2(1 - \xi ) \) and \( \rho = \left\{ {\begin{array}{*{20}l} 1 \hfill & {{\kern 1pt} if\;{\kern 1pt} |\nabla I| \ge k} \hfill \\ {1 - { \cos }^{2} (\frac{\pi |\nabla I|}{2k})} \hfill & {{\kern 1pt} if\;{\kern 1pt} 0 \le |\nabla I| < k} \hfill \\ \end{array} } \right. \). Here we adopt the diffusion coefficient as [23],

$$ c(s) = \frac{1}{{1 + (\frac{s}{k})^{\alpha (x)} }} $$
(7)

Hence, in flat region (i.e. below the threshold value), this model work as linear diffusion model. Whereas, in the edge/texture region it works as the weighted combination of TV model and adaptive PM model.

To solve the proposed model, here we use the finite difference method. The explicit schemes are commonly used in the literature and considered as the simplest option but the shortcoming with this is that it need small time steps for stability [24]. In this work, we have used explicit schemes with the small time steps because we need to show the usefulness of the proposed model unconcern their efficiency. Hence, our difference scheme is as follows.

Let \( h \) represents the spatial step size and \( \tau \) is the time step. Denote \( {I_{i,j}}^{n} = I(x_{i} ,y_{j} ,t_{n} ) \) where \( x_{i} = ih,y_{j} = jh \) and \( t_{n} = n\tau \). Since the diffusion term is approximated by central differences, we use the following notations,

$$ \begin{array}{*{20}l} {\frac{\partial I}{\partial x}} \hfill & = \hfill & {\frac{{I_{i + h,j}^{n} - I_{i - h,j}^{n} }}{2h}, \quad \frac{\partial I}{\partial y} = \frac{{I_{i,j + h}^{n} - I_{i,j - h}^{n} }}{2h},} \hfill \\ {\frac{{\partial^{2} I}}{{\partial^{2} x}}} \hfill & = \hfill & {\frac{{I_{i + h,j}^{n} - 2I_{i,j}^{n} + I_{i - h,j}^{n} }}{{h^{2} }}, \quad \frac{{\partial^{2} I}}{{\partial^{2} y}} = \frac{{I_{i,j + h}^{n} - 2I_{i,j}^{n} + I_{i,j - h}^{n} }}{{h^{2} }}} \hfill \\ \end{array} $$

Hence, we can rewrite the new model as the discrete form as follows:

$$ \frac{{I^{n + 1} - I^{n} }}{\uptau} = \rho A^{n} + (1 - \rho )B^{n} -\uplambda(I^{n} - I_{0} ) $$

We have,

$$ {I_{i,j}}^{n + 1} = {I_{i,j}}^{n} +\uptau(\rho A_{i,j}^{n} + (1 - \rho )B_{i,j}^{n} -\uplambda(I_{i,j}^{n} - I_{0} )) $$

where,

\( A_{i,j}^{n} = \xi_{i,j}^{n} \left( {\nabla^{n} \left( {c\left( {\left| {\nabla I_{i,j}^{n} } \right.\left| {^{2} } \right.} \right)\nabla I_{i,j}^{n} } \right)} \right) + \chi_{i,j}^{n} \left( {\nabla^{n} \left( {\frac{{\nabla I_{i,j}^{n} }}{{\nabla I_{i,j}^{n} }}} \right)} \right) \)and \( B_{i,j}^{n} = \Delta I_{i,j}^{n} \)

3 Experimental Results

In this section we evaluate the proposed method and compare its results with other methods in terms of Mean Structural Similarity Index (MSSIM) [25] and Peak Signal to Noise Ratio (PSNR) [26]. The formula used for calculating PSNR and SSIM are as follows,

$$ SSIM(x,y) = \frac{{(2\mu_{x} \mu_{y} + c_{1} )(2\sigma_{xy} + c_{2} )}}{{({\mu_{x}}^{2} + {\mu_{y}}^{2} + c_{1} )({\sigma_{x}}^{2} + {\sigma_{y}}^{2} + c_{2} )}} $$
$$ PSNR = 10{ \log }_{10} (\frac{{{ \text{max} }(I_{0} )^{2} }}{{\frac{1}{rc}\sum\nolimits_{i - 1}^{r} {\sum\nolimits_{j = 1}^{c} {(I_{t} - I_{0} )^{2} } } }}) $$

Here \( \mu_{x} ,\mu_{y} ,{\sigma_{x}}^{2} ,{\sigma_{y}}^{2} ,\sigma_{xy} \) is the average, variance and covariance of \( x \) and \( y \), respectively. \( c_{1} \) and \( c_{2} \) are the variables to stabilize the division with weak denominator. For both quality measures, a high value suggests that the filtered image is closer to the noise free image.

For experiments, we have used the set of standard test images of size \( 256 \times 256 \). Images are degraded with white Gaussian noise of zero mean and different standard deviations [e.g. \( \sigma \in (20,40) \)]. In these experiments we have considered the parameters values as follows: the time step size \( \Delta t = 0.1 \), the grid size \( h = 1 \) and threshold parameter \( k = 10 \).

Figure 1a shows a noise free image “Boat”. Its noisy version is shown in Fig. 1b with \( \sigma = 20 \). Figure 1c, d, e shows the denoised images for the PM, TV and Proposed model respectively. From this figure we can observe that the new model has a very explicit denoising effect as this shows visually comparable outputs to the existing methods in restoring and edge-preservation. It conserves the usefulness of the PM and TV model as well as overcomes the disadvantage of these two models.

Fig. 1
figure 1

Boat noise free image (top left), noisy image with sigma = 20 (top right), restored image using PM model (down left), TV model (middle) and Proposed model (right)

Similarly, Fig. 2a shows a clean image “Coin” and Its noisy version degraded with white Gaussian noise of zero mean and \( \sigma = 40 \), is shown in Fig. 2b. Figure 2c, d, e shows the denoised images using different approaches.

Fig. 2
figure 2

Coin noise free image (top left), noisy image with sigma = 40 (top right), restored image using PM model (down left), TV model (middle) and Proposed model (right)

Tables 1 and 2 depict the quantitative results for all the methods. From these tables, we can observe that the new model have the maximum MSSIM and PSNR, among the three algorithms for the different noise levels, which means the denoising effect of the new proposed algorithm, is the best in terms of MSSIM and PSNR.

Table 1 MSSIM of the PM model, TV model and the proposed model
Table 2 PSNR of the PM model, TV model and the proposed model

4 Conclusion

In this paper, we proposed a new approach for image filtering based on the combination of Adaptive PM model, TV model and Heat equation. From the numerical experiments, our model has more smoothing ability in terms of MSSIM and PSNR, and visual quality compared with the anisotropic diffusion (PM) model and total variation (TV) model. Several experiments are carried out, to examine the algorithm. For different noise levels, we demonstrated good denoising performance using the proposed denoising PDE based model. We can improve the convergence speed by applying advanced numerical scheme to solve new PDE model. Construction of better algorithms in smoothing images and preserving image features, will be a good future scope of this work.