1 Introduction

The task of decomposing a signal or an image into different components is of great interest in many applications. For instance, a prominent practical problem is represented by the separation of the speaker’s voice from the background noise at a cocktail party. In general, a nature image contains geometric parts and textural parts. Image decomposition refers to the splitting of an image into two or more components. In particular, much of this progress has been made through the use of nonlinear partial differential equations to model oscillating patterns which represent texture or noise.

The general variational framework for decomposing image \(f\) into structure and texture is given in Meyer’s models [1] as an energy minimization problem

$$\begin{aligned} \mathop {\inf }\limits _{\left({u,v} \right)\in X_{1} \times X_{2} } F_{1} \left( u \right)+\lambda F_{2} \left( v \right)\!,\,\text{ s.t.}\,f=u+v, \end{aligned}$$
(1)

where \(F_1, \, F_2 \ge 0\) and \(u,v\) denote the geometric parts (cartoon) and oscillatory parts (textures) of image \(f\), respectively. The constant \(\lambda \) is a tuning parameter. It is a key to determine a good model that one can appropriately choose the space \(X_1, \, X_2\) for cartoon \(u\) and texture \(v\) such that \(F_1 \left( u \right)\ll F_{2} \left( u \right)\) and \(F_1 \left( v \right)\gg F_2 \left( v \right)\), such conditions would insure a clear cartoon + texture separation; In other words, if \(u\) is only cartoon, without texture, then texture components must be penalized by \(F_1\), but not by \(F_2\), and vice-versa.

In [1], Meyer introduces the notion that image denoising can be thought of as image decomposition for the application of texture extraction. Furthermore, he introduces a variant of the popular model by Rudin, Osher and Fatemi (ROF) [2] based on a space called the \(G\) space for this very purpose. The idea is to replace the \(L^{2}\) norm in the ROF model with a weaker norm that better captures textures or oscillating patterns. However, in practice, the model is difficult to implement, so the authors in [3] suggest to overcome this difficulty using the following approximation model

$$\begin{aligned}&\mathop {\inf }\limits _{u,g_1,g_2} \int \limits _{\Omega } \left| {\nabla u} \right|\text{ d}x+\lambda \int \limits _{\Omega } \left| {f-u-\partial _{x} g_{1} -\partial _y g_{2}} \right|^{2}\text{ d}x\nonumber \\&\quad +\mu \left[ {\int \limits _{\Omega } {\left( {\sqrt{g_{1}^{2}+g_{2}^{2}}} \right)^{p}\text{ d}x} } \right]^{\frac{1}{p}}. \end{aligned}$$
(2)

In a subsequent work, Osher, Sole and Vese (OSV) [4] let \(p=2\) and gave the another approximation model as follows.

$$\begin{aligned} \mathop {\inf }\limits _{u} E\left( u \right)=\int \limits _\Omega {\left| {\nabla u} \right|} \text{ d}x+\frac{\gamma }{2}\left\Vert {f-u} \right\Vert_{{H}^{-1}}^{2}\!. \end{aligned}$$
(3)

The \(H^{-1}\) norm is defined as \(\left\Vert{f-u} \right\Vert_{{H}^{-1}}^{2} =\int _{\Omega } \left| \nabla \left( {\Delta ^{-1}} \right)\right.\) \(\left.\left({f-u} \right) \right|^{2}\text{ d}x\), and the definition of inverse Laplacian \(\Delta ^{-1}\) is in [4]. In the Euler-Lagrange variational framework, this energy minimized by the solution of the following fourth-order PDE:

$$\begin{aligned} {\frac{\partial u}{\partial t}}=-\Delta \left( {\text{ div}\left( {\frac{\nabla u}{\left| {\nabla u} \right|}} \right)} \right)+\gamma \left( {f-u} \right) \end{aligned}$$
(4)

with the boundary condition mentioned in [4]. Numerical experiments show that the Eqs. (2) and (3) separate texture from the object better than the ROF model, especially the texture component contains much less cartoon information. Compared with Eq. (2), the Eq. (3) has few parameter, so it is easy to implement. However, a particular caveat of such TV regularization is the staircasing effect. Generally speaking, the staircasing effect severely impacts the quality of image denoising and decomposition. Thus, ameliorating the staircasing effect should be considered a priority in image decomposition problems.

There are many variational models about image denoising and decomposition [511], such as the adaptive TV determined by a threshold parameter given in advance [5]; however, the threshed parameter is difficult to be chosen; another way is that the higher-order variational model is introduced in [7], but the higher-order equation can make the image edges and texture blurry; though the non-convex model [9] can obtain the better results, it has not the global minimal solution.

