Monday, July 17, 2017

python - For discrete wavelet transforms, is redundancy needed to ensure perfect reconstruction?


So I was using pywt and I noticed that in the padding mode documentation they explain the following:



DWT performed for these extension modes is slightly redundant, but ensures perfect reconstruction.



So I was wondering whether for discrete wavelet transform this redundancy was needed theoretically or if it was an implementation choice. This person at pywt seems to think it is theoretical but I wanted to know why.



Answer



Theoretically, the DWT (or the discrete wavelet transform) is (under some conditions) a discrete sampling of the continuous wavelet transform allowing perfect synthesis, for "infinite length" discrete data. But this yields "discrete" infinitely many coefficients. In some cases, There exist some wavelets, like Haar's, that can be implemented in a non expansive manner.



Practically, for discrete length signals that are not "even" (like with a power-of-two length), one must find options related to signal and wavelet symmetries. This is an important issue in data compression, as one often does not want to increase data size before entropy coding (but this is another debate).


To remain concrete, think about signal $[1,-1,3]$. How would you represent it with only 3 coefficients, knowing that the dyadic version should have the same number of approximation and detail coefficients? Many tricks have been developed for that. However, if you are not concerned with compression, most can afford a little redundancy.


No comments:

Post a Comment

periodic trends - Comparing radii in lithium, beryllium, magnesium, aluminium and sodium ions

Apparently the of last four, $\ce{Mg^2+}$ is closest in radius to $\ce{Li+}$. Is this true, and if so, why would a whole larger shell ($\ce{...