Main Content

besttree

ベスト ツリー ウェーブレット パケット解析

構文

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

説明

besttree は、エントロピー タイプの基準に関して初期ツリーの最適な部分木を計算する 1 次元または 2 次元のウェーブレット パケット解析関数です。結果のツリーは、初期ツリーよりも大幅に小さくなる可能性があります。

ウェーブレット パケット ライブラリの構成に従って、与えられた直交ウェーブレットから生じる分解の数を数えるのが自然です。

長さ N = 2L の信号は、α 通りの方法で展開できます。ここで、α は深さ L の完全二分木の二分部分木の数です。

その結果、α ≥ 2N/2 であると結論付けることができます (詳細については、参考文献に示した Mallat による著書の 323 ページを参照)。

この数値は非常に大きい場合があり、また明示的な列挙は一般に取り扱いが困難であるため、効率的なアルゴリズムで計算できる便利な基準を使って最適な分解を見つけるというのは興味深いことです。最小限の基準については探求を続けています。

T = besttree(T) は、ベスト エントロピー値に対応するベスト ツリー T を計算します。

[T,E] = besttree(T) は、ベスト ツリー T を計算し、さらに、ベスト エントロピー値 E を計算します。

インデックスが j-1 であるノードの最適エントロピーは E(j) です。

[T,E,N] = besttree(T) は、ベスト ツリー T、ベスト エントロピー値 E、およびマージされたノードのインデックスを含むベクトル N を計算します。

すべて折りたたむ

この例では、エントロピー基準に基づいて最適なウェーブレット パケット ツリーを取得する方法を示します。

ノイズがある Doppler 信号を読み込みます。'sym4' ウェーブレットを使用してレベル 4 まで下げたウェーブレット パケット ツリーを取得します。周期的拡張モードを使用します。

dwtmode('per');
 
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!  WARNING: Change DWT Extension Mode  !
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                         
*****************************************
**  DWT Extension Mode: Periodization  **
*****************************************
                                         
load noisdopp;
T = wpdec(noisdopp,4,'sym4');

ベスト ウェーブレット パケット ツリーを取得し、結果をプロットします。

BstTree = besttree(T);
plot(BstTree)

Figure contains 2 axes objects and other objects of type uimenu. Axes object 1 with title Tree Decomposition contains 45 objects of type line, text. Axes object 2 with title data for node: 0 or (0,0). contains an object of type line.

DWT 拡張モードを既定値に戻します。

dwtmode('sym');
 
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
!  WARNING: Change DWT Extension Mode  !
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
                                                       
*******************************************************
**  DWT Extension Mode: Symmetrization (half-point)  **
*******************************************************
                                                       

アルゴリズム

1 次元の場合を考えてみましょう。ルート ノードから始め、次のスキームを使用してベスト ツリーが計算されます。ノード N が 2 つのノード N1 と N2 に分割されるとき、N1 と N2 のエントロピーの合計は N のエントロピーよりも低くなり、その逆もしかりです。これは、ノード N で利用可能な情報のみに基づく局所基準です。

いくつかのエントロピー タイプ基準を使用できます (詳細は、wenergy を参照)。エントロピー関数がウェーブレット パケット係数に沿った加法的関数である場合、このアルゴリズムはベスト ツリーを導き出します。

初期ツリー T から開始し、このアルゴリズムのマージ側を使用して、T のすべての二分部分木の中でベスト ツリーを取得します。

参考文献

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.

バージョン履歴

R2006a より前に導入