Recently, a new mathematical framework of total generalized variation (TGV) is proposed by Bredies, Kunisch and Pock [12]. The main property of TGV regularization is that it allows to reconstruct piecewise polynomial functions of arbitrary order (piecewise constant, piecewise affine, piecewise quadratic, ...). As the TV regularizer, the TGV regularizer has the nice property of being convex, this allows to compute a globally optimal solution. Many good results have been obtained about TGV in [1215].

In this paper, we propose a new image decomposition model based on the adaptive second-order TGV. In the new model, an edge indicator function is introduced to the second-order TGV. So the new model can take advantage of the properties of the second-order TGV to extract the texture while reducing the noise; meanwhile, the edge indicator function can adaptively preserve the key features such as object boundaries. To solve the proposed model, the split Bregman method and primal-dual approach are used in the numerical algorithm. Experimental results show that the proposed model can achieve a better trade-off between noise removal and image decomposition while avoiding the staircase effect.

This paper is organized as follows. In Sect. 2, we briefly introduce the mathematical framework used in this paper. In Sect. 3, the proposed model and the corresponding algorithm are given. In Sect. 4, the numerical discrete method is discussed. In Sect. 5, some numerical experiments are given to test the proposed algorithm. At last, the conclusions are drawn out in Sect. 6.

2 Mathematical framework

This section is mainly devoted to the introduction of the definition of TGV and some of its basic properties [1215].

Definition 1

Let \(\Omega \subset R^{d}\) be a be a bounded domain, \(k\ge 1\) and \(\alpha _{0},\ldots ,\alpha _{k-1} >0\). Then, the TGV of order \(k\) with weight \(\alpha \) for \(u\in L_\mathrm{loc}^{1} \left( \Omega \right)\) is defined as the value of the functional

$$\begin{aligned}&\text{ TGV}_{\alpha }^{k} \left( u \right) \nonumber \\&\quad = \sup \left\{ {\int \limits _\Omega {u \,\text{ div}^{k}\phi \, \text{ d}x:\phi \in C_{c}^{k} \left( {\Omega ,\text{ Sym}^{k}\left( {R^{d}} \right)} \right)} } \right.\!,\nonumber \\&\qquad \quad \left.{\left\Vert {\text{ div}^{l}\phi } \right\Vert_{\infty } \le \alpha _{l},\,l=0,\ldots ,k-1} \right\} , \end{aligned}$$
(5)

where \(C_{c}^{k} \left({\Omega ,\text{ Sym}^{k}\left( {R^{d}} \right)} \right)\) and \(\text{ Sym}^{k}\left( {R^{d}} \right)\) denote the space of continuously differentiable symmetric \(k\)-tensors and symmetric \(k\)-tensors in \(\Omega \), respectively. The \(l\)-divergence of a symmetric \(k\)-tensors field is a symmetric (\(k-l\))-tensors field, which is given by \(\left( {\text{ div}^{l}v} \right)_{\beta }=\sum _{v\in M_{l}} {\frac{l!}{\gamma !}} \frac{\partial ^{l}v_{\beta +\gamma }}{\partial x^{\gamma }}\) for each component \(\beta \in M_{k-l}\), where \(M_k\) are the multi-indices of order \(k\), that is, \(M_{k}=\left\{ {\beta \in {\mathbb{N }}^{d}\left| {\sum _{i=1}^{d} {\beta _{i} =k}} \right.} \right\} \).

Definition 2

The space \(\text{ BGV}_\alpha ^{k} \left( \Omega \right)=\left\{ u\in L^{1}\left( \Omega \right)\left| \text{ TGV}_{\alpha }^{k}\right.\right.\) \(\left.\left( u \right)<\infty \right\} \), equipped with the norm \(\left\Vert u \right\Vert_{\mathrm{BGV}_{\alpha }^{k}} =\left\Vert u \right\Vert_1 +\text{ TGV}_{a}^{k} \left( u \right)\), is called the space of functions of bounded generalized variation of order \(k\) with weight \(\alpha \). In particular, when \(k=2,\,\text{ BGV}_{\alpha }^{2}\left( \Omega \right)\) coincides with the \(\text{ BV}\left( \Omega \right)\) (bounded variation space), in the topological sense.

