## Basic Theory  
### Dual-Tree Complex Wavelet Transform Based on Bivariate Shrinkage Function  
When processing image with DTCWT, the image is resolved into a desired level by two separable 2D DWT branches, branch \(a\) (real part) and branch \(b\) (imagery part), whose filters are explicitly designed to meet the Hilbert pair requirement. As shown in Figure 1, the \(h_{0}(n)\), \(h_{1}(n)\) are the low pass filter and high pass filter of the filter bank above which produce the scale coefficient and wavelet coefficient of the real part, while the \(g_{0}(n)\), \(g_{1}(n)\) are the low pass filter and high pass filter of the filter bank below that create the scale coefficient and wavelet coefficient of the imaginary part. In the first stage, the image has a line transformation through filter \(\left\{g_{0}(n),g_{1}(n)\right\}\), then it has a rank transformation through filter \(\left\{h_{0}(n),\ h_{1}(n)\right\}\). In the second stage, the image has a line transformation through filter \(\left\{h_{0}(n),\ h_{1}(n)\right\}\), then has a rank transformation through filter \(\left\{g_{0}(n),\ g_{1}(n)\right\}\). The decomposition at each stage produces one low-pass sub band LL and three high-pass sub bands HL, LH, and HH. The sum or difference of each pair of sub bands forms low-frequency wavelet coefficients and six wavelet transform coefficients in six directions. Then, bivariate shrinkage function is applied to process the wavelet coefficients. Bivariate shrinkage function was proposed by [PERSON] and [PERSON] [PERSON] and [PERSON] [PERSON] and [PERSON] (2002) in 2002. The DTCWT with bivariate shrinkage function can be described as follows. Assuming that the image is contaminated by noise, the noised image can be denoted as:  
\[f=x\alpha n, \tag{1}\]  
where the \(f\) is a noisy image; \(\circ\) is the operator represents corresponding to different noise models, e.g., Additive noise is \(+\), and multiplicative noise is \(\times\); \(x\) is the original image; and \(n\) is the noise. It is transformed into dual-tree complex wavelet domain:  
\[y=\omega+n, \tag{2}\]  
where \(y\) stands for the wavelet coefficient of the observed image, \(\omega\) represents the wavelet coefficient of the original image (to be estimated), and \(n\) is the noise wavelet coefficient which is independent and identically distributed and obeys the \(N(0,\sigma^{2})\). Using the maximum a posteriori probability estimate (MAP), the \(\omega\) is estimated from the noise factor \(y\):  
\[\hat{\omega}(y)=arg\ \underset{\omega}{\max}\ p_{\omega|y}(\omega|y), \tag{3}\]  
where \(p_{\omega|y}(\omega|y)\) is the posterior probability function. According to Bayesian estimation theory, Formula (3) can be written:  
\[\hat{\omega}(y)=arg\ \underset{\omega}{\max}[p_{n}(n)\cdot p_{\omega}(\omega)], \tag{4}\]  
\[p_{n}(n)=\frac{1}{2\pi\sigma^{2}}exp\left(-\frac{n_{1}^{2}+n_{2}^{2}}{2\sigma ^{2}}\right), \tag{5}\]  
Figure 1: Dual-tree complex wavelet transform: (**A**) analysis filter bank; and (**B**) synthesis filter bank. \(p_{\omega}(\omega)\) is the bivariate probability distribution function that proposed in [45]:  
\[p_{\omega}(\omega)=\frac{3}{2\pi\sigma_{\omega}^{2}}\cdot exp\left(-\frac{\sqrt{3 }}{\sigma}\sqrt{\omega_{1}^{2}+\omega_{2}^{2}}\right), \tag{6}\]  
\(\omega_{1}\) is the wavelet coefficient, \(\omega_{2}\) is the coefficient of the parent node at the next level of \(\omega_{1}\), and \(\sigma_{\omega}^{2}\) is the variance of the signal and is related to the location of the wavelet coefficient. The maximum posterior probability estimate of \(\omega_{1}\) can be obtained:  
\[\omega_{1}=\frac{\left(\sqrt{y_{1}^{2}+y_{2}^{2}}-\frac{\sqrt{3}\sigma^{2}}{ \sigma_{\omega}}\right)_{+}}{\sqrt{y_{1}^{2}+y_{2}^{2}}}\cdot y_{1}, \tag{7}\]  
\[(g)_{+}=\left\{ \begin{array}{l}0,\ g<0\\ g,\ otherwise\end{array} \right., \tag{8}\]  
This is the bivariate shrinkage function. The rectangular window region \(N(k)\) centered on the first \(k\) wavelet coefficients is defined.