The stationary wavelet transform (SWT) is a wavelet transform algorithm designed to overcome the lack of translation-invariance of the discrete wavelet transform (DWT). Translation-invariance is achieved by removing the downsamplers and upsamplers in the DWT and upsampling the filter coefficients by a factor of 2 ( j − 1 ) {\displaystyle 2^{(j-1)}} in the j {\displaystyle j} th level of the algorithm. The SWT is an inherently redundant scheme as the output of each level of SWT contains the same number of samples as the input – so for a decomposition of N levels there is a redundancy of N in the wavelet coefficients. This algorithm is more famously known by the French expression à trous, meaning “with holes”, which refers to inserting zeros in the filters. It was introduced by Holschneider et al.
Definition The basic discrete wavelet transform (DWT) algorithm is adapted to yield a stationary wavelet transform (SWT) which is independent of the origin. The approach of the SWT is simple, which is by applying suitable high-pass and low-pass filters to the data at each level, resulting in the generation of two sequences at the subsequent level. Without employment of downsampling techniques, the length of the new sequences is maintained to be the same as the original sequences. Rather than employing decimation similar to the standard wavelet transform which removes elements, the filters at each level are adjusted by augmenting them with zero-padding, as explained in the following:
Z x 2 j = x j , Z x 2 j + 1 = 0 {\displaystyle {Zx}_{2j}=x_{j},\ {Zx}_{2j+1}=0} for all integers j {\displaystyle j}
D 0 r H [ r ] = H D 0 r {\displaystyle D_{0}^{r}H^{\left[r\right]}=HD_{0}^{r}}
D 0 r G [ r ] = G D 0 r {\displaystyle D_{0}^{r}G^{\left[r\right]}=GD_{0}^{r}}
where Z {\displaystyle Z} is the operator that intersperses a given sequence with zeros, for all integers j {\displaystyle j} .
D 0 r {\displaystyle D_{0}^{r}} is the binary decimation operator
H [ r ] {\displaystyle H^{\left[r\right]}} is a filter with weights h 2 r [ r ] j = h j {\displaystyle {h_{2^{r}}^{\left[r\right]}}_{j}=h_{j}} and h k [ r ] = 0 {\displaystyle h_{k}^{\left[r\right]}=0} if k {\displaystyle k} is not a multiple of 2 r . {\displaystyle 2^{r}.}
G [ r ] {\displaystyle G^{\left[r\right]}} is a filter with weights g 2 r [ r ] j = h j {\displaystyle {g_{2^{r}}^{\left[r\right]}}_{j}=h_{j}} and g k [ r ] = 0 {\displaystyle g_{k}^{\left[r\right]}=0} if k {\displaystyle k} is not a multiple of 2 r . {\displaystyle 2^{r}.}
… excerpt ends here. Continue reading the full article.