From the above definition 1, we can see that when \(k=1\) and \(\alpha =1\), Eq. (5) corresponds to the dual definition of the TV semi-norm, that is, TGV is indeed a generalization of the TV regularizer. Using the Legendre-Fenchel duality, the problem (5) can be transformed to its primal formulation [12]:

$$\begin{aligned}&\text{ TGV}_{\alpha }^{k}\left( u \right)=\nonumber \\&\quad \mathop {\inf }\limits _{\mathop {u_{l} \in C_{c}^{k-l} \left({\Omega , \mathrm{Sym}^{l}\left({R^{d}} \right)} \right)} \limits _{l=1,\ldots ,k-1,\,u_0 =u,\,u_{k} =0}} \sum \limits _{l=1}^{k}{\alpha _{k-l} \int \limits _{\Omega }{\left| {\varepsilon \left( {u_{l-1} } \right)-u_{l}} \right|\text{ d}x} }, \end{aligned}$$
(6)

where \(\varepsilon \left( {u_{l-1}} \right)\) denotes the symmetrized gradient operator

$$\begin{aligned} \varepsilon \left( {u_{l-1} } \right)=\frac{\nabla u_{l-1} +\left( {\nabla u_{l-1} } \right)^{T}}{2}. \end{aligned}$$

From Eqs. (5), (6), we can see that this representation has converted functional (5) which depends on higher-order derivatives into a functional of recursive expression depending only on first-order derivatives. Using this representation, one can intuitively assess how the TGV is working. That is, \(\text{ TGV}_\alpha ^{k} \left( u \right)\) automatically balances the first- and higher-order derivatives instead of using any fixed combination. In particular, when \(k=2\), it corresponds to the second-order TGV. Different from the usual TV, \(\text{ TGV}_{\alpha }^{2}\) as a regularizer does not lead to the staircasing effect. Moreover, \(\text{ TGV}_{\alpha }^{2}\) has many good properties, such as it is proper, convex and lower semi-continuous on each \(L^{p}\left( \Omega \right),\,1\le p<\infty \), and it is a semi-norm on \(\text{ BV}\left( \Omega \right)\), etc (see Ref. [12, 13]). These properties have been widely applied to the image processing.

3 The proposed model and algorithm

Motivated by the TGV, we modify the \(\text{ TGV}_{\alpha }^{2}\) and propose an adaptive image decomposition model

$$\begin{aligned} \mathop {\min }\limits _{u} E\left( u \right)=\Psi \left( u \right)+\frac{\beta }{2}\left\Vert {\nabla \left( {\Delta ^{-1}} \right)\left( {f-u} \right)} \right\Vert_{2}^{2}, \end{aligned}$$
(7)

where \(\Psi \left( u \right)=\mathop {\min }_{{\upomega }\in BD\left( \Omega \right)} \alpha _{1} \int _{\Omega } {g\left( x \right)} \left| {\nabla u-{\upomega }} \right|\text{ d}x+\alpha _{0} \left\Vert {\varepsilon \left( {\upomega } \right)} \right\Vert_{1},\, g\left( x \right)=\frac{1}{1+\text{ K}\left| {\nabla G_{\sigma }{*}f} \right|^{2}}\) is an edge indicator function, \(G_{\sigma } \left( x \right)=\frac{1}{2\pi \sigma ^{2}}\exp \left( {-\frac{\left| x \right|^{2}}{2\sigma ^{2}}} \right)\) is the Gaussian filter with parameter \(\sigma ,\text{ K}\ge 0\) is the contrast factor. \(BD\left( \Omega \right)\) denotes the space of vector fields of bounded deformation, that is,\({\varvec{\upomega }}\in L^{1}\left( {\Omega ,R^{d}} \right)\) such that the distributional symmetrized derivative \(\varepsilon \left( {\varvec{\upomega }} \right)=\frac{\nabla {\varvec{\upomega }}+\nabla {\varvec{\upomega }}^{T}}{2}\) is a \(S^{d\times d}\)-valued Radon measure [14]. \(\alpha _{1} >0,\,\alpha _0 >0,\,\beta >0\) are the tuning parameters, \(f\) is the observed image.

Let us briefly mention some properties of the proposed model (7). First, when \(\mathrm{K}=0\), then \(g\left( x \right)=1\) and \(\Psi \left( u \right)\) turns into the second-order TGV. Second, \(g\left( x \right)\) can better preserve the edges in the cartoon of image [16]. Finally, from the definition 1 and definition 2, we can see that \(\Psi \left( u \right)\) can measure the jump of the derivatives, from the zeroth to the 1-th order, so it can reduce the staircase effect. In addition, each function of bounded variation admits a finite TGV value, which makes the notion to be suitable for images. This means that piecewise constant images can be captured by TGV model. Compared (7) with (3), the proposed model (7) can reduce the staircase effect while decomposing image, meanwhile, it can adaptively preserve the key features such as edges, which is very important in image decomposition.

