Documentation

# bestlevt

Best level tree wavelet packet analysis

## Syntax

```T = bestlevt(T) [T,E] = bestlevt(T) ```

## Description

`bestlevt` is a one- or two-dimensional wavelet packet analysis function.

`bestlevt` computes the optimal complete subtree of an initial tree with respect to an entropy type criterion. The resulting complete tree may be of smaller depth than the initial one.

`T = bestlevt(T)` computes the modified wavelet packet tree `T` corresponding to the best level tree decomposition.

`[T,E] = bestlevt(T)` computes the best level tree `T`, and in addition, the best entropy value `E`.

The optimal entropy of the node, whose index is `j-1`, is `E(j)`.

## Examples

```% The current extension mode is zero-padding (see dwtmode). % Load signal. load noisdopp; x = noisdopp; % Decompose x at depth 3 with db1 wavelet, using default % entropy (shannon). wpt = wpdec(x,3,'db1'); % Decompose the packet [3 0]. wpt = wpsplt(wpt,[3 0]); % Plot wavelet packet tree wpt. plot(wpt) ``` ```% Compute best level tree. blt = bestlevt(wpt); % Plot best level tree blt. plot(blt) ``` ## Algorithms

See `besttree` algorithm section. The only difference is that the optimal tree is searched among the complete subtrees of the initial tree, instead of among all the binary subtrees. 