DiscreteTransforms[DiscreteWaveletTransform] - データの離散ウェーブレット変換
|
使い方
|
|
DiscreteWaveletTransform(A, w1, w2)
DiscreteWaveletTransform(A, w1, w2, options)
DiscreteWaveletTransform(A, Wavelet, WaveletParams, options)
DiscreteWaveletTransform(n, A, dim, w1, A1, A2, options)
DiscreteWaveletTransform(n, m, A, dim, w1, A1, A2, options)
DiscreteWaveletTransform(n, A, dim, Wavelet, WaveletParams, A1, A2, options)
DiscreteWaveletTransform(n, m, A, dim, Wavelet, WaveletParams, A1, A2, options)
|
|
パラメータ
|
|
A
|
-
|
datatype=float[8] のベクトル、行列、または配列; 変換対象のデータ
|
w1, w2
|
-
|
datatype=float[8] で長さが同じのベクトル; ハイパスフィルタおよびローパスフィルタ
|
Wavelet
|
-
|
文字列または名前; サポートされているウェーブレット族の名前
|
WaveletParams
|
-
|
正整数または 2 つの正整数で構成されたリスト; Wavelet 族のパラメータ
|
n
|
-
|
(オプション) 正整数; 変換対象のデータ点の数
|
dim
|
-
|
(オプション) 整数; A の次元が 2 以上の場合に A で変換する次元
|
A1, A2
|
-
|
(オプション) datatype=float[8] のベクトル、行列、または配列; 変換後のデータを格納する出力
|
m
|
-
|
(オプション) 正整数; 実行する変換の数
|
options
|
-
|
(オプション) keyword が endconditions または storagetype のいずれかである keyword = value の形式の方程式
|
|
|
|
|
説明
|
|
•
|
DiscreteWaveletTransform コマンドは信号 A に対して離散ウェーブレット変換を実行します。A1 および A2 ( storagetype=singlearray の場合は A1 のみ) が与えられている場合、変換されたデータはそれらに格納されて返されます。それ以外の場合は戻り値を返す前に A1 および A2 が作成されます。
|
•
|
A1 および A2 が与えられていない場合に作成される A1 および A2 の型とオプションは A と同じになります。
|
|
DiscreteWaveletTransform(A, Wavelet, WaveletParams)
|
|
DiscreteWaveletTransform(A, WaveletCoefficients(Wavelet,WaveletParams))
は同等です。
|
|
DiscreteWaveletTransform(A, Wavelet, WaveletParams)
|
|
DiscreteWaveletTransform(A, op(1..2,[WaveletCoefficients(Wavelet,op(WaveletParams))]))
は同等です。
|
•
|
DiscreteWaveletTransform は偶数長のデータのみを変換します。すなわち、指定される n は偶数である必要があります。n が指定されない場合は A の次元 dim が偶数である必要があります。
|
•
|
m は、n が与えられ、かつ A の次元が 2 の場合にのみ指定できます。この場合は全体が変換の対象になるのではなく、変換の対象である次元によって m 行または m 列のみが変換されます。
|
•
|
A の次元が 2 以上の場合は dim が与えられている必要があります。
|
•
|
注意: 現在、1 次元または 2 次元の配列のみ変換が可能です。
|
|
|
オプション
|
|
•
|
endconditions には periodic, zeros, または reflection を指定できます。
|
–
|
endconditions は信号の終わり付近の畳み込みの処理に使用するデータの生成方法を指定します。endconditions=zeros の場合は信号にゼロを挿入します。endconditions=reflection の場合は新たなデータを生成するために最後の項で折り返します。endconditions=periodic の場合はデータを周期的なデータと仮定します。
|
–
|
警告: ほとんどの直交および双直交ウェーブレットは endconditions=periodic の場合にのみ DiscreteWaveletTransform で逆変換が可能です。
|
–
|
このオプションのデフォルトは endconditions=periodic です。
|
•
|
storagetype には standard, singlearray, または nodownsample を指定できます。
|
–
|
storagetype=standard の場合は A に対して標準の離散ウェーブレット変換が実行されます。結果は A1 および A2 に格納されて (与えられていない場合、A1 および A2 は作成される) 返されます。A1 および A2 にはそれぞれ、ハイパスフィルタおよびローパスフィルタが格納されます。
|
–
|
storagetype=singlearray の場合は A に対して離散ウェーブレット変換が実行されます。その結果は A1 に並べて格納されて (与えられていない場合、A1 は作成される) 返されます。
|
–
|
storagetype=nodownsample の場合は A に対してダウンサンプリングなしの修正された離散ウェーブレット変換が実行されます。結果は A1 および A2 に格納されて (与えられていない場合、A1 および A2 は作成される) 返されます。
|
–
|
storagetype=standard で、A1 および A2 が与えられている場合、これらの dim 以外のすべての次元の長さは最低でも A と同じく、次元 dim の長さは最低でも A の半分である必要があることにご注意ください。storagetype=singlearray で、A1 が与えられている場合、A1 のすべての次元の長さは最低でもA と同じである必要があります。また storagetype=nodownsample で、A1 および A2 が与えられている場合、A1 および A2 のすべての次元の長さはそれぞれ最低でも A と同じである必要があります。
|
–
|
storagetype が standard または nodownsample の場合、A1 および A2 は両方とも指定されるか、省略される必要があります。どちらか片方のみを指定することはできません。
|
–
|
このオプションのデフォルトは storagetype=standard です。
|
|
|
例
|
|
>
|
|
| (5.1) |
以下は、疑似フィルタを使用した、オプションによる違いを明確にするためのいくつかの単純な例です。
>
|
|
| (5.2) |
>
|
|
| (5.3) |
>
|
|
| (5.4) |
>
|
|
| (5.5) |
>
|
|
| (5.6) |
>
|
|
| (5.7) |
>
|
|
| (5.8) |
>
|
|
| (5.9) |
直交および双直交データの場合は逆変換が常に可能とは限りません。以下はその一例です。
>
|
|
>
|
|
>
|
|
>
|
|
| (5.10) |
>
|
|
>
|
|
| (5.11) |
>
|
|
>
|
|
>
|
|
>
|
|
>
|
|
>
|
|
>
|
|
| (5.12) |
>
|
|
| (5.13) |
>
|
|
>
|
|
>
|
|
| (5.14) |
>
|
|
| (5.15) |
n および m を使用した例については、InverseDiscreteWaveletTransform を参照してください。
|
|