3.1 Split Bregman algorithm for the proposed model (7)

Recently, the split Bregman method has become a very effective tool for solving various inverse problems [1720]. The method is proven to be equivalent to the augmented Lagrangian method [21] and also belongs to the framework of the Douglas-Rachford splitting algorithm [22]. With the advantages such as fast convergence speed, numerical stabilities and smaller memory footprint, etc., see details in [22]. The split Bregman method has been used widely in the image processing. In the following, we shall use it to solve the proposed model (7).

Firstly, we introduce a variable \(z\) in Eq. (7) and let \(z=u\). Then we can get

$$\begin{aligned} \mathop {\min }\limits _{u,\,z} \Psi \left( u \right)+\frac{\beta }{2}\left\Vert {\nabla \left( {\Delta ^{-1}} \right)\left( {f-z} \right)} \right\Vert_{2}^{2},\quad \text{ s.t.}\,\, z=u. \end{aligned}$$
(8)

Introducing the auxiliary variable \(d\) and using the split Bregman method, we have

$$\begin{aligned} u^{k+1}&= \arg \mathop {\min }\limits _u \Psi \left( u \right)+\frac{\mu }{2}\left\Vert {u-z^{k}-d^{k}} \right\Vert_{2}^{2}, \end{aligned}$$
(9)
$$\begin{aligned} z^{k+1}&= \arg \mathop {\min }\limits _z \frac{\beta }{2}\int \limits _\Omega {\left| {\nabla \left( {\Delta ^{-1}\left( {f-z} \right)} \right)} \right|^{2}} \text{ d}x\nonumber \\&\quad +\frac{\mu }{2}\left\Vert {u^{k+1}-z-d^{k}} \right\Vert_{2}^{2}, \end{aligned}$$
(10)
$$\begin{aligned} d^{k+1}&= d^{k}-u^{k+1}+z^{k+1}, \end{aligned}$$
(11)

3.2 Chambolle and Pock’s algorithm for Eq. (9)

In this subsection, we use the Chambolle and Pock’s primal-dual algorithm [23] to solve the first subproblem (9). The algorithm has been shown to be a good choice for large-scale convex optimization problems in image processing [23].

Definition 3

Assume that \(\Omega \) is a Hilbert space. The dual, also called the polar, of the proper functional\(\varphi :\Omega \rightarrow R\cup \left\{ \infty \right\} \) is defined as

$$\begin{aligned} \varphi ^{{*}}:\Omega ^{{*}}\rightarrow R\cup \left\{ \infty \right\} ,\,\varphi ^{{*}}\left( {w^{{*}}} \right)\!=\mathop {\max }\limits _{w\in \Omega } \left\{ {\left\langle {w^{{*}},w} \right\rangle \!-\!\varphi \left( w \right)} \right\} . \nonumber \\ \end{aligned}$$
(12)

If \(\varphi \) is a proper, lower-semi-continuous and convex function, we have the bi-conjugate \(\varphi ^{{*}{*}}=\varphi \).

For Eq. (9), we first set

$$\begin{aligned}&\vartheta _{1} =\nabla u-{\varvec{\omega }},\,\vartheta _2 =\varepsilon \left( {\varvec{\omega }} \right)\!,\nonumber \\&F_1 \left( {\vartheta _1} \right)=\alpha _1 \int \limits _\Omega g \left| {\vartheta _1} \right|\text{ d}x,\,F_2 \left( {\vartheta _2} \right)=\alpha _0 \int \limits _\Omega {\left| {\vartheta _2} \right|} \text{ d}x. \end{aligned}$$
(13)

It is obvious that \(F_1,F_2\) are both proper, lower-semi-continuous and convex functions. From the above Definition 3, for the dual variable \(\vartheta _1^{*}\) of \(\vartheta _1\), we have

