This is the mail archive of the
gsl-discuss@sources.redhat.com
mailing list for the GSL project.
Re: discrete wavelet transform
- From: Brian Gough <bjg at network-theory dot co dot uk>
- To: Ivo Alxneit <ivo dot alxneit at psi dot ch>
- Cc: gsl-discuss at sources dot redhat dot com
- Date: Mon, 8 Mar 2004 17:22:00 +0000
- Subject: Re: discrete wavelet transform
- References: <200403071708.59679.ivo.alxneit@psi.ch>
Ivo Alxneit writes:
> is this something that could be included in gsl? if yes i would
> still need to write some tests (suggestions welcome) and
> documentation.
Wavelets are something that could be included in GSL. From a brief
look there are a few recommendations I would make:
- to use plain arrays internally rather than vectors, this would be
simpler and avoid unnecessary copying of elements into the vectors
from arrays. Similarly use an api with (pointer,stride,length) as
in the FFTs, to remove the dependency on gsl_vector.
- the coefficients c are constant so it should be possible to create
them as static const objects and pass only pointers around,
preserving constness correctly. The definition of h in the wavelet
struct is not const, for example.
- avoid allocating workspace internally, this should be passed in as a
parameter for efficiency (as in the ffts).
- obtain the coefficients from the original papers as an independent
check, and to avoid any hassle from the authors of Wavekit.
- Omit the 2d case initially.
Those are a few areas that I noticed in the code itself, but I'm not
familiar with practical use of wavelets myself so I can't comment on
things like Th, Tv. If there is a normal convention we should follow
it though.
--
Brian