Hello, I am looking for a wavelet compression function in Matlab. From the help on "wdencmp" in Matlab ( i copied part of the help on wdencmp below), it seems the right function i am looking for.. However, from the output it returned, output XC has the same size as input X. I was confused, if it is compression, isnot XC supposed to be smaller in size than input X? maybe I miss something here?? "[XC,CXC,LXC,PERF0,PERFL2] = WDENCMP('gbl',X,'wname',N,THR,SORH,KEEPAPP) returns a de-noised or compressed version XC of input signal X (1-D or 2-D) obtained by wavelet coefficients thresholding using global positive threshold THR." Any info is greatly appreciated! looking forward to your reply:) yan

0 |

9/4/2003 5:15:09 PM

Yan Yu <yanyu_1997@yahoo.com> wrote: > Hello, > I am looking for a wavelet compression function in Matlab. > From the help on "wdencmp" in Matlab ( i copied part of the help on > wdencmp below), it seems the right function i am looking for.. However, from > the output it returned, output XC has the same size as input X. I was > confused, if it is compression, isnot XC supposed to be smaller in size than > input X? maybe I miss something here?? > > "[XC,CXC,LXC,PERF0,PERFL2] = > WDENCMP('gbl',X,'wname',N,THR,SORH,KEEPAPP) > returns a de-noised or compressed version XC of input > signal X (1-D or 2-D) obtained by wavelet coefficients > thresholding using global positive threshold THR." "Compression" has another meaning in signal processing. It refers to a particular non-linear process that reduces higher amplitude components more than lower amplitude components. For example, the transform function of A-law compression is: 1 + log A.|x| g(x) = --------------- sgn(x) 1 + log A - Kevin.

0 |

9/5/2003 2:24:06 AM

Hi, > I am looking for a wavelet compression function in Matlab. > From the help on "wdencmp" in Matlab ( i copied part of the help on > wdencmp below), it seems the right function i am looking for.. However, from > the output it returned, output XC has the same size as input X. I was > confused, if it is compression, isnot XC supposed to be smaller in size than > input X? maybe I miss something here?? Even better, if you just count the number of bits required to represent the wavelet transformed data exactly again, as to allow to reconstruct the original one by one, you would even find that the wavelet transformer output requires *more* bits than the original. Now, how does that work? The reason why wavelets are a good candidate for compression is that this transformation is suitable for removing redundance in the input data that can then be conveniently removed by standard compression techniques (e.g. arithmetic coding). Greetings, Thomas

0 |

9/5/2003 8:07:27 AM

Thanks a lot for the explanation! so in Matlab, there is no wavelet compression function, by "compression" in the sense that it reduces the coding size? thanks, yan Thomas Richter wrote: > Hi, > > >>I am looking for a wavelet compression function in Matlab. >>From the help on "wdencmp" in Matlab ( i copied part of the help on >>wdencmp below), it seems the right function i am looking for.. However, from >>the output it returned, output XC has the same size as input X. I was >>confused, if it is compression, isnot XC supposed to be smaller in size than >>input X? maybe I miss something here?? > > > Even better, if you just count the number of bits required to represent > the wavelet transformed data exactly again, as to allow to reconstruct the > original one by one, you would even find that the wavelet transformer output > requires *more* bits than the original. > > Now, how does that work? > > The reason why wavelets are a good candidate for compression is that this > transformation is suitable for removing redundance in the input data that > can then be conveniently removed by standard compression techniques (e.g. > arithmetic coding). > > Greetings, > Thomas

0 |

9/5/2003 7:47:48 PM

Hi, > Thanks a lot for the explanation! > so in Matlab, there is no wavelet compression function, by "compression" > in the sense that it reduces the coding size? I don't know Matlab good enough to answer that question, sorry. But you could check whether MatLab supports any kind of "entropy coding" function. If not, then the answer is "no". If yes, then combine that with wavelet transformation and you already have a simple coder. Greetings, Thomas

0 |

9/8/2003 8:35:21 AM