$$\begin{aligned} F_1^{*} \left( {\vartheta _1^{*} } \right)&= \mathop {\max }\limits _{\vartheta _{1}} \left\langle {\vartheta _1^{*},\vartheta _1} \right\rangle -F_1 \left( {\vartheta _1 } \right)\nonumber \\&= \mathop {\max }\limits _{\vartheta _1} \left\langle {\vartheta _1^{*},\vartheta _1} \right\rangle -\alpha _1 \int \limits _\Omega {g\left( x \right)\left| {\vartheta _1 } \right|} \text{ d}x \nonumber \\&= \left\{ {\begin{array}{ll} 0,&\,if\left| {\vartheta _1^{*} } \right|\le g\alpha _{1}, \\ +\infty ,&\,if\left| {\vartheta _1^{*}} \right|>g\alpha _{1}. \\ \end{array}} \right. \end{aligned}$$
(14)

Similarly, for the dual variable \(\vartheta _2^{*}\) of \(\vartheta _2\), there is

$$\begin{aligned} F_2^{*} \left( {\vartheta _2^{*} } \right)=\left\{ {\begin{array}{ll} 0,&\,if\left| {\vartheta _2^{*}} \right|\le \alpha _0, \\ +\infty ,&\,if\left| {\vartheta _2^{*}} \right|>\alpha _0. \end{array}} \right. \end{aligned}$$
(15)

From Eqs. (13)–(15) and \(F_1^{{*}{*}} \!=\!F_1,\,F_2^{{*}{*}} \!=\!F_2\), let \(\mathbf{p}\!=\!\vartheta _1^{*}, \mathbf{q}=\vartheta _2^{*}\), then we can get

$$\begin{aligned}&F_{1}^{*} ({{\varvec{p}}})=\left\{ {\begin{array}{l@{\quad }l} 0,&\,if\left| \mathbf{p} \right|\le g\alpha _1, \\ +\infty ,&\,if\left| \mathbf{p} \right|>g\alpha _1. \\ \end{array}} \right., \nonumber \\&F_{2}^{*} (\mathbf{q})=\left\{ {\begin{array}{l@{\quad }l} 0,&\,if\left| \mathbf{q} \right|\le \alpha _0, \\ +\infty ,&\,if\left| \mathbf{q} \right|>\alpha _0. \end{array}} \right. \end{aligned}$$
(16)
$$\begin{aligned}&F_1 \left( {\nabla u-{\varvec{\upomega }}} \right)=\mathop {\max }\limits _\mathbf{p} \left\langle {\nabla u-{\varvec{\upomega }},\mathbf{p}} \right\rangle -F_1^{*} \left( \mathbf{p} \right)\!,\\&F_2 \left( {\varepsilon \left( {\varvec{\upomega }} \right)} \right)=\mathop {\max }\limits _\mathbf{q} \left\langle {\varepsilon \left( {\varvec{\upomega }} \right)\!,\mathbf{q}} \right\rangle -F_2^{*} \left( \mathbf{q} \right)\!.\nonumber \end{aligned}$$

So Eq. (9) can be rewritten

$$\begin{aligned}&\arg \mathop {\min }\limits _u \Psi \left( u \right)+\frac{\mu }{2}\left\Vert {u-z^{k}-{\varvec{d}}^{k}} \right\Vert_2^2 \nonumber \\&\quad =\arg \mathop {\min }\limits _{u,{\varvec{\upomega }}} \alpha _1 \int \limits _\Omega {g\left( x \right)} \left| {\nabla u-{\varvec{\upomega }}} \right|\text{ d}x+\alpha _0 \left\Vert {\varepsilon \left( {\varvec{\upomega }} \right)} \right\Vert_1 \nonumber \\&\qquad +\frac{\mu }{2}\left\Vert {u-z^{k}-d^{k}} \right\Vert_2^2 \nonumber \\&\quad =\arg \mathop {\min }\limits _{u,{\varvec{\upomega }}} \,F_1 \left( {\nabla u-{\varvec{\upomega }}} \right)+F_2 \left( {\varepsilon \left( {\varvec{\upomega }} \right)} \right)\nonumber \\&\qquad +\frac{\mu }{2}\left\Vert {u-z^{k}-d^{k}} \right\Vert_2^2 \nonumber \\&\quad =\arg \mathop {\min }\limits _{u,{\varvec{\upomega }}} \mathop {\max }\limits _{\mathbf{p}\in P,\mathbf{q}\in Q} \left\langle {\nabla u-{\varvec{\upomega }},\mathbf{p}} \right\rangle +\left\langle {\varepsilon \left( {\varvec{\upomega }} \right),\mathbf{q}} \right\rangle \nonumber \\&\qquad +\frac{\mu }{2}\left\Vert {u-z^{k}-d^{k}} \right\Vert_2^2 , \end{aligned}$$
(17)

where \( P=\left\{ {\mathbf{p}=\left( {p_1,p_2} \right)^{T}\left| {\left| {\mathbf{p}\left( x \right)} \right|\le g\alpha _1} \right.} \right\} \), \(Q=\left\{ {\mathbf{q}=\left( {\begin{array}{ll} q_{11},&q_{12} \\ q_{21},&q_{22} \\ \end{array}} \right)\left| {\left\Vert \mathbf{q} \right\Vert_{\infty }\le \alpha _0 } \right.} \right\} \).

Applying the Chambolle and Pock’s algorithm 1 in [23] to the last formula of Eq. (17), we can get the iterative schemes for Eq. (9) as follows

$$\begin{aligned} \left\{ {\begin{array}{l} \mathbf{p}^{k+1}=\text{ proj}_{P} \left( {\mathbf{p}^{k}+\delta \left( {\nabla \bar{{u}}^{k}- {\bar{{\varvec{\upomega }}}}^{k}} \right)} \right)\!,\\ \mathbf{q}^{k+1}=\text{ proj}_Q \left( {\mathbf{q}^{k}+\delta \left( {\varepsilon \left( {{\bar{{\varvec{\upomega }}}}^{k}} \right)} \right)} \right)\!,\\ u^{k+1}=\frac{\tau \mu \left( {z^{k}+d^{k}} \right)+u^{k}+\tau \text{ div}\left( {\mathbf{p}^{k+1}} \right)}{1+\tau \mu },\\ {\varvec{\upomega }}^{k+1}={\varvec{\upomega }}^{k}+\tau \left( {\mathbf{p}^{k}+\text{ div}^{\hbar }\left( {\mathbf{q}^{k+1}} \right)} \right)\!,\\ \bar{{u}}^{k+1}=2u^{k+1}-u^{k}, \\ {\bar{{\varvec{\upomega }}}}^{k+1}= 2{{\varvec{\upomega }}^{k+1}}-{{\varvec{\upomega }}^{k}},\\ \end{array}} \right. \end{aligned}$$
(18)

Note that in the above Eq. (18), \(\delta ,\tau >0,\,\text{ div}^{\hbar }\) is defined in Sect. 4 and

$$\begin{aligned}&\text{ proj}_P \left( {\tilde{\mathbf{p}}^{l}} \right)=\frac{\tilde{\mathbf{p}}^{l}}{\max \left( {1, {\left| {\tilde{\mathbf{p}}^{l}} \right|}/{g\alpha _1 }} \right)},\, \\&\text{ proj}_Q \left( {\tilde{\mathbf{q}}^{l}} \right)=\frac{\tilde{\mathbf{q}}^{l}}{\max \left( {1,{\left| {\tilde{\mathbf{q}}^{l}} \right|}/{\alpha _0}} \right)}. \end{aligned}$$

3.3 Gauss-Seidel method for Eq. (10)

For the second subproblem (10), its Euler-Lagrange equation  is

$$\begin{aligned} \beta \left( {f-z} \right)+\mu \Delta \left( {z+d^{k}-u^{k+1}} \right)=0, \end{aligned}$$
(19)

that is,

$$\begin{aligned} \left( {\beta -\mu \Delta } \right)z^{k+1}=\beta f-\mu \Delta \left( {u^{k+1}-d^{k}} \right). \end{aligned}$$
(20)

To solve the Eq. (19), one can use several approaches such as Gauss-Seidel iteration, the gradient descent method or discrete cosine transform (DCT). Here, we use the Gauss-Seidel iteration to solve the problem. More explicitly, \(z^{k+1}\) can be attained from the following formula

$$\begin{aligned}&z_{i,j}^{k+1} =\frac{\mu }{\beta +4\mu }\left(z_{i+1,j}^k +z_{i-1,j}^k +z_{i,j+1}^k +z_{i,j-1}^{k}\right.\nonumber \\&\quad \left.\!-\!\rho _{1,i-1,j}^k \!+\!\rho _{1,i,j}^k \!-\!\rho _{2,i,j-1}^k +\rho _{2,i,j}^k \right)\!+\!\frac{\beta }{\beta \!+\!4\mu }f_{i,j} \end{aligned}$$
(21)

where \(\rho _1 =\partial _x^+ \left( {u^{k+1}-d^{k}} \right)\!,\rho _2 =\partial _y^{+} \left( {u^{k+1}-d^{k}} \right)\!,\,\partial _{x}^{+},\partial _{y}^{+}\) denote the first-order forward difference operators of the directions \(x\) and \(y\), respectively.

In summary, the complete algorithm for solving the model (7) can be described as follows

Algorithm 1. Split Bregman algorithm for Eq. (7)

\(\bullet \) Initialization: \(u^{0},z^{0},d^{0},\quad k=0\);

\(\bullet \) Step 1: Compute \(u^{k+1}\) by (18);

\(\bullet \) Step 2: Compute \(z^{k+1}\) by (21);

\(\bullet \) Step 3: Compute \(d^{k+1}\) by the iterative formula

      \(d^{k+1}=d^{k}-u^{k+1}+z^{k+1}\);

\(\bullet \) \(k\leftarrow k+1\);

\(\bullet \) Until: \({\left\Vert {u^{k+1}-u^{k}} \right\Vert_2^2 }/{\left\Vert {u^{k}} \right\Vert_2^2 }\le C\); otherwise return to step 1.

4 Numerical discretisation

In order to implement the proposed algorithm 1 on a digital computer, some discrete notations need to be introduced. For simplicity, we let the image domain be square of size \(m\times n\) and the vector \({\varvec{\upomega }}=\left( {\omega _1,\,\omega _2} \right)^{T}\). The first-order forward and backward difference operators are, respectively, defined as

$$\begin{aligned} \begin{aligned}&\left( {\partial _x^{+} u} \right)_{i,j} =\left\{ {\begin{array}{l@{\quad }l} u_{i+1,j} -u_{i,j},&\, \text{ if} \,1\le i<m, \\ 0,&\,\text{ if}\,i=m, \\ \end{array}} \right.\!\!,\,\,\, \\&\left( {\partial _y^{+} u} \right)_{i,j} =\left\{ {\begin{array}{ll} u_{i,j+1} -u_{i,j},&\, \text{ if} \,1\le j<n, \\ 0,&\,\text{ if} \,j=n. \\ \end{array}} \right. \\&\left( {\partial _x^- u} \right)_{i,j} =\left\{ {\begin{array}{ll} u_{i,j} -u_{i-1,j},&\, \text{ if}\,1<i<m, \\ u_{1,j},&\,\text{ if} \,i=1, \\ -u_{m-1,j},&\,\text{ if} \,i=m, \\ \end{array}} \right.\!\!,\,\,\,\\&\left( {\partial _y^{-} u} \right)_{i,j} =\left\{ {\begin{array}{ll} u_{i,j} -u_{i,j-1},&\, \text{ if}\,1<j<n, \\ u_{i,1},&\,\text{ if} \,j=1, \\ -u_{i,n-1},&\,\text{ if}\,j=n. \\ \end{array}} \right. \end{aligned} \end{aligned}$$
(22)

The gradient operator \(\nabla =\left( {\partial _x^{+},\partial _y^{+} } \right)^{T}\), and the divergence operator \(\text{ div}=-\nabla ^{{*}}\) is defined by \(\text{ div}\left( {p_1,p_2 } \right)=\partial _x^{-} p_1 +\partial _y^{-} p_2\), where \(\nabla ^{{*}}\) is the adjoint operator of \(\nabla \). The discrete version of the symmetric gradient operator is

$$\begin{aligned} \varepsilon \left( {\varvec{\upomega }} \right)&= \frac{1}{2}\left( {\nabla {\varvec{\upomega }}+\nabla {\varvec{\upomega }}^{T}} \right)\nonumber \\&= {\left( {\begin{array}{l@{\quad }l} \partial _x^{+} \omega _1,&\,\frac{1}{2}\left( {\partial _y^{+} \omega _1 +\partial _x^{+} \omega _2 } \right) \\ \frac{1}{2}\left( {\partial _x^{+} \omega _2 +\partial _y^{+} \omega _1 } \right)\!,&\,\partial _y^{+} \omega _2 \\ \end{array}} \right)}. \nonumber \\ \end{aligned}$$
(23)

If set \(\text{ div}^{\hbar }=-\varepsilon ^{*}\), where \(\varepsilon ^{*}\) denotes the adjoint operator of \(\varepsilon \), and let \(\mathbf{q}=\left( {\begin{array}{ll} q_{11},&q_{12} \\ q_{21},&q_{22} \\ \end{array}} \right)\), then we have \(\text{ div}^{\hbar }\left( \mathbf{q} \right)=\left( {\begin{array}{l} \partial _x^{-} q_{11} +\,\partial _y^{-} q_{12} \\ \partial _x^{-} q_{21} +\,\partial _y^{-} q_{22} \\ \end{array}} \right)\).

5 Numerical experiments

In this section, we demonstrate the performance of our proposed model for image denoising and decomposition. The numerical results are compared with those obtained by the OSV model, the models in [5] and [9], respectively. We use “Lena” (\(256 \times 256\)),“Barbara” (\(400 \times 393\)) and the synthetic image (\(171 \times 179\)) as the test images. In order to measure the quality of restored images, peak signal to noise ratio (PSNR), mean absolute-deviation error (MAE) [24] and structural similarity (SSIM) [25] are employed. Moreover, in all our experiments, the parameters in the edge indicator function are chosen \(\mathrm{K}=0.001,\) \(\sigma =1\), and the parameter in the stopping criterion \(C=3\times 10^{-4}\).

Experiment 1

We take the “Lena” image (\(256 \times 256\)) for denoising test. “Lena” image is corrupted with Gaussian white noise and the noise standard deviation is 20. The parameters in our algorithm are chosen \(\alpha _1 =5,\,\alpha _0 =5,\,\beta =0.2,\,\mu =0.01\), respectively. Figure 1 has given the experimental results. From the restored images and their corresponding magnifying results in Fig. 1, it is clear to see that the OSV model and the model in [9] produce obvious staircasing effect. But, for our model as expected, the smooth regions are well processed and the staircasing effect is successfully avoided while removing the noise, which makes the cartoon part restored by our model to look more natural than other two models. Moreover, the related data in Table 1. also demonstrate that the proposed model is more effective.

Fig. 1
figure 1

Comparison of denoising results from three different models using “Lena” image. a Original image, b Noisy image, c \(u\) by OSV model, d \(u\) by the model in [9], e \(u\) by our model, f Local zoom of \(u\), OSV model, g Local zoom of \(u\), the model in [9], h Local zoom of \(u\), our model

Table 1 PSNR, MAE, SSIM for different models in experiment 1

Experiment 2

We take the “Barbara” image (\(400 \times 393\)) with Gaussian white noise for decomposition experiment. The noise standard deviation is 20. The parameters in the proposed algorithm are chosen to be \(\alpha _1 =10,\;\alpha _0 =5, \;\beta =0.2,\;\mu =0.01\). The experiment results are shown in Fig. 2. From these results, it is not difficult to find that the staircasing effect appears in the cartoon component \(u\) of the OSV model, which can be seen clearly in Fig. 2i. Though the model in [5] can reduce the staircasing effect, the cartoon part has become blurry and there are some speckle pixels. Compared with the OSV model, The proposed model cannot only avoid the staircasing effect in the cartoon component \(u\) which can be seen clearly from Fig. 2k, but also extract the texture components successfully from the observed image with very few structural features. Furthermore, Compared with the model in [5], the cartoon component \(u\) of our model looks more natural and clear. So our proposed method can achieve a better trade-off between the noise removal and image decomposition, while avoiding the staircasing effect effectively.

Fig. 2
figure 2figure 2

a Original image, b noisy image, c cartoon component \(u\) of OSV model (\(\gamma =0.05\)), d \(f-u\) of OSV model, e cartoon component \(u\) of the model in [5], f \(f-u\)of the model in [5], g cartoon component \(u\) of our model, h \(f-u\) of our model, i local zoom of \(u\), OSV model, j local zoom of \(u\), the model in [5], k local zoom of \(u\), our model

Experiment 3

We consider the clean synthetic image (\(171 \times 179\)) for the cartoon \(+\) texture decomposition test. In the experiment, the parameters in our proposed algorithm are chosen to be \(\alpha _1 =5,\;\alpha _0 =5, \;\beta =0.2,\;\mu =0.01\). Figure 3 give the decomposition results of the synthetic image. From which we can easily find that the edges are retained successfully in cartoon component by our proposed model. These can be clearly seen from Fig. 3e, such as the edges of triangle in Fig. 3e. Moreover, by comparing the Fig. 3b, d, we can also clearly see that the textures are extracted better by our proposed model, and there are some textures are not yet extracted out from the cartoon components by the OSV model.

Fig. 3
figure 3

continued

6 Conclusions

In this paper, we propose a new variational model for image decomposition by adaptive TGV regularizer. Compared with the OSV model based on TV regularizer, the proposed model cannot only preserve the key features such as object boundaries while avoiding staircasing, but also can well extract the texture. In addition, To solve the proposed model, the split Bregman method and primal-dual approach are used in the numerical algorithm. The numerical experiments show that the proposed model is more effective for image decomposition.