Keywords

1 Introduction

Image processing has been widely studied over the past decades and image denoising is very important in the field of image processing. It is well-known that speckle noise in medical ultrasonic images will bring a significant decline in the quality of ultrasonic images and cover up the lesions of some important tissues. Furthermore, speckle noise will bring great difficulties to the doctors diagnosis and certain specific diseases identification. As mentioned in article [1], the speckle noise in medical ultrasonic images can be written in the following form:

$$ f = u + \sqrt u n, $$
(1)

where \( u:\varOmega \to {\mathbb{R}} \) is an original image that is without noise, f is a noisy image and n represent the Gaussian random noise with mean zero and standard deviation σ.

Many methods have been proposed for image restoration, such as Lee filter [2], kuan filter [3], locally adaptive statistic filters [1, 4, 5], PDE-based and curvature-based methods [6, 7], Non-Local means filters [8, 9], wavelet transform based thresholding methods [10] and total variational [11, 12] and so on. Most procedures of them transform the model minimization problem into solving the Euler-Lagrange equation. Rudin et al. proposed a numerical algorithms [13] that use the finite difference method to solve the Euler-Lagrange equation directly.

Motivated by these works, we adopt the idea of variational model to restore image by minimizing the energy function. Compared with other restoration model, the Total Variation (TV) model has lower complexity and better restoration effect locally. But TV model causes stair casing effect when filling in large smooth domain [14]. In order to preserve the edges and avoid staircase effect, we present an image restoration model based on an energy function and it can work with different diffusion speeds in different domains adaptively.

The rest of this paper is as follows. In Sect. 2, we review some related denoising works. In Sect. 3, we propose a new model based on variation and meanwhile we analyze diffusion performance of the proposed model. The corresponding numerical algorithm is given in Sect. 4. Section 5 shows the experimental results. The conclusion is drawn in Sect. 6.

2 Some Related Works

In 1992, Rudin et al. [13] proposed a denoising model based on total variation:

$$ E_{\lambda } (u) = \int_{\varOmega } {|Du|dx} + \frac{\lambda }{2}\int_{\varOmega } {|u - u^{0} |^{2} dx} , $$
(2)

where \( \int_{\varOmega } { |Du |} dx = \sup \left\{ {\int_{\varOmega } {udiv(\varphi ) |\varphi \in C_{c}^{1} (\varOmega ,{\mathbb{R}}^{n} ), | |\varphi | |_{\infty } \le 1} } \right\} \) represents the TV regularization term, \( u^{0} { = }u + n \) is noisy image and n represent the Gaussian random noise with mean zero and standard deviation σ. λ > 0 represents the regularization parameter which can balance fidelity terms and regularized terms in TV model, |Du| represent the L1 norm of the image gradient.

In order to deal with the degenerate model (see Eq. (1)). In article [15], Krissian and Kikinis et al. derived a convex fidelity term:

$$ \int_{\varOmega } {\frac{{(f - u)^{2} }}{u}dx = \sigma^{2} } , $$
(3)

where f is noise image.

2.1 JIN’s Model

In [12], motivates by the classical ROF model [13], the authors proposed a convex variational model (JIN’s model) for removing the speckle noise in ultrasound image. The convex variational model involving the TV regularization term and convex fidelity term (see Eq. (3)):

$$ \mathop {\hbox{min} }\limits_{u} \left[ {\int_{\varOmega } {|Du|dx} + \lambda \int\limits_{\varOmega } {\frac{{(f - u)^{2} }}{u}} dx} \right], $$
(4)

where \( \int_{\varOmega } {|\nabla u|dx} \) and λ are similar to Eq. (2). The correspond Euler-Lagrange equation is as follow:

$$ \nabla \left( {\frac{\nabla u}{|\nabla u|}} \right) + \lambda \left( {\frac{{f^{2} }}{{u^{2} }} - 1} \right) = 0, $$
(5)

Using gradient descent method, we can get the model as follows:

$$ \left\{ {\begin{array}{*{20}l} {u_{t} = \nabla \left( {\frac{\nabla u}{|\nabla u|}} \right) + \lambda \left( {\frac{{f^{2} }}{{u^{2} }} - 1} \right),} \hfill & {t > 0\;\;\;x,y\;in\;\varOmega } \hfill \\ {\frac{\partial u}{{\partial \vec{n}}} = 0} \hfill & {on\;the\;boundar\;of\;\varOmega } \hfill \\ {u|_{t = 0} = u_{0} } \hfill & {in\;\bar{\varOmega }} \hfill \\ \end{array} } \right., $$
(6)

where \( \vec{n} \) is the unit out normal vector of \( \partial \varOmega \). Finally, through the iterative method, the desired image can be obtain.

2.2 The Selection of TV Regularization Term

Although TV regularization is very effective in image restoration, but some scholars have used general variational methods to write models:

$$ J_{1} (u) = \int_{\varOmega } {\varphi (|\nabla u|)} , $$
(7)

where φ(x) represents a convex function, the case φ(x) = x leads to the total variation regularization term. In the literature [16], the author Costanzino chooses φ(x) = x2 that leads to the well-known harmonic model.

In order to carry out anisotropic diffusion on the edges and restoration domain and isotropic diffusion in regular regions, it is well known that the function φ(x) should satisfy:

$$ \left\{ {\begin{array}{*{20}c} {\varphi^{{\prime }} (0) = 0,\mathop {\lim }\limits_{{x \to 0^{ + } }} \varphi^{{\prime \prime }} (x) = \mathop {\lim }\limits_{{x \to 0^{ + } }} \frac{{\varphi^{{\prime }} (x)}}{x} = c > 0} \\ {\mathop {\lim }\limits_{x \to \infty } \varphi^{{\prime \prime }} (x) = \mathop {\lim }\limits_{x \to \infty } \frac{{\varphi^{{\prime }} (x)}}{x} = 0,\mathop {\lim }\limits_{x \to \infty } \frac{{x\varphi^{{\prime \prime }} (x)}}{{\varphi^{{\prime }} (x)}} = 0} \\ \end{array} } \right., $$
(8)

In this paper, we will choose function φ(x) = x log(1 + x); Obviously this function satisfies the above conditions.

3 The Proposed Restoration Model

3.1 Selection of Regularization Term

In this section, we proposed our model as follows.

$$ \mathop {\hbox{min} }\limits_{u} \left[ {\int_{\varOmega } {\varphi (|Du|)dx} + \lambda \int_{\varOmega } {\frac{{(f - u)^{2} }}{u}} dx} \right], $$
(9)

where φ(x) = x log (1 + x). The corresponding Euler-Lagrange equation is:

$$ \nabla \left[ {\left( {\frac{\log (1 + |\nabla u|)}{|\nabla u|} + \frac{1}{1 + |\nabla u|}} \right)\nabla u} \right] + \lambda \left( {\frac{{f^{2} }}{{u^{2} }} - 1} \right) = 0, $$
(10)

Using gradient descent method, Eq. (10) can be transformed to:

$$ \left\{ {\begin{array}{*{20}l} {u_{t} = \nabla \left[ {\left( {\frac{\log (1 + |\nabla u|)}{|\nabla u|} + \frac{1}{1 + |\nabla u|}} \right)\nabla u} \right] + \lambda \left( {\frac{{f^{2} }}{{u^{2} }} - 1} \right)} \hfill & {in\;\varOmega } \hfill \\ {\frac{\partial u}{{\partial \vec{n}}} = 0} \hfill & {on\;the\;boundar\;of\;\;\;\varOmega } \hfill \\ {u|_{t = 0} = u_{0} } \hfill & {in\;\bar{\varOmega }} \hfill \\ \end{array} } \right., $$
(11)

where \( \vec{n} \) is the unit out normal vector of \( \partial \varOmega \).

3.2 Performance of Diffusion

In order to analyze the diffusion performance, local image coordinate system \( \xi - \eta \) is established. As shown in the Fig. 1, the η-axis represents the direction parallel to the image gradient at the pixel level, and the ξ-axis is the corresponding vertical direction.

Fig. 1.
figure 1

Global and local coordinate schematic diagram

According to Fig. 1, we can know:

$$ \left\{ {\begin{array}{*{20}l} {\xi = \frac{1}{|\nabla u|}( - u_{y} ,u_{x} )} \hfill \\ {\eta = \frac{1}{|\nabla u|}(u_{x} ,u_{y} )} \hfill \\ \end{array} ,} \right. $$
(12)

So Eq. (11) can be rewritten as:

$$ u_{t} = \varphi_{1} (|\nabla u|)u_{\xi \xi } + \varphi_{2} (|\nabla u|)u_{\eta \eta } { + }\lambda \left( {\frac{{f^{2} }}{{u^{2} }} - 1} \right), $$
(13)

where:

$$ \left\{ {\begin{array}{*{20}l} {\varphi_{1} (|\nabla u|) = \frac{\log (1 + |\nabla u|)}{|\nabla u|} + \frac{1}{1 + |\nabla u|}} \hfill \\ {\varphi_{2} (|\nabla u|) = \frac{1}{1 + |\nabla u|}{ + }\frac{1}{{(1 + |\nabla u|)^{2} }}} \hfill \\ \end{array} ,} \right. $$
(14)
$$ \left\{ {\begin{array}{*{20}l} {u_{\xi \xi } = \frac{{u_{y}^{2} u_{xx} - 2u_{x} u_{y} u_{xy} + u_{x}^{2} u_{yy} }}{{|\nabla u|^{2} }}} \hfill \\ {u_{\eta \eta } = \frac{{u_{x}^{2} u_{xx} + 2u_{x} u_{y} u_{xy} + u_{y}^{2} u_{yy} }}{{|\nabla u|^{2} }}} \hfill \\ \end{array} } \right., $$
(15)

The \( \varphi_{1} (|\nabla u|) \) and \( \varphi_{2} (|\nabla u|) \) are control functions of the diffusion along the ξ direction and η direction respectively. Now we consider the diffusion of image restoration.

Smooth Area.

When \( |\nabla u| \to 0 \), \( \mathop {\lim }\limits_{|\nabla u| \to 0} \varphi_{1} (|\nabla u|) = 2 \) and \( \mathop {\lim }\limits_{|\nabla u| \to 0} \varphi_{2} (|\nabla u|) = 2 \). So the Eq. (14) is essentially isotropic diffusion equation. That is to say, on the smooth region the diffusion along the ξ direction and η direction in the process of image restoration.

Sharp Area.

When \( |\nabla u| \to \infty \), we obtain \( \mathop {\lim }\limits_{|\nabla u| \to 0} \frac{{\varphi_{2} (|\nabla u|)}}{{\varphi_{1} (|\nabla u|)}} = 0 \). So the diffusion rate in ξ direction in Eq. (14) is much larger than that in the η direction in the sharp region.

Diffusion analysis.

According to the analysis about the diffusion of image restoration, we can see that when the image region is smooth, energy can diffuse along ξ and η direction, and when the image area is sharp, the energy diffuse only along the ξ direction. In addition, for image denoising, our proposed model can avoid the staircase effect in smooth regions and preserve sharp edges effectively.

4 Numerical Implementation

We will describe the corresponding numerical algorithm in this section. The proposed model can be solve by discretization as follows.

$$ u_{i,j}^{k + 1} = u_{i,j}^{k} + \Delta t[\nabla (T(|\nabla u^{k} |)\nabla u^{k} )_{i,j} + \lambda^{k} (\frac{{f^{2} }}{{(u^{k} )^{2} }} - 1)_{i,j} ], $$
(16)

where \( T(|\nabla u^{k} |){ = }\frac{{\log (1 + |\nabla u^{k} |)}}{{|\nabla u^{k} |}} + \frac{1}{{1 + |\nabla u^{k} |}} \), and \( \Delta t \) represents time step. Furthermore, the iterative formula can approximate as:

$$ u_{i,j}^{k + 1} = u_{i,j}^{k} + \Delta t[A(D_{x}^{ + } u^{k} )_{i,j} + \lambda^{k} (\frac{{f^{2} }}{{(u^{k} )^{2} }} - 1)_{i,j} ], $$
(17)

for \( i = 1, \ldots ,M;j = 1, \ldots ,N, \) and M × N represent the size of the image. Here:

$$ A(D_{x}^{ + } u^{k} )_{i,j} = D_{x}^{ - } (T(|D_{x}^{ + } u^{k} |)D_{x}^{ + } u^{k} )_{i,j} + D_{y}^{ - } (T(|D_{y}^{ + } u^{k} |)D_{y}^{ + } u^{k} )_{i,j} , $$
(18)
$$ \left\{ {\begin{array}{*{20}l} {D_{x}^{ \pm } (u_{i,j} ) = \pm (u_{i \pm 1,j} - u_{i,j} )} \hfill \\ {D_{y}^{ \pm } (u_{i,j} ) = \pm (u_{i \pm 1,j} - u_{i,j} )} \hfill \\ {|D_{x} (u_{i,j} )| = \sqrt {(D_{x}^{ + } (u_{i,j} ))^{2} + (m[D_{y}^{ + } (u_{i,j} ),D_{y}^{ - } (u_{i,j} )])^{2} + \delta } } \hfill \\ {|D_{y} (u_{i,j} )| = \sqrt {(D_{y}^{ + } (u_{i,j} ))^{2} + (m[D_{x}^{ + } (u_{i,j} ),D_{x}^{ - } (u_{i,j} )])^{2} + \delta } } \hfill \\ \end{array} } \right., $$
(19)

where \( m[a,b] = (\frac{sign\;a + sign\;b}{2}) \cdot \hbox{min} ([|a|,|b|]) \) and δ > 0 is a positive parameter that is close to zero. With boundary conditions:

$$ \left\{ {\begin{array}{*{20}l} {u_{0,j}^{k} = u_{1,j}^{k} ;} \hfill & {u_{N,j}^{k} = u_{N - 1,j}^{k} } \hfill \\ {u_{i,0}^{k} = u_{i,1}^{k} ;} \hfill & {u_{i,N}^{k} = u_{i,N - 1}^{k} } \hfill \\ \end{array} } \right., $$
(20)

Now note the Eq. (11), the two sides are multiplied by \( \frac{(f - u)u}{f + u} \), and then the integral on the domain Ω can be obtained:

$$ \lambda \int_{\varOmega } {\frac{{(f - u)^{2} }}{u}} = \int_{\varOmega } {\nabla \cdot \left[ {\left( {\frac{\log (1 + |\nabla u|)}{|\nabla u|} + \frac{1}{1 + |\nabla u|}} \right)\nabla u} \right]} \frac{(u - f)u}{u + f}, $$
(21)

According to the assumption that the Gaussian noise n have mean 0 and variance σ2, we can obtain:

$$ \lambda^{k} = \frac{1}{{\sigma^{2} |\varOmega |}}\sum\limits_{i,j} {\left( {\left[ {D_{x}^{ - } (T(|D_{x}^{ + } u^{k} |)D_{x}^{ + } u^{k} ) + D_{y}^{ - } (T(|D_{y}^{ + } u^{k} |)D_{y}^{ + } u^{k} )} \right]} \right)} \frac{{(u^{k} - f)}}{{u^{k} + f}}, $$
(22)

5 Experimental Results

In the numerical experiment, we will use the noise image as the initial value, that is f = u0. Firstly, we display the denoising results about image ‘map1’ and ‘map2’ by the proposed model. Secondly, we compare the repair performance of the ROF model [13], ATV model [17], JIN’s model [12] with proposed model for some images. Finally, we display the denoising results about ultrasound image ‘ultra1’, ‘ultra2’ and ‘ultra3’by the proposed model.

To evaluate the quality of restored images, we use the peak signal-to-noise ratio (PSNR) value and the structure similarity (SSIM) index, which are defined as follows:

$$ PSNR(u,\bar{u}) = 10\log_{10} \left( {\frac{{255^{2} mn}}{{||u - \bar{u}||_{2}^{2} }}} \right), $$
(23)
$$ SSIM(u,\bar{u}) = \frac{{(2\mu_{{\bar{u}}} \mu_{u} + c_{1} )(\sigma_{{\bar{u}u}} + c_{2} )}}{{(\mu_{{\bar{u}}}^{2} + \mu_{u}^{2} + c_{1} )(\sigma_{{\bar{u}}}^{2} + \sigma_{u}^{2} + c_{2} )}}, $$
(24)

where \( u \in {\mathbb{R}}^{m \times n} \) is the clean image, \( \bar{u} \in {\mathbb{R}}^{m \times n} \) is the restored image. μa is the average of a, σais the standard deviation of a, and c1 and c2 are some constants for stability.

Figures 2 and 3 display the restoration results for image (‘map1’ and ‘map2’) by our proposed model, where the noise level \( \sigma = 2,3 \), respectively. Table 1 shows that the PSNR values for the different test images can be got by using the proposed model. It is obvious that the proposed model is fairly effective in reducing the speckle noise in some images (Fig. 5).

Fig. 2.
figure 2

Numerical result of the ‘map1’ image with noise standard deviation \( \sigma = 3 \). (a) Original image (map1); (b) Noisy image; (c) restored image by the proposed model

Fig. 3.
figure 3

Numerical result of the ‘map2’ image with noise standard deviation \( \sigma = 2 \). (a) Original image (map2); (b) Noisy image; (c) restored image by the proposed model

Fig. 4.
figure 4

Numerical result of the ‘lena’ and ‘house’ image with noise standard deviation \( \sigma = 3 \). (a), (g) are Original image; (b), (h) correspond to the noisy version; (c), (i) are the denoising results by the ROF model [13], PSNR = 23.20(lena)/22.48(house); (d), (j) are the denoising results by the ATV model [17], PSNR = 27.88(lena)/27.57(house); (e), (k) are the denoising results by the JIN’s model [12], PSNR = 28.49(lena)/27.92(house); (f), (l) are the denoising results by the proposed model, PSNR = 29.07(lena)/28.09(house)

Table 1. Numerical result of the ‘map1’ and ‘map2’ image by the proposed model
Fig. 5.
figure 5

The detailed image of Fig. 4

Figures 4 and 6 display the restoration results for images (‘lena’, ‘house’, ‘peppers’ and ‘boat’) through ROF model [13], ATV model [17], JIN’s model [12] and the proposed model. Table 2 shows PSNR values for different test images by using the ROF model, ATV model, JIN’s model and the proposed model. Compared with traditional models, the proposed model gets the higher PSNR value. This means that our proposed model is available in reducing the speckle noise in some images.

Fig. 6.
figure 6

Numerical result of the ‘peppers’ and ‘boat’ image with noise standard deviation \( \sigma = 2 \). (a), (g) are Original image; (b), (h) correspond to the noisy version; (c), (i) are the denoising results by the ROF model [13], PSNR = 27.63(peppers)/27.28(boat); (d), (j) are the denoising results by the ATV model [17], PSNR = 28.68(peppers)/27.93(boat); (e), (k) are the denoising results by the JIN’s model [12], PSNR = 29.46(peppers)/28.54(boat); (f), (l) are the denoising results by the proposed model, PSNR = 29.57(peppers)/28.71(boat)

Table 2. The PSNR of the restored images by the different model

Figure 7 shows that the experimental results of real ultrasound images by applying JIN’s model and the proposed model. Table 3 shows that the different iteration for the different test images by using the JIN’s model and the Proposed model. We find that the proposed model is much effective than JIN’s model in obtaining the satisfactory restored images.

Fig. 7.
figure 7

Numerical result of the real ultrasound image (the real ultrasound image from [18]). (a), (d), (g) are noisy image; (b), (e), (h) are the denoising results by the JIN’s model [12]; (c), (f), (1) are the denoising results by the proposed model

Table 3. The iteration of the restored ultrasound images by the different model

6 Conclusion

In this paper, we propose a new speckle noise restoration model based on adaptive TV method. A new convex function is introduced as the TV regularization term. The physical characteristics of the local coordinate system are also be analyzed. Our model can avoid the step effect in the smooth region of the image and keep the sharp edge effectively. Numerical experiments results also show the high efficiency of proposed model in image restoration.