Best tree wavelet packet analysis

`T = besttree(`

* T*)

[T,E] = besttree(

`T`

[T,E,N] = besttree(

`T`

`besttree`

is a one- or
two-dimensional wavelet packet analysis function that computes the
optimal subtree of an initial tree with respect to an entropy type
criterion. The resulting tree may be much smaller than the initial
one.

Following the organization of the wavelet packets library, it is natural to count the decompositions issued from a given orthogonal wavelet.

A signal of length *N* = 2* ^{L}* can
be expanded in α different ways, where α is the number
of binary subtrees of a complete binary tree of depth

As a result, we can conclude that α ≥ 2^{N}^{/2} (for
more information, see the Mallat's book given in References at page
323).

This number may be very large, and since explicit enumeration is generally intractable, it is interesting to find an optimal decomposition with respect to a convenient criterion, computable by an efficient algorithm. We are looking for a minimum of the criterion.

`T = besttree(`

computes
the best tree * T*)

`T`

`[T,E] = besttree(`

computes
the best tree * T*)

`T`

`E`

The optimal entropy of the node, whose index is `j-1`

,
is `E(j)`

.

`[T,E,N] = besttree(`

computes
the best tree * T*)

`T`

`E`

`N`

Coifman, R.R.; M.V. Wickerhauser (1992), "Entropy-based
algorithms for best basis selection," *IEEE Trans.
on Inf. Theory*, vol. 38, 2, pp. 713–718.

Mallat, S. (1998), *A wavelet tour of signal processing*,
Academic Press.

Was this topic helpful?